eCQM QICore Content Implementation Guide
2024.0.0 - CI Build

eCQM QICore Content Implementation Guide, published by cqframework. This guide is not an authorized publication; it is the continuous build for version 2024.0.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/cqframework/ecqm-content-qicore-2024/ and changes regularly. See the Directory of published versions

Measure: Core Clinical Data Elements for the Hybrid Hospital Wide All Condition All Procedure Risk Standardized Mortality Measure HWMFHIR

Official URL: https://madie.cms.gov/Measure/HybridHospitalWideMortalityFHIR Version: 0.0.001
Draft as of 2024-07-09 Responsible: Centers for Medicare & Medicaid Services (CMS) Computable Name: HybridHospitalWideMortalityFHIR
Other Identifiers: Short Name (use: usual, ), UUID:965255e9-dfeb-42d0-8416-2c4b7ecc5109 (use: official, ), UUID:9a5510d6-6e1b-48a6-8aa3-7540ce826466 (use: official, ), Endorser (use: official, ), Publisher (use: official, )

Copyright/Legal: Limited proprietary coding is contained in these specifications for user convenience. Users of proprietary code sets should obtain all necessary licenses from the owners of the code sets. This material contains SNOMED Clinical Terms(R) (SNOMED CT[R]) copyright 2004-2023 International Health Terminology Standards Development Organisation. All rights reserved. LOINC(R) copyright 2004-2023 Regenstrief Institute, Inc.

This logic is intended to extract electronic clinical data. This is not an electronic clinical quality measure and this logic will not produce measure results. Instead, it will produce a file containing the data that CMS will link with administrative claims to risk adjust the Hybrid HWM outcome measure. It is designed to extract the first resulted set of vital signs and basic laboratory results obtained from hospitalizations for adult Medicare Fee-For-Service (FFS) and Medicare Advantage (MA) patients admitted to acute care hospitals.

UNKNOWN

Title: Core Clinical Data Elements for the Hybrid Hospital Wide All Condition All Procedure Risk Standardized Mortality Measure HWMFHIR
Id: HybridHospitalWideMortalityFHIR
Version: 0.0.001
Url: Core Clinical Data Elements for the Hybrid Hospital Wide All Condition All Procedure Risk Standardized Mortality Measure HWMFHIR
short-name identifier:

CMS844FHIR

version-independent identifier:

urn:uuid:965255e9-dfeb-42d0-8416-2c4b7ecc5109

version-specific identifier:

urn:uuid:9a5510d6-6e1b-48a6-8aa3-7540ce826466

endorser (CMS Consensus Based Entity) identifier:

3502

publisher (CMS) identifier:

844FHIR

Effective Period: 2025-01-01..2025-12-31
Status: draft
Publisher: Centers for Medicare & Medicaid Services (CMS)
Author: Lantana Consulting Group, Yale New Haven Health Service Corporation/ Center for Outcomes Research and Evaluation
Description:

This logic is intended to extract electronic clinical data. This is not an electronic clinical quality measure and this logic will not produce measure results. Instead, it will produce a file containing the data that CMS will link with administrative claims to risk adjust the Hybrid HWM outcome measure. It is designed to extract the first resulted set of vital signs and basic laboratory results obtained from hospitalizations for adult Medicare Fee-For-Service (FFS) and Medicare Advantage (MA) patients admitted to acute care hospitals.

Purpose:

UNKNOWN

Copyright:

Limited proprietary coding is contained in these specifications for user convenience. Users of proprietary code sets should obtain all necessary licenses from the owners of the code sets. This material contains SNOMED Clinical Terms(R) (SNOMED CT[R]) copyright 2004-2023 International Health Terminology Standards Development Organisation. All rights reserved. LOINC(R) copyright 2004-2023 Regenstrief Institute, Inc.

Disclaimer:

