Cosign. I worked in healthcare for the better part of a decade and spent just over five years of that doing data interchange (mostly HL7).
It's always somewhat amusing when threads about it pop up on HN because it almost invariably winds up with smart programmers insisting that these have to be simple problems that would be easily solved if only we were using the right API, while having zero understanding of the business and regulatory requirements that, in reality, make many of the things attached to it very difficult to get right in a field where you literally have the potential of killing somebody with a severe enough mistake.
Because they are. Make the common case fast. There is no reason to expose all possible complexity to every transaction.
Hint: addressing that is exactly what HL7 has been doing for over 30 years.
The easy parts are easily solved because they're easy, and the easy parts are 90%+ of any given integration.
Those remaining hard parts are where the time and effort goes, and a lot of them are very fundamental things that seem easy until you try to actually do them.
"Simple" things like ensuring that you properly match a patient to their preexisting medical record are incredibly fraught with unexpected complexity that you can't handwave away with an interchange format.
It's a silly example, sure- all I'm trying to say is that there are usually a few pretty good reasons why "the solution is so simple, just do x" comments haven't already been implemented and the commenters don't usually have the context to know that. It's been my experience that a lot of problems with seemingly simple or obvious solutions haven't been solved that way for good reason.
In reality it’s massive monolithic slow moving orgs that data block, create black boxes, have poor documentation, and just generally don’t want to move forward.
Specifically I’m referring to EHR vendors and other legacy systems. Not necessarily providers or even payers.