FHIR Chat · Match/Merge · implementers

Stream: implementers

Topic: Match/Merge


view this post on Zulip Chris Grenz (Jun 11 2018 at 16:29):

Consider a situation where a system is aggregating resources from many sources. System A sends Encounter/A, B sends Encounter/B, and C Encounter/C - all three are successfully written. A match/merge process determines that A and B are actually the same encounter, but other systems have already used the URIs.

What's the best way for the FHIR server to indicate that Encounter/B is now A. In normal HTTP, we'd use a 301 response. The FHIR spec doesn't comment on this use, and there's no way for a client to ask for a redirect (e.g. a DELETE with redirect). Should we add this?

view this post on Zulip Lloyd McKenzie (Jun 11 2018 at 16:41):

We have the Linkage resource that allows you to identify both as representing the same thing, but that doesn't let you remove one. (And it relies on someone querying Linkage to realize that the relationship exists.)

view this post on Zulip Chris Grenz (Jun 11 2018 at 16:43):

Linkage type "source" is Provenance, no? This thing (Linkage) brings up all kinds of questions...

view this post on Zulip Chris Grenz (Jun 11 2018 at 16:46):

Should the presence of a Linkage from a DELETEd resource return a redirect?

view this post on Zulip Lloyd McKenzie (Jun 11 2018 at 16:56):

Linkage came into being on the clinical side to let systems capture that 5 different Condition records from 3 different systems are actually all talking about the same thing (though possibly from different timeframes/perspectives). If "source" is asserted, it's considered to be source of truth, but that assertion might not always be made for a Linkage instance. We haven't talked about redirects at all. (In part because, for the primary use-case, it wasn't expected that any of the representations would be deleted.)

view this post on Zulip Chris Grenz (Jun 11 2018 at 17:30):

Is a redirect legal in FHIR?

view this post on Zulip Lloyd McKenzie (Jun 11 2018 at 17:38):

Redirects are absolutely legal - SMART doesn't work terribly well without them.

view this post on Zulip Grahame Grieve (Jun 11 2018 at 23:13):

there's a difference between security layer redirects and conceptual redirects; a difference between 'this resource is found over there' and 'no, you want this other resource instead'

view this post on Zulip Grahame Grieve (Jun 11 2018 at 23:14):

we have not explored the latter use case; I think Epic @Michael Donnelly ) are using redirects after patient merge, but it doesn't sit well with me because of the difference between the two concepts

view this post on Zulip Michael Donnelly (Jun 12 2018 at 00:15):

We did that with DSTU2 but didn’t port it over to STU3. Currently if you try a read of a patient that was the source for a merge, you get a 400 and have to search again to find the target.


Last updated: Apr 12 2022 at 19:14 UTC