dQM CMS Content Implementation Guide
2026.1.0 - CI Build
dQM CMS Content Implementation Guide, published by cqframework. This guide is not an authorized publication; it is the continuous build for version 2026.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/cqframework/dqm-content-cms-2026/ and changes regularly. See the Directory of published versions
| Page standards status: Informative | Maturity Level: 1 |
<Library xmlns="http://hl7.org/fhir">
<id value="AdvancedIllnessandFrailty"/>
<text>
<status value="extensions"/>
<div xmlns="http://www.w3.org/1999/xhtml">
<table class="narrative-table">
<tbody>
<tr>
<th colspan="2" scope="row" class="row-header"><a name="metadata"> </a>Metadata</th>
</tr>
<tr>
<th scope="row" class="row-header">Title</th>
<td class="content-container">Advanced Illness and Frailty</td>
</tr>
<tr>
<th scope="row" class="row-header">Version</th>
<td class="content-container">2026.1.0</td>
</tr>
<tr>
<th scope="row" class="row-header">Topic</th>
<td class="content-container">FHIR
</td>
</tr>
<tr>
<th scope="row" class="row-header">Topic</th>
<td class="content-container">CQL
</td>
</tr>
<tr>
<th scope="row" class="row-header">Description</th>
<td class="content-container"><div><p>AdvancedIllnessandFrailty logic.</p>
</div></td>
</tr>
<tr>
<th scope="row" class="row-header">Type</th>
<td class="content-container">
<a href="http://terminology.hl7.org/7.4.0/CodeSystem-library-type.html">http://terminology.hl7.org/CodeSystem/library-type</a>#logic-library
</td>
</tr>
<tr>
<th colspan="2" scope="row" class="row-header"><a name="parameters"> </a>Parameters</th>
</tr>
<tr>
<th scope="row" class="row-header">Parameter</th>
<td class="content-container">None</td>
</tr>
<tr>
<th colspan="2" scope="row" class="row-header">Library Content</th>
</tr>
<tr>
<th scope="row" class="row-header">CQL Content</th>
<td>
<a name="cql-content"> </a>
<pre style="border: none;" class="content-container highlight language-cql"><code class="language-cql">/*
NOTE: For use by March 2026 US Realm Connectathon participants for internal use only. Not for use or distribution in commercial products.
*/
library AdvancedIllnessandFrailty version '2.2.000'
using USQualityCore version '0.5.0'
using USCore version '6.1.0-derived'
using FHIR version '4.0.1'
include hl7.fhir.uv.cql.FHIRHelpers version '4.0.1' called FHIRHelpers
include hl7.fhir.uv.cql.FHIRCommon version '2.0.0' called FHIRCommon
include hl7.fhir.us.cql.CumulativeMedicationDuration version '2.0.0' called CMD
include Status version '2.2.000' called Status
codesystem "LOINC": 'http://loinc.org'
codesystem "SNOMEDCT": 'http://snomed.info/sct'
valueset "Advanced Illness": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.110.12.1082'
valueset "Dementia Medications": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.196.12.1510'
valueset "Frailty Device": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.118.12.1300'
valueset "Frailty Diagnosis": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.113.12.1074'
valueset "Frailty Encounter": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1088'
valueset "Frailty Symptom": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.113.12.1075'
code "Housing status": '71802-3' from "LOINC" display 'Housing status'
code "Lives in nursing home (finding)": '160734000' from "SNOMEDCT" display 'Lives in nursing home (finding)'
code "Medical equipment used": '98181-1' from "LOINC" display 'Medical equipment used'
parameter "Measurement Period" Interval<DateTime>
context Patient
define "Is Age 66 or Older with Advanced Illness and Frailty":
AgeInYearsAt(date from end of "Measurement Period") >= 66
and "Has Criteria Indicating Frailty"
and ( "Has Advanced Illness in Year Before or During Measurement Period"
or "Has Dementia Medications in Year Before or During Measurement Period"
)
define "Is Age 66 to 80 with Advanced Illness and Frailty or Is Age 81 or Older with Frailty":
( AgeInYearsAt(date from end of "Measurement Period") in Interval[66, 80]
and "Has Criteria Indicating Frailty"
and ( "Has Advanced Illness in Year Before or During Measurement Period"
or "Has Dementia Medications in Year Before or During Measurement Period"
)
)
or ( AgeInYearsAt(date from end of "Measurement Period")>= 81
and "Has Criteria Indicating Frailty"
)
define "Has Criteria Indicating Frailty":
exists ( (([USQualityCore.DeviceRequest: "Frailty Device"]).isDeviceOrderPersonalUseDevices()) FrailtyDeviceOrder
where FrailtyDeviceOrder.authoredOn.toInterval() during day of "Measurement Period"
)
or exists ( (([ObservationScreeningAssessment: "Medical equipment used"]).isAssessmentPerformed()) EquipmentUsed
where EquipmentUsed.value as CodeableConcept in "Frailty Device"
and EquipmentUsed.effective.toInterval() ends during day of "Measurement Period"
)
// TODO: Consider whether to keep this as the union of problems and encounter diagnoses
or exists ( (([FHIR.Condition: "Frailty Diagnosis"]).verified()) FrailtyDiagnosis
where FrailtyDiagnosis.prevalenceInterval() overlaps day of "Measurement Period"
)
or exists ( (([USQualityCore.Encounter: "Frailty Encounter"]).isEncounterPerformed()) FrailtyEncounter
where FrailtyEncounter.period overlaps day of "Measurement Period"
)
or exists ( (([USQualityCore.SimpleObservation: "Frailty Symptom"]).isSymptom()) FrailtySymptom
where FrailtySymptom.effective.toInterval() overlaps day of "Measurement Period"
)
define "Has Advanced Illness in Year Before or During Measurement Period":
// TODO: Consider whether to keep this as the union of problems and encounter diagnoses
exists ((([Condition: "Advanced Illness"]).verified()) AdvancedIllnessDiagnosis
where AdvancedIllnessDiagnosis.prevalenceInterval() starts during day of Interval[start of "Measurement Period" - 1 year, end of "Measurement Period"])
define "Has Dementia Medications in Year Before or During Measurement Period":
exists (( ([FHIR.MedicationRequest: "Dementia Medications"]).isMedicationActive()) DementiaMedication
where DementiaMedication.medicationRequestPeriod() overlaps day of Interval[start of "Measurement Period" - 1 year,
end of "Measurement Period"]
)
define "Is Age 66 or Older Living Long Term in a Nursing Home":
AgeInYearsAt(date from end of "Measurement Period") >= 66
and ( ( Last( (([ObservationScreeningAssessment: "Housing status"]).isAssessmentPerformed()) HousingStatus
where HousingStatus.effective.toInterval() ends on or before
day of end of "Measurement Period"
sort by
end of effective.toInterval() asc
)) LastHousingStatus
where LastHousingStatus.value ~ "Lives in nursing home (finding)"
) is not null
</code></pre>
</td>
</tr>
<tr>
<th colspan="2" scope="row" class="row-header">Generated using version 0.5.6 of the sample-content-ig Liquid templates</th>
</tr>
</tbody>
</table>
</div>
</text>
<extension
url="http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm">
<valueInteger value="1"/>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/structuredefinition-wg">
<valueCode value="cds"/>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status">
<valueCode value="informative"/>
</extension>
<url value="https://madie.cms.gov/Library/AdvancedIllnessandFrailty"/>
<version value="2026.1.0"/>
<name value="AdvancedIllnessandFrailty"/>
<title value="Advanced Illness and Frailty"/>
<status value="active"/>
<experimental value="false"/>
<type>
<coding>
<system value="http://terminology.hl7.org/CodeSystem/library-type"/>
<code value="logic-library"/>
</coding>
</type>
<date value="2026-09-22T06:16:25+00:00"/>
<description value="AdvancedIllnessandFrailty logic."/>
<topic>
<text value="FHIR"/>
</topic>
<topic>
<text value="CQL"/>
</topic>
<content>
<contentType value="text/cql"/>
<data
value="LyoKTk9URTogRm9yIHVzZSBieSBNYXJjaCAyMDI2IFVTIFJlYWxtIENvbm5lY3RhdGhvbiBwYXJ0aWNpcGFudHMgZm9yIGludGVybmFsIHVzZSBvbmx5LiBOb3QgZm9yIHVzZSBvciBkaXN0cmlidXRpb24gaW4gY29tbWVyY2lhbCBwcm9kdWN0cy4KKi8KbGlicmFyeSBBZHZhbmNlZElsbG5lc3NhbmRGcmFpbHR5IHZlcnNpb24gJzIuMi4wMDAnCgp1c2luZyBVU1F1YWxpdHlDb3JlIHZlcnNpb24gJzAuNS4wJwp1c2luZyBVU0NvcmUgdmVyc2lvbiAnNi4xLjAtZGVyaXZlZCcKdXNpbmcgRkhJUiB2ZXJzaW9uICc0LjAuMScKCmluY2x1ZGUgaGw3LmZoaXIudXYuY3FsLkZISVJIZWxwZXJzIHZlcnNpb24gJzQuMC4xJyBjYWxsZWQgRkhJUkhlbHBlcnMKaW5jbHVkZSBobDcuZmhpci51di5jcWwuRkhJUkNvbW1vbiB2ZXJzaW9uICcyLjAuMCcgY2FsbGVkIEZISVJDb21tb24KaW5jbHVkZSBobDcuZmhpci51cy5jcWwuQ3VtdWxhdGl2ZU1lZGljYXRpb25EdXJhdGlvbiB2ZXJzaW9uICcyLjAuMCcgY2FsbGVkIENNRAoKaW5jbHVkZSBTdGF0dXMgdmVyc2lvbiAnMi4yLjAwMCcgY2FsbGVkIFN0YXR1cwoKY29kZXN5c3RlbSAiTE9JTkMiOiAnaHR0cDovL2xvaW5jLm9yZycKY29kZXN5c3RlbSAiU05PTUVEQ1QiOiAnaHR0cDovL3Nub21lZC5pbmZvL3NjdCcKCnZhbHVlc2V0ICJBZHZhbmNlZCBJbGxuZXNzIjogJ2h0dHA6Ly9jdHMubmxtLm5paC5nb3YvZmhpci9WYWx1ZVNldC8yLjE2Ljg0MC4xLjExMzg4My4zLjQ2NC4xMDAzLjExMC4xMi4xMDgyJwp2YWx1ZXNldCAiRGVtZW50aWEgTWVkaWNhdGlvbnMiOiAnaHR0cDovL2N0cy5ubG0ubmloLmdvdi9maGlyL1ZhbHVlU2V0LzIuMTYuODQwLjEuMTEzODgzLjMuNDY0LjEwMDMuMTk2LjEyLjE1MTAnCnZhbHVlc2V0ICJGcmFpbHR5IERldmljZSI6ICdodHRwOi8vY3RzLm5sbS5uaWguZ292L2ZoaXIvVmFsdWVTZXQvMi4xNi44NDAuMS4xMTM4ODMuMy40NjQuMTAwMy4xMTguMTIuMTMwMCcKdmFsdWVzZXQgIkZyYWlsdHkgRGlhZ25vc2lzIjogJ2h0dHA6Ly9jdHMubmxtLm5paC5nb3YvZmhpci9WYWx1ZVNldC8yLjE2Ljg0MC4xLjExMzg4My4zLjQ2NC4xMDAzLjExMy4xMi4xMDc0Jwp2YWx1ZXNldCAiRnJhaWx0eSBFbmNvdW50ZXIiOiAnaHR0cDovL2N0cy5ubG0ubmloLmdvdi9maGlyL1ZhbHVlU2V0LzIuMTYuODQwLjEuMTEzODgzLjMuNDY0LjEwMDMuMTAxLjEyLjEwODgnCnZhbHVlc2V0ICJGcmFpbHR5IFN5bXB0b20iOiAnaHR0cDovL2N0cy5ubG0ubmloLmdvdi9maGlyL1ZhbHVlU2V0LzIuMTYuODQwLjEuMTEzODgzLjMuNDY0LjEwMDMuMTEzLjEyLjEwNzUnCiAKY29kZSAiSG91c2luZyBzdGF0dXMiOiAnNzE4MDItMycgZnJvbSAiTE9JTkMiIGRpc3BsYXkgJ0hvdXNpbmcgc3RhdHVzJwpjb2RlICJMaXZlcyBpbiBudXJzaW5nIGhvbWUgKGZpbmRpbmcpIjogJzE2MDczNDAwMCcgZnJvbSAiU05PTUVEQ1QiIGRpc3BsYXkgJ0xpdmVzIGluIG51cnNpbmcgaG9tZSAoZmluZGluZyknCmNvZGUgIk1lZGljYWwgZXF1aXBtZW50IHVzZWQiOiAnOTgxODEtMScgZnJvbSAiTE9JTkMiIGRpc3BsYXkgJ01lZGljYWwgZXF1aXBtZW50IHVzZWQnCgpwYXJhbWV0ZXIgIk1lYXN1cmVtZW50IFBlcmlvZCIgSW50ZXJ2YWw8RGF0ZVRpbWU+Cgpjb250ZXh0IFBhdGllbnQKCmRlZmluZSAiSXMgQWdlIDY2IG9yIE9sZGVyIHdpdGggQWR2YW5jZWQgSWxsbmVzcyBhbmQgRnJhaWx0eSI6CiAgIEFnZUluWWVhcnNBdChkYXRlIGZyb20gZW5kIG9mICJNZWFzdXJlbWVudCBQZXJpb2QiKSA+PSA2NgogICAgYW5kICJIYXMgQ3JpdGVyaWEgSW5kaWNhdGluZyBGcmFpbHR5IgogICAgYW5kICggIkhhcyBBZHZhbmNlZCBJbGxuZXNzIGluIFllYXIgQmVmb3JlIG9yIER1cmluZyBNZWFzdXJlbWVudCBQZXJpb2QiCiAgICAgICAgb3IgIkhhcyBEZW1lbnRpYSBNZWRpY2F0aW9ucyBpbiBZZWFyIEJlZm9yZSBvciBEdXJpbmcgTWVhc3VyZW1lbnQgUGVyaW9kIgogICAgKQoKZGVmaW5lICJJcyBBZ2UgNjYgdG8gODAgd2l0aCBBZHZhbmNlZCBJbGxuZXNzIGFuZCBGcmFpbHR5IG9yIElzIEFnZSA4MSBvciBPbGRlciB3aXRoIEZyYWlsdHkiOgogICggQWdlSW5ZZWFyc0F0KGRhdGUgZnJvbSBlbmQgb2YgIk1lYXN1cmVtZW50IFBlcmlvZCIpIGluIEludGVydmFsWzY2LCA4MF0KICAgICAgYW5kICJIYXMgQ3JpdGVyaWEgSW5kaWNhdGluZyBGcmFpbHR5IgogICAgICBhbmQgKCAiSGFzIEFkdmFuY2VkIElsbG5lc3MgaW4gWWVhciBCZWZvcmUgb3IgRHVyaW5nIE1lYXN1cmVtZW50IFBlcmlvZCIKICAgICAgICAgIG9yICJIYXMgRGVtZW50aWEgTWVkaWNhdGlvbnMgaW4gWWVhciBCZWZvcmUgb3IgRHVyaW5nIE1lYXN1cmVtZW50IFBlcmlvZCIKICAgICAgKQogICkKICAgIG9yICggQWdlSW5ZZWFyc0F0KGRhdGUgZnJvbSBlbmQgb2YgIk1lYXN1cmVtZW50IFBlcmlvZCIpPj0gODEKICAgICAgICBhbmQgIkhhcyBDcml0ZXJpYSBJbmRpY2F0aW5nIEZyYWlsdHkiCiAgICApCgpkZWZpbmUgIkhhcyBDcml0ZXJpYSBJbmRpY2F0aW5nIEZyYWlsdHkiOgogIGV4aXN0cyAoICgoW1VTUXVhbGl0eUNvcmUuRGV2aWNlUmVxdWVzdDogIkZyYWlsdHkgRGV2aWNlIl0pLmlzRGV2aWNlT3JkZXJQZXJzb25hbFVzZURldmljZXMoKSkgRnJhaWx0eURldmljZU9yZGVyCiAgICAgIHdoZXJlIEZyYWlsdHlEZXZpY2VPcmRlci5hdXRob3JlZE9uLnRvSW50ZXJ2YWwoKSBkdXJpbmcgZGF5IG9mICJNZWFzdXJlbWVudCBQZXJpb2QiCiAgKQogICAgb3IgZXhpc3RzICggKChbT2JzZXJ2YXRpb25TY3JlZW5pbmdBc3Nlc3NtZW50OiAiTWVkaWNhbCBlcXVpcG1lbnQgdXNlZCJdKS5pc0Fzc2Vzc21lbnRQZXJmb3JtZWQoKSkgRXF1aXBtZW50VXNlZAogICAgICAgIHdoZXJlIEVxdWlwbWVudFVzZWQudmFsdWUgYXMgQ29kZWFibGVDb25jZXB0IGluICJGcmFpbHR5IERldmljZSIgCiAgICAgICAgYW5kIEVxdWlwbWVudFVzZWQuZWZmZWN0aXZlLnRvSW50ZXJ2YWwoKSBlbmRzIGR1cmluZyBkYXkgb2YgIk1lYXN1cmVtZW50IFBlcmlvZCIKICAgICkKICAgIC8vIFRPRE86IENvbnNpZGVyIHdoZXRoZXIgdG8ga2VlcCB0aGlzIGFzIHRoZSB1bmlvbiBvZiBwcm9ibGVtcyBhbmQgZW5jb3VudGVyIGRpYWdub3NlcwogICAgb3IgZXhpc3RzICggKChbRkhJUi5Db25kaXRpb246ICJGcmFpbHR5IERpYWdub3NpcyJdKS52ZXJpZmllZCgpKSBGcmFpbHR5RGlhZ25vc2lzCiAgICAgICAgd2hlcmUgRnJhaWx0eURpYWdub3Npcy5wcmV2YWxlbmNlSW50ZXJ2YWwoKSBvdmVybGFwcyBkYXkgb2YgIk1lYXN1cmVtZW50IFBlcmlvZCIKICAgICkKICAgIG9yIGV4aXN0cyAoICgoW1VTUXVhbGl0eUNvcmUuRW5jb3VudGVyOiAiRnJhaWx0eSBFbmNvdW50ZXIiXSkuaXNFbmNvdW50ZXJQZXJmb3JtZWQoKSkgRnJhaWx0eUVuY291bnRlcgogICAgICAgIHdoZXJlIEZyYWlsdHlFbmNvdW50ZXIucGVyaW9kIG92ZXJsYXBzIGRheSBvZiAiTWVhc3VyZW1lbnQgUGVyaW9kIgogICAgKQogICAgb3IgZXhpc3RzICggKChbVVNRdWFsaXR5Q29yZS5TaW1wbGVPYnNlcnZhdGlvbjogIkZyYWlsdHkgU3ltcHRvbSJdKS5pc1N5bXB0b20oKSkgRnJhaWx0eVN5bXB0b20KICAgICAgICB3aGVyZSBGcmFpbHR5U3ltcHRvbS5lZmZlY3RpdmUudG9JbnRlcnZhbCgpIG92ZXJsYXBzIGRheSBvZiAiTWVhc3VyZW1lbnQgUGVyaW9kIgogICAgKQoKZGVmaW5lICJIYXMgQWR2YW5jZWQgSWxsbmVzcyBpbiBZZWFyIEJlZm9yZSBvciBEdXJpbmcgTWVhc3VyZW1lbnQgUGVyaW9kIjoKLy8gVE9ETzogQ29uc2lkZXIgd2hldGhlciB0byBrZWVwIHRoaXMgYXMgdGhlIHVuaW9uIG9mIHByb2JsZW1zIGFuZCBlbmNvdW50ZXIgZGlhZ25vc2VzCmV4aXN0cyAoKChbQ29uZGl0aW9uOiAiQWR2YW5jZWQgSWxsbmVzcyJdKS52ZXJpZmllZCgpKSBBZHZhbmNlZElsbG5lc3NEaWFnbm9zaXMKd2hlcmUgQWR2YW5jZWRJbGxuZXNzRGlhZ25vc2lzLnByZXZhbGVuY2VJbnRlcnZhbCgpIHN0YXJ0cyBkdXJpbmcgZGF5IG9mIEludGVydmFsW3N0YXJ0IG9mICJNZWFzdXJlbWVudCBQZXJpb2QiIC0gMSB5ZWFyLCBlbmQgb2YgIk1lYXN1cmVtZW50IFBlcmlvZCJdKQoKZGVmaW5lICJIYXMgRGVtZW50aWEgTWVkaWNhdGlvbnMgaW4gWWVhciBCZWZvcmUgb3IgRHVyaW5nIE1lYXN1cmVtZW50IFBlcmlvZCI6CiAgZXhpc3RzICgoIChbRkhJUi5NZWRpY2F0aW9uUmVxdWVzdDogIkRlbWVudGlhIE1lZGljYXRpb25zIl0pLmlzTWVkaWNhdGlvbkFjdGl2ZSgpKSBEZW1lbnRpYU1lZGljYXRpb24KICAgICAgd2hlcmUgRGVtZW50aWFNZWRpY2F0aW9uLm1lZGljYXRpb25SZXF1ZXN0UGVyaW9kKCkgb3ZlcmxhcHMgZGF5IG9mIEludGVydmFsW3N0YXJ0IG9mICJNZWFzdXJlbWVudCBQZXJpb2QiIC0gMSB5ZWFyLCAKICAgICAgICBlbmQgb2YgIk1lYXN1cmVtZW50IFBlcmlvZCJdCiAgKQoKZGVmaW5lICJJcyBBZ2UgNjYgb3IgT2xkZXIgTGl2aW5nIExvbmcgVGVybSBpbiBhIE51cnNpbmcgSG9tZSI6CiAgQWdlSW5ZZWFyc0F0KGRhdGUgZnJvbSBlbmQgb2YgIk1lYXN1cmVtZW50IFBlcmlvZCIpID49IDY2CiAgICBhbmQgKCAoIExhc3QoICgoW09ic2VydmF0aW9uU2NyZWVuaW5nQXNzZXNzbWVudDogIkhvdXNpbmcgc3RhdHVzIl0pLmlzQXNzZXNzbWVudFBlcmZvcm1lZCgpKSBIb3VzaW5nU3RhdHVzICAgIAogICAgICAgICAgd2hlcmUgSG91c2luZ1N0YXR1cy5lZmZlY3RpdmUudG9JbnRlcnZhbCgpIGVuZHMgb24gb3IgYmVmb3JlIAogICAgICAgICAgZGF5IG9mIGVuZCBvZiAiTWVhc3VyZW1lbnQgUGVyaW9kIgogICAgICAgICAgc29ydCBieSAKICAgICAgICAgIGVuZCBvZiBlZmZlY3RpdmUudG9JbnRlcnZhbCgpIGFzYwogICAgICApKSBMYXN0SG91c2luZ1N0YXR1cwogICAgICAgIHdoZXJlIExhc3RIb3VzaW5nU3RhdHVzLnZhbHVlIH4gIkxpdmVzIGluIG51cnNpbmcgaG9tZSAoZmluZGluZykiCiAgICApIGlzIG5vdCBudWxsCiAg"/>
</content>
</Library>