ComputableCDCPatientImpactAndHospitalCapacity
type: Measure
node role: treeRoot
id:
  v: ComputableCDCPatientImpactAndHospitalCapacity
meta:
  profile:
    v: http://hl7.org/fhir/uv/saner/StructureDefinition/PublicHealthMeasure
    link: http://hl7.org/fhir/uv/saner/StructureDefinition/PublicHealthMeasure
text:
  status:
    v: generated
  div: Patient Impact and Hospital Capacity The url for this measure is http://hl7.org/fhir/uv/saner/Measure/ComputableCDCPatientImpactAndHospitalCapacity. This measure demonstrates automated reporting on bed availability and use at a facility location based on CDC/NHSN reporting requirements. It is used to illustrate automation of measure reporting using the SANER Implementation guide. Frequency This measure is expected to be reported every 1 day. Publisher HL7 International Contacts HL7 Public Health Workgroup (http://hl7.org/Special/committees/pher/index.cfm) Keith W. Boone (mailto:kboone@ainq.com) Status draft Definitions Ventilator Any device used to support, assist or control respiration (inclusive of the weaning period) through the application of positive pressure to the airway when delivered via an artificial airway, specifically an oral/nasal endotracheal or tracheostomy tube. Note: Ventilation and lung expansion devices that deliver positive pressure to the airway (for example: CPAP, BiPAP, bi-level, IPPB and PEEP) via non-invasive means (for example: nasal prongs, nasal mask, full face mask, total mask, etc.) are not considered ventilators unless positive pressure is delivered via an artificial airway (oral/nasal endotracheal or tracheostomy tube). Beds Baby beds in mom's room count as 1 bed, even if there are multiple baby beds Follow-up in progress if staffed is less than licensed. Total includes all beds, even if with surge beds it exceeds licensed beds. ICU beds Include NICU Group: Hospital COVID-19 Patient Encounters Reporting Codes http://hl7.org/fhir/uv/saner/CodeSystem/MeasureGroupSystem#Encounters Encounters subject Patient in room scoring queue-length type structure improvementNotation decrease Population: Patients with suspected or confirmed COVID-19 in any location. Active encounters where the encounter diagnosis is suspected or confirmed COVID-19, or a Condition of suspected or confirmed COVID-19 was created during that encounter. This includes the …
extension:
  url:
    v: http://hl7.org/fhir/uv/saner/StructureDefinition/ReportingPeriod
  value: Timing
    repeat:
      frequency:
        v: 1
      period:
        v: 1
      period unit:
        v: d
url:
  v: http://hl7.org/fhir/uv/saner/Measure/ComputableCDCPatientImpactAndHospitalCapacity
identifier:
  system:
    v: urn:ietf:rfc:3986
  value:
    v: urn:oid:2.16.840.1.113883.4.642.40.42.29.4
version:
  v: 1.0.1
name:
  v: ComputableCDCPatientImpactAndHospitalCapacity
title:
  v: Patient Impact and Hospital Capacity
status:
  v: draft
experimental:
  v: true
date:
  v: 2024-05-18T21:25:01+00:00
publisher:
  v: HL7 International / Public Health
contact:
  telecom:
    system:
      v: url
    value:
      v: http://www.hl7.org/Special/committees/pher
contact:
  telecom:
    system:
      v: email
contact:
  name:
    v: Keith W. Boone
  telecom:
    system:
      v: email
description:
  v: This measure demonstrates automated reporting on bed availability and use at a facility location based on CDC/NHSN reporting requirements. It is used to illustrate automation of measure reporting using the SANER Implementation guide.
use context:
  code:
    system:
      v: http://terminology.hl7.org/CodeSystem/usage-context-type
    code:
      v: focus
  value: CodeableConcept
    coding: http://snomed.info/id/840539006
      system:
        v: http://snomed.info/sct
      code:
        v: 840539006
      display:
        v: COVID-19
jurisdiction:
  coding:
    system:
      v: http://unstats.un.org/unsd/methods/m49/m49.htm
    code:
      v: 001
    display:
      v: World
author:
  name:
    v: Centers for Disease Control/National Healthcare Safety Network (CDC/NHSN)
  telecom:
    system:
      v: email
