cqframework / sample-content-ig

Sample Content IG
Apache License 2.0
5 stars 12 forks source link

'None' Population Description For Populations That Do Not Exist in Measures #65

Open JSRankins opened 4 months ago

JSRankins commented 4 months ago

The current Measure.liquid script requires a population or stratifier to exist in order to show 'none' for a description:

{% for population in group.population %}
    <tr>
        <td>{{population.code.coding[0].display}}:</td>
        {% if population.description.exists() %}
            <td>{{population.description}}</td>
        {% else %}
            <td>None</td>
        {% endif %}
    </tr>
{% endfor %}

and

{% for stratifier in group.stratifier %}
    <tr>
        <td>{{stratifier.code.coding[0].display}}:</td>
        {% if stratifier.description.exists() %}
            <td>{{stratifier.description}}</td>
        {% else %}
            <td>None</td>
        {% endif %}
    </tr>
{% endfor %}

But according to Shareable Measure Profile in FHIR R4, a population cannot exist without providing a criteria element for it. According to QMIG STU4, all population criteria SHALL reference CQL expressions. Since there is no CQL expression to reference for populations that do not exist, this creates an issue. A different solution is needed for 'none'.

juliet-rubini commented 3 months ago

Per discussion on 3.26 eCQM work group call - we still want to take this approach - the liquid template should render None into criteria fields where there is no CQL applied. The liquid template script needs to be updated so that it is looking for the absence of the element and note the subelement as it currently is above.

echicoine-icf commented 1 month ago

PR: https://github.com/cqframework/sample-content-ig/pull/98