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:
- News from the FHIR DevDays in Amsterdam (Dec 15, 2016)
- Next XDS Release (Oct 27, 2016)
- Five years of FHIR (Aug 11, 2016)
- Interoperability projects in Ireland - FHIReland (Mar 14, 2016)
- 2016 FHIR Jedi Calendar (Jan 06, 2016)
- Top 10 HL7 videos watched in 2015 (Dec 24, 2015)
- Update from the trenches on CDA R2.1/R3 and HL7v2. (Oct 15, 2015)
- FHIR DevDays - UK GP System APIs (Sep 16, 2015)
- IHE XDS - testing and implementation tools (Aug 25, 2015)
- Most often implemented IHE Profiles (Jun 08, 2015)
- Why we sponsor the HL7 WGM (May 10, 2015)
- FHIR in Paris (Apr 21, 2015)
- Mapping HL7v2 messages to FHIR. (Apr 13, 2015)
- Analysis of CDA R2 testing tools - most requirements are neither tested nor respected. (Feb 13, 2015)
- HL7 and IHE in Sweden (Feb 08, 2015)
- 2015 FHIR Chiefs Calendar (Jan 07, 2015)
- The Merry FHIR Choir caroling the 12 Days of Christmas (Dec 09, 2014)
- Chicago FHIR Update (Oct 13, 2014)
- Internationalization of HL7 (Sep 25, 2014)
- New XDS Advanced training course on offer by IHE Services and IHE Academy (Jul 14, 2014)
- Recent and Future developments of the DICOM standard (Mar 06, 2014)
- Top 10 HL7 videos watched in 2013 (Jan 02, 2014)
- Report from the HL7 WGM in Cambridge (Oct 16, 2013)
- Documenting the history of HL7 (Sep 03, 2013)
- Histology Lab Device Automation using HL7 version 2 (Jul 23, 2013)
- HL7 FHIR Elevator Pitch (Jul 15, 2013)
- Interoperability Standards - the no-sales pitch (Jul 09, 2013)
- HL7 UK - new landscape, new opportunities (Jun 26, 2013)
- Validation and error correction at the IHE Connectathon (Apr 25, 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)
- About IHE Academy and new IHE training courses (Jan 12, 2013)
- CDA implementation experiences in the UK (Dec 04, 2012)
- Musings on free HL7 IP (Oct 01, 2012)
- HL7 Connectathons (Sep 09, 2012)
- Renovate HL7 version 3 (Aug 03, 2012)
- Frequency of use of HL7 message types (Jul 24, 2012)
- Lighting the FHIR, HL7s new major interoperability standard (Jun 15, 2012)
- Reflections on the HL7 membership model - the affiliate life cycle (Dec 28, 2011)
- Thinking like an OWL reasoner (Sep 17, 2011)
- RFH (Resources for Health): HL7 version 3 taken to the next step (Aug 18, 2011)
- What's so great about the HL7 organization? (Aug 04, 2011)
- Kerndossier: een Nederlandse versie van CCD (Dutch, May 03, 2011)
- A HL7 RIMBAA update (Apr 21, 2011)
- Timezone Hotel (Mar 29, 2011)
- HL7 and openEHR are cooperating (finally) (Jan 21, 2011)
- Increasing demand for IHE training courses (Dec 18, 2010)
- Context issues with the IHE QED profile (Dec 15, 2010)
- The changing role of HL7 country organizations (Jul 16, 2010)
- Implementing HL7 version 3 - the book (May 06, 2010)
- Adding openness to a closed world (Feb 09, 2010)
- How to lower the hurdle for HL7 v3 implementers (Jan 21, 2010)
- HL7 v3 deployment statistics (Dec 17, 2009)
- There's Trouble in Paradigm (Sep 25, 2009)
- Internationalization of HL7 (Sep 24, 2009)
- HL7 UK signs deal with Ringholm to deliver HL7 v2/v3 training courses in London (Sep 17, 2009)
- The use of HL7 in South Africa (Aug 20, 2009)
- The Next Web Conference in Amsterdam (Apr 17, 2009)
- The HL7 UK AGM and RIMBAA (Apr 16, 2009)
- The HL7 Wiki reaches 2000 pages (Mar 02, 2009)
- The HL7 roadmap for CDA R3 and the CCD (Jan 17, 2009)
- HL7 Affiliates Meeting in Orlando (Jan 11, 2009)
- Swiss and Dutch HL7 News (Dec 31, 2008)
- Devices and Prizes (Nov 22, 2008)
- HL7 in Norway: a situation report (Sep 02, 2008)
- Russian whitepaper (Jul 09, 2008)
- The HL7 Interoperability Conference - IHIC 2008 (May 30, 2008)
- HL7 creates a RIM Based Application Architecture (RIMBAA) group (May 18, 2008)
- Notes from the HL7 WGM in Phoenix (May 08, 2008)
- Germany embraces CDA eReferral document specification (May 02, 2008)
- HL7 v3 RIM based applications: an unintended side effect (Jan 19, 2008)
- Collaborative Tools (Jun 21, 2007)
- HL7 ist Pflicht in der deutschen Telematikinfrastruktur (German, Mar 16, 2007)
- HL7 based Tree inventory system (Jan 30, 2007)
- The link between HL7 and Open Source Software (Jan 06, 2007)
- Workflow Bribery (Sep 15, 2006)
- Timezones in HL7 (Jan 23, 2004)
- Controlled vocabularies: "@*%!!!" ? (Sep 01, 2003)
- Trusting the other Party (Nov 01, 2002)
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.
See http://www.ringholm.com or call +31 33 7 630 636 for additional information.
Rene is the Tutor-in-chief of Ringholm.