related artifact:
  type:
    v: documentation
  label:
    v: NHSN COVID-19 Reporting
  display:
    v: CDC/NHSN COVID-19 Patient Impact & Hospital Capacity Module Home Page
  url:
    v: https://web.archive.org/web/20200501215043/https://www.cdc.gov/nhsn/acute-care-hospital/covid19/
  document:
    url:
      v: https://web.archive.org/web/20200501215043/https://www.cdc.gov/nhsn/acute-care-hospital/covid19/
related artifact:
  type:
    v: documentation
  label:
    v: How to import COVID-19 Summary Data
  display:
    v: Importing COVID-19 Patient Module Denominator data for Patient Safety Component
  url:
    v: https://web.archive.org/web/20200501215043/https://www.cdc.gov/nhsn/pdfs/covid19/import-covid19-data-508.pdf
  document:
    url:
      v: https://web.archive.org/web/20200501215043/https://www.cdc.gov/nhsn/pdfs/covid19/import-covid19-data-508.pdf
related artifact:
  type:
    v: documentation
  label:
    v: Table of Instructions
  display:
    v: Instructions for Completion of the COVID-19 Patient Impact and Hospital Capacity Module Form (CDC 57.130)
  url:
    v: https://web.archive.org/web/20200501215043/https://www.cdc.gov/nhsn/pdfs/covid19/57.130-toi-508.pdf
  document:
    url:
      v: https://web.archive.org/web/20200501215043/https://www.cdc.gov/nhsn/pdfs/covid19/57.130-toi-508.pdf
related artifact:
  type:
    v: documentation
  label:
    v: CSV File Template
  display:
    v: CDC/NHSN COVID-19 Reporting CSV File Template
  url:
    v: https://web.archive.org/web/20200501215043/https://www.cdc.gov/nhsn/pdfs/covid19/covid19-test-csv-import.csv
  document:
    url:
      v: https://web.archive.org/web/20200501215043/https://www.cdc.gov/nhsn/pdfs/covid19/covid19-test-csv-import.csv
library:
  v: http://hl7.org/fhir/uv/saner/Library/ComputableNHSNMeasureLibrary
  link: http://hl7.org/fhir/uv/saner/Library/ComputableNHSNMeasureLibrary
definition:
  v: Ventilator: Any device used to support, assist or control respiration (inclusive of the weaning period) through the application of positive pressure to the airway when delivered via an artificial airway, specifically an oral/nasal endotracheal or tracheostomy tube. Note: Ventilation and lung expansion devices that deliver positive pressure to the airway (for example: CPAP, BiPAP, bi-level, IPPB and PEEP) via non-invasive means (for example: nasal prongs, nasal mask, full face mask, total mask, etc.) are not considered ventilators unless positive pressure is delivered via an artificial airway (oral/nasal endotracheal or tracheostomy tube). Beds: Baby beds in mom's room count as 1 bed, even if there are multiple baby beds. Follow-up in progress if staffed is less than licensed. Total includes all beds, even if with surge beds it exceeds licensed beds. ICU beds: Include NICU