These performance specifications are not clinical guidelines and do not establish a standard of medical care, and have not been tested for all potential applications. THE MEASURES AND SPECIFICATIONS ARE PROVIDED “AS IS” WITHOUT WARRANTY OF ANY KIND. Due to technical limitations, registered trademarks are indicated by (R) or [R] and unregistered trademarks are indicated by (TM) or [TM].

Rationale:

The intent of this logic is to extract the FIRST set of clinical data elements from hospital electronic health records (EHRs) for all qualifying hospitalizations. The data will be linked with administrative claims to risk adjust the Hybrid HWM outcome measure. This work addresses stakeholder concerns that clinical data garnered from patients and used by clinicians to guide diagnostic decisions and treatment, are preferable to administrative claims data when profiling hospitals’ case mix. We are calling the list of data elements for extraction the "HWM-specific core clinical data elements" (CCDE). The CCDEs are the first set of vital signs and basic laboratory tests resulted from hospitalizations for adult Medicare FFS and MA patients, age 65 through 94 years (Initial Population), after they arrive at the hospital to which they are subsequently admitted. For example, this first set of data values are often captured in the emergency department or in the pre-operative area, sometimes hours before a patient is admitted to that same facility. Hospitalizations over the age of 94 years are not included to avoid holding hospitals responsible for the survival of the oldest elderly patients, who may be less likely to have survival as a primary goal. While we acknowledge that many elderly patients do have survival beyond 30 days as a primary goal for their hospitalization, with input from our Technical Expert Panel and work groups, we decided to only include hospitalizations between 65 and 94 years of age. These CCDEs were selected because they: 1. reflect patients' clinical status when they first present to the hospital; 2. are clinically and statistically relevant to patient outcomes; 3. are consistently obtained during adult inpatient hospitalizations based on current clinical practice; 4. are captured with a standard definition and recorded in a standard format across providers; and 5. are entered in structured fields that are feasibly retrieved from current EHR systems (YNHHSC/CORE, 2015). Additional data called Linking Variables are used to link EHR data files with administrative claims data for CMS to calculate results for the Hybrid HWM measure, which are: CMS Certification Number (CCN); National Provider Identifier (NPI) for MA patients; Medicare Beneficiary Identifier (MBI); Date of Birth; Sex; Inpatient Admission Date; and Discharge Date.

Clinical recommendation statement:

The logic is not meant to guide or alter the care patients receive. The purpose of this CCDE logic is to extract clinical data that are already routinely captured in EHRs from hospitalizations for adult patients. It is not intended to require that clinical staff perform additional measurements or tests that are not needed for diagnostic assessment or treatment of patients.

