Stream: CARIN IG for Blue Button®
Topic: service-date SearchParameter
Tushar Nair (Aug 11 2021 at 09:04):
Hello,
The SearchParameter - 'service-date' contains description : the service-date search parameter simplifies search, since a client doesn't need to know that for inpatient and outpatient institutional EOB dates they need to search by billablePeriod.period.start, for a pharmacy EOB by item.servicedDate, and for a professional and non-clinician EOB - by item.servicedPeriod.period.start.
The FHIRPath for this search parameter is ExplanationOfBenefit.billablePeriod | ExplanationOfBenefit.item.serviced, therefore it covers both the date as well as period.start and period.end.
I want to limit the user to query by only the start date , therefore I was using the following query: [base]/ExplanationOfBenefit?service-date=ge2021-04-04&service-date=le2021-04-04. This should work well ideally but as the searchparameter is also considering the Period.end date, it leads to returning resources other than the selected date in the query. e.g. the chosen date in the query above is 2021-04-04, but if we have a resource or resources in the fhir server where billablePeriod.start is less than 2021-04-04...lets say it is 2021-04-03 and the billablePeriod.end is greater than 2021-04-04 ,lets say the end date was 2021-04-08, then inspite of running the query:[base]/ExplanationOfBenefit?service-date=ge2021-04-04&service-date=le2021-04-04, it returns the resource where period.start was 2021-04-03 and period.end is 2021-04-08. Is this behavior correct, if yes then what should be the query like to limit the search scope to the input date: 2021-04-04? Also, if the description of the search parameter talks about period.start dates specifically then shouldn't we limit the lookup to the same and not extend to period.end date? @Corey Spears @Lloyd McKenzie
Lloyd McKenzie (Aug 11 2021 at 13:43):
Date search looks for overlapping ranges. The only way to check start date only is if you have a search parameter that does that.
Michele Mottini (Aug 11 2021 at 14:19):
You can come closer using sa
and eb
= but still not exactly what you want (and not all servers support those operators) - see http://hl7.org/fhir/search.html#prefix
Corey Spears (Aug 11 2021 at 14:58):
It seems like new search parameters will be needed to meet your needs. I have added a Jira ticket for the CARIN community and Financial Management to discuss.
https://jira.hl7.org/browse/FHIR-33165 - Add more granular date searching with additional search parameters
FYI, @Mark Roberts @Amol Vyas @Pat Taylor
Pat Taylor (Aug 11 2021 at 15:49):
I agree; it makes sense for there to be a search parameter on what is in essence the date of service or admission
Tushar Nair (Aug 11 2021 at 16:46):
@Corey Spears @Pat Taylor Thank you!
Corey Spears (Sep 02 2021 at 20:04):
@Tushar Nair , We were discussing this issue in a call today. We understand the limitations, but not as clear as to what you would like to accomplish. Instead of creating a search parameter for all possible dates, would you mind providing more information on the use case and what your requirements are? What dates are you trying to query and what for purposes?
Tushar Nair (Sep 10 2021 at 18:12):
@Corey Spears apologies for the delayed response, was away for a while.
Coming to the ask. We have noticed that users sometimes want to filter the EOBs by a specific date instead of a range. We were under the impression that it could be achieved if 'from' and 'to' dates were the same with the underlying logic of
service-date=ge'DT1'&service-date=le'DT1'.Therefore in a nutshell the requirement is to enable the user to filter the EOB resources by a single date where the that date can be assumed the start date if the data type is 'Period'
Michele Mottini (Sep 10 2021 at 18:35):
Can't you simply search client-side? They are the EOBs for a specific patient I assume, so they cannot be that many
Daniel Venton (Sep 10 2021 at 18:56):
In my claims database, which is a subset of the real database, I did a query and the largest amount of EoB for a single patient was ~600. I don't know the timeframe but no more than 15 years. That is a significant standard deviation as the average number of claims per person was 2.
Tushar Nair (Sep 11 2021 at 02:26):
@Michele Mottini it's a wrong assumption , we have cases where EOBs are easily touching 500-800. It's definitely required.
Michele Mottini (Sep 11 2021 at 02:30):
'Not that many' < 10K - you can definitely search 800 (or some '000) client-side
Last updated: Apr 12 2022 at 19:14 UTC