Mapping HL7v2 messages to FHIR.
Publication date: Apr 13, 2015
Recently I wrote a new whitepaper about how one would map HL7v2 messages to FHIR, which can be a challenge.
Recently I wrote a new whitepaper about how one would map HL7v2 messages to FHIR.
This was inspired by the new testing track
for the upcoming FHIR connectathon in Paris (May 2015).
Working on the whitepaper also forced me to have a good look at the current (DSTU 2, up for ballot right now)
version of the FHIR specification.
As you probably know FHIR supports a RESTful exchange of resources, as well as the document and messaging
interoperability paradigm. Of these the messaging paradigm is probably the least documented option.
Given that commonly used interoperability standards such as HL7 version 2 and even DICOM are messaging based we
should be able to populate a FHIR resource repository with data derived from HL7 v2 messages.
There are two ways to do a transformation:
- Assume that the FHIR server supports the massaging paradigm. In that case one can simply translate the HL7v2
message into a FHIR message, whereby the FHIR message consists of a bundle consisting of the MessageHeader resource
(with support for sender/receiver and trigger event) and other resources such as Patient, Encounter, Observation and
AllergyIntolerance. This mapping (for ORU messages) turned out to be relatively straightforward, see section 2
of the whitepaper.
(Note however that none of the known FHIR Server implementations currently supports messaging).
- Assume that the FHIR server only supports REST (probably a realistic assumption for the near future).
This means that some "TransformationAgent" (e.g. an interface engine/communication server) will not
just have to map the data from HL7v2 segments to FHIR resources, it will also have to bridge the
messaging-REST paradigms. The latter aspect is quite challenging,
see section 3 of the whitepaper.
In the context of a FHIR server that only support REST:
- With 'declarative' style messaging (broadcast stuff like ADT and ORU) it's easy to support the
v2-messsage-to-REST transformation in an integration engine. We'll focus on this use-case during the
Paris connectathon, in the full knowledge that orders and queries are much more tricky (we'll try and deal
with those at a subsequent connectathon).
- Handling 'orders' (ORM) will be tricky indeed, because of the need for workflow control, and the need
to create things like 'application acknowledgements'.
We may need a FHIR WorkList type of resource to support this, maybe along the lines of
the IHE XDW Workflow document.
- With queries there may be issues around the v2 query continuation protocol, and the different way
in which the result sets are created - at the time of the initial query (in v2) or dynamically (in FHIR).
If using an interface engine this could implicate that a) engine receives v2 query which requests e.g.
max. 5 results, b) engine sends query to FHIR server for all matches c) engine persists result set in
local storage c) engine creates query result message based on local storage, and creates results message
for any v2 continuation queries it receives.
This issue will need more thought - at least two parties have expressed a willingness to test this in
Paris - that should help to move things forward. In the meantime, I've found a series of issues in
the FHIR publication, which (how oldfashioned..) I've added to a balloting spreadsheet.
This week I'll be heading for Berlin, to attend a mhealth BarCamp
held during the ConHIT trade show - with all the HIMSS stuff going on this
week one would almost forget that there are other events taking place as well. I hope to see you there, I'll be talking about FHIR.
PS: We'll be offering (for the first time ever) a FHIR Advanced training course
on May 28th in London.
PermaLink to this page: http://www.ringholm.com/column/mapping_HL7_version2_to_FHIR.htm
Index of columns:
- HL7 Version 3 Tooling (Nov 16, 2022)
- Bye bye IHE XDS and CDA. (Sep 01, 2021)
- Combining the best of IHE XDS with HL7 FHIR (Jun 27, 2019)
- FHIR DevDays and the year in review (Dec 27, 2018)
- Creation and Curation of FHIR Profiles - process and governance (Dec 14, 2017)
- Impact of the GDPR on the use of interoperability standards (Jun 27, 2017)
- Next XDS Release (Oct 27, 2016)
- Five years of FHIR (Aug 11, 2016)
- Update from the trenches on CDA R2.1/R3 and HL7v2. (Oct 15, 2015)
- Most often implemented IHE Profiles (Jun 08, 2015)
- Mapping HL7v2 messages to FHIR. (Apr 13, 2015)
- Recent and Future developments of the DICOM standard (Mar 06, 2014)
- Documenting the history of HL7 (Sep 03, 2013)
- Interoperability Standards - the no-sales pitch (Jul 09, 2013)
- CDA Implementation Guides - (not) invented here (Apr 17, 2013)
- Usage of IHE Profiles (Feb 25, 2013)
- 10 year anniversary - Dutch Ringholm HL7 v2 training courses. (Feb 19, 2013)
- HL7 Connectathons (Sep 09, 2012)
- Frequency of use of HL7 message types (Jul 24, 2012)
- Reflections on the HL7 membership model - the affiliate life cycle (Dec 28, 2011)
- RFH (Resources for Health): HL7 version 3 taken to the next step (Aug 18, 2011)
- Timezone Hotel (Mar 29, 2011)
- The changing role of HL7 country organizations (Jul 16, 2010)
- How to lower the hurdle for HL7 v3 implementers (Jan 21, 2010)
- The HL7 roadmap for CDA R3 and the CCD (Jan 17, 2009)
- HL7 based Tree inventory system (Jan 30, 2007)
- Workflow Bribery (Sep 15, 2006)
About Ringholm bv
Ringholm bv is a group of European experts in the field of messaging standards and systems integration in healthcare IT.
We provide the industry's most advanced training courses and consulting on healthcare information exchange standards.
Rene is the Tutor-in-chief of Ringholm.