Stream: implementers
Topic: How to convert HL7 v2 ADT A01 to FHIR
jassy (Nov 01 2016 at 03:14):
We'd like to replace HL7 v2 A01 transactions with FHIR resource transactions, and we look for design options to map ADT A01 to FHIR resources. Based on researches through the docs and discussions, there two potential design patterns stand out to me:
(a) Map ADT A01 to Encounter with extensions for children resource references
(b) Model ADT as FHIR messaging process with a bundle of several resources and linkage info
What are your recommendations?
Thanks
Grahame Grieve (Nov 01 2016 at 06:05):
why would you have extensions?
jassy (Nov 01 2016 at 06:47):
Hi Grahame, I assume you refer to my option (a), using Encounter as root resource to cover entire ADT A01. For example, A01 segment IN1 is about insurance information and Encounter doesn't have any property for it currently, so one way I can think of is to add an extension referencing to Coverage resource to map IN1.
Grahame Grieve (Nov 01 2016 at 06:49):
what's the relationship between coverage and encounter then? Is the coerage only for the encounter? I think that's not right
jassy (Nov 01 2016 at 06:53):
Coverage would not be only for Encounter. It is just being referenced by Encounter, the same as Patient referenced by Encounter.
Lloyd McKenzie (Nov 01 2016 at 09:47):
In STU 3, Encounter points to Account which points to Coverage
Paul Knapp (Nov 01 2016 at 16:44):
and Account is draft.
jassy (Nov 01 2016 at 16:57):
Sounds like both option (a) and (b) would be viable approaches. Account in Encounter would be helpful in this regard.
Paul Knapp (Nov 01 2016 at 18:13):
Yes to encounter as the focal resource, but I'm not sure it needs to reference each of the other resources, it may be that Encounter links to PAtient adn Account or COverage links to Patient and thereby they are connected.
Paul Knapp (Nov 01 2016 at 18:15):
Isn't the Coverage specified in an ADT to say 'this is the Patient's insurance' in case it is not already on file, it is not saying this is the Coverage which should only be used for this encounter. Therefore the ADT becomes a suite of creates/conditional creates/updates.
jassy (Nov 01 2016 at 18:50):
I agree to both points made here.
Paul Knapp (Nov 01 2016 at 19:28):
Then I think you would want to create a Transaction bundle containing a suite of resources with conditional actions.
jassy (Nov 01 2016 at 20:26):
Yes, well put. If the service contract allows/wants to update any referenced resources beside the root (parent) resource Encounter, then a Transaction Bundle will be in order - variation of option (a).
Simone Heckmann (Nov 02 2016 at 20:09):
So far, I have done all my V2->FHIR mappings with Transaction Bundles, using conditional create or conditional update (depending on whether the sender is the "source of truth" for the respective resource. If updating referenced resources is not allowed, conditional references are handy.
Simone Heckmann (Nov 02 2016 at 20:09):
http://wiki.hl7.org/index.php?title=201605_Conditional_Reference_Connectathon_Proposal
Abbie Watson (Mar 01 2017 at 02:12):
Here's a tutorial on mapping an ADT interface to a FHIR Patient record.
https://medium.com/@awatson1978/hl7-v2-to-fhir-interface-mapping-f83c6ecf6bee#.otvz5yqr3
Last updated: Apr 12 2022 at 19:14 UTC