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: Multi-provider Patient Encounter Level Example (Experimental)

Official URL: http://ecqi.healthit.gov/ecqms/Measure/MPPEncounterLevel | Version: 0.8.000
Draft as of 2023-10-27 | Computable Name: MPPEncounterLevel
Usage:Program: EH/CAH

Example measure supporting testing of the multi-provider patient scenario for encounter-based measures

To support testing of approaches to multi-provider patient scenarios with an encounter-based measure

Title: | Multi-provider Patient Encounter Level Example
Id: | MPPEncounterLevel
Download cql: | MPPEncounterLevel.cql
Version: | 0.8.000
Url: | Multi-provider Patient Encounter Level Example
Effective Period: | 2024-01-01 ..2024-12-31
Status: | draft
Experimental: | true
Date: | 2023-10-27 08:12:32+0000
Name: | MPPEncounterLevel
Description: | Example measure supporting testing of the multi-provider patient scenario for encounter-based measures
Use Context: |
code | value
--- | ---
program |
Purpose: | To support testing of approaches to multi-provider patient scenarios with an encounter-based measure
Libraries: |
MPPEncounterLevel
Related Artifact Dependencies: | FHIRHelpers version: 4.3.000 CQMCommon version: 1.4.000 QICoreCommon version: 1.5.000 AttributionModel version: 0.1.0 Non-Elective Inpatient Encounter Hemorrhagic Stroke Ischemic Stroke
Parameters: |
name | use | min | max | type
--- | --- | --- | --- | ---
Measurement Period | In | 0 | 1 | Period
Provider | In | 0 | 1 | string
Initial Population | Out | 0 | * | Resource
DataRequirements: |
Type | Elements | Valueset Name | Valueset
--- | --- | --- | ---
Encounter(QICoreEncounter) | type period rank rank.value condition condition.reference condition.reference.value | Nonelective Inpatient Encounter | Non-Elective Inpatient Encounter
Condition(QICoreCondition) | id id.value |  |
Patient(QICorePatient) |  |  |
Logic Definitions: |
Group | Scoring | Population Criteria | Expression
--- | --- | --- | ---
64403d17d4d7050edabb0562 | Group scoring: proportion
|  | Initial Population |
    define "Initial Population":
      "Encounter with Principal Diagnosis and Age" Encounter
        where Encounter.isAttributable()
|  | Denominator |
|  | Numerator |

Library Name | Name
--- | ---
MPPEncounterLevel | 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
MPPEncounterLevel | 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
MPPEncounterLevel | 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
MPPEncounterLevel | Initial Population
    define "Initial Population":
      "Encounter with Principal Diagnosis and Age" Encounter
        where Encounter.isAttributable()
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
AttributionModel | isAttributable
    define fluent function isAttributable(encounter Encounter):
      encounter.period during "Measurement Period"
        and "Provider" is not null implies encounter.serviceProvider.reference.endsWith("Provider")