Quality Measure Implementation Guide
2.0.0-ballot - STU 2 Ballot

Quality Measure Implementation Guide - Downloaded Version null See the Directory of published versions

## Library: Advanced Illness and Frailty Exclusion Library

Official URL: http://hl7.org/fhir/uv/cqm/Library/AdvancedIllnessandFrailtyExclusion | Version: 5.12.000 | Highlight text changes?
Standards status: Trial-use Draft as of 2026-04-07 | Maturity Level: 4 | Computable Name: AdvancedIllnessandFrailtyExclusion
Other Identifiers: OID:2.16.840.1.113883.4.642.40.61.28.2

Advanced Illness and Frailty Exclusion Example Library

Metadata
Title | Advanced Illness and Frailty Exclusion Library
Version | 5.12.000
Identifier | urn:oid:2.16.840.1.113883.4.642.40.61.28.2
Status | Draft
Jurisdiction | 001 from http://unstats.un.org/unsd/methods/m49/m49.htm
Topic | FHIR
Topic | CQL
Steward (Publisher) | HL7 International / Clinical Quality Information
Description | Advanced Illness and Frailty Exclusion Example Library
Type | logic-library from http://terminology.hl7.org/CodeSystem/library-type
Dependency | Description: Library FHIRHelpers Resource: http://hl7.org/fhir/uv/cql/Library/FHIRHelpers|4.0.1 Canonical URL: `http://hl7.org/fhir/uv/cql/Library/FHIRHelpers|4.0.1`
Dependency | Description: Library Global Resource: MAT Global Common Functions FHIR Libraryversion: null5.0.000) Canonical URL: `http://hl7.org/fhir/uv/cqm/Library/MATGlobalCommonFunctions|5.0.000`
Dependency | Description: Code System LOINC Resource: Logical Observation Identifiers, Names and Codes (LOINC) Canonical URL: `http://loinc.org`
Dependency | Description: Value Set Acute Inpatient Resource: Acute Inpatient Canonical URL: `http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1083`
Dependency | Description: Value Set Advanced Illness Resource: Advanced Illness Canonical URL: `http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.110.12.1082`
Dependency | Description: Value Set Care Services in Long-Term Residential Facility Resource: Care Services in Long Term Residential Facility Canonical URL: `http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1014`
Dependency | Description: Value Set Dementia Medications Resource: Dementia Medications Canonical URL: `http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.196.12.1510`
Dependency | Description: Value Set ED Resource: ED Canonical URL: `http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1085`
Dependency | Description: Value Set Frailty Device Resource: Frailty Device Canonical URL: `http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.118.12.1300`
Dependency | Description: Value Set Frailty Diagnosis Resource: Frailty Diagnosis Canonical URL: `http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.113.12.1074`
Dependency | Description: Value Set Frailty Encounter Resource: Frailty Encounter Canonical URL: `http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1088`
Dependency | Description: Value Set Frailty Symptom Resource: Frailty Symptom Canonical URL: `http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.113.12.1075`
Dependency | Description: Value Set Nonacute Inpatient Resource: Nonacute Inpatient Canonical URL: `http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1084`
Dependency | Description: Value Set Nursing Facility Visit Resource: Nursing Facility Visit Canonical URL: `http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1012`
Dependency | Description: Value Set Observation Resource: Observation Canonical URL: `http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1086`
Dependency | Description: Value Set Outpatient Resource: Outpatient Canonical URL: `http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1087`
Data Requirement | Type: DeviceRequest Profile(s): DeviceRequest Code Filter(s): Path: code ValueSet: Frailty Device
Data Requirement | Type: Condition Profile(s): Condition Code Filter(s): Path: code ValueSet: Frailty Diagnosis
Data Requirement | Type: Encounter Profile(s): Encounter Code Filter(s): Path: type ValueSet: Frailty Encounter
Data Requirement | Type: Observation Profile(s): Observation Code Filter(s): Path: code ValueSet: Frailty Symptom
Data Requirement | Type: Encounter Profile(s): Encounter Code Filter(s): Path: type ValueSet: Outpatient
Data Requirement | Type: Encounter Profile(s): Encounter Code Filter(s): Path: type ValueSet: Observation
Data Requirement | Type: Encounter Profile(s): Encounter Code Filter(s): Path: type ValueSet: ED
Data Requirement | Type: Encounter Profile(s): Encounter Code Filter(s): Path: type ValueSet: Nonacute Inpatient
Data Requirement | Type: Encounter Profile(s): Encounter Code Filter(s): Path: type ValueSet: Acute Inpatient
Data Requirement | Type: Condition Profile(s): Condition Code Filter(s): Path: code ValueSet: Advanced Illness
Data Requirement | Type: MedicationDispense Profile(s): MedicationDispense
Data Requirement | Type: Medication Profile(s): Medication
Data Requirement | Type: Encounter Profile(s): Encounter Code Filter(s): Path: type ValueSet: Care Services in Long Term Residential Facility
Data Requirement | Type: Encounter Profile(s): Encounter Code Filter(s): Path: type ValueSet: Nursing Facility Visit
Parameters
Name | Use | Card. | Type | Documentation
Measurement Period | In | 0..1 | Period |
Patient | Out | 0..1 | Patient |
Has Criteria Indicating Frailty | Out | 0..1 | boolean |
Outpatient Encounters with Advanced Illness | Out | 0..* | Encounter |
Inpatient Encounter with Advanced Illness | Out | 0..* | Encounter |
Dementia Medications In Year Before or During Measurement Period | Out | 0..* | MedicationDispense |
Advanced Illness and Frailty Exclusion Including Over Age 80 | Out | 0..1 | boolean |
Advanced Illness and Frailty Exclusion Not Including Over Age 80 | Out | 0..1 | boolean |
Long Term Care Periods During Measurement Period | Out | 0..* | Period |
Long Term Care Periods Longer Than 90 Consecutive Days | Out | 0..1 | boolean |
Library Content
CQL Content |
    /*
    This example is a work in progress and should not be considered a final specification
    or recommendation for guidance. This example will help guide and direct the process
    of finding conventions and usage patterns that meet the needs of the various stakeholders
    in the measure development community.
    */
    library AdvancedIllnessandFrailtyExclusion version '5.12.000'

    using FHIR version '4.0.1'

    include hl7.fhir.uv.cql.FHIRHelpers version '4.0.1' called FHIRHelpers

    include MATGlobalCommonFunctions version '5.0.000' called Global

    codesystem "LOINC": 'http://loinc.org'

    valueset "Acute Inpatient": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1083'
    valueset "Advanced Illness": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.110.12.1082'
    valueset "Care Services in Long-Term Residential Facility": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1014'
    valueset "Dementia Medications": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.196.12.1510'
    valueset "ED": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1085'
    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'
    valueset "Nonacute Inpatient": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1084'
    valueset "Nursing Facility Visit": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1012'
    valueset "Observation": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1086'
    valueset "Outpatient": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1087'

    code "Birth date": '21112-8' from "LOINC" display 'Birth date'

    parameter "Measurement Period" Interval<DateTime>
      default Interval[@2019-01-01T00:00:00.0, @2020-01-01T00:00:00.0)

    context Patient

    define "Advanced Illness and Frailty Exclusion Including Over Age 80":
      //If the measure includes populations age 80 and older, then use this logic:
          	(
                  Global."CalendarAgeInYearsAt"(FHIRHelpers.ToDate(Patient.birthDate), start of "Measurement Period")in Interval[66, 80]
                      and "Has Criteria Indicating Frailty"
                      and ( Count("Outpatient Encounters with Advanced Illness")>= 2
                          or exists ( "Inpatient Encounter with Advanced Illness" )
                          or exists "Dementia Medications In Year Before or During Measurement Period"
                      )
          	)
          		or (
                      Global."CalendarAgeInYearsAt"(FHIRHelpers.ToDate(Patient.birthDate), start of "Measurement Period")>= 81
          			    and "Has Criteria Indicating Frailty"
          		)

    define "Advanced Illness and Frailty Exclusion Not Including Over Age 80":
      //If the measure does NOT include populations age 80 and older, then use this logic:
          	Global."CalendarAgeInYearsAt"(FHIRHelpers.ToDate(Patient.birthDate), start of "Measurement Period")>= 65
                  and "Has Criteria Indicating Frailty"
                  and ( Count("Outpatient Encounters with Advanced Illness")>= 2
                      or exists ( "Inpatient Encounter with Advanced Illness" )
                      or exists "Dementia Medications In Year Before or During Measurement Period"
                  )

    define "Dementia Medications In Year Before or During Measurement Period":
      ["MedicationDispense": "Dementia Medications"] DementiaMed
          		where DementiaMed.whenHandedOver during Interval[
                      ( start of "Measurement Period" - 1 year ), end of "Measurement Period"
                  ]

    define "Has Criteria Indicating Frailty":
      //Ask Bryn about devices
          	exists ( [DeviceRequest: "Frailty Device"] FrailtyDeviceOrder
          			where FrailtyDeviceOrder.authoredOn during "Measurement Period"
          	)
              // DeviceUseStatement has a known issue with the publication tooling
              // so it is removed to allow this IG to publish until that is fixed
          		//or exists ( [DeviceUseStatement: "Frailty Device"] FrailtyDeviceUse
          		//		where Global."Normalize Interval"(FrailtyDeviceUse.timing) overlaps "Measurement Period"
          		//)
          		or exists ( [Condition: "Frailty Diagnosis"] FrailtyDiagnosis
          				where Global."Prevalence Period"(FrailtyDiagnosis) overlaps "Measurement Period"
          		)
          		or exists ( [Encounter: "Frailty Encounter"] FrailtyEncounter
          				where FrailtyEncounter.period overlaps "Measurement Period"
          		)
          		or exists ( [Observation: "Frailty Symptom"] FrailtySymptomObservation
          				where Global."Normalize Interval"(FrailtySymptomObservation.effective) overlaps "Measurement Period"
          		)

    define "Inpatient Encounter with Advanced Illness":
      [Encounter: "Acute Inpatient"] InpatientEncounter
          		with [Condition: "Advanced Illness"] AdvancedIllnessDiagnosis
                      such that exists (
                          InpatientEncounter.diagnosis.condition EncounterDiagnosis
                              where EndsWith(EncounterDiagnosis.reference, AdvancedIllnessDiagnosis.id)
                      )
          			and InpatientEncounter.period starts 2 years or less on or before
          			end of "Measurement Period"
          // start here

    define "Long Term Care Periods During Measurement Period":
      ( [Encounter: "Care Services in Long-Term Residential Facility"]
                  		union [Encounter: "Nursing Facility Visit"] ) LongTermFacilityEncounter
                  		where LongTermFacilityEncounter.period overlaps "Measurement Period"
                  		return LongTermFacilityEncounter.period
                  			intersect "Measurement Period"

    define "Long Term Care Periods Longer Than 90 Consecutive Days":
      exists ( "Long Term Care Periods During Measurement Period" LongTermCareDuringMP
            where duration in days of LongTermCareDuringMP > 90
        )

    define "Outpatient Encounters with Advanced Illness":
      ( [Encounter: "Outpatient"]
          		union [Encounter: "Observation"]
          		union [Encounter: "ED"]
          		union [Encounter: "Nonacute Inpatient"] ) OutpatientEncounter
          		 with [Condition: "Advanced Illness"] AdvancedIllnessDiagnosis
                      such that exists (
                          OutpatientEncounter.diagnosis.condition EncounterDiagnosis
                              where EndsWith(EncounterDiagnosis.reference, AdvancedIllnessDiagnosis.id)
                      )
                      and OutpatientEncounter.period starts 2 years or less on or before
          			end of "Measurement Period"

    define function "CumulativeDays"(Intervals List<Interval<DateTime>> ):
      Sum((collapse Intervals)CollapsedInterval
      			return all duration in days of CollapsedInterval
      	)
ELM XML Content |
    Encoded data
ELM JSON Content |
    Encoded data
Generated using version 0.5.4 of the sample-content-ig Liquid templates