Stream: bulk data
Topic: Use of List Resource for Patient Groups
Alexander Kiel (Jun 10 2020 at 13:43):
I would like to combine Quality Reporting with bulk data export. The MeasureReport resource contains a reference to a list resource which contains the patients of a population. After that list resource is created by the quality reporting module, I would like to export all resources for that patients by invoking $export on that List resource.
I know that $export is defined for the Group resource. Is it possible to define $export also for the List resource?
Lloyd McKenzie (Jun 10 2020 at 14:48):
@Bryn Rhodes Based on discussion in FHIR-I, it seems that MeasureReport should point to Group rather than List?
Bryn Rhodes (Jun 11 2020 at 13:59):
The challenge with using Group is that Measures aren't _always_ patient-based, you can have measures that are based on encounters, or procedures, or any other type of non-participant resource.
Bryn Rhodes (Jun 11 2020 at 14:26):
Rather than using $export per se, we've been looking at just using the fact that you can request asynchronous response using a bulk-data format for any operation. We're expanding $care-gaps, for example, to return 1..* Bundle, with the expectation that a server could use bulk data transfer of the resulting bundles.
Bryn Rhodes (Jun 11 2020 at 14:27):
I suppose another option would be to define a /MeasureReport/id/$export
Alexander Kiel (Jun 11 2020 at 18:47):
The challenge with using Group is that Measures aren't _always_ patient-based, you can have measures that are based on encounters, or procedures, or any other type of non-participant resource.
Thats right. For example, we use Specimen as Measure subject.
Rather than using $export per se, we've been looking at just using the fact that you can request asynchronous response using a bulk-data format for any operation.
What is the request, you have in mind, that would return all population subjects possibly including related resources? The List resource alone contains only references to its entries. How could I possibly get bundles (one per page) of the referenced list entries? How could I include related resources in that bundles? The only idea, I have, is to get the List resource and use FHIR search with all the logical-ids of its entries.
I suppose another option would be to define a /MeasureReport/id/$export
That would be a possibility with the disadvantage that one couldn't address the individual populations of the report.
I have not fully understand the semantic difference between the List and the Group resource. One thing I have noticed is, that Groups only allow a single type of members, where Lists allow mixed type members. As far as I can overlook it, Measures are always about a single subject type. So groups would work here. But of corse there is the GroupType value set with a required binding, which constraints the possible types of resources in a Group. Is there any particular reason why the set of types is contained in this way?
On the other hand, is there a good reason why the entries of a List resource should not be exportable? I see that it would be helpful if the List were single typed. Especially for exporting related resources according the compartment definition of that type. But otherwise, just exporting the bare resources of a list should be not a problem.
Josh Mandel (Jun 11 2020 at 18:54):
from the decision in FHIR-I last week the idea would be: if a Measure is defined over a set of patients, then Group would be the preferred resource to capture that set.
Josh Mandel (Jun 11 2020 at 18:55):
For use cases where Group is suitable (e.g. for a list of Patients to be viewed on a dashboard), the Group resource should be preferred to the List resource. The underlying rationale is that a collection of patients, practitioners, etc is likely to be of interest as the subject of a measure, observation, communication, etc, which Group is intended to support.
Lloyd McKenzie (Jun 11 2020 at 19:12):
Groups are intended to point to collections of individuals that can be passive subjects of actions but can't take collective responsibility. If you're intending to have mixtures of things, then List is fine I guess.
Lloyd McKenzie (Jun 11 2020 at 19:13):
It may be that you need both - Group for when you're defining a passive group by criteria and List when you're defining arbitrary enumerated collections of whatever.
Josh Mandel (Jun 12 2020 at 01:58):
Wait, what does "passive" mean?
Josh Mandel (Jun 12 2020 at 01:59):
Lloyd, are you saying that for a set of Patients, there's a situation where you'd prefer List to Group?
Lloyd McKenzie (Jun 12 2020 at 02:15):
No. I'm saying that if you need to be able to have arbitrary collections of anything, you can't use Group. My slight preference for Measure is to have a choice of Group of List. The downside of that is that you could technically use both, which isn't ideal. Perhaps both with explicit guidance to use Group for the things it supports?
Alexander Kiel (Jun 12 2020 at 11:28):
@Lloyd McKenzie You suggest that the subjectResults reference in various locations of MeasureReport should be expanded to also allow Group. In addition, guiding should be given that subject-list reports of Measures over Patients should generate Group resources rather than List resources.
This change would solve my issue. Should I file an Issue in JIRA?
Lloyd McKenzie (Jun 12 2020 at 15:24):
@Bryn Rhodes
Bryn Rhodes (Jun 12 2020 at 16:54):
Yes, please do submit a tracker on that, thank you!
Last updated: Apr 12 2022 at 19:14 UTC