Stream: implementers
Topic: Searching references by identifier (chain or direct)
Josh Mandel (Oct 10 2021 at 01:03):
Let's say I want to find Observations about a Patient with a specific identifier (system: https://example.org, value: 123). But I don't know ahead of time whether the observations will populate Observation.subject.identifier
, Observation.subject.reference
, or both.
Right now, I think this requires two queries? One like ?subject:identifier=
and one like ?subject.identifier=
. It'd be nice if the chaining syntax would match both:
Observation?subject.identifier=https://example.org|123
Has this been considered?
Lloyd McKenzie (Oct 10 2021 at 02:48):
Yes, there was a tracker item related to it. The outcome was that the :identifier filter and the .identifier chain needed to be handled distinctly because the involved different behaviors and it was entirely possible for a system to support only one approach and not the other.
Josh Mandel (Oct 10 2021 at 03:52):
For sure there are servers that might only be able to handle the :identifier (inline) case. Do we think the converse is true?
Lloyd McKenzie (Oct 10 2021 at 16:40):
Absolutely. Lots of servers don't handle Reference.identifier (or searching by it). In fact, support for chaining through to identifier is more common, I think. (In part because that's been around since STU1, while :identifier was only introduced towards the tail of the R4 release.
Josh Mandel (Oct 10 2021 at 17:14):
Servers that don't managed Reference.identifier at all don't need to worry about searching for it (i.e., trivially returning no results is a correct implementation of search).
Josh Mandel (Oct 10 2021 at 17:14):
(So the question is about servers that support Reference.identifier in instance data, and support searching by chained reference, and don't support search Reference.identifier values.)
Last updated: Apr 12 2022 at 19:14 UTC