cqframework / cqframework/clinical-reasoning
Support component-based stratifiers
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 49
- Forks
- 43
- Avg merge
- 2d 19h
- Merged PRs (30d)
- 13
Description
The R4 Measure and MeasureReport resources introduced the ability to represent stratifiers as components:
https://github.com/HL7/fhir/blob/master/source/measure/measure-hiv-indicators.xml#L100
Add support for stratification using components.
This is related to work with the WHO on representing HIV indicators
The specification for multi-component stratification is here:
https://hl7.org/fhir/measure-definitions.html#Measure.group.stratifier.component
The code that implements stratifier support is here:
https://github.com/cqframework/clinical-reasoning/blob/master/evaluator.measure/src/main/java/org/opencds/cqf/cql/evaluator/measure/common/MeasureEvaluator.java#L378
For multi-component stratifiers, two subjects are grouped into the same stratification if all of the components are equal. IOW, if a multi-component stratifer has Age and Gender, two subjects are grouped together if they are both 18 and Male. Someone 17 and Male, or 18 and Female would not be in the same stratification.
Acceptance Criteria:
The multi-component measure (or an analog) is added as a test case to the CR repository and the tests pass.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the stratifier support in evaluator.measure/src/main/java/org/opencds/cqf/cql/evaluator/measure/common/MeasureEvaluator.java and compare it with the FHIR multi-component stratifier specification and HIV indicators example. Add a multi-component measure or analog to the CR repository as a test case, then run the relevant tests. Done means the test passes and subjects are grouped only when all component values match.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- backend-api-design, testing
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100