FHIR Chat · Date searches: contained or overlap · implementers

Stream: implementers

Topic: Date searches: contained or overlap


view this post on Zulip Michele Mottini (Aug 09 2019 at 20:51):

So search by date should use overlap or contains? eg date=2019-03 matches only encounters that happened entirely within march 2019, or any encounter that was even partially in March 2019?
I cannot really understand which is supposed to be from http://hl7.org/fhir/search.html#date
Our server used to use overlap, but a while ago (November 2017) we switched to contained - based on some information / discussions that happened here I think, but that I cannot find

view this post on Zulip Lloyd McKenzie (Aug 10 2019 at 01:42):

I'm astounded to find that the specification doesn't seem to make clear that it's an "intersection" match, not a "contains" match. @Grahame Grieve ?

view this post on Zulip Grahame Grieve (Aug 10 2019 at 01:49):

I thought it was very clear

view this post on Zulip Lloyd McKenzie (Aug 10 2019 at 02:18):

I can't see wording that says it...

view this post on Zulip Michele Mottini (Aug 12 2019 at 14:27):

Added https://gforge.hl7.org/gf/project/fhir/tracker/?action=TrackerItemEdit&tracker_item_id=23558

view this post on Zulip Michele Mottini (Aug 12 2019 at 14:29):

..and you do positively confirm that should be overlap?

view this post on Zulip Grahame Grieve (Aug 14 2019 at 08:51):

I think it's overlap, yes

view this post on Zulip Michele Mottini (Aug 14 2019 at 12:39):

Actually - it is documented at http://hl7.org/fhir/search.html#prefix - and it is contains for eq, overlap for ge, gt, le, lt

view this post on Zulip John Moehrke (Aug 14 2019 at 14:20):

Those prefix work for when the element is a date or dateTime.. but not well for when the element is a period. This CR and one I entered (GF#19909) , are about searching against a period.

view this post on Zulip John Moehrke (Aug 14 2019 at 14:27):

It is partially clear for inclusive searches (give me observatinos within range of x to y). Not clear how start/end of period is used here, but more clear that the intent is to favor false-positives... What is not clear at all is when one is asking for things before x, or after y; mostly I want everything NOT during the period x to y. Usecase that happens in XDS is that there is a known period of time that is very noisy but known to not be relevant. So I want things that happened before that period, and things after. (or there is consent policy restricting that period from x to y).

view this post on Zulip Grahame Grieve (Aug 15 2019 at 02:45):

might need some more qualifiers for some of these cases. Sounds like a face to face discussion in Atlanta during the connectathon to me

view this post on Zulip Michele Mottini (Aug 15 2019 at 13:31):

Sure
Don't understand what's the difference between dates and periods: dates are periods as well (of 1 day or 1 month or 1 year) and the spec say they should be treated as such

view this post on Zulip Alexander Kiel (Feb 12 2020 at 19:20):

@Michele Mottini Are there any news here? How can I find the gForge issues in JIRA? Thanks.

view this post on Zulip Alexander Kiel (Feb 12 2020 at 20:19):

As I see it the ap prefix covers the overlap case were the eq prefix covers the contains case.

view this post on Zulip Lloyd McKenzie (Feb 12 2020 at 20:35):

If you know the gForge id for an issue, you can find the Jira equivalent using http://jira.hl7.org/browse/FHIR-[id] where [id] is your gForge id. E.g. http://jira.hl7.org/browse/FHIR-19909

view this post on Zulip Lloyd McKenzie (Feb 12 2020 at 20:36):

If you don't know the gForge id, Jira has significant search capabilities. There's some documentation here: https://confluence.hl7.org/display/HL7/Specification+Feedback#SpecificationFeedback-Searchingandmonitoringissues

view this post on Zulip Michele Mottini (Feb 12 2020 at 20:37):

No news per se. We implemented eq as contains and gt, lt, ge, le as overlap. We do not support ap. We handle dates as periods of 1 day

view this post on Zulip Alexander Kiel (Feb 13 2020 at 11:22):

@Michele Mottini Is in your case gt the same as ge for dates? I ask because for dates the range above the value is defined the same as the lower bound for dates. In the example it's 2015-08-12T05:23:45.000000000000000 for 2015-08-12T05:23:45 where 2015-08-12T05:23:45.000000000000000 would also the lower bound. For decimals however the lower bound of 2.0 is 1.95, so it's different from the point where range above the value starts (2.00000000000000000000) and so ge matches more values as gt.

view this post on Zulip Michele Mottini (Feb 13 2020 at 20:25):

No, ge and gt are different (we actually had to fix that - automatic testing with the Inferno tool was failing)

view this post on Zulip Michele Mottini (Feb 13 2020 at 20:32):

ge => the end of the period is greater or equal to the start of the search period (or the period is open ended)

view this post on Zulip Michele Mottini (Feb 13 2020 at 20:32):

gt => the end of the period is greater to the start of the search period (or the period is open ended)


Last updated: Apr 12 2022 at 19:14 UTC