FHIR Chat · MessageHeader.response.identifier · implementers

Stream: implementers

Topic: MessageHeader.response.identifier


view this post on Zulip AbdulMalik Shakir (Mar 04 2019 at 21:02):

The definition of MessageHeader.response.identifier is "The MessageHeader.id of the message to which this message is a response. Note, this is a business identifier, not a resource identifier"

However, I do not see MessageHeader.id defined as an element of the MessageHeader. Am I missing something?

view this post on Zulip Grahame Grieve (Mar 04 2019 at 21:10):

yes it got moved to Bundle.identifier

view this post on Zulip AbdulMalik Shakir (Mar 04 2019 at 21:24):

"yes it got moved to Bundle.identifier

Thanks.

view this post on Zulip Lloyd McKenzie (Mar 04 2019 at 21:26):

AMS, can you submit a change request for us to correct the wording on MessageHeader.response.identifier?

view this post on Zulip AbdulMalik Shakir (Mar 04 2019 at 22:31):

AMS, can you submit a change request for us to correct the wording on MessageHeader.response.identifier?

Lloyd, I would be happy to submit a change request. Do you have a minute or two to show me how that is done?

view this post on Zulip Richard Townley-O'Neill (Mar 04 2019 at 22:51):

At the bottom of the resource definition page is a link to Propose a change. Follow the link to gforge, and use the New Tracker Item button.

view this post on Zulip Ken Sinn (Jun 11 2019 at 22:42):

For clarification, should MessageHeader.response.identifier be typed as identifier instead of id? The description of the field as a "business identifier" instead of a "resource identifier" makes me think it should be the identifier type.

view this post on Zulip Lloyd McKenzie (Jun 11 2019 at 22:45):

The 'system' for the MessageHeader identifier is known. It must have a value. There doesn't seem to be a good reason to move from 'id'.

view this post on Zulip Ken Sinn (Jun 12 2019 at 19:19):

Is the correct wording for "MessageHeader.response.identifier" supposed to be "The Bundle.identifier of the message to which this message is a response. Note, this is a business identifier, not a resource identifier"? Or is MessageHeader.response.identifier supposed to be some other value?

view this post on Zulip Lloyd McKenzie (Jun 12 2019 at 19:24):

It seems that it should be Bundle.id, though that makes the "this is a business identifier, not a resource identifier" assertion questionable. If we were to point to bundle.identifier, that would make the MessageHeader.response.identifier data type wrong. @Grahame Grieve ?

view this post on Zulip Ken Sinn (Jun 12 2019 at 19:36):

Is there a "business identifier" for the MessageHeader somewhere? Or is it considered redundant by the Bundle.identifier value?

view this post on Zulip Lloyd McKenzie (Jun 12 2019 at 21:13):

We dropped it (in STU3 I think) on the grounds that it was redundant with Bundle.identifier which got added in the same release.

view this post on Zulip Grahame Grieve (Jun 14 2019 at 02:07):

