FHIR Chat · MSH-10 · v2 to FHIR

Stream: v2 to FHIR

Topic: MSH-10


view this post on Zulip Angus Millar (Jun 29 2019 at 15:23):

Does anyone have any suggestions as to where to put the source HL7 V2 message's 'Message Control ID' (MSH-10) when transforming the V2 message to a Bundle using the messaging paradigm?

view this post on Zulip Jose Costa Teixeira (Jun 30 2019 at 07:25):

Suggestion: I would think of MessageHeader.id (but i am not too that Bundle.id is not to be used too/instead)

view this post on Zulip René Spronk (Jun 30 2019 at 13:05):

The problem is that MSH-10 in v2 is NOT a unique identifier, mostly it's a rollover number from 1 to 9999. It's only supposed to be unique within the context of 1 peer-to-peer communication link, within the next 10 minutes or so (to link responses to messages, to detect duplicate messages). Outside of that context is has no guarantee whatsoever of uniqueness, so never use it as a FHIR id or identifier unless you happen to know (you could be lucky) that the sender of the v2 message happens to create unique control IDs.

view this post on Zulip Angus Millar (Jul 01 2019 at 00:23):

I agree Rene. Your point also leads to the problem of how I would represent MSH-10 as a fullUrl in the message Bundle. I was then thinking an extension on MessageHeader, yet was surprised this has not been addressed before. This then lead me to think I could and probably should create a Provenance resource where the activity is a create, the target is my FHIR resources, the agent is the integration engine, the entity is the HL7 V2 message where its whatReference is a reference with just an identifier property that is the MSH-10 Message Control ID.

view this post on Zulip René Spronk (Jul 01 2019 at 08:24):

Given that MSH-10, after a v2 message has been transformed into FHIR resources, is just "provenance" this would seem to be a good fit. But even in provenance one has to be careful not to regard MSH-10 as a unique identifier, for the Datatypes used in provenance will likely require you to use unique identifiers. As such you may need an extension (of type string) on Provenance.

view this post on Zulip Craig Newman (Jul 01 2019 at 11:47):

The v2-to-FHIR project has already started thinking about what Provenance records might be needed for such a transform. We haven't reached any conclusions, but the begins are documented at https://confluence.hl7.org/display/OO/v2-to-FHIR+Provenance. Please have a look and add your own thoughts.

view this post on Zulip Angus Millar (Jul 02 2019 at 00:54):

Thanks, @Craig Newman that reference was very useful and validated most of my thinking.

view this post on Zulip Grahame Grieve (Jul 04 2019 at 00:46):

I think you prefix the message id with a GUID to make it unique globally. As for rolling reuse... that's the sort of thing you just to wear as a limitation if you can't alter the sourrce


Last updated: Apr 12 2022 at 19:14 UTC