eCQM QICore Content Implementation Guide
2023.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 2023.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-2023/ and changes regularly. See the Directory of published versions

Measure: Discharged on Antithrombotic TherapyFHIR

Official URL: http://ecqi.healthit.gov/ecqms/Measure/DischargedonAntithromboticTherapyFHIR Version: 0.8.000
Draft as of 2023-10-27 Responsible: The Joint Commission Computable Name: DischargedonAntithromboticTherapyFHIR
Other Identifiers: Short Name (use: usual, ), UUID:4f57e4a2-097b-45f8-9c85-91b35ea92dc1 (use: official, ), UUID:e0b5379f-4b9c-4177-a530-d744fa95d080 (use: official, ), Publisher (use: official, )

Usage:Program: EH/CAH

Copyright/Legal: Measure specifications are in the Public Domain

LOINC(R) copyright 2004-2022 Regenstrief Institute, Inc. This material contains SNOMED Clinical Terms(R) (SNOMED CT[R]) copyright 2004-2022 International Health Terminology Standards Development Organisation. ICD-10 copyright 2021 World Health Organization. All Rights Reserved.

Ischemic stroke patients prescribed or continuing to take antithrombotic therapy at hospital discharge

UNKNOWN

Title: Discharged on Antithrombotic TherapyFHIR
Id: DischargedonAntithromboticTherapyFHIR
Download cql: DischargedonAntithromboticTherapyFHIR.cql
Version: 0.8.000
Url: Discharged on Antithrombotic TherapyFHIR
short-name identifier:

CMS104FHIR

version-independent identifier:

urn:uuid:4f57e4a2-097b-45f8-9c85-91b35ea92dc1

version-specific identifier:

urn:uuid:e0b5379f-4b9c-4177-a530-d744fa95d080

publisher (CMS) identifier:

104FHIR

Effective Period: 2024-01-01 ..2024-12-31
Status: draft
Date: 2023-10-27 08:12:31+0000
Approval Date: 2023-08-01
Last Review Date: 2023-08-01
Name: DischargedonAntithromboticTherapyFHIR
Publisher: The Joint Commission
Author: The Joint Commission: https://www.jointcommission.org/
Description:

Ischemic stroke patients prescribed or continuing to take antithrombotic therapy at hospital discharge

Use Context:
code value
program
Purpose:

UNKNOWN

Copyright:

Measure specifications are in the Public Domain

LOINC(R) copyright 2004-2022 Regenstrief Institute, Inc. This material contains SNOMED Clinical Terms(R) (SNOMED CT[R]) copyright 2004-2022 International Health Terminology Standards Development Organisation. ICD-10 copyright 2021 World Health Organization. All Rights Reserved.

Disclaimer:

These performance measures 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 without warranty.

Rationale:

The effectiveness of antithrombotic agents in reducing stroke mortality, stroke-related morbidity and recurrence rates has been studied in several large clinical trials. While the use of these agents for patients with acute ischemic stroke and transient ischemic attacks continues to be the subject of study, substantial evidence is available from completed studies. Data at this time suggest that antithrombotic therapy should be prescribed at discharge following acute ischemic stroke to reduce stroke mortality and morbidity as long as no contraindications exist.

or patients with a stroke due to a cardioembolic source (e.g. atrial fibrillation, mechanical heart valve), warfarin is recommended unless contraindicated. In recent years, novel oral anticoagulant agents (NOACs) have been developed and approved by the U.S. Food and Drug Administration (FDA) for stroke prevention, and may be considered as an alternative to warfarin for select patients. Anticoagulation therapy is not generally recommended for secondary stroke prevention in patients presumed to have a non-cardioembolic stroke. Anticoagulants at doses to prevent venous thromboembolism are insufficient antithrombotic therapy to prevent recurrent ischemic stroke or transient ischemic attack (TIA).

Clinical recommendation statement:

Clinical trial results suggest that antithrombotic therapy should be prescribed at discharge following acute ischemic stroke to reduce stroke mortality and morbidity as long as no contraindications exist

