Draft dQM CMS Content Implementation Guide
2025.1.0 - CI Build
Draft dQM CMS Content Implementation Guide, published by cqframework. This guide is not an authorized publication; it is the continuous build for version 2025.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-2025/ and changes regularly. See the Directory of published versions
| Draft as of 2026-09-19 |
<Library xmlns="http://hl7.org/fhir">
<id value="CMS816FHIRHHHypo"/>
<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">Version</th>
<td class="content-container">1.1.000</td>
</tr>
<tr>
<th scope="row" class="row-header">Status</th>
<td class="content-container">Draft</td>
</tr>
<tr>
<th scope="row" class="row-header">Type</th>
<td class="content-container">
<a href="http://terminology.hl7.org/7.1.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 CMS816FHIRHHHypo version '1.1.000'
using USQualityCore version '0.1.0-cibuild'
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.USCoreCommon version '2.0.0-ballot' called USCoreCommon
include hl7.fhir.us.cql.USCoreElements version '2.0.0-ballot' called USCoreElements
include CQMCommon version '5.1.000' called CQMCommon
include USQualityCoreCommon version '0.1.0-cibuild' called USQualityCoreCommon
include SupplementalDataElements version '6.1.000' called SDE
include Status version '2.1.000' called Status
valueset "Encounter Inpatient": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.666.5.307'
valueset "Glucose Lab Test Mass Per Volume": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1248.34'
valueset "Hypoglycemics Severe Hypoglycemia": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1196.393'
valueset "Positive Pregnancy Status": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1099.24'
parameter "Measurement Period" Interval<DateTime>
default Interval[@2026-01-01T00:00:00.000Z, @2027-01-01T00:00:00.000Z)
context Patient
define "Denominator":
"Initial Population"
define "Encounter With Severe Hypoglycemic Harm Event":
from
"Denominator" InpatientHospitalization,
"Severe Hypoglycemic Harm Event" HypoglycemicEvent
let GlucoseTestTime: HypoglycemicEvent.effective.earliest ( ),
HospitalizationInterval: InpatientHospitalization.hospitalizationWithObservation ( )
where GlucoseTestTime during HospitalizationInterval
return InpatientHospitalization
define "Glucose Test With Result Less Than 40":
from
"Denominator" InpatientHospitalization,
"Hypoglycemic Medication Administration" HypoglycemicMedication,
["LaboratoryResultObservation": "Glucose Lab Test Mass Per Volume"] GlucoseTest
let HospitalizationInterval: InpatientHospitalization.hospitalizationWithObservation ( ),
HypoglycemicMedicationStart: HypoglycemicMedication.effective.toInterval ( ),
GlucoseTestTime: GlucoseTest.effective.earliest ( )
where GlucoseTestTime during HospitalizationInterval
and GlucoseTest.status in { 'final', 'amended', 'corrected' }
and GlucoseTest.value < 40 'mg/dL'
and HypoglycemicMedicationStart starts 24 hours or less before or on GlucoseTestTime
return GlucoseTest
define "Hypoglycemic Medication Administration":
["MedicationAdministration": "Hypoglycemics Severe Hypoglycemia"] HypoMedication
where HypoMedication.status = 'completed'
define "Initial Population":
"Encounter With Hypoglycemic Medication Administration"
define "Numerator":
"Encounter With Severe Hypoglycemic Harm Event"
define "Qualifying Encounter":
["Encounter": "Encounter Inpatient"] InpatientEncounter
where AgeInYearsAt(date from start of InpatientEncounter.period) >= 18
and InpatientEncounter.period ends during day of "Measurement Period"
and InpatientEncounter.status = 'finished'
define "SDE Ethnicity":
SDE."SDE Ethnicity"
define "SDE Payer":
SDE."SDE Payer"
define "SDE Race":
SDE."SDE Race"
define "SDE Sex":
SDE."SDE Sex"
define "Encounter With Hypoglycemic Medication Administration":
"Qualifying Encounter" InpatientHospitalization
with "Hypoglycemic Medication Administration" HypoglycemicMedication
such that HypoglycemicMedication.effective.toInterval ( ) starts during InpatientHospitalization.hospitalizationWithObservation ( )
define "Low Glucose Test Followed By Glucose Test Result Greater Than 80":
from
"Denominator" InpatientHospitalization,
"Glucose Test With Result Less Than 40" LowGlucoseTest,
["LaboratoryResultObservation": "Glucose Lab Test Mass Per Volume"] FollowupGlucoseTest
let GlucoseTestTime: LowGlucoseTest.effective.earliest ( ),
FollowupGlucoseTestTime: FollowupGlucoseTest.effective.earliest ( )
where FollowupGlucoseTestTime 5 minutes or less after GlucoseTestTime
and GlucoseTestTime during InpatientHospitalization.hospitalizationWithObservation ( )
and FollowupGlucoseTestTime during InpatientHospitalization.hospitalizationWithObservation ( )
and FollowupGlucoseTest.id !~ LowGlucoseTest.id
and FollowupGlucoseTest.status in { 'final', 'amended', 'corrected' }
and FollowupGlucoseTest.value > 80 'mg/dL'
return LowGlucoseTest
define "Severe Hypoglycemic Harm Event":
"Glucose Test With Result Less Than 40" LowGlucoseTest
where not ( LowGlucoseTest.id in "Low Glucose Test Followed By Glucose Test Result Greater Than 80".id )</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/uv/crmi/StructureDefinition/crmi-softwaresystem">
<valueReference>
<reference value="Device/cqf-tooling"/>
</valueReference>
</extension>
<url value="https://madie.cms.gov/Library/CMS816FHIRHHHypo"/>
<version value="1.1.000"/>
<name value="CMS816FHIRHHHypo"/>
<status value="draft"/>
<type>
<coding>
<system value="http://terminology.hl7.org/CodeSystem/library-type"/>
<code value="logic-library"/>
</coding>
</type>
<date value="2026-09-19T16:31:14+00:00"/>
<content>
<contentType value="text/cql"/>
<data
value="LyoKTk9URTogRm9yIHVzZSBieSBNYXJjaCAyMDI2IFVTIFJlYWxtIENvbm5lY3RhdGhvbiBwYXJ0aWNpcGFudHMgZm9yIGludGVybmFsIHVzZSBvbmx5LiBOb3QgZm9yIHVzZSBvciBkaXN0cmlidXRpb24gaW4gY29tbWVyY2lhbCBwcm9kdWN0cy4KKi8KbGlicmFyeSBDTVM4MTZGSElSSEhIeXBvIHZlcnNpb24gJzEuMS4wMDAnCgp1c2luZyBVU1F1YWxpdHlDb3JlIHZlcnNpb24gJzAuMS4wLWNpYnVpbGQnCnVzaW5nIFVTQ29yZSB2ZXJzaW9uICc2LjEuMC1kZXJpdmVkJwp1c2luZyBGSElSIHZlcnNpb24gJzQuMC4xJwoKaW5jbHVkZSBobDcuZmhpci51di5jcWwuRkhJUkhlbHBlcnMgdmVyc2lvbiAnNC4wLjEnIGNhbGxlZCBGSElSSGVscGVycwppbmNsdWRlIGhsNy5maGlyLnV2LmNxbC5GSElSQ29tbW9uIHZlcnNpb24gJzIuMC4wJyBjYWxsZWQgRkhJUkNvbW1vbgppbmNsdWRlIGhsNy5maGlyLnVzLmNxbC5VU0NvcmVDb21tb24gdmVyc2lvbiAnMi4wLjAtYmFsbG90JyBjYWxsZWQgVVNDb3JlQ29tbW9uCmluY2x1ZGUgaGw3LmZoaXIudXMuY3FsLlVTQ29yZUVsZW1lbnRzIHZlcnNpb24gJzIuMC4wLWJhbGxvdCcgY2FsbGVkIFVTQ29yZUVsZW1lbnRzCgppbmNsdWRlIENRTUNvbW1vbiB2ZXJzaW9uICc1LjEuMDAwJyBjYWxsZWQgQ1FNQ29tbW9uCmluY2x1ZGUgVVNRdWFsaXR5Q29yZUNvbW1vbiB2ZXJzaW9uICcwLjEuMC1jaWJ1aWxkJyBjYWxsZWQgVVNRdWFsaXR5Q29yZUNvbW1vbgppbmNsdWRlIFN1cHBsZW1lbnRhbERhdGFFbGVtZW50cyB2ZXJzaW9uICc2LjEuMDAwJyBjYWxsZWQgU0RFCmluY2x1ZGUgU3RhdHVzIHZlcnNpb24gJzIuMS4wMDAnIGNhbGxlZCBTdGF0dXMKCnZhbHVlc2V0ICJFbmNvdW50ZXIgSW5wYXRpZW50IjogJ2h0dHA6Ly9jdHMubmxtLm5paC5nb3YvZmhpci9WYWx1ZVNldC8yLjE2Ljg0MC4xLjExMzg4My4zLjY2Ni41LjMwNycKdmFsdWVzZXQgIkdsdWNvc2UgTGFiIFRlc3QgTWFzcyBQZXIgVm9sdW1lIjogJ2h0dHA6Ly9jdHMubmxtLm5paC5nb3YvZmhpci9WYWx1ZVNldC8yLjE2Ljg0MC4xLjExMzc2Mi4xLjQuMTI0OC4zNCcKdmFsdWVzZXQgIkh5cG9nbHljZW1pY3MgU2V2ZXJlIEh5cG9nbHljZW1pYSI6ICdodHRwOi8vY3RzLm5sbS5uaWguZ292L2ZoaXIvVmFsdWVTZXQvMi4xNi44NDAuMS4xMTM3NjIuMS40LjExOTYuMzkzJwp2YWx1ZXNldCAiUG9zaXRpdmUgUHJlZ25hbmN5IFN0YXR1cyI6ICdodHRwOi8vY3RzLm5sbS5uaWguZ292L2ZoaXIvVmFsdWVTZXQvMi4xNi44NDAuMS4xMTM3NjIuMS40LjEwOTkuMjQnCgpwYXJhbWV0ZXIgIk1lYXN1cmVtZW50IFBlcmlvZCIgSW50ZXJ2YWw8RGF0ZVRpbWU+CiAgZGVmYXVsdCBJbnRlcnZhbFtAMjAyNi0wMS0wMVQwMDowMDowMC4wMDBaLCBAMjAyNy0wMS0wMVQwMDowMDowMC4wMDBaKQoKY29udGV4dCBQYXRpZW50CgpkZWZpbmUgIkRlbm9taW5hdG9yIjoKICAiSW5pdGlhbCBQb3B1bGF0aW9uIgoKZGVmaW5lICJFbmNvdW50ZXIgV2l0aCBTZXZlcmUgSHlwb2dseWNlbWljIEhhcm0gRXZlbnQiOgogIGZyb20KICAgICJEZW5vbWluYXRvciIgSW5wYXRpZW50SG9zcGl0YWxpemF0aW9uLAogICAgIlNldmVyZSBIeXBvZ2x5Y2VtaWMgSGFybSBFdmVudCIgSHlwb2dseWNlbWljRXZlbnQKICAgIGxldCBHbHVjb3NlVGVzdFRpbWU6IEh5cG9nbHljZW1pY0V2ZW50LmVmZmVjdGl2ZS5lYXJsaWVzdCAoICksCiAgICBIb3NwaXRhbGl6YXRpb25JbnRlcnZhbDogSW5wYXRpZW50SG9zcGl0YWxpemF0aW9uLmhvc3BpdGFsaXphdGlvbldpdGhPYnNlcnZhdGlvbiAoICkKICAgIHdoZXJlIEdsdWNvc2VUZXN0VGltZSBkdXJpbmcgSG9zcGl0YWxpemF0aW9uSW50ZXJ2YWwKICAgIHJldHVybiBJbnBhdGllbnRIb3NwaXRhbGl6YXRpb24KCmRlZmluZSAiR2x1Y29zZSBUZXN0IFdpdGggUmVzdWx0IExlc3MgVGhhbiA0MCI6CiAgZnJvbQogICAgIkRlbm9taW5hdG9yIiBJbnBhdGllbnRIb3NwaXRhbGl6YXRpb24sCiAgICAiSHlwb2dseWNlbWljIE1lZGljYXRpb24gQWRtaW5pc3RyYXRpb24iIEh5cG9nbHljZW1pY01lZGljYXRpb24sCiAgICBbIkxhYm9yYXRvcnlSZXN1bHRPYnNlcnZhdGlvbiI6ICJHbHVjb3NlIExhYiBUZXN0IE1hc3MgUGVyIFZvbHVtZSJdIEdsdWNvc2VUZXN0CiAgICBsZXQgSG9zcGl0YWxpemF0aW9uSW50ZXJ2YWw6IElucGF0aWVudEhvc3BpdGFsaXphdGlvbi5ob3NwaXRhbGl6YXRpb25XaXRoT2JzZXJ2YXRpb24gKCApLAogICAgSHlwb2dseWNlbWljTWVkaWNhdGlvblN0YXJ0OiBIeXBvZ2x5Y2VtaWNNZWRpY2F0aW9uLmVmZmVjdGl2ZS50b0ludGVydmFsICggKSwKICAgIEdsdWNvc2VUZXN0VGltZTogR2x1Y29zZVRlc3QuZWZmZWN0aXZlLmVhcmxpZXN0ICggKQogICAgd2hlcmUgR2x1Y29zZVRlc3RUaW1lIGR1cmluZyBIb3NwaXRhbGl6YXRpb25JbnRlcnZhbAogICAgICBhbmQgR2x1Y29zZVRlc3Quc3RhdHVzIGluIHsgJ2ZpbmFsJywgJ2FtZW5kZWQnLCAnY29ycmVjdGVkJyB9CiAgICAgIGFuZCBHbHVjb3NlVGVzdC52YWx1ZSA8IDQwICdtZy9kTCcKICAgICAgYW5kIEh5cG9nbHljZW1pY01lZGljYXRpb25TdGFydCBzdGFydHMgMjQgaG91cnMgb3IgbGVzcyBiZWZvcmUgb3Igb24gR2x1Y29zZVRlc3RUaW1lCiAgICByZXR1cm4gR2x1Y29zZVRlc3QKCmRlZmluZSAiSHlwb2dseWNlbWljIE1lZGljYXRpb24gQWRtaW5pc3RyYXRpb24iOgogIFsiTWVkaWNhdGlvbkFkbWluaXN0cmF0aW9uIjogIkh5cG9nbHljZW1pY3MgU2V2ZXJlIEh5cG9nbHljZW1pYSJdIEh5cG9NZWRpY2F0aW9uCiAgICB3aGVyZSBIeXBvTWVkaWNhdGlvbi5zdGF0dXMgPSAnY29tcGxldGVkJwoKZGVmaW5lICJJbml0aWFsIFBvcHVsYXRpb24iOgogICJFbmNvdW50ZXIgV2l0aCBIeXBvZ2x5Y2VtaWMgTWVkaWNhdGlvbiBBZG1pbmlzdHJhdGlvbiIKCmRlZmluZSAiTnVtZXJhdG9yIjoKICAiRW5jb3VudGVyIFdpdGggU2V2ZXJlIEh5cG9nbHljZW1pYyBIYXJtIEV2ZW50IgoKZGVmaW5lICJRdWFsaWZ5aW5nIEVuY291bnRlciI6CiAgWyJFbmNvdW50ZXIiOiAiRW5jb3VudGVyIElucGF0aWVudCJdIElucGF0aWVudEVuY291bnRlcgogICAgd2hlcmUgQWdlSW5ZZWFyc0F0KGRhdGUgZnJvbSBzdGFydCBvZiBJbnBhdGllbnRFbmNvdW50ZXIucGVyaW9kKSA+PSAxOAogICAgICBhbmQgSW5wYXRpZW50RW5jb3VudGVyLnBlcmlvZCBlbmRzIGR1cmluZyBkYXkgb2YgIk1lYXN1cmVtZW50IFBlcmlvZCIKICAgICAgYW5kIElucGF0aWVudEVuY291bnRlci5zdGF0dXMgPSAnZmluaXNoZWQnCgpkZWZpbmUgIlNERSBFdGhuaWNpdHkiOgogIFNERS4iU0RFIEV0aG5pY2l0eSIKCmRlZmluZSAiU0RFIFBheWVyIjoKICBTREUuIlNERSBQYXllciIKCmRlZmluZSAiU0RFIFJhY2UiOgogIFNERS4iU0RFIFJhY2UiCgpkZWZpbmUgIlNERSBTZXgiOgogIFNERS4iU0RFIFNleCIKCmRlZmluZSAiRW5jb3VudGVyIFdpdGggSHlwb2dseWNlbWljIE1lZGljYXRpb24gQWRtaW5pc3RyYXRpb24iOgogICJRdWFsaWZ5aW5nIEVuY291bnRlciIgSW5wYXRpZW50SG9zcGl0YWxpemF0aW9uCiAgICB3aXRoICJIeXBvZ2x5Y2VtaWMgTWVkaWNhdGlvbiBBZG1pbmlzdHJhdGlvbiIgSHlwb2dseWNlbWljTWVkaWNhdGlvbgogICAgICBzdWNoIHRoYXQgSHlwb2dseWNlbWljTWVkaWNhdGlvbi5lZmZlY3RpdmUudG9JbnRlcnZhbCAoICkgc3RhcnRzIGR1cmluZyBJbnBhdGllbnRIb3NwaXRhbGl6YXRpb24uaG9zcGl0YWxpemF0aW9uV2l0aE9ic2VydmF0aW9uICggKQoKZGVmaW5lICJMb3cgR2x1Y29zZSBUZXN0IEZvbGxvd2VkIEJ5IEdsdWNvc2UgVGVzdCBSZXN1bHQgR3JlYXRlciBUaGFuIDgwIjoKICBmcm9tCiAgICAiRGVub21pbmF0b3IiIElucGF0aWVudEhvc3BpdGFsaXphdGlvbiwKICAgICJHbHVjb3NlIFRlc3QgV2l0aCBSZXN1bHQgTGVzcyBUaGFuIDQwIiBMb3dHbHVjb3NlVGVzdCwKICAgIFsiTGFib3JhdG9yeVJlc3VsdE9ic2VydmF0aW9uIjogIkdsdWNvc2UgTGFiIFRlc3QgTWFzcyBQZXIgVm9sdW1lIl0gRm9sbG93dXBHbHVjb3NlVGVzdAogICAgbGV0IEdsdWNvc2VUZXN0VGltZTogTG93R2x1Y29zZVRlc3QuZWZmZWN0aXZlLmVhcmxpZXN0ICggKSwKICAgIEZvbGxvd3VwR2x1Y29zZVRlc3RUaW1lOiBGb2xsb3d1cEdsdWNvc2VUZXN0LmVmZmVjdGl2ZS5lYXJsaWVzdCAoICkKICAgIHdoZXJlIEZvbGxvd3VwR2x1Y29zZVRlc3RUaW1lIDUgbWludXRlcyBvciBsZXNzIGFmdGVyIEdsdWNvc2VUZXN0VGltZQogICAgICBhbmQgR2x1Y29zZVRlc3RUaW1lIGR1cmluZyBJbnBhdGllbnRIb3NwaXRhbGl6YXRpb24uaG9zcGl0YWxpemF0aW9uV2l0aE9ic2VydmF0aW9uICggKQogICAgICBhbmQgRm9sbG93dXBHbHVjb3NlVGVzdFRpbWUgZHVyaW5nIElucGF0aWVudEhvc3BpdGFsaXphdGlvbi5ob3NwaXRhbGl6YXRpb25XaXRoT2JzZXJ2YXRpb24gKCApCiAgICAgIGFuZCBGb2xsb3d1cEdsdWNvc2VUZXN0LmlkICF+IExvd0dsdWNvc2VUZXN0LmlkCiAgICAgIGFuZCBGb2xsb3d1cEdsdWNvc2VUZXN0LnN0YXR1cyBpbiB7ICdmaW5hbCcsICdhbWVuZGVkJywgJ2NvcnJlY3RlZCcgfQogICAgICBhbmQgRm9sbG93dXBHbHVjb3NlVGVzdC52YWx1ZSA+IDgwICdtZy9kTCcKICAgIHJldHVybiBMb3dHbHVjb3NlVGVzdAoKZGVmaW5lICJTZXZlcmUgSHlwb2dseWNlbWljIEhhcm0gRXZlbnQiOgogICJHbHVjb3NlIFRlc3QgV2l0aCBSZXN1bHQgTGVzcyBUaGFuIDQwIiBMb3dHbHVjb3NlVGVzdAogICAgd2hlcmUgbm90ICggTG93R2x1Y29zZVRlc3QuaWQgaW4gIkxvdyBHbHVjb3NlIFRlc3QgRm9sbG93ZWQgQnkgR2x1Y29zZSBUZXN0IFJlc3VsdCBHcmVhdGVyIFRoYW4gODAiLmlkICk="/>
<url value="https://madie.cms.gov/Library-CMS816FHIRHHHypo.cql"/>
</content>
</Library>