By Greg Meyer, Senior Director of Development and Infrastructure
A Quick Trip Down Memory Lane
The Direct Project is old enough to drive. Created in 2010 under its original name, NHIN Direct, the project was born out of the idea that if we want providers to actually exchange health information, maybe we should stop trying to boil the interoperability ocean and instead build something that works the way people already work. Send a message to a person. Securely. Done.
That familiar foundation has promoted plenty of conference hallway conversations that started with someone saying, with a slightly raised eyebrow, “so… it’s just email?” And, well, essentially. It uses familiar email technologies, but with a security and trust model built around them, which turns out to be the single best decision the Direct Project ever made. Email is ubiquitous, mature, and has already solved the “how do I move a billion messages between organizations that have never met” problem. We didn’t need to reinvent transport. We needed to make transport trustworthy.
I have said for years that Direct is about 30% technical and 70% policy, and I stand by it. I’d even be so bold as to say it’s more like 15% technical and 85% policy. The specifications are the easy part. Identity proofing, certificate management, trust anchor policy, and the agreements that let two organizations who have never spoken decide to believe each other — that is where the real work lives. The specifications and technical implementations are the easy part, but they still need to be rock solid, because policy built on flaky software is just a very well-documented outage. That 15% is what the Reference Implementation is for.
I’ve been involved with the Direct Project from the beginning, including work on the original specifications and the Java Reference Implementation (RI), which I still help maintain. The Java RI started as the code that proved the specifications were implementable, and over time became production infrastructure for a significant part of the Direct ecosystem. That is a very open source way for a project to grow. Nobody announces the moment a Reference Implementation becomes load-bearing. You simply reach a point where a lot of real health information is riding on it.
Today, I am happy to say that the Java RI has a new major release: Version 9.0 is out. It’s the biggest architectural step the project has taken in half a decade, and that’s worthy of an announcement!
Why Direct Still Matters
Every couple of years someone confidently declares that Direct is on its way out (usually in the same breath as declaring that FHIR APIs are about to solve everything). I have been hearing this prediction for roughly a decade now. The truth is, somewhere out there, a fax machine is still warm, but Direct is a big part of the reason there are fewer of them today than there used to be.
Message volume tells only part of the story. Direct is being asked to do genuinely new things, and the community has been building the scaffolding to support it.
360X is a visible example. Closed-loop referrals have been one of the great unsolved workflow problems in healthcare: a provider sends a referral into the void and then plays phone tag for three weeks trying to find out whether the patient was ever actually seen. 360X gives that workflow structure through referral requests, acknowledgments, scheduling notifications, and results, all using Direct as the transport. Widely deployed EHR platforms and referral management vendors have implemented it, and regional pilots have already moved into live clinical use. This is not a whiteboard exercise; it is running in production and improving the way care is coordinated.
The new Framework for Metadata and Payloads via the Direct Standard® (MaP) addresses another part of the problem, and it is the one that gets me genuinely excited as an engineer. Direct, by design, is content-agnostic. That was a feature — it meant you could send anything. But it also meant that from the receiving system’s perspective, nearly every Direct message looked identical. To figure out what a message was, you had to open the attachment and go rummaging around inside it. That is a terrible foundation for automation, and it is why so much Direct traffic historically landed in a shared inbox for a human to triage.
MaP gives us a consistent way to say what a message is and what it is for, right on the outside of the envelope, so the receiving system can route it intelligently without cracking it open. An admission notification goes to the care team. A discharge summary goes to the scheduling folks. A referral response goes back into the referral workflow that was waiting for it.
Those new workflows depend on infrastructure and implementations that can keep pace. That is where Java RI 9.0 comes in, giving the Direct community a modern foundation for what comes next.
In the next article, we’ll get under the hood of Java RI 9.0 and look at what’s changed, including the move to a cloud-native architecture and why it matters for the next generation of Direct.