group:
  extension:
    extension:
      url:
        v: subject
      value: CodeableConcept
        coding: http://snomed.info/id/398284004
    extension:
      url:
        v: scoring
      value: CodeableConcept
    extension:
      url:
        v: type
      value: CodeableConcept
    extension:
      url:
        v: improvementNotation
      value: CodeableConcept
    extension:
      url:
        v: rateAggregation
      value:
        v: point-in-time
    url:
      v: http://hl7.org/fhir/uv/saner/StructureDefinition/MeasureGroupAttributes
  code:
    coding:
      system:
        v: http://hl7.org/fhir/uv/saner/CodeSystem/MeasureGroupSystem
      code:
        v: Encounters
      display:
        v: Encounters
    text:
      v: Hospital COVID-19 Patient Encounters Reporting
  population:
    code:
      text:
        v: Patients with suspected or confirmed COVID-19 in any location.
    description:
      v: Active encounters where the encounter diagnosis is suspected or confirmed COVID-19, or a Condition of suspected or confirmed COVID-19 was created during that encounter. This includes the patients with laboratory-confirmed or clinically diagnosed COVID-19. Confirmed: A patient with a laboratory confirmed COVID-19 diagnosis Suspected: A patient without a laboratory confirmed COVID-19 diagnosis who, in accordance with CDC’s Interim Public Health Guidance for Evaluating Persons Under Investigation (PUIs), has signs and symptoms compatible with COVID-19 (most patients with confirmed COVID-19 have developed fever and/or symptoms of acute respiratory illness, such as cough, shortness of breath or myalgia/fatigue).
    criteria:
      extension:
        value: Expression
      description:
        v: This expression finds encounters that were active or finished in the reporting period, and their referenced Patient, Condition and Observation resources. It filters these based on cases where Encounter reports a reason or condition in the SuspectedOrConfirmedCOVID19Diagnoses value set, or where a positive lab test from the Covid19Labs valueset, or where the patient has any such associated Condition or Observation resources in the prior two weeks.
      name:
        v: NumC19Pats
      language:
        v: text/fhirpath
      expression:
        v: findAll('Encounter', including('subject','condition','reasonReference'), with('status').equalTo('in-progress'|'finished'), with('date').within(%ReportingPeriod) ).onServers(%Base). where( iif(myMemberOf((Encounter.reasonCode | Condition.code), %SuspectedOrConfirmedCOVID19Diagnoses.url) | Observation.where((myMemberOf(code, %Covid19Labs.url) and myMemberOf(value, %PositiveResults.url)) ), true, iif( Patient.distinct() .whereExists('Observation', for('patient', $this), with('status').equalTo( 'registered' | 'preliminary' | 'final' | 'amended' | 'corrected'), with('date').greaterThan(%ReportingPeriod.start - 14 'days'), with('code').in(%Covid19Labs), with('value-concept).in(%PositiveResults) ).onServers(%Base), true, Patient.distinct() .whereExists('Condition', for('patient', $this), with('verification-status').notEqualTo('refuted'|'entered-in-error'). with('date').greaterThan(%ReportingPeriod.start - 14 'days'), with('code').in(%SuspectedOrConfirmedCOVID19Diagnoses.url) ).exists() ) ) ) .distinct() .aggregate( iif($total.subject contains $this.subject, $total, $total | $this ) )
  stratifier:
    code:
      text:
        v: By Location and Ventilator Status
    description:
      v: Stratifies the population by Location (inpatient vs ED/Overflow/Other) and Ventilator Status (Ventilated vs Not Ventilated)

system:
  v: http://hl7.org/fhir/resource-types
code:
  v: Encounter

http://snomed.info/id/398284004
system:
  v: http://snomed.info/sct
code:
  v: 398284004
display:
  v: Patient in room

v: Patient in room

system:
  v: http://hl7.org/fhir/uv/saner/CodeSystem/PublicHealthMeasureScoring
code:
  v: queue-length

system:
  v: http://terminology.hl7.org/CodeSystem/measure-type
code:
  v: structure

system:
  v: http://terminology.hl7.org/CodeSystem/measure-improvement-notation
code:
  v: decrease

v: numC19Pats

v: All COVID-19 Confirmed or Suspected Patients

v: initial-population

Expression
description:
  v: Alternate definition for Active encounters using CQL
name:
  v: NumC19Pats
language:
  v: text/cql
expression:
  v: NumberOfCOVID19Patients

description:
  v: For each Encounter, if the encounter subject has been ventilated if the Encounter location is an inpatient loocation, return InpVentilated Otherwise return OFVentilated else if the Encounter location is an inpatient loocation, return InpNotVentilated Otherwise return OFNotVentilated end if
language:
  v: text/fhirpath
expression:
  v: iif(%NumVentUse.id contains Encounter.subject, iif(myMemberOf(Encounter.location.location.resolve().type, %InpatientLocations.url), 'InpVentilated', 'OFVentilated'), iif(myMemberOf(Encounter.location.location.resolve().type, %InpatientLocations.url), 'InpNotVentilated', 'OFNotVentilated') )

extension:
  extension:
    url:
      v: subject
    value: CodeableConcept
      text:
        v: Hospital Acquired COVID-19
  extension:
    url:
      v: scoring
    value: CodeableConcept
  extension:
    url:
      v: type
    value: CodeableConcept
  extension:
    url:
      v: improvementNotation
    value: CodeableConcept
  extension:
    url:
      v: rateAggregation
    value:
      v: cumulative
  url:
    v: http://hl7.org/fhir/uv/saner/StructureDefinition/MeasureGroupAttributes
code:
  coding:
    system:
      v: http://hl7.org/fhir/uv/saner/CodeSystem/MeasureGroupSystem
    code:
      v: AcquiredCovid
    display:
      v: Acquired COVID-19 in Hospital
  text:
    v: Hospital Onset COVID-19 Patient Encounters Reporting
population:
  code:
    coding:
      system:
        v: http://hl7.org/fhir/uv/saner/CodeSystem/MeasuredValues
      code:
        v: numC19HospPats
      display:
        v: Hospitalized COVID-19 Patients
    coding:
      system:
        v: http://terminology.hl7.org/CodeSystem/measure-population
      code:
        v: initial-population
    text:
      v: Patients with suspected or confirmed COVID-19 in an inpatient location
  description:
    v: Patients with suspected or confirmed COVID-19 in an inpatient location
  criteria:
    description:
      v: Uses the value of NumC19Pat as the initial population
    name:
      v: NumC19HospPats
    language:
      v: text/fhirpath
    expression:
      v: %NumC19Pats.entry.resource.location.location.resolve().where(myMemberOf(type, %InpatientLocations.url))
population:
  code:
    coding:
      system:
        v: http://hl7.org/fhir/uv/saner/CodeSystem/MeasuredValues
      code:
        v: numC19HOPats
      display:
        v: Hospital Onset COVID-19 Patients
    coding:
      system:
        v: http://terminology.hl7.org/CodeSystem/measure-population
      code:
        v: numerator
    text:
      v: Hospital Onset COVID-19 Patients
  description:
    v: Hospital Onset COVID-19 Patients
  criteria:
    description:
      v: Filters the initial population by ruling out those patients whose first suspected or confirmed diagnosis or lab result appears less than 14 days from admission.
    name:
      v: NumC19HOPats
    language:
      v: text/fhirpath
    expression:
      v: Encounter.where( iif(dateAdd(period.start,14 'days') > today(), false, iif( whereExists('Condition', with('status').notEqualTo('refuted'|'entered-in-error'), with('patient').equalTo($this.subject), with('verificationStatus').notEqualTo('refuted'|'entered-in-error'), with('date').greaterThan($this.period.start - 14 'days'), with('date').lessThanOrEqualTo($this.period.start - 14 'days'), with('code').in(%SuspectedOrConfirmedCOVID19Diagnoses.url) ).onServers(%Base), false, whereExists('Observation', with('status').equalTo('registered'|'preliminary'|'final'|'amended'|'corrected'), with('patient').equalTo($this.subject), with('date').greaterThan($this.period.start - 14 'days'), with('date').lessThanOrEqualTo($this.period.start - 14 'days'), with('code').in(%Covid19Labs.url) with('value-concept').in(%PositiveResults.url) ).onServers(%Base).not() ) ) ).select(patient).resolve().trace('patients', id)
population:
  code:
    coding:
      system:
        v: http://hl7.org/fhir/uv/saner/CodeSystem/MeasuredValues
      code:
        v: cumC19HOPats
      display:
        v: Cumulative Hospital Onset COVID-19 Patients
    coding:
      system:
        v: http://terminology.hl7.org/CodeSystem/measure-population
      code:
        v: denominator
    text:
      v: Cumulative Hospital Onset COVID-19 Patients
  description:
    v: Cumulative Hospital Onset COVID-19 Patients
  criteria:
    description:
      v: Computes the cumulative total from the prior measure report and the number of new infections detected in the current reporting period.
    name:
      v: CumC19HOPats
    language:
      v: text/fhirpath
    expression:
      v: iif(%PriorReport.empty(), 0, %PriorReport.group[1].population[2].count + %NumC19HOPats.total)
stratifier:
  code:
    text:
      v: By Age Group
  description:
    v: Stratifies the population by Age Group
  criteria:
    description:
      v: If birth date + N years < today, return the code for the patient < N Years of age for values of N from 20, 30, 40, 50, 60, 70 and 80, otherise return the code for over 80
    language:
      v: text/fhirpath
    expression:
      v: Patient.select( iif(dateAdd(birthDate, 20 'years') < today(), 'P0Y--P20Y', iif(dateAdd(birthDate, 30 'years') < today(), 'P20Y--P30Y', iif(dateAdd(birthDate, 40 'years') < today(), 'P30Y--P40Y', iif(dateAdd(birthDate, 50 'years') < today(), 'P40Y--P50Y', iif(dateAdd(birthDate, 60 'years') < today(), 'P50Y--P60Y', iif(dateAdd(birthDate, 70 'years') < today(), 'P60Y--P70Y', iif(dateAdd(birthDate, 80 'years') < today(), 'P70Y--P80Y', 'P80Y-P9999Y') ) ) ) ) ) ) )
stratifier:
  code:
    text:
      v: By Gender
  description:
    v: Stratifies the population by Gender
  criteria:
    description:
      v: Return the patient gender
    language:
      v: text/fhirpath
    expression:
      v: Patient.gender
stratifier:
  code:
    text:
      v: By Ethnicity
  description:
    v: Stratifies the population by Ethnicity
  criteria:
    description:
      v: Return the patient enthnicity code
    language:
      v: text/fhirpath
    expression:
      v: Patient.extension('http://hl7.org/fhir/us/core/StructureDefinition/us-ethnicity-category').extension('ombCategory').valueCoding.code
stratifier:
  code:
    text:
      v: By Race
  description:
    v: Stratifies the population by Race
  criteria:
    description:
      v: Return the patient race code
    language:
      v: text/fhirpath
    expression:
      v: Patient .extension('http://hl7.org/fhir/us/core/StructureDefinition/us-core-race') .extension('ombCategory') .select( iif(valueCoding.count() > 1, 'Mixed', iif(valueCoding.system = 'http://terminology.hl7.org/CodeSystem/v3-NullFlavor', 'Unknown', valueCoding.code ) ) )

v: Patient

v: 116154003|Patient|: 20401003|With| = (840539006|Disease caused by 2019 novel coronavirus|: 246512002|Timing| = 277056009|Hospital Acquired|)

v: Patient where With = Disease caused by 2019 novel coronavirus where Timing = Hospital acquired

v: event-growth

v: outcome

v: decrease

extension:
  extension:
    url:
      v: subject
    value: CodeableConcept
      coding: http://snomed.info/id/419620001
      text:
        v: Patients with conformed or suspected COVID-19 who have died
  extension:
    url:
      v: scoring
    value: CodeableConcept
  extension:
    url:
      v: type
    value: CodeableConcept
  extension:
    url:
      v: improvementNotation
    value: CodeableConcept
  extension:
    url:
      v: rateAggregation
    value:
      v: cumulative
  url:
    v: http://hl7.org/fhir/uv/saner/StructureDefinition/MeasureGroupAttributes
code:
  coding:
    system:
      v: http://hl7.org/fhir/uv/saner/CodeSystem/MeasureGroupSystem
    code:
      v: CovidDeaths
    display:
      v: COVID-19 Deaths
  text:
    v: COVID-19 Patient Death Reporting
population:
  code:
    coding:
      system:
        v: http://hl7.org/fhir/uv/saner/CodeSystem/MeasuredValues
      code:
        v: numC19Pats
      display:
        v: All COVID-19 Confirmed or Suspected Patients
    coding:
      system:
        v: http://terminology.hl7.org/CodeSystem/measure-population
      code:
        v: initial-population
    text:
      v: Patients with suspected or confirmed COVID-19 in any location.
  description:
    v: Patients with suspected or confirmed COVID-19 in any location.
  criteria:
    description:
      v: COVID-19 Patients in an inpatient setting
    language:
      v: text/fhirpath
    expression:
      v: %NumC19Pats.entry.resource
population:
  code:
    coding:
      system:
        v: http://hl7.org/fhir/uv/saner/CodeSystem/MeasuredValues
      code:
        v: numC19Died
      display:
        v: COVID-19 Patient Deaths
    coding:
      system:
        v: http://terminology.hl7.org/CodeSystem/measure-population
      code:
        v: numerator
    text:
      v: Patients with suspected or confirmed COVID-19 who died in the hospital, ED, or any overflow location
  description:
    v: Patients with suspected or confirmed COVID-19 who died in the hospital, ED, or any overflow location
  criteria:
    description:
      v: Filters the initial population by selecting those who have died.
    name:
      v: NumC19Died
    language:
      v: text/fhirpath
    expression:
      v: Encounter.where( iif( hospitalization.where( myMemberOf(dispositionCode, %PatientExpired) ), true, subject.resolve().where(deceasedBoolean = true | deceasedDateTime.exists()) ) ).select(subject).resolve()
population:
  code:
    coding:
      system:
        v: http://hl7.org/fhir/uv/saner/CodeSystem/MeasuredValues
      code:
        v: cumC19Died
      display:
        v: Cumulative COVID-19 Patient Deaths
    coding:
      system:
        v: http://terminology.hl7.org/CodeSystem/measure-population
      code:
        v: denominator
    text:
      v: Cumulative total of Patients with suspected or confirmed COVID-19 who died in the hospital, ED, or any overflow location
  description:
    v: Cumulative total of Patients with suspected or confirmed COVID-19 who died in the hospital, ED, or any overflow location
  criteria:
    description:
      v: Computes the cumulative total from the prior measure report and the number of new deaths in the current reporting period.
    name:
      v: CumC19Died
    language:
      v: text/fhirpath
    expression:
      v: iif(%PriorReport.empty(), 0, %PriorReport.group[2].population[2].count + %NumC29Died.count())
stratifier:
  code:
    text:
      v: By Age Group
  description:
    v: Stratifies the population by Age Group
  criteria:
    description:
      v: If birth date + N years < today, return the code for the patient < N Years of age for values of N from 20, 30, 40, 50, 60, 70 and 80, otherise return the code for over 80
    language:
      v: text/fhirpath
    expression:
      v: Patient.select( iif(dateAdd(birthDate, 20 'years') < today(), 'P0Y--P20Y', iif(dateAdd(birthDate, 30 'years') < today(), 'P20Y--P30Y', iif(dateAdd(birthDate, 40 'years') < today(), 'P30Y--P40Y', iif(dateAdd(birthDate, 50 'years') < today(), 'P40Y--P50Y', iif(dateAdd(birthDate, 60 'years') < today(), 'P50Y--P60Y', iif(dateAdd(birthDate, 70 'years') < today(), 'P60Y--P70Y', iif(dateAdd(birthDate, 80 'years') < today(), 'P70Y--P80Y', 'P80Y-P9999Y') ) ) ) ) ) ) )
stratifier:
  code:
    text:
      v: By Gender
  description:
    v: Stratifies the population by Gender
  criteria:
    description:
      v: Return the patient gender
    language:
      v: text/fhirpath
    expression:
      v: Patient.gender
stratifier:
  code:
    text:
      v: By Ethnicity
  description:
    v: Stratifies the population by Ethnicity
  criteria:
    description:
      v: Return the patient ethnicity code
    language:
      v: text/fhirpath
    expression:
      v: Patient.extension('http://hl7.org/fhir/us/core/StructureDefinition/us-ethnicity-category').extension('ombCategory').valueCoding.code
stratifier:
  code:
    text:
      v: By Race
  description:
    v: Stratifies the population by Race
  criteria:
    description:
      v: Return the patient race code
    language:
      v: text/fhirpath
    expression:
      v: Patient .extension('http://hl7.org/fhir/us/core/StructureDefinition/us-core-race') .extension('ombCategory') .select( iif(valueCoding.code contains '1992-5', 'A', ' ') + iif(valueCoding.code contains '2054-5', 'B', ' ') + iif(valueCoding.code contains '2076-8', 'H', ' ') + iif(valueCoding.code contains '2028-9', 'S', ' ') + iif(valueCoding.code contains '2106-3', 'W', ' ') )

v: Patient

v: 419620001

v: Death

v: event-growth

v: outcome

v: decrease

extension:
  url:
    v: http://hl7.org/fhir/uv/saner/StructureDefinition/MeasureExpectation
  value:
    v: SHOULD
extension:
  extension:
    url:
      v: subject
    value: CodeableConcept
      coding: http://snomed.info/id/257463002
      text:
        v: Ventilator capacity
  extension:
    url:
      v: scoring
    value: CodeableConcept
  extension:
    url:
      v: type
    value: CodeableConcept
  extension:
    url:
      v: improvementNotation
    value: CodeableConcept
  extension:
    url:
      v: rateAggregation
    value:
      v: point-in-time
  url:
    v: http://hl7.org/fhir/uv/saner/StructureDefinition/MeasureGroupAttributes
code:
  coding:
    system:
      v: http://hl7.org/fhir/uv/saner/CodeSystem/MeasureGroupSystem
    code:
      v: Ventilators
    display:
      v: Ventilators
  text:
    v: Ventilator Reporting
population:
  code:
    coding:
      system:
        v: http://hl7.org/fhir/uv/saner/CodeSystem/MeasuredValues
      code:
        v: numVent
      display:
        v: Mechanical Ventilators
    coding:
      system:
        v: http://terminology.hl7.org/CodeSystem/measure-population
      code:
        v: denominator
    text:
      v: Total number of ventilators
  description:
    v: Count of all ventilators that can support patient care, whether or not they are presently in use.
  criteria:
    description:
      v: Computes the total number of ventilators from the previously reported MeasureReport
    name:
      v: NumVent
    language:
      v: text/fhirpath
    expression:
      v: iif(trace('PriorReport exists:', %PriorReport.exists()), %PriorReport.group[3].population[0].count, 0)
population:
  code:
    coding:
      system:
        v: http://hl7.org/fhir/uv/saner/CodeSystem/MeasuredValues
      code:
        v: numVentUse
      display:
        v: Mechanical Ventilators in Use
    coding:
      system:
        v: http://terminology.hl7.org/CodeSystem/measure-population
      code:
        v: numerator
    text:
      v: Total number of ventilators in use
  description:
    v: Count of all ventilators in use.
  criteria:
    description:
      v: Identifies the number of ventilators in use by counting Patient with an Observation or Procedure resource from an appropriate value set indicating ventilator use.
    name:
      v: NumVentUse
    language:
      v: text/fhirpath
    expression:
      v: findAll('Encounter', including('subject'), with('status').equalTo('in-progress'|'finished'), with('date').within(%ReportingPeriod) ).onServers(%Base) .select(entry.resource as Patient) .where( iif( whereExists('Observation', with('status').equalTo('registered'|'preliminary'|'final'|'amended'|'corrected'), with('patient').equalTo($this.id), with('verificationStatus').notEqualTo('refuted'|'entered-in-error'), with('date').within(%ReportingPeriod), with('code').in(%VentilatorObservations.url) ).onServers(%Base) true, whereExists('Procedure', with('status').equalTo('in-progress'|'completed'), with('patient').equalTo($this.id), with('date').within(%ReportingPeriod), with('code').in(%VentilatorProcedures.url) ).onServers(%Base) ) )
population:
  code:
    coding:
      system:
        v: http://hl7.org/fhir/uv/saner/CodeSystem/MeasuredValues
      code:
        v: numVentAvail
      display:
        v: Mechanical Ventilators Available
    coding:
      system:
        v: http://hl7.org/fhir/uv/saner/CodeSystem/MeasurePopulationSystem
      code:
        v: numerator-complement
    text:
      v: Total number of ventilators not presently in use.
  description:
    v: Count of all ventilators not presently in use.
  criteria:
    description:
      v: Computes the number of ventilators available by substracting the number of ventilators in use determined by population 1 from thee total number of ventilators given in population 0
    name:
      v: NumVentAvail
    language:
      v: text/fhirpath
    expression:
      v: %NumVent - %NumVentUse.total.toInteger()

v: Device

v: 257463002

v: Ventilator Outlet

v: capacity

v: structure

v: decrease

extension:
  extension:
    url:
      v: subject
    value: CodeableConcept
      coding: http://snomed.info/id/91537007
      text:
        v: Bed capacity
  extension:
    url:
      v: scoring
    value: CodeableConcept
  extension:
    url:
      v: type
    value: CodeableConcept
  extension:
    url:
      v: improvementNotation
    value: CodeableConcept
  extension:
    url:
      v: rateAggregation
    value:
      v: point-in-time
  url:
    v: http://hl7.org/fhir/uv/saner/StructureDefinition/MeasureGroupAttributes
code:
  coding:
    system:
      v: http://hl7.org/fhir/uv/saner/CodeSystem/MeasureGroupSystem
    code:
      v: Beds
    display:
      v: Beds
  text:
    v: Bed Reporting
population:
  code:
    coding:
      system:
        v: http://hl7.org/fhir/uv/saner/CodeSystem/MeasuredValues
      code:
        v: numTotBeds
      display:
        v: All Hospital Beds
    coding:
      system:
        v: http://terminology.hl7.org/CodeSystem/measure-population
      code:
        v: denominator
    text:
      v: Total number of beds
  description:
    v: Total number of all Inpatient and outpatient beds, including all staffed, ICU, licensed, and overflow (surge) beds used for inpatients or outpatients
  criteria:
    description:
      v: Computes the total number of beds from the previously reported MeasureReport
    name:
      v: NumTotBeds
    language:
      v: text/fhirpath
    expression:
      v: iif(%PriorReport.exists(),%PriorReport.group[3].population[0].count,0)
population:
  code:
    coding:
      system:
        v: http://hl7.org/fhir/uv/saner/CodeSystem/MeasuredValues
      code:
        v: numTotBedsOcc
      display:
        v: Hospital Beds Occupied
    coding:
      system:
        v: http://terminology.hl7.org/CodeSystem/measure-population
      code:
        v: numerator
    text:
      v: Total number of beds in use
  description:
    v: Total number of all Inpatient and outpatient beds that are occupied
  criteria:
    description:
      v: Identifies the number of beds in use by counting the most recent Encounter for each patient where the encounter was in-progress or finished within the period.
    name:
      v: NumTotBedsOcc
    language:
      v: text/fhirpath
    expression:
      v: findAll('Encounter', with('status').equalTo('in-progress'), with('date').within(%ReportingPeriod) ).onServers(%Base) .aggregate( iif($total.select(location[0]).location contains $this.location.location.first(), $total, $total | $this ) )
population:
  code:
    coding:
      system:
        v: http://hl7.org/fhir/uv/saner/CodeSystem/MeasuredValues
      code:
        v: numTotBedsAvail
      display:
        v: Hospital Beds Available
    coding:
      system:
        v: http://hl7.org/fhir/uv/saner/CodeSystem/MeasurePopulationSystem
      code:
        v: numerator-complement
    text:
      v: Total number of hospital beds available
  description:
    v: Total number of all hospital inpatient and outpatient beds that are available
  criteria:
    description:
      v: Computes the number of beds available by substracting the number of beds in use determined by population 1 from the total number of beds given in population 0
    name:
      v: NumTotBedsAvail
    language:
      v: text/fhirpath
    expression:
      v: %NumTotBeds - %NumTotBedsOcc.count()
stratifier:
  code:
    text:
      v: By Type of Location
  description:
    v: Inpatient Non-ICU, Inpatient ICU, Other
  criteria:
    description:
      v: Determines the location of the encounter based on the membership of location.type in the InpatientLocations and ICULocations ValueSet resources. When location.type is assigned to any other value, it is reported to be Other
    language:
      v: text/fhirpath
    expression:
      v: Encounter.location.location.resolve() .iif(myMemberOf(type, %InpatientLocations.url), iif (myMemberOf(type, %ICULocations.url), 'Inpatient ICU', 'Inpatient Non-ICU' ), 'Other' )

v: Device

v: 91537007

v: Hospital Bed

v: capacity

v: structure

v: decrease