clinical-reasoning
clinical-reasoning copied to clipboard
MeasureReport missing id
IS: MeasureReport does not have an id.
SHOULD BE: MeasureReport should include an id. In addition to other considerations, you cannot PUT a MeasureReport without one, and adding an MR to a Bundle using the CQFTooling gets messed up.
REPRO:
Run $evaluate-measure
(all types). See comments for an example and/or files to repro (although a simpler repro is any MR).
NOTE:
Oddly, the MR in a $care-gaps
result has an id. See comments for an example and/or files to repro (although a simpler repro is any Care Gap Report).
Example of MR generated without an id:
The example can be repro'd by:
POST [cc-cds-examples-bundle.json](https://github.com/alphora/demo-content-r4/blob/cpg-format/bundles/cc-cds-examples-bundle.json)
POST [cc-cds-patient-data-bundle.json](https://github.com/alphora/demo-content-r4/blob/cpg-format/bundles/cc-cds-patient-data-bundle.json)
POST [cc-cds-resources-bundle.json](https://github.com/alphora/demo-content-r4/blob/cpg-format/bundles/cc-cds-resources-bundle.json)
GET http://localhost:8000/Measure/ColorectalCancerScreeningsFHIR/$evaluate-measure?subject=Patient/nocoverageconcern-sedconcern-nosigcomp&periodStart=2024-01-01&periodEnd=2024-06-01&type=individual
Example of Care Gap Report generated with an id:
The example can be repro'd by: (the first three POSTS are the same as the repro for the MR example, so if you've already run them you can just run the GET)
POST [cc-cds-examples-bundle.json](https://github.com/alphora/demo-content-r4/blob/cpg-format/bundles/cc-cds-examples-bundle.json)
POST [cc-cds-patient-data-bundle.json](https://github.com/alphora/demo-content-r4/blob/cpg-format/bundles/cc-cds-patient-data-bundle.json)
POST [cc-cds-resources-bundle.json](https://github.com/alphora/demo-content-r4/blob/cpg-format/bundles/cc-cds-resources-bundle.json)
GET http://localhost:8000/Measure/$care-gaps?subject=Patient/nocoverageconcern-sedconcern-sigcomp&periodStart=2024-01-01&periodEnd=2024-06-01&status=open-gap&measureId=ColorectalCancerScreeningsFHIR
Id is an internal system identifier, the requirements for which vary from system to system. We have no way to know the specific requirements for Ids on any given system, so any arbitrary Id generation strategy we come up with will be wrong for someone. So, I disagree that we ought to generate an Id. Rather, we should explain how to save a MeasureReport
without an Id. Which is to use POST
rather than PUT
. Alternatively, the integrators of this library are able to modify the returned MeasureReport
and add an id that's appropriate for their platform if needed.