the definition and the type are consistent, and refer to the bundle id, not the Bundle.Identifier. This assumes that the bundle.id is unique in the context. If we were to change it to Bundle.identifier (which didn't exist earlier) then we'd have to change the type too

view this post on Zulip Lloyd McKenzie (Jun 14 2019 at 03:01):

The usage note on MessageHeader.response.identifier says This is a business identifier, not a resource identifier. That seems to be in conflict with it pointing to Bundle.id. (I'm totally fine with it pointing to Bundle.id, we should just be clear.)

view this post on Zulip Ken Sinn (Jun 28 2019 at 15:52):

We have a use case for having a MessageHeader.response.identifier be a business identifier, when you want to relate a series of Messages together using the same reference identifier (even if it's based on Bundle.identifier), rather than just the immediately previous MessageHeader.id. Based on Bundle.identifier definition, Bundle.identifier does not seem to be the right place to store a business identifier that would be the same across a series of Messages.
We're okay with creating an extension on MessageHeader if necessary, but seems like there was already some thought put into using MessgeHeader.response.identifier for this purpose, based on the definition (though not on the element type).

view this post on Zulip Grahame Grieve (Jul 03 2019 at 23:26):

we have not created an element on MessageHeader for an identifier that links a series of messages. If we did, I would ave called it "MessageHeader.conversationId". So that would be an extension (for now at least)

view this post on Zulip Ken Sinn (Jul 04 2019 at 16:41):

Thank you for the feedback, Grahame. We'll be implementing this as an extension, and look forward to supporting this as an element in the future, if others also find use for this element.

view this post on Zulip Geoff Ramsay (Jul 30 2019 at 18:13):

@Ken Sinn , We've found a few use cases in the Canadian eReferral space where we think a larger transaction identifier, or broker 'conversation identifier' would be helpful.
I've used an extension at this point.
I'd love to know/support if you push for inclusion.

view this post on Zulip Lloyd McKenzie (Jul 30 2019 at 18:30):

The "conversation" would presumably resolve around task. If the referral was part of a broader set of requests, then the requisition element would be appropriate.

view this post on Zulip Ken Sinn (Jul 30 2019 at 18:44):

Thanks @Geoff Ramsay , we will take a look at Lloyd's suggestion to use ServiceRequest.requisition, and see if the Message Bundles always include a ServiceRequest resource or not.

view this post on Zulip Ken Sinn (Nov 04 2020 at 14:26):

@Grahame Grieve @Lloyd McKenzie It looks like http://build.fhir.org/messaging.html#3.4.1.4 should also be changed, if messageheader.response.identifier is supposed to point to bundle.id?
"The response message also quotes the request MessageHeader.id in MessageHeader.response.identifier so that the source system can relate the response to its request."

view this post on Zulip Kevin Mayfield (Nov 04 2020 at 14:36):

See also https://chat.fhir.org/#narrow/stream/179166-implementers/topic/FHIR.20Message.20identifiers

view this post on Zulip Kevin Mayfield (Nov 04 2020 at 14:38):

@Ken Sinn did you implement a conversationID extension?
We (in the UK) have the same requirement

view this post on Zulip Ken Sinn (Nov 04 2020 at 14:45):

Thanks Kevin. The implementation stalled, so we did not have to implement the extension for now. Thanks for posting the other thread. I'll poke around in the fhir message stream, didn't know about that stream.

view this post on Zulip Lloyd McKenzie (Nov 04 2020 at 16:42):

MessageHeader.response.identifier should point to Bundle.identifier. Bundle.id could change in transit, Bundle.identifier won't.

view this post on Zulip Vassil Peytchev (Nov 04 2020 at 16:47):

MessageHeader.response.identifier should point to Bundle.identifier

That is a big change.

view this post on Zulip Lloyd McKenzie (Nov 04 2020 at 20:51):

I don't know there's a choice. The guidance is that if you touch the message in any way when routing, it's a new Bundle.id. And when the originator receives the response, it needs to be to an id they have, not that was created by routing jump #3.

view this post on Zulip Vassil Peytchev (Nov 05 2020 at 00:34):

But the current reference is to MessageHeader.id, not Bundle.id

view this post on Zulip Lloyd McKenzie (Nov 05 2020 at 02:52):

@Grahame Grieve Do you recall where we landed here? (In general, having identifier point to id is a bit odd)

view this post on Zulip Grahame Grieve (Nov 12 2020 at 10:28):

no I don't remember

view this post on Zulip Lloyd McKenzie (Nov 12 2020 at 14:11):

@Vassil Peytchev Can you raise a tracker item so we can get this landed?

view this post on Zulip Ken Sinn (Nov 12 2020 at 15:08):

How quickly do you think this will get sorted, @Lloyd McKenzie ? We're currently designing based on the as-written documentation of using ids and not identifiers for the response reference.

view this post on Zulip Lloyd McKenzie (Nov 12 2020 at 15:18):

Hopefully this year, but that's not a given.

view this post on Zulip Ken Sinn (Nov 12 2020 at 15:23):

Suggestions on best way to handle the design to be future-proof? Is pointing MessageHeader.response.identifier to Bundle.identifer pretty much the only solution? (which means Bundle.identifier becomes a required element for Message Bundles? Or something that's only required for implementations expecting a Message response?

view this post on Zulip Lloyd McKenzie (Nov 12 2020 at 15:37):

Pointing to Bundle.id is definitely not safe - the Bundle.id will change has the message propagates from server to server. Pointing to MessageHeader.id could be safe, but it's a bit messy because MessageHeader.id is only unique within the context of a particular originating server. While typically these would be UUIDs, I don't think that's a requirement. If the MessageHeader instances flowing through a given system originate from different places, duplicate ids are possible (though presumably the fullUrl for the MessageHeader entry would still be unique). MessageHeader.identifier got moved to Bundle.identifier, so it certainly seems logical that the acknowledgement would point to that element. However, the decision isn't mine and I can't guarantee that InM will land the same place I do.

view this post on Zulip René Spronk (Nov 12 2020 at 15:59):

IMHO It'd need to be an identifier, and not an id. Bundle.identifier seems appropriate.

view this post on Zulip Kevin Mayfield (Nov 12 2020 at 21:21):

Presume we'd need an identifier extension?

view this post on Zulip Lloyd McKenzie (Nov 12 2020 at 22:31):

Why an extension?

view this post on Zulip Vassil Peytchev (Nov 13 2020 at 14:35):

FHIR#29690 created

view this post on Zulip Kevin Mayfield (Nov 13 2020 at 15:37):

You are using identifiers to reference each other?

view this post on Zulip Ken Sinn (Nov 19 2020 at 18:24):

Unfortunately, since MessageHeader.response.identifier is typed as "id" at the moment, our implementation will be referencing the MessageHeader.id of the originating message bundle -- until the next release with the data type updated.


Last updated: Apr 12 2022 at 19:14 UTC