FHIR Chat · Period search param for MeasureReport · cql

Stream: cql

Topic: Period search param for MeasureReport


view this post on Zulip Polina A. (Jul 06 2020 at 15:06):

I am looking for an assistance on period search param for MeasureReport. How would I build a request for all measure reports between 1/1/2019 and 12/31/2019?

view this post on Zulip Bryn Rhodes (Jul 06 2020 at 17:33):

Are you looking for reports that were generated during that period, or for reports that cover specifically that period?

view this post on Zulip Polina A. (Jul 06 2020 at 17:38):

That cover that period.

view this post on Zulip Polina A. (Jul 06 2020 at 17:40):

Basically I am trying to use "period" search parameter as defined by the R4 spec

view this post on Zulip Polina A. (Jul 06 2020 at 17:41):

but having difficulty figuring out how to build the request properly

view this post on Zulip Bryn Rhodes (Jul 06 2020 at 17:50):

GET [base]/MeasureReport?period=ge2019-01-01&period=le2019-12-31

view this post on Zulip Bryn Rhodes (Jul 06 2020 at 17:51):

I think that would do it.

view this post on Zulip Polina A. (Jul 06 2020 at 19:24):

@Bryn Rhodes That's what I thought initially, but as I started diving into to the definition of the prefixes I became unsure that this will return what I'd expect http://hl7.org/fhir/R4/search.html#prefix
For example, let's say I want to get all reports between 2019-1-1 and 2019-6-30, then the request should look like [base]/MeasureReport?period=ge2019-01-01&period=le2019-6-30.

But I think this request will also return reports that are between 2019-1-1 and 2019-12-31, because the range [2019-1-1,2019-12-31] overlaps with the lower bound range (ge2019-01-01) and overlaps with the upper bound range(le2019-6-20)

view this post on Zulip Bryn Rhodes (Jul 07 2020 at 20:49):

You're right, the specific case isn't quite spelled out, but my read is that since the parameters are ANDed, the result would be the intersection of the individual results, which would actually be only those reports with a period of 2019-01-01 to 2019-06-30.

view this post on Zulip Bryn Rhodes (Jul 07 2020 at 20:50):

Have you tried this with any implementations? Or are you implementing the behavior on the server-side?

view this post on Zulip Polina A. (Jul 07 2020 at 22:13):

I have not checked any of the implementations other than ours. And yes, I am implementing server side. I also went through this discussion about "period" param here:
https://chat.fhir.org/#narrow/stream/179166-implementers/topic/Period.
It is not specific to measure reports, but explains how period search parameter works and highlights that requests like base]/MeasureReport?period=ge2019-01-01&period=le2019-6-30 will not return what I'd initially expected.

view this post on Zulip Bryn Rhodes (Jul 08 2020 at 01:49):

Are you looking for a way to search for only those MeasureReports with a period that exactly covers 2019-01-01 to 2019-12-31?

view this post on Zulip Bryn Rhodes (Jul 08 2020 at 02:05):

I think you could only do that for calendar boundaries, but could you say: period=2019?

view this post on Zulip Polina A. (Jul 08 2020 at 14:18):

My question originates from me working on the implementation of $care-gaps operation which has two explicit parameters periodStart and periodEnd to request measure reports within a certain period: https://www.hl7.org/fhir/measure-operation-care-gaps.html
So I have been trying to figure out how to "translate" these two parameters to get measure reports within a requested period and that's when ran into this confusion with requesting periods.
You are correct, requesting a full year should work with period=2019, but requesting a partial year becomes a problem, e.g. requesting all open gaps between 1/1/2019 and 8/31/2019 is a common practice in ongoing care gaps detection.


Last updated: Apr 12 2022 at 19:14 UTC