Guidance (Usage): The "Nonelective Inpatient Encounter" value set intends to capture all non-scheduled hospitalizations. This value set is a subset of the "Inpatient encounter" value set, excluding concepts that specifically refer to elective hospital admissions. Non-elective admissions include emergency, urgent and unplanned admissions. The "MedicationRequest" datatype refers to the discharge medication list and is intended to express medications ordered for post-discharge use. The denominator 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 eCQM is an episode-based measure. An episode is defined as each inpatient hospitalization or encounter that ends during the measurement period. This FHIR-based measure has been derived from the QDM-based measure: CMS104v12. Please refer to the HL7 QI-Core Implementation Guide (http://hl7.org/fhir/us/qicore/index.html) for more information on QI-Core and mapping recommendations from QDM to QI-Core 4.1.1 (http://hl7.org/fhir/us/qicore/qdm-to-qicore.html).
Population Criteria:
64403d17d4d7050edabb0562
Initial Population: Inpatient hospitalizations for patients age 18 and older, discharged from inpatient care (non-elective admissions) with a principal diagnosis of ischemic or hemorrhagic stroke and a length of stay less than or equal to 120 days that ends during the measurement period
Denominator: Inpatient hospitalizations for patients with a principal diagnosis of Ischemic stroke
Denominator Exclusion: - Inpatient hospitalizations for patients admitted for elective carotid intervention. This exclusion is implicitly modeled by only including non-elective hospitalizations. - Inpatient hospitalizations for patients discharged to another hospital - Inpatient hospitalizations for patients who left against medical advice - Inpatient hospitalizations for patients who expired - Inpatient hospitalizations for patients discharged to home for hospice care - Inpatient hospitalizations for patients discharged to a health care facility for hospice care - Inpatient hospitalizations for patients with comfort measures documented
Denominator Exception: - Inpatient hospitalizations for patients with a documented reason for not prescribing antithrombotic therapy at discharge. - Inpatient hospitalizations for patients who receive Prasugrel as an antithrombotic therapy at discharge.
Numerator: Inpatient hospitalizations for patients prescribed or continuing to take antithrombotic therapy at hospital discharge
Numerator Exclusion: None
Supplemental Data Guidance : Patient's Ethnicity: Hispanic or Latino Not Hispanic or Latino Patient's Payer: Categories of types of health care payer entities as defined by the US Public Health Data Consortium SOP code system Patient's Race: Native Hawaiian or Other Pacific Islander Asian American Indian or Alaska Native Other Race White Black or African American Patient's Sex: Gender identity restricted to only Male and Female used in administrative situations requiring a restriction to these two categories.
Supplemental Data Elements: SDE Ethnicity SDE Payer SDE Race SDE Sex
Libraries:
DischargedonAntithromboticTherapyFHIR
Related Artifact Dependencies:
  • SupplementalDataElements version: 3.4.000
  • TJCOverall version: 8.9.000
  • FHIRHelpers version: 4.3.000
  • CQMCommon version: 1.4.000
  • QICoreCommon version: 1.5.000
  • http://hl7.org/fhir/v3/AdministrativeGender
  • Non-Elective Inpatient Encounter
  • Hemorrhagic Stroke
  • Ischemic Stroke
  • Antithrombotic Therapy for Ischemic Stroke
  • Payer
  • Discharge To Acute Care Facility
  • Left Against Medical Advice
  • Patient Expired
  • Discharged to Home for Hospice Care
  • Discharged to Health Care Facility for Hospice Care
  • Comfort Measures
  • Observation Services
  • Emergency Department Visit
  • Parameters:
    name use min max type
    Measurement Period In 0 1 Period
    SDE Sex Out 0 1 Coding
    Numerator Out 0 * Resource
    Denominator Out 0 * Resource
    SDE Payer Out 0 * Resource
    Initial Population Out 0 * Resource
    SDE Ethnicity Out 0 1 Resource
    Denominator Exclusions Out 0 * Resource
    SDE Race Out 0 1 Resource
    DataRequirements:
    Type Elements Valueset Name Valueset
    Patient(QICorePatient) ethnicity race
    Encounter(QICoreEncounter) type period rank rank.value condition condition.reference condition.reference.value hospitalization hospitalization.dischargeDisposition Nonelective Inpatient Encounter Non-Elective Inpatient Encounter
    Encounter(QICoreEncounter) type status status.value period rank rank.value condition condition.reference condition.reference.value hospitalization hospitalization.dischargeDisposition Observation Services Observation Services
    Encounter(QICoreEncounter) type status status.value period rank rank.value condition condition.reference condition.reference.value hospitalization hospitalization.dischargeDisposition Emergency Department Visit Emergency Department Visit
    Condition(QICoreCondition) id id.value
    Medication(QICoreMedication) id
    MedicationRequest(QICoreMedicationRequest) medication.reference authoredOn authoredOn.value
    MedicationRequest(QICoreMedicationRequest) medication authoredOn authoredOn.value Antithrombotic Therapy for Ischemic Stroke Antithrombotic Therapy for Ischemic Stroke
    Coverage(QICoreCoverage) type period Payer Type Payer
    ServiceRequest(QICoreServiceRequest) code status status.value intent intent.value doNotPerform doNotPerform.value Comfort Measures Comfort Measures
    Procedure(QICoreProcedure) code status status.value Comfort Measures Comfort Measures
    Direct Reference Codes:
    display code system
    Male M http://hl7.org/fhir/v3/AdministrativeGender
    Female F http://hl7.org/fhir/v3/AdministrativeGender
    Logic Definitions:
    Group Scoring Population Criteria Expression
    64403d17d4d7050edabb0562 Group scoring: proportion
    Initial Population
    // + ', ' + Combine(Patient.name.first().given, ' ')
    
    define "Initial Population":
      TJC."Encounter with Principal Diagnosis and Age"
    Denominator
    define "Denominator":
      TJC."Ischemic Stroke Encounter"
    Denominator Exclusion
    define "Denominator Exclusions":
      TJC."Ischemic Stroke Encounters with Discharge Disposition"
        union "Encounter with Comfort Measures during Hospitalization for Patients with Documented Ischemic Stroke"
    Denominator Exception
    Numerator
    define "Numerator":
      TJC."Ischemic Stroke Encounter" IschemicStrokeEncounter
        with ["MedicationRequest": "Antithrombotic Therapy for Ischemic Stroke"] DischargeAntithrombotic
          such that DischargeAntithrombotic.authoredOn during IschemicStrokeEncounter.period
    Numerator Exclusion None
    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
    DischargedonAntithromboticTherapyFHIR SDE Sex
    define "SDE Sex":
      SDE."SDE Sex"
    Library Name Name
    TJCOverall Non Elective Inpatient Encounter
    define "Non Elective Inpatient Encounter":
      ["Encounter": "Nonelective Inpatient Encounter"] NonElectiveEncounter
            where NonElectiveEncounter.period ends during day of "Measurement Period"
    Library Name Name
    TJCOverall All Stroke Encounter
    define "All Stroke Encounter":
      "Non Elective Inpatient Encounter" NonElectiveEncounter
      let ConditionCode: NonElectiveEncounter.principalDiagnosis().code
        where ( ConditionCode in "Hemorrhagic Stroke"
           or   ConditionCode in "Ischemic Stroke" )
    Library Name Name
    TJCOverall Encounter with Principal Diagnosis and Age
    define "Encounter with Principal Diagnosis and Age":
      "All Stroke Encounter" AllStrokeEncounter
        where AgeInYearsAt(date from start of AllStrokeEncounter.period ) >= 18
    Library Name Name
    TJCOverall Ischemic Stroke Encounter
    define "Ischemic Stroke Encounter":
      "Encounter with Principal Diagnosis and Age" EncounterWithAge
        where EncounterWithAge.principalDiagnosis().code in "Ischemic Stroke"
    Library Name Name
    DischargedonAntithromboticTherapyFHIR Numerator
    define "Numerator":
      TJC."Ischemic Stroke Encounter" IschemicStrokeEncounter
        with ["MedicationRequest": "Antithrombotic Therapy for Ischemic Stroke"] DischargeAntithrombotic
          such that DischargeAntithrombotic.authoredOn during IschemicStrokeEncounter.period
    Library Name Name
    DischargedonAntithromboticTherapyFHIR Denominator
    define "Denominator":
      TJC."Ischemic Stroke Encounter"
    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
    DischargedonAntithromboticTherapyFHIR SDE Payer
    define "SDE Payer":
      SDE."SDE Payer"
    Library Name Name
    DischargedonAntithromboticTherapyFHIR Initial Population
    // + ', ' + Combine(Patient.name.first().given, ' ')
    
    define "Initial Population":
      TJC."Encounter with Principal Diagnosis and Age"
    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
    DischargedonAntithromboticTherapyFHIR SDE Ethnicity
    /*
    define "Denominator Exceptions":
      "Encounter with Documented Reason for No Antithrombotic At Discharge"
      union "Encounter with Pharmacological Contraindications for Antithrombotic Therapy at Discharge"
    
    define "Encounter with Documented Reason for No Antithrombotic At Discharge":
      TJC."Ischemic Stroke Encounter" IschemicStrokeEncounter
        with "Reason for Not Giving Antithrombotic at Discharge" NoDischargeAntithrombotic
          such that NoDischargeAntithrombotic.authoredOn during IschemicStrokeEncounter.period
    
    define "Reason for Not Giving Antithrombotic at Discharge":
      ["MedicationNotRequested": "Antithrombotic Therapy for Ischemic Stroke"] NoAntithromboticDischarge
        where ( NoAntithromboticDischarge.reasonCode in "Medical Reason For Not Providing Treatment"
            or NoAntithromboticDischarge.reasonCode in "Patient Refusal"
        )
          and ( NoAntithromboticDischarge.isCommunity ( )
              or NoAntithromboticDischarge.isDischarge ( )
          )
          and NoAntithromboticDischarge.intent in { 'order', 'original-order', 'reflex-order', 'filler-order', 'instance-order' }
    
    define "Encounter with Pharmacological Contraindications for Antithrombotic Therapy at Discharge":
      TJC."Ischemic Stroke Encounter" IschemicStrokeEncounter
        with "Pharmacological Contraindications for Antithrombotic Therapy at Discharge" DischargePharmacological
          such that DischargePharmacological.authoredOn during IschemicStrokeEncounter.period
    
    define "Pharmacological Contraindications for Antithrombotic Therapy at Discharge":
      ["MedicationRequest": "Pharmacological Contraindications For Antithrombotic Therapy"] Pharmacological
        where ( Pharmacological.isCommunity ( )
            or Pharmacological.isDischarge ( )
        )
          and Pharmacological.status in { 'active', 'completed' }
          and Pharmacological.intent in { 'order', 'original-order', 'reflex-order', 'filler-order', 'instance-order' }
          and Pharmacological.doNotPerform is not true
    */
    define "SDE Ethnicity":
      SDE."SDE Ethnicity"
    Library Name Name
    TJCOverall Ischemic Stroke Encounters with Discharge Disposition
    define "Ischemic Stroke Encounters with Discharge Disposition":
      "Ischemic Stroke Encounter" IschemicStrokeEncounter
      let DischDisp: IschemicStrokeEncounter.hospitalization.dischargeDisposition
      	where  DischDisp in "Discharge To Acute Care Facility"
    		or DischDisp in "Left Against Medical Advice"
    		or DischDisp in "Patient Expired"
    		or DischDisp in "Discharged to Home for Hospice Care"
    		or DischDisp in "Discharged to Health Care Facility for Hospice Care"
    Library Name Name
    TJCOverall Intervention Comfort Measures
    define "Intervention Comfort Measures":
      ( ["ServiceRequest": code in "Comfort Measures"] SR
        where SR.status in { 'active', 'completed', 'on-hold' }
          and SR.intent in { 'order', 'original-order', 'reflex-order', 'filler-order', 'instance-order' }
          and SR.doNotPerform is not true
      )  
      union ( ["Procedure": "Comfort Measures"] InterventionPerformed
            where InterventionPerformed.status in { 'completed', 'in-progress' }
      )
    Library Name Name
    DischargedonAntithromboticTherapyFHIR Encounter with Comfort Measures during Hospitalization for Patients with Documented Ischemic Stroke
    define "Encounter with Comfort Measures during Hospitalization for Patients with Documented Ischemic Stroke":
      "Denominator" Encounter
        with TJC."Intervention Comfort Measures" ComfortMeasure
          such that Coalesce(start of ComfortMeasure.performed.toInterval(), ComfortMeasure.authoredOn) during Encounter.hospitalizationWithObservation ( )
    Library Name Name
    DischargedonAntithromboticTherapyFHIR Denominator Exclusions
    define "Denominator Exclusions":
      TJC."Ischemic Stroke Encounters with Discharge Disposition"
        union "Encounter with Comfort Measures during Hospitalization for Patients with Documented Ischemic Stroke"
    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
    DischargedonAntithromboticTherapyFHIR SDE Race
    define "SDE Race":
      SDE."SDE Race"
    Library Name Name
    CQMCommon principalDiagnosis
    /*
    @description: Returns the condition that is specified as the principal diagnosis for the encounter
    */
    define fluent function principalDiagnosis(Encounter Encounter ):
    	singleton from ((Encounter.diagnosis D where D.rank = 1) PD
          return singleton from ([Condition] C where C.id = PD.condition.reference.getId())
    	)
    Library Name Name
    QICoreCommon getId
    /*
    @description: Returns the tail of the given uri (i.e. everything after the last slash in the URI).
    @comment: This function can be used to determine the logical id of a given resource. It can be used in
    a single-server environment to trace references. However, this function does not attempt to resolve
    or distinguish the base of the given url, and so cannot be used safely in multi-server environments.
    */
    define fluent function getId(uri String):
      Last(Split(uri, '/'))
    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
            }
    Library Name Name
    CQMCommon hospitalizationWithObservation
    /*
    @description: Hospitalization with Observation returns the total interval from the start of any immediately prior emergency department visit through the observation visit to the discharge of the given encounter
    */
    define fluent function hospitalizationWithObservation(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
      			)
      		return Interval[Coalesce(start of EDVisit.period, VisitStart), end of Visit.period]