Guidance (Usage): These specifications are for use for data with discharges that occur between July 1, 2025 and June 30, 2026. The associated Hospital Specific Report (HSR) is anticipated to be released in Spring 2027. This logic guides the user to extract the FIRST resulted HWM-specific CCDEs for all Medicare FFS and MA hospitalizations for patients aged 65 through 94 years (Initial Population) directly admitted to the hospital or admitted to the same facility after being treated in another area, such as the emergency department or hospital outpatient location. The logic supports extraction of the FIRST set of HWM-specific CCDEs in two different ways, depending on if the patient was a direct admission, meaning that the patient was admitted directly to an inpatient unit without first receiving care in the emergency department or other hospital outpatient locations within the same admitting facility: 1. If the patient was a direct admission, the logic supports extraction of the FIRST resulted vital signs (physical exams) within 2 hours (120 minutes) after the start of the inpatient admission, and the FIRST resulted laboratory tests within 24 hours (1440 minutes) after the start of the inpatient admission. 2. If the patient has values captured prior to admission, for example from the emergency department, pre-operative, or other outpatient area within the hospital, the logic supports extraction of the FIRST resulted vital signs and laboratory tests within 24 hours (1440 minutes) PRIOR to the start of the inpatient admission. All clinical systems used in inpatient and outpatient locations within the hospital facility should be queried when looking for core clinical data element values related to a patient who is subsequently admitted. Value sets for the laboratory tests are represented using Logical Observation Identifiers Names and Codes (LOINC) currently available for these tests. If the institution is using local codes to capture and store relevant laboratory test data, those sites should map that information to the LOINC code for reporting of the core clinical data elements. NOTE: It is recommended hospitals only report the FIRST resulted value for EACH core clinical data element collected in the appropriate timeframe, if available. Hospitals may also choose to report ALL values on an encounter during their entire admission; however, only the first resulted values are utilized in the logic for measure calculation. For each CCDE, it is recommended that hospitals report the below Unified Code for Units of Measure (UCUM) units, however, any unit may be submitted. Where the reported unit is not easily converted to the requested UCUM units, the value will be set to missing and multiple imputation will be used to impute a value based on the characteristics of the CCDE reported. CCDE UCUM Unit: Bicarbonate--------------------------------------meq/L mmol/L Creatinine-----------------------------------------mg/dL Heart rate-----------------------------------------{Beats}/min Hematocrit ---------------------------------------% Oxygen saturation (by pulse oximetry)----% Platelet--------------------------------------------10*3/uL Sodium--------------------------------------------meq/L mmol/L Systolic blood pressure-----------------------mm[Hg] Temperature-------------------------------------Cel [degF] White blood cell count -----------------------{Cells}/uL 10*3/uL 10*9/L For each hospitalization please also submit the following Linking Variables: CMS Certification Number (CCN); National Provider Identifier (NPI) for MA patients; Medicare Beneficiary Identifier (MBI); Inpatient Admission Date; and Discharge Date. The initial population includes patients with inpatient hospitalizations and patients from Acute Hospital Care at Home programs, who are treated and billed as inpatients but receive care in their home. This FHIR-based measure has been derived from the QDM-based measure: CMS844v5. Please refer to the HL7 QI-Core Implementation Guide (https://hl7.org/fhir/us/qicore/STU4.1.1/) for more information on QI-Core and mapping recommendations from QDM to QI-Core 4.1.1 (https://hl7.org/fhir/us/qicore/STU4.1.1/qdm-to-qicore.html).
Population Criteria:
6385011c4ba3d47c885c02aa
Initial Population: All Medicare FFS and MA hospitalizations for patients aged 65 through 94 years at the start of an inpatient admission, where the length of stay is less than 365 days, and the hospitalization ends during the measurement period. NOTE: All Medicare FFS and MA hospitalizations meeting the above criteria should be included, regardless of whether Medicare FFS/MA is the primary, secondary, or tertiary payer.
Supplemental Data Elements:

SDE Ethnicity

SDE Payer

SDE Race

SDE Sex

Encounter with First Bicarbonate Lab Test

Encounter with First Body Temperature

Encounter with First Creatinine Lab Test

Encounter with First Heart Rate

Encounter with First Hematocrit Lab Test

Encounter with First Oxygen Saturation

Encounter with First Platelet Lab Test

Encounter with First Sodium Lab Test

Encounter with First White Blood Cells Lab Test

Qualifying Blood Pressure Reading

Test2

Risk Adjustment Variable:

Encounter with First Body Temperature

Encounter with First Heart Rate

Encounter with First Oxygen Saturation

Encounter with First Systolic Blood Pressure

Encounter with First Bicarbonate Lab Test

Encounter with First Creatinine Lab Test

Encounter with First Hematocrit Lab Test

Encounter with First Platelet Lab Test

Encounter with First Sodium Lab Test

Encounter with First White Blood Cells Lab Test

Supplemental Data Guidance : For hospitalizations in the Initial Population, report the FIRST value for vital signs (physical exams) resulted within the 24 hours prior to the inpatient admission. If no values were resulted in the 24 hours prior to the admission (for example, for patients directly admitted to the hospital) report the first value resulted within 2 hours after the start of the inpatient admission. The physical exam CCDEs are as follows:: Body Temperature Heart rate Oxygen saturation (by pulse oximetry) Systolic blood pressure For laboratory test results, report the FIRST value resulted within the 24 hours prior to admission. If there are no values in the 24 hours prior to admission, report the first value resulted within 24 hours after the start of the inpatient admission. The laboratory tests CCDEs are as follows: Bicarbonate (or carbon dioxide, see Bicarbonate Lab Test value set) Creatinine Hematocrit Platelet Sodium White blood cell count First values for the CCDEs may be resulted in the emergency department or other hospital outpatient locations within the hospital facility before a patient is subsequently admitted to the same hospital. First values for these data elements may also be resulted in an inpatient location for directly admitted patients who do not receive care in the emergency department or other hospital outpatient/same day surgery locations before admission. NOTE: Do not report ALL values on a hospitalization during the entire admission. Only report the FIRST resulted value for EACH CCDE collected in the appropriate timeframe, if available. For every patient in the Initial Population, also identify payer, race, ethnicity and sex.
Risk Adjustment Variable Guidance : For a detailed description of how the core clinical data elements (CCDEs)are used in the Hybrid HWM measure risk adjustment model, see the Hybrid HWM Measure Methodology Report on CMS.gov here: https://qualitynet.cms.gov/inpatient/measures/hybrid/methodology
Libraries:
HybridHospitalWideMortalityFHIR
Terminology and Other Dependencies:
  • Library/CQMCommon|2.2.000
  • Library/FHIRHelpers|4.4.000
  • Library/QICoreCommon|2.1.000
  • Library/SupplementalDataElements|3.5.000
  • Logical Observation Identifiers, Names and Codes (LOINC)
  • AdministrativeGender
  • Encounter Inpatient
  • Medicare payer
  • http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1104.12
  • Observation Services
  • Emergency Department Visit
  • Outpatient Surgery Service
  • Bicarbonate lab test
  • White blood cells count lab test
  • Hematocrit lab test
  • Platelet count lab test
  • Creatinine lab test
  • Payer
  • Oxygen Saturation in Arterial Blood by Pulse Oximetry
  • Sodium lab test
  • Parameters:
    name use min max type
    Measurement Period In 0 1 Period
    Encounter with First Bicarbonate Lab Test Out 0 * Resource
    Encounter with First Heart Rate Out 0 * Resource
    Encounter with First White Blood Cells Lab Test Out 0 * Resource
    Encounter with First Hematocrit Lab Test Out 0 * Resource
    Encounter with First Platelet Lab Test Out 0 * Resource
    Qualifying Blood Pressure Reading Out 0 * Resource
    SDE Race Out 0 1 Resource
    Test2 Out 0 1 Quantity
    SDE Sex Out 0 1 Coding
    Encounter with First Creatinine Lab Test Out 0 * Resource
    Encounter with First Body Temperature Out 0 * Resource
    SDE Payer Out 0 * Resource
    Initial Population Out 0 * Resource
    SDE Ethnicity Out 0 1 Resource
    Encounter with First Oxygen Saturation Out 0 * Resource
    Encounter with First Sodium Lab Test Out 0 * Resource
    DataRequirements:
    Resource Type Resource Elements Valueset Name Valueset
    Encounter(QICoreEncounter) type status status.value period id id.value Observation Services Observation Services
    Encounter(QICoreEncounter) type status status.value period id id.value Emergency Department Visit Emergency Department Visit
    Encounter(QICoreEncounter) type period id id.value Outpatient Surgery Service Outpatient Surgery Service
    Encounter(QICoreEncounter) type status status.value period id id.value Encounter Inpatient Encounter Inpatient
    Patient(QICorePatient) race ethnicity
    Coverage(QICoreCoverage) type Medicare FFS payer Medicare payer
    Coverage(QICoreCoverage) type Medicare Advantage payer http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1104.12
    Coverage(QICoreCoverage) type period Payer Type Payer
    Observation(US Core Laboratory Result Observation Profile) code issued issued.value status status.value value Bicarbonate lab test Bicarbonate lab test
    Observation(US Core Laboratory Result Observation Profile) code issued issued.value status status.value value White blood cells count lab test White blood cells count lab test
    Observation(US Core Laboratory Result Observation Profile) code issued issued.value status status.value value Hematocrit lab test Hematocrit lab test
    Observation(US Core Laboratory Result Observation Profile) code issued issued.value status status.value value Platelet count lab test Platelet count lab test
    Observation(US Core Laboratory Result Observation Profile) code issued issued.value status status.value value Creatinine lab test Creatinine lab test
    Observation(US Core Laboratory Result Observation Profile) code issued issued.value status status.value value Sodium lab test Sodium lab test
    Observation(Observation Heart Rate Profile) effective status status.value value
    Observation(Observation Blood Pressure Profile) effective status status.value
    Observation(Observation Blood Pressure Profile) effective status status.value component
    Observation(Observation Body Temperature Profile) effective status status.value value
    Observation(QICoreObservation) code effective status status.value value Oxygen Saturation by Pulse Oximetry Oxygen Saturation in Arterial Blood by Pulse Oximetry
    Direct Reference Codes:
    display code system
    Systolic BP 8480-6 http://loinc.org
    Male M http://hl7.org/fhir/administrative-gender
    Female F http://hl7.org/fhir/administrative-gender
    Logic Definitions:
    Group Scoring Population Criteria Expression
    6385011c4ba3d47c885c02aa Group scoring: cohort
    Type:

    Outcome

    Rate Aggregation: None
    Improvement Notation:

    decrease

    Initial Population
    define "Initial Population":
      "Inpatient Encounters"
    Library Name Name
    HybridHospitalWideMortalityFHIR Inpatient Encounters
    define "Inpatient Encounters":
      [Encounter: "Encounter Inpatient"] InpatientEncounter
        with ( [Coverage: "Medicare FFS payer"]
          union [Coverage: "Medicare Advantage payer"] ) MedicarePayer
          such that ( InpatientEncounter.hospitalizationWithObservationAndOutpatientSurgeryService ( ).lengthInDays ( ) ) < 365
            and InpatientEncounter.status = 'finished'
            and AgeInYearsAt(date from start of InpatientEncounter.period) in Interval[65, 94]
            and InpatientEncounter.period ends during day of "Measurement Period"
    Library Name Name
    HybridHospitalWideMortalityFHIR Encounter with First Bicarbonate Lab Test
    /* original  define "Blood Pressure Reading":
    ["observation-bp"] BloodPressure
    where BloodPressure.status in {'final', 'amended', 'corrected'}*/
    
    
    define "Encounter with First Bicarbonate Lab Test":
      "Inpatient Encounters" EncounterInpatient
        let FirstBicarbonateLab: First(["USCoreLaboratoryResultObservationProfile": "Bicarbonate lab test"] BicarbonateLab
            where BicarbonateLab.issued.earliest() during Interval[start of EncounterInpatient.period - 1440 minutes, start of EncounterInpatient.period + 1440 minutes]
              and BicarbonateLab.status in { 'final', 'amended', 'corrected' }
              and BicarbonateLab.value is not null
            sort by issued.earliest()
        )
        return {
          EncounterId: EncounterInpatient.id,
          FirstBicarbonateResult: FirstBicarbonateLab.value as Quantity,
          Timing: FirstBicarbonateLab.issued
        }
    Library Name Name
    HybridHospitalWideMortalityFHIR Encounter with First Heart Rate
    define "Encounter with First Heart Rate":
      "Inpatient Encounters" EncounterInpatient
        let FirstHeartRate: First(["observation-heartrate"] HeartRate
            where HeartRate.effective.earliest() during Interval[start of EncounterInpatient.period - 1440 minutes, start of EncounterInpatient.period + 120 minutes]
              and HeartRate.status in { 'final', 'amended', 'corrected' }
              and HeartRate.value is not null
            sort by effective.earliest()
        )
        return {
          EncounterId: EncounterInpatient.id,
          FirstHeartRateResult: FirstHeartRate.value as Quantity,
          Timing: FirstHeartRate.effective.earliest ( )
        }
    Library Name Name
    HybridHospitalWideMortalityFHIR Encounter with First White Blood Cells Lab Test
    define "Encounter with First White Blood Cells Lab Test":
      "Inpatient Encounters" EncounterInpatient
        let FirstWhiteBloodCellLab: First(["USCoreLaboratoryResultObservationProfile": "White blood cells count lab test"] WhiteBloodCellLab
            where WhiteBloodCellLab.issued.earliest() during Interval[start of EncounterInpatient.period - 1440 minutes, start of EncounterInpatient.period + 1440 minutes]
              and WhiteBloodCellLab.status in { 'final', 'amended', 'corrected' }
              and WhiteBloodCellLab.value is not null
            sort by issued.earliest()
        )
        return {
          EncounterId: EncounterInpatient.id,
          FirstWhiteBloodCellResult: FirstWhiteBloodCellLab.value as Quantity,
          Timing: FirstWhiteBloodCellLab.issued
        }
    Library Name Name
    HybridHospitalWideMortalityFHIR Encounter with First Hematocrit Lab Test
    define "Encounter with First Hematocrit Lab Test":
      "Inpatient Encounters" EncounterInpatient
        let FirstHematocritLab: First(["USCoreLaboratoryResultObservationProfile": "Hematocrit lab test"] HematocritLab
            where HematocritLab.issued.earliest() during Interval[start of EncounterInpatient.period - 1440 minutes, start of EncounterInpatient.period + 1440 minutes]
              and HematocritLab.status in { 'final', 'amended', 'corrected' }
              and HematocritLab.value is not null
            sort by issued.earliest()
        )
        return {
          EncounterId: EncounterInpatient.id,
          FirstHematocritResult: FirstHematocritLab.value as Quantity,
          Timing: FirstHematocritLab.issued
        }
    Library Name Name
    HybridHospitalWideMortalityFHIR Encounter with First Platelet Lab Test
    define "Encounter with First Platelet Lab Test":
      "Inpatient Encounters" EncounterInpatient
        let FirstPlateletLab: First(["USCoreLaboratoryResultObservationProfile": "Platelet count lab test"] PlateletLab
            where PlateletLab.issued.earliest() during Interval[start of EncounterInpatient.period - 1440 minutes, start of EncounterInpatient.period + 1440 minutes]
              and PlateletLab.status in { 'final', 'amended', 'corrected' }
              and PlateletLab.value is not null
            sort by issued.earliest()
        )
        return {
          EncounterId: EncounterInpatient.id,
          FirstPlateletResult: FirstPlateletLab.value as Quantity,
          Timing: FirstPlateletLab.issued
        }
    Library Name Name
    HybridHospitalWideMortalityFHIR Qualifying Blood Pressure Reading
    /* original  define "Encounter with First Systolic Blood Pressure":
    "Inpatient Encounters" EncounterInpatient
    let FirstSystolicBP: First("Blood Pressure Reading" BPReading
    where BPReading.effective.earliest() during Interval[start of EncounterInpatient.period - 1440 minutes, start of EncounterInpatient.period + 120 minutes]
    return singleton from(BPReading.component SBPComponent
    where SBPComponent.code ~ "Systolic blood pressure"
    return Tuple
    { EncounterId: EncounterInpatient.id, FirstSystolicBP: SBPComponent.value as Quantity, Timing: BPReading.effective.earliest() } 
    )
    sort by Timing ascending)*/
    
    
    define "Qualifying Blood Pressure Reading":
      ["observation-bp"] BPReading
        where BPReading.effective.earliest ( ) during day of "Measurement Period"
          and BPReading.status in { 'final', 'amended', 'corrected' }
    Library Name Name
    SupplementalDataElements SDE Race
    define "SDE Race":
      Patient.race R
        return Tuple {
          codes: R.ombCategory union R.detailed,
          display: R.text
        }
    Library Name Name
    HybridHospitalWideMortalityFHIR SDE Race
    define "SDE Race":
      SDE."SDE Race"
    Library Name Name
    HybridHospitalWideMortalityFHIR Test2
    define "Test2":
      First("Qualifying Blood Pressure Reading" SBPReading
          with "Inpatient Encounters" EncounterInpatient
            such that SBPReading.effective.earliest() during Interval[start of EncounterInpatient.period - 1440 minutes, start of EncounterInpatient.period + 120 minutes]
          return singleton from(SBPReading.component SBPComponent
              where SBPComponent.code ~ "Systolic blood pressure"
              return SBPComponent.value as Quantity
          )
          sort asc
      )
    Library Name Name
    SupplementalDataElements SDE Sex
    define "SDE Sex":
      case
        when Patient.gender = 'male' then "M"
        when Patient.gender = 'female' then "F"
        else null
      end
    Library Name Name
    HybridHospitalWideMortalityFHIR SDE Sex
    define "SDE Sex":
      SDE."SDE Sex"
    Library Name Name
    HybridHospitalWideMortalityFHIR Encounter with First Creatinine Lab Test
    define "Encounter with First Creatinine Lab Test":
      "Inpatient Encounters" EncounterInpatient
        let FirstCreatinineLab: First(["USCoreLaboratoryResultObservationProfile": "Creatinine lab test"] CreatinineLab
            where CreatinineLab.issued.earliest() during Interval[start of EncounterInpatient.period - 1440 minutes, start of EncounterInpatient.period + 1440 minutes]
              and CreatinineLab.status in { 'final', 'amended', 'corrected' }
              and CreatinineLab.value is not null
            sort by issued.earliest()
        )
        return {
          EncounterId: EncounterInpatient.id,
          FirstCreatinineResult: FirstCreatinineLab.value as Quantity,
          Timing: FirstCreatinineLab.issued
        }
    Library Name Name
    HybridHospitalWideMortalityFHIR Encounter with First Body Temperature
    define "Encounter with First Body Temperature":
      "Inpatient Encounters" EncounterInpatient
        let FirstTemperature: First(["observation-bodytemp"] temperature
            where temperature.effective.earliest() during Interval[start of EncounterInpatient.period - 1440 minutes, start of EncounterInpatient.period + 120 minutes]
              and temperature.status in { 'final', 'amended', 'corrected' }
              and temperature.value is not null
            sort by effective.earliest()
        )
        return {
          EncounterId: EncounterInpatient.id,
          FirstTemperatureResult: FirstTemperature.value as Quantity,
          Timing: FirstTemperature.effective.earliest ( )
        }
    Library Name Name
    SupplementalDataElements SDE Payer
    define "SDE Payer":
      [Coverage: type in "Payer Type"] Payer
        return {
          code: Payer.type,
          period: Payer.period
        }
    Library Name Name
    HybridHospitalWideMortalityFHIR SDE Payer
    define "SDE Payer":
      SDE."SDE Payer"
    Library Name Name
    HybridHospitalWideMortalityFHIR Initial Population
    define "Initial Population":
      "Inpatient Encounters"
    Library Name Name
    SupplementalDataElements SDE Ethnicity
    define "SDE Ethnicity":
      Patient.ethnicity E
        return Tuple {
          codes: { E.ombCategory } union E.detailed,
          display: E.text
        }
    Library Name Name
    HybridHospitalWideMortalityFHIR SDE Ethnicity
    define "SDE Ethnicity":
      SDE."SDE Ethnicity"
    Library Name Name
    HybridHospitalWideMortalityFHIR Encounter with First Oxygen Saturation
    define "Encounter with First Oxygen Saturation":
      "Inpatient Encounters" EncounterInpatient
        let FirstOxygenSat: First([Observation: "Oxygen Saturation by Pulse Oximetry"] O2Saturation
            where O2Saturation.effective.earliest() during Interval[start of EncounterInpatient.period - 1440 minutes, start of EncounterInpatient.period + 120 minutes]
              and O2Saturation.status in { 'final', 'amended', 'corrected' }
              and O2Saturation.value is not null
            sort by effective.earliest()
        )
        return {
          EncounterId: EncounterInpatient.id,
          FirstOxygenSatResult: FirstOxygenSat.value as Quantity,
          Timing: FirstOxygenSat.effective.earliest ( )
        }
    Library Name Name
    HybridHospitalWideMortalityFHIR Encounter with First Sodium Lab Test
    define "Encounter with First Sodium Lab Test":
      "Inpatient Encounters" EncounterInpatient
        let FirstSodiumLab: First(["USCoreLaboratoryResultObservationProfile": "Sodium lab test"] SodiumLab
            where SodiumLab.issued.earliest() during Interval[start of EncounterInpatient.period - 1440 minutes, start of EncounterInpatient.period + 1440 minutes]
              and SodiumLab.status in { 'final', 'amended', 'corrected' }
              and SodiumLab.value is not null
            sort by issued.earliest()
        )
        return {
          EncounterId: EncounterInpatient.id,
          FirstSodiumResult: FirstSodiumLab.value as Quantity,
          Timing: FirstSodiumLab.issued
        }
    Library Name Name
    CQMCommon lengthInDays
    /*
    @description: Calculates the difference in calendar days between the start and end of the given interval.
    */
    define fluent function lengthInDays(Value Interval<DateTime> ):
      difference in days between start of Value and end of Value
    Library Name Name
    CQMCommon hospitalizationWithObservationAndOutpatientSurgeryService
    /*
    @description: Hospitalization with Observation and Outpatient Surgery Service returns the total interval from the start of any immediately prior emergency department visit, outpatient surgery visit or observation visit to the discharge of the given encounter.
    */
    define fluent function hospitalizationWithObservationAndOutpatientSurgeryService(TheEncounter "Encounter" ):
      TheEncounter Visit
    	  let ObsVisit: Last([Encounter: "Observation Services"] LastObs
    		  	where LastObs.status = 'finished'
              and LastObs.period ends 1 hour or less on or before start of Visit.period
    			  sort by	end of period
        	),
        	VisitStart: Coalesce(start of ObsVisit.period, start of Visit.period),
        	EDVisit: Last([Encounter: "Emergency Department Visit"] LastED
    			  where LastED.status = 'finished'
              and LastED.period ends 1 hour or less on or before VisitStart
    			  sort by	end of period
        	),
        	VisitStartWithED: Coalesce(start of EDVisit.period, VisitStart),
        	OutpatientSurgeryVisit: Last([Encounter: "Outpatient Surgery Service"] LastSurgeryOP
    			  where LastSurgeryOP.period ends 1 hour or less on or before VisitStartWithED
    			  sort by	end of period
        	)
      	return Interval[Coalesce(start of OutpatientSurgeryVisit.period, VisitStartWithED), end of Visit.period]
    Library Name Name
    QICoreCommon earliest
    /*
    @description: Given an interval, return the starting point if the interval has a starting boundary specified,
    otherwise, return the ending point
    */
    define fluent function earliest(choice Choice<DateTime, Quantity, Interval<DateTime>, Interval<Quantity>> ):
      (choice.toInterval()) period
        return
          if (period."hasStart"()) then start of period
          else end of period
    Library Name Name
    FHIRHelpers ToString
    define function ToString(value uri): value.value
    Library Name Name
    FHIRHelpers ToCode
    /*
    @description: Converts the given FHIR [Coding](https://hl7.org/fhir/datatypes.html#Coding) value to a CQL Code.
    */
    define function ToCode(coding FHIR.Coding):
        if coding is null then
            null
        else
            System.Code {
              code: coding.code.value,
              system: coding.system.value,
              version: coding.version.value,
              display: coding.display.value
            }