FHIR © HL7.org  |  Server Home  |  XIG Home  |  XIG Stats  |  Server Source  |  FHIR  

FHIR IG Statistics: Measure/CMS146FHIRAppropriateTestingforPharyngitis

Packagegov.healthit.ecqi.ecqms
Resource TypeMeasure
IdCMS146FHIRAppropriateTestingforPharyngitis
FHIR VersionR4
Sourcehttp://ecqi.healthit.gov/ecqms/https://build.fhir.org/ig/cqframework/ecqm-content-qicore-2025/Measure-CMS146FHIRAppropriateTestingforPharyngitis.html
URLhttps://madie.cms.gov/Measure/CMS146FHIRAppropriateTestingforPharyngitis
Version0.3.000
Statusactive
Date2025-06-26T19:30:08+00:00
NameCMS146FHIRAppropriateTestingforPharyngitis
TitleAppropriate Testing for PharyngitisFHIR
DescriptionThe percentage of episodes for patients 3 years and older with a diagnosis of pharyngitis that resulted in an antibiotic order on or three days after the episode date and a group A streptococcus (strep) test in the seven-day period from three days prior to the episode date through three days after the episode date
CopyrightThis Physician Performance Measure (Measure) and related data specifications are owned and were developed by the National Committee for Quality Assurance (NCQA). NCQA is not responsible for any use of the Measure. NCQA makes no representations, warranties, or endorsement about the quality of any organization or physician that uses or reports performance measures and NCQA has no liability to anyone who relies on such measures or specifications. NCQA holds a copyright in the Measure. The Measure can be reproduced and distributed, without modification, for noncommercial purposes (e.g., use by healthcare providers in connection with their practices) without obtaining approval from NCQA. Commercial use is defined as the sale, licensing, or distribution of the Measure for commercial gain, or incorporation of the Measure into a product or service that is sold, licensed or distributed for commercial gain. All commercial uses or requests for modification must be approved by NCQA and are subject to a license at the discretion of NCQA. (C) 2012-2024 National Committee for Quality Assurance. All Rights Reserved. Limited proprietary coding is contained in the Measure specifications for user convenience. Users of proprietary code sets should obtain all necessary licenses from the owners of the code sets. NCQA disclaims all liability for use or accuracy of any third-party codes contained in the specifications. CPT(R) codes, descriptions and other data are copyright 2024. American Medical Association. All rights reserved. CPT is a trademark of the American Medical Association. Fee schedules, relative value units, conversion factors and/or related components are not assigned by the AMA, are not part of CPT, and the AMA is not recommending their use. The AMA does not directly or indirectly practice medicine or dispense medical services. The AMA assumes no liability for data contained or not contained herein. Applicable FARS/DFARS restrictions apply to government use. Some measure specifications contain coding from LOINC(R) (http://loinc.org). The LOINC table, LOINC codes, LOINC panels and form file, LOINC linguistic variants file, LOINC/RSNA Radiology Playbook, and LOINC/IEEE Medical Device Code Mapping Table are copyright 2004-2024 Regenstrief Institute, Inc. and the Logical Observation Identifiers Names and Codes (LOINC) Committee, and are available at no cost under the license at http://loinc.org/terms-of-use. This material contains SNOMED Clinical Terms(R) (SNOMED CT[R]) copyright 2004-2023 International Health Terminology Standards Development Organisation. ICD-10 copyright 2024 World Health Organization. All Rights Reserved. Some measures use RxNorm, a standardized nomenclature and coding for clinical drugs and drug delivery devices, which is made publicly available courtesy of the U.S. National Library of Medicine (NLM), National Institutes of Health, Department of Health and Human Services. NLM is not responsible for the measures and does not endorse or recommend this or any other product. “HL7” is the registered trademark of Health Level Seven International.

Resources that use this resource

No resources found


Resources that this resource uses

No resources found


Narrative

Note: links and images are rebased to the (stated) source

Metadata
Title Appropriate Testing for PharyngitisFHIR
Version 0.3.000
Short Name CMS146FHIR
GUID (Version Independent) urn:uuid:9012731d-f909-4733-aca5-b14e66fe9acd
GUID (Version Specific) urn:uuid:a2e2e358-13e5-4702-9f80-0df2e27f32ab
CMS Identifier 146FHIR
Effective Period 2026-01-01 through 2026-12-31
Steward (Publisher) National Committee for Quality Assurance
Developer National Committee for Quality Assurance
Description

The percentage of episodes for patients 3 years and older with a diagnosis of pharyngitis that resulted in an antibiotic order on or three days after the episode date and a group A streptococcus (strep) test in the seven-day period from three days prior to the episode date through three days after the episode date

Copyright

This Physician Performance Measure (Measure) and related data specifications are owned and were developed by the National Committee for Quality Assurance (NCQA). NCQA is not responsible for any use of the Measure. NCQA makes no representations, warranties, or endorsement about the quality of any organization or physician that uses or reports performance measures and NCQA has no liability to anyone who relies on such measures or specifications. NCQA holds a copyright in the Measure. The Measure can be reproduced and distributed, without modification, for noncommercial purposes (e.g., use by healthcare providers in connection with their practices) without obtaining approval from NCQA. Commercial use is defined as the sale, licensing, or distribution of the Measure for commercial gain, or incorporation of the Measure into a product or service that is sold, licensed or distributed for commercial gain. All commercial uses or requests for modification must be approved by NCQA and are subject to a license at the discretion of NCQA. (C) 2012-2024 National Committee for Quality Assurance. All Rights Reserved.

Limited proprietary coding is contained in the Measure specifications for user convenience. Users of proprietary code sets should obtain all necessary licenses from the owners of the code sets. NCQA disclaims all liability for use or accuracy of any third-party codes contained in the specifications.

CPT(R) codes, descriptions and other data are copyright 2024. American Medical Association. All rights reserved. CPT is a trademark of the American Medical Association. Fee schedules, relative value units, conversion factors and/or related components are not assigned by the AMA, are not part of CPT, and the AMA is not recommending their use. The AMA does not directly or indirectly practice medicine or dispense medical services. The AMA assumes no liability for data contained or not contained herein. Applicable FARS/DFARS restrictions apply to government use.

Some measure specifications contain coding from LOINC(R) (http://loinc.org). The LOINC table, LOINC codes, LOINC panels and form file, LOINC linguistic variants file, LOINC/RSNA Radiology Playbook, and LOINC/IEEE Medical Device Code Mapping Table are copyright 2004-2024 Regenstrief Institute, Inc. and the Logical Observation Identifiers Names and Codes (LOINC) Committee, and are available at no cost under the license at http://loinc.org/terms-of-use.

This material contains SNOMED Clinical Terms(R) (SNOMED CT[R]) copyright 2004-2023 International Health Terminology Standards Development Organisation.

ICD-10 copyright 2024 World Health Organization. All Rights Reserved.

Some measures use RxNorm, a standardized nomenclature and coding for clinical drugs and drug delivery devices, which is made publicly available courtesy of the U.S. National Library of Medicine (NLM), National Institutes of Health, Department of Health and Human Services. NLM is not responsible for the measures and does not endorse or recommend this or any other product.

“HL7” is the registered trademark of Health Level Seven International.

Disclaimer

The performance Measure is not a clinical guideline and does not establish a standard of medical care, and has not been tested for all potential applications. THE MEASURE 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

Group A streptococcal (GAS) bacterial infections and other infections that cause pharyngitis (which are most often viral) often produce the same signs and symptoms (Shulman et al., 2012). The American Academy of Pediatrics, the Centers for Disease Control and Prevention, and the Infectious Diseases Society of America all recommend a diagnostic test for Strep A to improve diagnostic accuracy and avoid unnecessary antibiotic treatment (Linder et al., 2005).

Estimated economic costs of pediatric streptococcal pharyngitis in the United States range from $224 million to $539 million per year, including indirect costs related to parental work losses. At a higher level, the economic cost of antibiotic resistance varies but has extended as high as $20 billion in excess direct healthcare costs, with additional costs to society for lost productivity as high as $35 billion a year (2008 dollars) (Pfoh et al., 2008).

Clinical Recommendation Statement

Infectious Disease Society of America (Shulman et al., 2012)

The Infectious Diseases Society of America "recommends swabbing the throat and testing for GAS pharyngitis by rapid antigen detection test (RADT) and/or culture because the clinical features alone do not reliably discriminate between GAS and viral pharyngitis except when overt viral features like rhinorrhea, cough, oral ulcers, and/or hoarseness are present"

Guidance (Usage) This is an episode of care measure that examines all eligible episodes for the patient. The intent is to determine whether antibiotics are being ordered appropriately. Antibiotics should only be ordered if a strep test has been performed to confirm a bacterial infection. Antibiotics should not be ordered for viral infections. Antibiotics should be ordered on or three days after the episode date. This eCQM is an episode-based measure. An episode is defined as each eligible encounter for patients aged 3 years and older with a diagnosis of pharyngitis that resulted in an antibiotic order from January 1 to December 28 of the measurement period. This FHIR-based measure has been derived from the QDM-based measure: CMS146v13. 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).
Measure Group (Rate) (ID: Group_1)
Basis Encounter
Scoring Proportion
Type Process
Rate Aggregation None
Improvement Notation Increased score indicates improvement
Initial Population ID: InitialPopulation_1
Description:

Outpatient, telephone, virtual encounter (i.e., e-visit or virtual check-in), or emergency department (ED) visits with a diagnosis of pharyngitis or tonsillitis from January 1 to December 28 of the measurement period and an antibiotic order on or three days after the episode date among patients 3 years or older

Logic Definition: Initial Population
Denominator ID: Denominator_1
Description:

Equals Initial Population

Logic Definition: Denominator
Denominator Exclusion ID: DenominatorExclusion_1
Description:

Exclude pharyngitis episodes when the patient had hospice care for any part of the measurement period. Exclude pharyngitis episodes when the patient had a comorbid condition during the 12 months prior to or on the episode date. Exclude pharyngitis episodes where the patient is taking antibiotics in the 30 days prior to the episode date. Exclude pharyngitis episodes where the patient had a competing diagnosis on or three days after the episode date.

Logic Definition: Denominator Exclusions
Numerator ID: Numerator_1
Description:

A group A streptococcus test in the seven-day period from three days prior to the episode date through three days after the episode date

Logic Definition: Numerator
Stratifier ID: Stratification_1_1
Description: - 3-17 years
Stratifier ID: Stratification_1_2
Description: - 18-64 years
Stratifier ID: Stratification_1_3
Description: - 65 years and older
Supplemental Data Guidance For every patient evaluated by this measure also identify payer, race, ethnicity and sex
Supplemental Data Elements
Supplemental Data Element ID: sde-ethnicity
Usage Code: Supplemental Data
Description: SDE Ethnicity
Logic Definition: SDE Ethnicity
Supplemental Data Element ID: sde-payer
Usage Code: Supplemental Data
Description: SDE Payer
Logic Definition: SDE Payer
Supplemental Data Element ID: sde-race
Usage Code: Supplemental Data
Description: SDE Race
Logic Definition: SDE Race
Supplemental Data Element ID: sde-sex
Usage Code: Supplemental Data
Description: SDE Sex
Logic Definition: SDE Sex
Measure Logic
Primary Library CMS146FHIRAppropriateTestingforPharyngitis
Contents Population Criteria
Logic Definitions
Terminology
Dependencies
Data Requirements
Population Criteria
Measure Group (Rate) (ID: Group_1)
Initial Population
define "Initial Population":
  "Encounter With Pharyngitis or Tonsillitis With Antibiotic" EncounterWithPharyngitis
    where AgeInYearsAt(date from start of "Measurement Period") >= 3
    return EncounterWithPharyngitis
Initial Population
define "Initial Population":
  "Encounter With Pharyngitis or Tonsillitis With Antibiotic" EncounterWithPharyngitis
    where AgeInYearsAt(date from start of "Measurement Period") >= 3
    return EncounterWithPharyngitis
Denominator
define "Denominator":
  "Initial Population"
Denominator Exclusion
define "Denominator Exclusions":
  "Encounters and Assessments with Hospice Patient"
    union Antibiotic."Has Comorbid Condition History" ( "Encounter With Pharyngitis or Tonsillitis With Antibiotic", ( [ConditionEncounterDiagnosis: "Comorbid Conditions for Respiratory Conditions"] ) )
    union Antibiotic."Has Antibiotic Medication History" ( "Encounter With Pharyngitis or Tonsillitis With Antibiotic", ( [MedicationRequest: "Antibiotic Medications for Pharyngitis"] ).isMedicationActive ( ) )
    union Antibiotic."Has Competing Diagnosis History" ( "Encounter With Pharyngitis or Tonsillitis With Antibiotic", ( [ConditionEncounterDiagnosis: "Competing Conditions for Respiratory Conditions"] ) )
Numerator
define "Numerator":
  from
    "Group A Streptococcus Lab Test With Result" GroupAStreptococcusTest,
    "Encounter With Pharyngitis or Tonsillitis With Antibiotic" EncounterWithPharyngitis
    where GroupAStreptococcusTest.effective.toInterval ( ) starts during day of Interval[( end of EncounterWithPharyngitis.period ) - 3 days, ( end of EncounterWithPharyngitis.period ) + 3 days]
    return EncounterWithPharyngitis
Stratifier
define "Encounter With Pharyngitis or Tonsillitis With Antibiotic":
  from
    "Encounter With Antibiotic Ordered Within Three Days" VisitWithAntibiotic,
    "Pharyngitis or Tonsillitis" AcutePharyngitisTonsillitis
    where AcutePharyngitisTonsillitis.prevalenceInterval ( ) starts during day of VisitWithAntibiotic.period.toInterval ( )
    return VisitWithAntibiotic
Stratifier
define "Encounter With Pharyngitis or Tonsillitis With Antibiotic":
  from
    "Encounter With Antibiotic Ordered Within Three Days" VisitWithAntibiotic,
    "Pharyngitis or Tonsillitis" AcutePharyngitisTonsillitis
    where AcutePharyngitisTonsillitis.prevalenceInterval ( ) starts during day of VisitWithAntibiotic.period.toInterval ( )
    return VisitWithAntibiotic
Stratifier
define "Encounter With Pharyngitis or Tonsillitis With Antibiotic":
  from
    "Encounter With Antibiotic Ordered Within Three Days" VisitWithAntibiotic,
    "Pharyngitis or Tonsillitis" AcutePharyngitisTonsillitis
    where AcutePharyngitisTonsillitis.prevalenceInterval ( ) starts during day of VisitWithAntibiotic.period.toInterval ( )
    return VisitWithAntibiotic
Stratifier
define "Encounter With Pharyngitis or Tonsillitis With Antibiotic":
  from
    "Encounter With Antibiotic Ordered Within Three Days" VisitWithAntibiotic,
    "Pharyngitis or Tonsillitis" AcutePharyngitisTonsillitis
    where AcutePharyngitisTonsillitis.prevalenceInterval ( ) starts during day of VisitWithAntibiotic.period.toInterval ( )
    return VisitWithAntibiotic
Stratifier
define "Encounter With Pharyngitis or Tonsillitis With Antibiotic":
  from
    "Encounter With Antibiotic Ordered Within Three Days" VisitWithAntibiotic,
    "Pharyngitis or Tonsillitis" AcutePharyngitisTonsillitis
    where AcutePharyngitisTonsillitis.prevalenceInterval ( ) starts during day of VisitWithAntibiotic.period.toInterval ( )
    return VisitWithAntibiotic
Stratifier
define "Encounter With Pharyngitis or Tonsillitis With Antibiotic":
  from
    "Encounter With Antibiotic Ordered Within Three Days" VisitWithAntibiotic,
    "Pharyngitis or Tonsillitis" AcutePharyngitisTonsillitis
    where AcutePharyngitisTonsillitis.prevalenceInterval ( ) starts during day of VisitWithAntibiotic.period.toInterval ( )
    return VisitWithAntibiotic
Logic Definitions
Logic Definition Library Name: Hospice
define "Has Hospice Services":
  exists ((([Encounter: "Encounter Inpatient"]).isEncounterPerformed()) InpatientEncounter
      where (InpatientEncounter.hospitalization.dischargeDisposition ~ "Discharge to home for hospice care (procedure)"
          or InpatientEncounter.hospitalization.dischargeDisposition ~ "Discharge to healthcare facility for hospice care (procedure)"
      )
        and InpatientEncounter.period.toInterval() ends during day of "Measurement Period"
  )
    or exists ((([Encounter: "Hospice Encounter"]).isEncounterPerformed()) HospiceEncounter
        where HospiceEncounter.period.toInterval() overlaps day of "Measurement Period"
    )
    or exists ((([ObservationScreeningAssessment: "Hospice care [Minimum Data Set]"]).isAssessmentPerformed()) HospiceAssessment
        where HospiceAssessment.value ~ "Yes (qualifier value)"
          and HospiceAssessment.effective.toInterval() overlaps day of "Measurement Period"
    )
    or exists ((([ServiceRequest: "Hospice Care Ambulatory"]).isInterventionOrder()) HospiceOrder
        where HospiceOrder.authoredOn.toInterval() during day of "Measurement Period"
    )
    or exists ((([Procedure: "Hospice Care Ambulatory"]).isInterventionPerformed()) HospicePerformed
        where HospicePerformed.performed.toInterval() overlaps day of "Measurement Period"
    )
    or exists ((([ConditionProblemsHealthConcerns: "Hospice Diagnosis"])
        union ([ConditionEncounterDiagnosis: "Hospice Diagnosis"])) HospiceCareDiagnosis
        where HospiceCareDiagnosis.prevalenceInterval() overlaps day of "Measurement Period"
    )
Logic Definition Library Name: SupplementalDataElements
define "SDE Sex":
  case
    when Patient.sex = '248153007' then "Male (finding)"
    when Patient.sex = '248152002' then "Female (finding)"
    else null
  end
Logic Definition Library Name: SupplementalDataElements
define "SDE Payer":
  [Coverage: type in "Payer Type"] Payer
    return {
      code: Payer.type,
      period: Payer.period
    }
Logic Definition Library Name: SupplementalDataElements
define "SDE Ethnicity":
  Patient.ethnicity E
    return Tuple {
      codes: { E.ombCategory } union E.detailed,
      display: E.text
    }
Logic Definition Library Name: SupplementalDataElements
define "SDE Race":
  Patient.race R
    return Tuple {
      codes: R.ombCategory union R.detailed,
      display: R.text
    }
Logic Definition Library Name: CMS146FHIRAppropriateTestingforPharyngitis
define "SDE Sex":
  SDE."SDE Sex"
Logic Definition Library Name: CMS146FHIRAppropriateTestingforPharyngitis
define "Group A Streptococcus Lab Test With Result":
  ( ( [LaboratoryResultObservation: "Group A Streptococcus Test"] ).isLaboratoryTestPerformed ( ) ) GroupAStreptococcusTest
    where GroupAStreptococcusTest.value is not null
Logic Definition Library Name: CMS146FHIRAppropriateTestingforPharyngitis
define "Qualifying Encounters":
  ( ( [Encounter: "Emergency Department Evaluation and Management Visit"]
      union [Encounter: "Home Healthcare Services"]
      union [Encounter: "Medical Disability Exam"]
      union [Encounter: "Office Visit"]
      union [Encounter: "Telephone Visits"]
      union [Encounter: "Virtual Encounter"]
      union [Encounter: "Outpatient Consultation"]
      union [Encounter: "Preventive Care Services Established Office Visit, 18 and Up"]
      union [Encounter: "Preventive Care Services Group Counseling"]
      union ( [Encounter] E
          where exists ( ( E.type ) T
              where T ~ "Unlisted preventive medicine service"
          )
      )
      union [Encounter: "Preventive Care Services, Initial Office Visit, 0 to 17"]
      union [Encounter: "Preventive Care Services Individual Counseling"]
      union [Encounter: "Preventive Care Services Initial Office Visit, 18 and Up"]
      union [Encounter: "Preventive Care, Established Office Visit, 0 to 17"]
  ).isEncounterPerformed ( ) ) ValidEncounter
    where ValidEncounter.period.toInterval ( ) ends during day of Interval[( start of "Measurement Period" ), ( end of "Measurement Period" ) - 3 days]
Logic Definition Library Name: CMS146FHIRAppropriateTestingforPharyngitis
define "Encounter With Antibiotic Ordered Within Three Days":
  "Qualifying Encounters" EDOrAmbulatoryVisit
    with ( ( [MedicationRequest: "Antibiotic Medications for Pharyngitis"] ).isMedicationOrder ( ) ) AntibioticOrdered
      such that EDOrAmbulatoryVisit.period.toInterval ( ) starts 3 days or less on or before day of AntibioticOrdered.authoredOn
Logic Definition Library Name: CMS146FHIRAppropriateTestingforPharyngitis
define "Pharyngitis or Tonsillitis":
  ( [ConditionEncounterDiagnosis: "Acute Pharyngitis"]
      union [ConditionEncounterDiagnosis: "Acute Tonsillitis"]
  )
Logic Definition Library Name: CMS146FHIRAppropriateTestingforPharyngitis
define "Encounter With Pharyngitis or Tonsillitis With Antibiotic":
  from
    "Encounter With Antibiotic Ordered Within Three Days" VisitWithAntibiotic,
    "Pharyngitis or Tonsillitis" AcutePharyngitisTonsillitis
    where AcutePharyngitisTonsillitis.prevalenceInterval ( ) starts during day of VisitWithAntibiotic.period.toInterval ( )
    return VisitWithAntibiotic
Logic Definition Library Name: CMS146FHIRAppropriateTestingforPharyngitis
define "Numerator":
  from
    "Group A Streptococcus Lab Test With Result" GroupAStreptococcusTest,
    "Encounter With Pharyngitis or Tonsillitis With Antibiotic" EncounterWithPharyngitis
    where GroupAStreptococcusTest.effective.toInterval ( ) starts during day of Interval[( end of EncounterWithPharyngitis.period ) - 3 days, ( end of EncounterWithPharyngitis.period ) + 3 days]
    return EncounterWithPharyngitis
Logic Definition Library Name: CMS146FHIRAppropriateTestingforPharyngitis
define "Initial Population":
  "Encounter With Pharyngitis or Tonsillitis With Antibiotic" EncounterWithPharyngitis
    where AgeInYearsAt(date from start of "Measurement Period") >= 3
    return EncounterWithPharyngitis
Logic Definition Library Name: CMS146FHIRAppropriateTestingforPharyngitis
define "Denominator":
  "Initial Population"
Logic Definition Library Name: CMS146FHIRAppropriateTestingforPharyngitis
define "SDE Payer":
  SDE."SDE Payer"
Logic Definition Library Name: CMS146FHIRAppropriateTestingforPharyngitis
define "Initial Population":
  "Encounter With Pharyngitis or Tonsillitis With Antibiotic" EncounterWithPharyngitis
    where AgeInYearsAt(date from start of "Measurement Period") >= 3
    return EncounterWithPharyngitis
Logic Definition Library Name: CMS146FHIRAppropriateTestingforPharyngitis
define "Encounter With Pharyngitis or Tonsillitis With Antibiotic":
  from
    "Encounter With Antibiotic Ordered Within Three Days" VisitWithAntibiotic,
    "Pharyngitis or Tonsillitis" AcutePharyngitisTonsillitis
    where AcutePharyngitisTonsillitis.prevalenceInterval ( ) starts during day of VisitWithAntibiotic.period.toInterval ( )
    return VisitWithAntibiotic
Logic Definition Library Name: CMS146FHIRAppropriateTestingforPharyngitis
define "SDE Ethnicity":
  SDE."SDE Ethnicity"
Logic Definition Library Name: CMS146FHIRAppropriateTestingforPharyngitis
define "Encounters and Assessments with Hospice Patient":
  "Initial Population" EligibleEncounters
    where Hospice."Has Hospice Services"
Logic Definition Library Name: CMS146FHIRAppropriateTestingforPharyngitis
define "Denominator Exclusions":
  "Encounters and Assessments with Hospice Patient"
    union Antibiotic."Has Comorbid Condition History" ( "Encounter With Pharyngitis or Tonsillitis With Antibiotic", ( [ConditionEncounterDiagnosis: "Comorbid Conditions for Respiratory Conditions"] ) )
    union Antibiotic."Has Antibiotic Medication History" ( "Encounter With Pharyngitis or Tonsillitis With Antibiotic", ( [MedicationRequest: "Antibiotic Medications for Pharyngitis"] ).isMedicationActive ( ) )
    union Antibiotic."Has Competing Diagnosis History" ( "Encounter With Pharyngitis or Tonsillitis With Antibiotic", ( [ConditionEncounterDiagnosis: "Competing Conditions for Respiratory Conditions"] ) )
Logic Definition Library Name: CMS146FHIRAppropriateTestingforPharyngitis
define "SDE Race":
  SDE."SDE Race"
Logic Definition Library Name: FHIRHelpers
define function ToString(value uri): value.value
Logic Definition Library Name: FHIRHelpers
/*
@description: Converts the given FHIR [CodeableConcept](https://hl7.org/fhir/datatypes.html#CodeableConcept) value to a CQL Concept.
*/
define function ToConcept(concept FHIR.CodeableConcept):
    if concept is null then
        null
    else
        System.Concept {
            codes: concept.coding C return ToCode(C),
            display: concept.text.value
        }
Logic Definition Library Name: FHIRHelpers
/*
@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
        }
Logic Definition Library Name: FHIRHelpers
/*
@description: Converts the given [Period](https://hl7.org/fhir/datatypes.html#Period)
value to a CQL DateTime Interval
@comment: If the start value of the given period is unspecified, the starting
boundary of the resulting interval will be open (meaning the start of the interval
is unknown, as opposed to interpreted as the beginning of time).
*/
define function ToInterval(period FHIR.Period):
    if period is null then
        null
    else
        if period."start" is null then
            Interval(period."start".value, period."end".value]
        else
            Interval[period."start".value, period."end".value]
Logic Definition Library Name: QICoreCommon
/*
@description: Normalizes a value that is a choice of timing-valued types to an equivalent interval
@comment: Normalizes a choice type of DateTime, Quanitty, Interval<DateTime>, or Interval<Quantity> types
to an equivalent interval. This selection of choice types is a superset of the majority of choice types that are used as possible
representations for timing-valued elements in QICore, allowing this function to be used across any resource.
The input can be provided as a DateTime, Quantity, Interval<DateTime> or Interval<Quantity>.
The intent of this function is to provide a clear and concise mechanism to treat single
elements that have multiple possible representations as intervals so that logic doesn't have to account
for the variability. More complex calculations (such as medication request period or dispense period
calculation) need specific guidance and consideration. That guidance may make use of this function, but
the focus of this function is on single element calculations where the semantics are unambiguous.
If the input is a DateTime, the result a DateTime Interval beginning and ending on that DateTime.
If the input is a Quantity, the quantity is expected to be a calendar-duration interpreted as an Age,
and the result is a DateTime Interval beginning on the Date the patient turned that age and ending immediately before one year later.
If the input is a DateTime Interval, the result is the input.
If the input is a Quantity Interval, the quantities are expected to be calendar-durations interpreted as an Age, and the result
is a DateTime Interval beginning on the date the patient turned the age given as the start of the quantity interval, and ending
immediately before one year later than the date the patient turned the age given as the end of the quantity interval.
If the input is a Timing, an error will be thrown indicating that Timing calculations are not implemented. Any other input will reslt in a null DateTime Interval
*/
define fluent function toInterval(choice Choice<DateTime, Quantity, Interval<DateTime>, Interval<Quantity>, Timing>):
  case
	  when choice is DateTime then
    	Interval[choice as DateTime, choice as DateTime]
		when choice is Interval<DateTime> then
  		choice as Interval<DateTime>
		when choice is Quantity then
		  Interval[Patient.birthDate + (choice as Quantity),
			  Patient.birthDate + (choice as Quantity) + 1 year)
		when choice is Interval<Quantity> then
		  Interval[Patient.birthDate + (choice.low as Quantity),
			  Patient.birthDate + (choice.high as Quantity) + 1 year)
		when choice is Timing then
      Message(null, true, 'NOT_IMPLEMENTED', 'Error', 'Calculation of an interval from a Timing value is not supported') as Interval<DateTime>
		else
			null as Interval<DateTime>
	end
Logic Definition Library Name: QICoreCommon
/*
@description: Returns an interval representing the normalized prevalence period of a given Condition.
@comment: Uses the ToInterval and ToAbatementInterval functions to determine the widest potential interval from
onset to abatement as specified in the given Condition. If the condition is active, or has an abatement date the resulting 
interval will have a closed ending boundary. Otherwise, the resulting interval will have an open ending boundary.
*/
define fluent function prevalenceInterval(condition Choice<"ConditionEncounterDiagnosis", "ConditionProblemsHealthConcerns">):
if condition.clinicalStatus ~ "active"
  or condition.clinicalStatus ~ "recurrence"
  or condition.clinicalStatus ~ "relapse" then
  Interval[start of condition.onset.toInterval(), end of condition.abatementInterval()]
else
    (end of condition.abatementInterval()) abatementDate
    return if abatementDate is null then
      Interval[start of condition.onset.toInterval(), abatementDate)
    else
      Interval[start of condition.onset.toInterval(), abatementDate]
Logic Definition Library Name: QICoreCommon
/*
@description: Returns an interval representing the normalized abatement of a given Condition.
@comment: If the abatement element of the Condition is represented as a DateTime, the result
is an interval beginning and ending on that DateTime.
If the abatement is represented as a Quantity, the quantity is expected to be a calendar-duration and is interpreted as the age of the patient. The
result is an interval from the date the patient turned that age to immediately before one year later.
If the abatement is represented as a Quantity Interval, the quantities are expected to be calendar-durations and are interpreted as an age range during
which the abatement occurred. The result is an interval from the date the patient turned the starting age of the quantity interval, and ending immediately
before one year later than the date the patient turned the ending age of the quantity interval.
*/
define fluent function abatementInterval(condition Choice<"ConditionEncounterDiagnosis", "ConditionProblemsHealthConcerns">):
	if condition.abatement is DateTime then
	  Interval[condition.abatement as DateTime, condition.abatement as DateTime]
	else if condition.abatement is Quantity then
		Interval[Patient.birthDate + (condition.abatement as Quantity),
			Patient.birthDate + (condition.abatement as Quantity) + 1 year)
	else if condition.abatement is Interval<Quantity> then
	  Interval[Patient.birthDate + (condition.abatement.low as Quantity),
		  Patient.birthDate + (condition.abatement.high as Quantity) + 1 year)
	else if condition.abatement is Interval<DateTime> then
	  Interval[condition.abatement.low, condition.abatement.high)
	else null as Interval<DateTime>
Logic Definition Library Name: CumulativeMedicationDuration
define fluent function medicationRequestPeriod(Request "MedicationRequest"):
  Request R
    let
      dosage: singleton from R.dosageInstruction,
      doseAndRate: singleton from dosage.doseAndRate,
      timing: dosage.timing,
      frequency: Coalesce(timing.repeat.frequencyMax, timing.repeat.frequency),
      period: Quantity(timing.repeat.period, timing.repeat.periodUnit),
      doseRange: doseAndRate.dose,
      doseQuantity: doseAndRate.dose,
      dose: Coalesce(end of doseRange, doseQuantity),
      dosesPerDay: Coalesce(ToDaily(frequency, period), Count(timing.repeat.timeOfDay), 1.0),
      boundsPeriod: timing.repeat.bounds as Interval<DateTime>,
      daysSupply: (convert R.dispenseRequest.expectedSupplyDuration to days).value,
      quantity: R.dispenseRequest.quantity,
      refills: Coalesce(R.dispenseRequest.numberOfRepeatsAllowed, 0),
      startDate:
        Coalesce(
          date from start of boundsPeriod,
          date from R.authoredOn,
          date from start of R.dispenseRequest.validityPeriod
        ),
      totalDaysSupplied: Coalesce(daysSupply, quantity.value / (dose.value * dosesPerDay)) * (1 + refills)
    return
      if startDate is not null and totalDaysSupplied is not null then
        Interval[startDate, startDate + Quantity(totalDaysSupplied - 1, 'day') ]
      else if startDate is not null and boundsPeriod."high" is not null then
        Interval[startDate, date from end of boundsPeriod]
      else
        null
Logic Definition Library Name: CumulativeMedicationDuration
/**********************************************************************/
/* Functions in this region are copied from opioid-mme-r4             */
/**********************************************************************/

define function Quantity(value Decimal, unit String):
  if value is not null then
    System.Quantity { value: value, unit: unit }
  else
    null
Logic Definition Library Name: CumulativeMedicationDuration
/*
 Goal is to get to number of days
 Two broad approaches to the calculation:
  1) Based on supply and frequency, calculate the number of expected days the medication will cover/has covered
  2) Based on relevant period, determine a covered interval and calculate the length of that interval in days
This topic covers several use cases and illustrates how to calculate Cumulative
Medication Duration for each type of medication resource using the supply and
frequency approach.
*/

/*
  For the first approach, we need to get from frequency to a frequency/day
  So we define ToDaily
*/

/*
  Calculates daily frequency given frequency within a period
*/
define function ToDaily(frequency System.Integer, period System.Quantity):
  case period.unit
    when 'h' then frequency * (24.0 / period.value)
    when 'min' then frequency * (24.0 / period.value) * 60
    when 's' then frequency * (24.0 / period.value) * 60 * 60
    when 'd' then frequency * (24.0 / period.value) / 24
    when 'wk' then frequency * (24.0 / period.value) / (24 * 7)
    when 'mo' then frequency * (24.0 / period.value) / (24 * 30) /* assuming 30 days in month */
    when 'a' then frequency * (24.0 / period.value) / (24 * 365) /* assuming 365 days in year */
    when 'hour' then frequency * (24.0 / period.value)
    when 'minute' then frequency * (24.0 / period.value) * 60
    when 'second' then frequency * (24.0 / period.value) * 60 * 60
    when 'day' then frequency * (24.0 / period.value) / 24
    when 'week' then frequency * (24.0 / period.value) / (24 * 7)
    when 'month' then frequency * (24.0 / period.value) / (24 * 30) /* assuming 30 days in month */
    when 'year' then frequency * (24.0 / period.value) / (24 * 365) /* assuming 365 days in year */
    when 'hours' then frequency * (24.0 / period.value)
    when 'minutes' then frequency * (24.0 / period.value) * 60
    when 'seconds' then frequency * (24.0 / period.value) * 60 * 60
    when 'days' then frequency * (24.0 / period.value) / 24
    when 'weeks' then frequency * (24.0 / period.value) / (24 * 7)
    when 'months' then frequency * (24.0 / period.value) / (24 * 30) /* assuming 30 days in month */
    when 'years' then frequency * (24.0 / period.value) / (24 * 365) /* assuming 365 days in year */
    else Message(null, true, 'CMDLogic.ToDaily.UnknownUnit', ErrorLevel, 'Unknown unit ' & period.unit)
  end
Logic Definition Library Name: Status
//Laboratory Test, Performed
define fluent function isLaboratoryTestPerformed(Obs List<LaboratoryResultObservation>):
  Obs O
    where O.status in { 'final', 'amended', 'corrected' }
Logic Definition Library Name: Status
//Encounter, Performed
//General usage unless required otherwise by measure intent (e.g., follow-up encounters)
define fluent function isEncounterPerformed(Enc List<Encounter>):
  Enc E
    where E.status in {'finished', 'arrived', 'triaged', 'in-progress', 'onleave'}
Logic Definition Library Name: Status
//Medication, Order
define fluent function isMedicationOrder(MedicationRequest List<MedicationRequest>):
  MedicationRequest M
    where M.status in { 'active', 'completed' }
      and M.intent = 'order'
Logic Definition Library Name: Status
//This library contains functions used to constrain FHIR resource elements for measures authored by NCQA, based on QICore 6.0.0 resources including IG and authoring patterns. The functions may appear similar to some QICoreCommon functions but differ in that they have constraints that are relevant for measures authored by NCQA.

//Assessment, Performed
define fluent function isAssessmentPerformed(Obs List<ObservationScreeningAssessment>):
  Obs O
    where O.status in { 'final', 'amended', 'corrected' }
Logic Definition Library Name: Status
//Intervention, Order
define fluent function isInterventionOrder(ServiceRequest List<ServiceRequest>):
  ServiceRequest S
    where S.status in { 'active', 'completed' }
      and S.intent = 'order'
Logic Definition Library Name: Status
//Intervention, Performed
define fluent function isInterventionPerformed(Proc List<Procedure>):
  Proc P
    where P.status ~ 'completed'
Logic Definition Library Name: Status
//Medication, Active
define fluent function isMedicationActive(MedicationRequest List<MedicationRequest>):
  MedicationRequest M
    where M.status = 'active'
      and M.intent = 'order'
Logic Definition Library Name: Antibiotic
define function "Has Comorbid Condition History"(episodeDate List<Encounter>, comorbidConditions List<ConditionEncounterDiagnosis>):
  episodeDate eDate
      with comorbidConditions comcondition
        such that date from start of comcondition.prevalenceInterval() during Interval[date from start of eDate.period.toInterval() - 1 year, date from start of eDate.period.toInterval()]
      return eDate
Logic Definition Library Name: Antibiotic
define function "Has Antibiotic Medication History"(episodeDate List<Encounter>, antibioticMedications List<MedicationRequest>):
   episodeDate DateOfEpisode
    with antibioticMedications ActiveMedication
      such that ActiveMedication.medicationRequestPeriod() overlaps day of Interval[date from start of DateOfEpisode.period.toInterval()  - 30 days, date from start of DateOfEpisode.period.toInterval() - 1 day]
Logic Definition Library Name: Antibiotic
define function "Has Competing Diagnosis History"(episodeDate List<Encounter>, competingConditions List<ConditionEncounterDiagnosis>):
  episodeDate eDate
      with competingConditions competcondition
        such that competcondition.prevalenceInterval() starts 3 days or less on or after day of start of eDate.period
      return eDate
Terminology
Code System Description: Code system SNOMEDCT
Resource: SNOMED CT (all versions)
Canonical URL: http://snomed.info/sct
Code System Description: Code system CPT
Resource: Current Procedural Terminology (CPT®)
Canonical URL: http://www.ama-assn.org/go/cpt
Code System Description: Code system ConditionClinicalStatusCodes
Resource: Condition Clinical Status Codes
Canonical URL: http://terminology.hl7.org/CodeSystem/condition-clinical
Code System Description: Code system SNOMEDCT
Resource: SNOMED CT (all versions)
Canonical URL: http://snomed.info/sct
Code System Description: Code system LOINC
Resource: Logical Observation Identifiers, Names and Codes (LOINC)
Canonical URL: http://loinc.org
Value Set Description: Value set Group A Streptococcus Test
Resource: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.198.12.1012
Canonical URL: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.198.12.1012
Value Set Description: Value set Emergency Department Evaluation and Management Visit
Resource: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1010
Canonical URL: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1010
Value Set Description: Value set Home Healthcare Services
Resource: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1016
Canonical URL: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1016
Value Set Description: Value set Medical Disability Exam
Resource: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1073
Canonical URL: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1073
Value Set Description: Value set Office Visit
Resource: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1001
Canonical URL: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1001
Value Set Description: Value set Telephone Visits
Resource: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1080
Canonical URL: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1080
Value Set Description: Value set Virtual Encounter
Resource: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1089
Canonical URL: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1089
Value Set Description: Value set Outpatient Consultation
Resource: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1008
Canonical URL: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1008
Value Set Description: Value set Preventive Care Services Established Office Visit, 18 and Up
Resource: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1025
Canonical URL: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1025
Value Set Description: Value set Preventive Care Services Group Counseling
Resource: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1027
Canonical URL: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1027
Value Set Description: Value set Preventive Care Services, Initial Office Visit, 0 to 17
Resource: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1022
Canonical URL: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1022
Value Set Description: Value set Preventive Care Services Individual Counseling
Resource: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1026
Canonical URL: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1026
Value Set Description: Value set Preventive Care Services Initial Office Visit, 18 and Up
Resource: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1023
Canonical URL: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1023
Value Set Description: Value set Preventive Care, Established Office Visit, 0 to 17
Resource: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1024
Canonical URL: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1024
Value Set Description: Value set Antibiotic Medications for Pharyngitis
Resource: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.196.12.1001
Canonical URL: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.196.12.1001
Value Set Description: Value set Acute Pharyngitis
Resource: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.102.12.1011
Canonical URL: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.102.12.1011
Value Set Description: Value set Acute Tonsillitis
Resource: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.102.12.1012
Canonical URL: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.102.12.1012
Value Set Description: Value set Payer Type
Resource: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.114222.4.11.3591
Canonical URL: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.114222.4.11.3591
Value Set Description: Value set Encounter Inpatient
Resource: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.666.5.307
Canonical URL: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.666.5.307
Value Set Description: Value set Hospice Encounter
Resource: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.1003
Canonical URL: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.1003
Value Set Description: Value set Hospice Care Ambulatory
Resource: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.526.3.1584
Canonical URL: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.526.3.1584
Value Set Description: Value set Hospice Diagnosis
Resource: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.1165
Canonical URL: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.1165
Value Set Description: Value set Comorbid Conditions for Respiratory Conditions
Resource: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.102.12.1025
Canonical URL: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.102.12.1025
Value Set Description: Value set Competing Conditions for Respiratory Conditions
Resource: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.102.12.1017
Canonical URL: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.102.12.1017
Direct Reference Code Display: Male (finding)
Code: 248153007
System: http://snomed.info/sct
Direct Reference Code Display: Female (finding)
Code: 248152002
System: http://snomed.info/sct
Direct Reference Code Display: Unlisted preventive medicine service
Code: 99429
System: http://www.ama-assn.org/go/cpt
Direct Reference Code Display: Active
Code: active
System: http://terminology.hl7.org/CodeSystem/condition-clinical
Direct Reference Code Display: Recurrence
Code: recurrence
System: http://terminology.hl7.org/CodeSystem/condition-clinical
Direct Reference Code Display: Relapse
Code: relapse
System: http://terminology.hl7.org/CodeSystem/condition-clinical
Direct Reference Code Display: Discharge to home for hospice care (procedure)
Code: 428361000124107
System: http://snomed.info/sct
Direct Reference Code Display: Discharge to healthcare facility for hospice care (procedure)
Code: 428371000124100
System: http://snomed.info/sct
Direct Reference Code Display: Hospice care [Minimum Data Set]
Code: 45755-6
System: http://loinc.org
Direct Reference Code Display: Yes (qualifier value)
Code: 373066001
System: http://snomed.info/sct
Dependencies
Dependency Description: Library SDE
Resource: Library/SupplementalDataElements|5.1.000
Canonical URL: Library/SupplementalDataElements|5.1.000
Dependency Description: Library FHIRHelpers
Resource: Library/FHIRHelpers|4.4.000
Canonical URL: Library/FHIRHelpers|4.4.000
Dependency Description: Library Status
Resource: Library/Status|1.13.000
Canonical URL: Library/Status|1.13.000
Dependency Description: Library FHIRHelpers
Resource: Library/FHIRHelpers|4.4.000
Canonical URL: Library/FHIRHelpers|4.4.000
Dependency Description: Library QICoreCommon
Resource: Library/QICoreCommon|4.0.000
Canonical URL: Library/QICoreCommon|4.0.000
Dependency Description: Library FHIRHelpers
Resource: Library/FHIRHelpers|4.4.000
Canonical URL: Library/FHIRHelpers|4.4.000
Dependency Description: Library Hospice
Resource: Library/Hospice|6.15.000
Canonical URL: Library/Hospice|6.15.000
Dependency Description: Library Status
Resource: Library/Status|1.13.000
Canonical URL: Library/Status|1.13.000
Dependency Description: Library FHIRHelpers
Resource: Library/FHIRHelpers|4.4.000
Canonical URL: Library/FHIRHelpers|4.4.000
Dependency Description: Library QICoreCommon
Resource: Library/QICoreCommon|4.0.000
Canonical URL: Library/QICoreCommon|4.0.000
Dependency Description: Library Antibiotic
Resource: Library/Antibiotic|1.9.000
Canonical URL: Library/Antibiotic|1.9.000
Dependency Description: Library QICoreCommon
Resource: Library/QICoreCommon|4.0.000
Canonical URL: Library/QICoreCommon|4.0.000
Dependency Description: Library FHIRHelpers
Resource: Library/FHIRHelpers|4.4.000
Canonical URL: Library/FHIRHelpers|4.4.000
Dependency Description: Library CMD
Resource: Library/CumulativeMedicationDuration|6.0.000
Canonical URL: Library/CumulativeMedicationDuration|6.0.000
Dependency Description: Library FHIRHelpers
Resource: Library/FHIRHelpers|4.4.000
Canonical URL: Library/FHIRHelpers|4.4.000
Data Requirements
Data Requirement Type: Observation
Profile(s): http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-observation-lab
Must Support Elements: code, value
Code Filter(s):
Path: code
ValueSet: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.198.12.1012
Data Requirement Type: Encounter
Profile(s): http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter
Must Support Elements: type
Data Requirement Type: Encounter
Profile(s): http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter
Must Support Elements: type
Code Filter(s):
Path: type
ValueSet: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1022
Data Requirement Type: Encounter
Profile(s): http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter
Must Support Elements: type
Code Filter(s):
Path: type
ValueSet: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1026
Data Requirement Type: Encounter
Profile(s): http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter
Must Support Elements: type
Code Filter(s):
Path: type
ValueSet: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1023
Data Requirement Type: Encounter
Profile(s): http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter
Must Support Elements: type
Code Filter(s):
Path: type
ValueSet: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1024
Data Requirement Type: Condition
Profile(s): http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-condition-encounter-diagnosis
Must Support Elements: code
Code Filter(s):
Path: code
ValueSet: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.102.12.1011
Data Requirement Type: Condition
Profile(s): http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-condition-encounter-diagnosis
Must Support Elements: code
Code Filter(s):
Path: code
ValueSet: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.102.12.1012
Data Requirement Type: Observation
Profile(s): http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-observation-lab
Must Support Elements: code, value, effective
Code Filter(s):
Path: code
ValueSet: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.198.12.1012
Data Requirement Type: Patient
Profile(s): http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-patient
Data Requirement Type: Encounter
Profile(s): http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter
Must Support Elements: type, hospitalization, hospitalization.dischargeDisposition, period
Code Filter(s):
Path: type
ValueSet: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.666.5.307
Data Requirement Type: Encounter
Profile(s): http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter
Must Support Elements: type, period
Code Filter(s):
Path: type
ValueSet: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.1003
Data Requirement Type: Observation
Profile(s): http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-observation-screening-assessment
Must Support Elements: code, value, effective
Code Filter(s):
Path: code
Code(s): LOINC 45755-6: Hospice care [Minimum Data Set]
Data Requirement Type: ServiceRequest
Profile(s): http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-servicerequest
Must Support Elements: code, authoredOn, authoredOn.value
Code Filter(s):
Path: code
ValueSet: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.526.3.1584
Data Requirement Type: Procedure
Profile(s): http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-procedure
Must Support Elements: code, performed
Code Filter(s):
Path: code
ValueSet: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.526.3.1584
Data Requirement Type: Condition
Profile(s): http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-condition-problems-health-concerns
Must Support Elements: code
Code Filter(s):
Path: code
ValueSet: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.1165
Data Requirement Type: Condition
Profile(s): http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-condition-encounter-diagnosis
Must Support Elements: code
Code Filter(s):
Path: code
ValueSet: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.1165
Data Requirement Type: Condition
Profile(s): http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-condition-encounter-diagnosis
Must Support Elements: code
Code Filter(s):
Path: code
ValueSet: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.102.12.1025
Data Requirement Type: MedicationRequest
Profile(s): http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-medicationrequest
Must Support Elements: medication
Code Filter(s):
Path: medication
ValueSet: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.196.12.1001
Data Requirement Type: MedicationRequest
Profile(s): http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-medicationrequest
Must Support Elements: medication.reference.value
Data Requirement Type: Medication
Profile(s): http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-medication
Must Support Elements: id.value, code
Data Requirement Type: Condition
Profile(s): http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-condition-encounter-diagnosis
Must Support Elements: code
Code Filter(s):
Path: code
ValueSet: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.102.12.1017
Data Requirement Type: Patient
Profile(s): http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-patient
Must Support Elements: url
Data Requirement Type: Coverage
Profile(s): http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-coverage
Must Support Elements: type, period
Code Filter(s):
Path: type
ValueSet: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.114222.4.11.3591
Data Requirement Type: Patient
Profile(s): http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-patient
Must Support Elements: url, extension
Generated using version 0.4.8 of the sample-content-ig Liquid templates

Source

{
  "resourceType": "Measure",
  "id": "CMS146FHIRAppropriateTestingforPharyngitis",
  "meta": {
    "profile": [
      "http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-shareablemeasure",
      "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/computable-measure-cqfm",
      "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/publishable-measure-cqfm",
      "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/executable-measure-cqfm",
      "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cql-measure-cqfm",
      "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/elm-measure-cqfm",
      "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/proportion-measure-cqfm"
    ]
  },
  "text": {
    "status": "extensions",
    "div": "<!-- snip (see above) -->"
  },
  "contained": [
    {
      "resourceType": "Library",
      "id": "effective-data-requirements",
      "extension": [
        {
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-directReferenceCode",
          "valueCoding": {
            "system": "http://snomed.info/sct",
            "code": "248153007",
            "display": "Male (finding)"
          }
        },
        {
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-directReferenceCode",
          "valueCoding": {
            "system": "http://snomed.info/sct",
            "code": "248152002",
            "display": "Female (finding)"
          }
        },
        {
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-directReferenceCode",
          "valueCoding": {
            "system": "http://www.ama-assn.org/go/cpt",
            "code": "99429",
            "display": "Unlisted preventive medicine service"
          }
        },
        {
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-directReferenceCode",
          "valueCoding": {
            "system": "http://terminology.hl7.org/CodeSystem/condition-clinical",
            "code": "active",
            "display": "Active"
          }
        },
        {
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-directReferenceCode",
          "valueCoding": {
            "system": "http://terminology.hl7.org/CodeSystem/condition-clinical",
            "code": "recurrence",
            "display": "Recurrence"
          }
        },
        {
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-directReferenceCode",
          "valueCoding": {
            "system": "http://terminology.hl7.org/CodeSystem/condition-clinical",
            "code": "relapse",
            "display": "Relapse"
          }
        },
        {
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-directReferenceCode",
          "valueCoding": {
            "system": "http://snomed.info/sct",
            "code": "428361000124107",
            "display": "Discharge to home for hospice care (procedure)"
          }
        },
        {
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-directReferenceCode",
          "valueCoding": {
            "system": "http://snomed.info/sct",
            "code": "428371000124100",
            "display": "Discharge to healthcare facility for hospice care (procedure)"
          }
        },
        {
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-directReferenceCode",
          "valueCoding": {
            "system": "http://loinc.org",
            "code": "45755-6",
            "display": "Hospice care [Minimum Data Set]"
          }
        },
        {
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-directReferenceCode",
          "valueCoding": {
            "system": "http://snomed.info/sct",
            "code": "373066001",
            "display": "Yes (qualifier value)"
          }
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "SupplementalDataElements"
            },
            {
              "url": "name",
              "valueString": "SDE Sex"
            },
            {
              "url": "statement",
              "valueString": "define \"SDE Sex\":\n  case\n    when Patient.sex = '248153007' then \"Male (finding)\"\n    when Patient.sex = '248152002' then \"Female (finding)\"\n    else null\n  end"
            },
            {
              "url": "displaySequence",
              "valueInteger": 0
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "CMS146FHIRAppropriateTestingforPharyngitis"
            },
            {
              "url": "name",
              "valueString": "SDE Sex"
            },
            {
              "url": "statement",
              "valueString": "define \"SDE Sex\":\n  SDE.\"SDE Sex\""
            },
            {
              "url": "displaySequence",
              "valueInteger": 1
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "CMS146FHIRAppropriateTestingforPharyngitis"
            },
            {
              "url": "name",
              "valueString": "Group A Streptococcus Lab Test With Result"
            },
            {
              "url": "statement",
              "valueString": "define \"Group A Streptococcus Lab Test With Result\":\n  ( ( [LaboratoryResultObservation: \"Group A Streptococcus Test\"] ).isLaboratoryTestPerformed ( ) ) GroupAStreptococcusTest\n    where GroupAStreptococcusTest.value is not null"
            },
            {
              "url": "displaySequence",
              "valueInteger": 2
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "CMS146FHIRAppropriateTestingforPharyngitis"
            },
            {
              "url": "name",
              "valueString": "Qualifying Encounters"
            },
            {
              "url": "statement",
              "valueString": "define \"Qualifying Encounters\":\n  ( ( [Encounter: \"Emergency Department Evaluation and Management Visit\"]\n      union [Encounter: \"Home Healthcare Services\"]\n      union [Encounter: \"Medical Disability Exam\"]\n      union [Encounter: \"Office Visit\"]\n      union [Encounter: \"Telephone Visits\"]\n      union [Encounter: \"Virtual Encounter\"]\n      union [Encounter: \"Outpatient Consultation\"]\n      union [Encounter: \"Preventive Care Services Established Office Visit, 18 and Up\"]\n      union [Encounter: \"Preventive Care Services Group Counseling\"]\n      union ( [Encounter] E\n          where exists ( ( E.type ) T\n              where T ~ \"Unlisted preventive medicine service\"\n          )\n      )\n      union [Encounter: \"Preventive Care Services, Initial Office Visit, 0 to 17\"]\n      union [Encounter: \"Preventive Care Services Individual Counseling\"]\n      union [Encounter: \"Preventive Care Services Initial Office Visit, 18 and Up\"]\n      union [Encounter: \"Preventive Care, Established Office Visit, 0 to 17\"]\n  ).isEncounterPerformed ( ) ) ValidEncounter\n    where ValidEncounter.period.toInterval ( ) ends during day of Interval[( start of \"Measurement Period\" ), ( end of \"Measurement Period\" ) - 3 days]"
            },
            {
              "url": "displaySequence",
              "valueInteger": 3
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "CMS146FHIRAppropriateTestingforPharyngitis"
            },
            {
              "url": "name",
              "valueString": "Encounter With Antibiotic Ordered Within Three Days"
            },
            {
              "url": "statement",
              "valueString": "define \"Encounter With Antibiotic Ordered Within Three Days\":\n  \"Qualifying Encounters\" EDOrAmbulatoryVisit\n    with ( ( [MedicationRequest: \"Antibiotic Medications for Pharyngitis\"] ).isMedicationOrder ( ) ) AntibioticOrdered\n      such that EDOrAmbulatoryVisit.period.toInterval ( ) starts 3 days or less on or before day of AntibioticOrdered.authoredOn"
            },
            {
              "url": "displaySequence",
              "valueInteger": 4
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "CMS146FHIRAppropriateTestingforPharyngitis"
            },
            {
              "url": "name",
              "valueString": "Pharyngitis or Tonsillitis"
            },
            {
              "url": "statement",
              "valueString": "define \"Pharyngitis or Tonsillitis\":\n  ( [ConditionEncounterDiagnosis: \"Acute Pharyngitis\"]\n      union [ConditionEncounterDiagnosis: \"Acute Tonsillitis\"]\n  )"
            },
            {
              "url": "displaySequence",
              "valueInteger": 5
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "CMS146FHIRAppropriateTestingforPharyngitis"
            },
            {
              "url": "name",
              "valueString": "Encounter With Pharyngitis or Tonsillitis With Antibiotic"
            },
            {
              "url": "statement",
              "valueString": "define \"Encounter With Pharyngitis or Tonsillitis With Antibiotic\":\n  from\n    \"Encounter With Antibiotic Ordered Within Three Days\" VisitWithAntibiotic,\n    \"Pharyngitis or Tonsillitis\" AcutePharyngitisTonsillitis\n    where AcutePharyngitisTonsillitis.prevalenceInterval ( ) starts during day of VisitWithAntibiotic.period.toInterval ( )\n    return VisitWithAntibiotic"
            },
            {
              "url": "displaySequence",
              "valueInteger": 6
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "CMS146FHIRAppropriateTestingforPharyngitis"
            },
            {
              "url": "name",
              "valueString": "Numerator"
            },
            {
              "url": "statement",
              "valueString": "define \"Numerator\":\n  from\n    \"Group A Streptococcus Lab Test With Result\" GroupAStreptococcusTest,\n    \"Encounter With Pharyngitis or Tonsillitis With Antibiotic\" EncounterWithPharyngitis\n    where GroupAStreptococcusTest.effective.toInterval ( ) starts during day of Interval[( end of EncounterWithPharyngitis.period ) - 3 days, ( end of EncounterWithPharyngitis.period ) + 3 days]\n    return EncounterWithPharyngitis"
            },
            {
              "url": "displaySequence",
              "valueInteger": 7
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "CMS146FHIRAppropriateTestingforPharyngitis"
            },
            {
              "url": "name",
              "valueString": "Initial Population"
            },
            {
              "url": "statement",
              "valueString": "define \"Initial Population\":\n  \"Encounter With Pharyngitis or Tonsillitis With Antibiotic\" EncounterWithPharyngitis\n    where AgeInYearsAt(date from start of \"Measurement Period\") >= 3\n    return EncounterWithPharyngitis"
            },
            {
              "url": "displaySequence",
              "valueInteger": 8
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "CMS146FHIRAppropriateTestingforPharyngitis"
            },
            {
              "url": "name",
              "valueString": "Denominator"
            },
            {
              "url": "statement",
              "valueString": "define \"Denominator\":\n  \"Initial Population\""
            },
            {
              "url": "displaySequence",
              "valueInteger": 9
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "SupplementalDataElements"
            },
            {
              "url": "name",
              "valueString": "SDE Payer"
            },
            {
              "url": "statement",
              "valueString": "define \"SDE Payer\":\n  [Coverage: type in \"Payer Type\"] Payer\n    return {\n      code: Payer.type,\n      period: Payer.period\n    }"
            },
            {
              "url": "displaySequence",
              "valueInteger": 10
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "CMS146FHIRAppropriateTestingforPharyngitis"
            },
            {
              "url": "name",
              "valueString": "SDE Payer"
            },
            {
              "url": "statement",
              "valueString": "define \"SDE Payer\":\n  SDE.\"SDE Payer\""
            },
            {
              "url": "displaySequence",
              "valueInteger": 11
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "CMS146FHIRAppropriateTestingforPharyngitis"
            },
            {
              "url": "name",
              "valueString": "Initial Population"
            },
            {
              "url": "statement",
              "valueString": "define \"Initial Population\":\n  \"Encounter With Pharyngitis or Tonsillitis With Antibiotic\" EncounterWithPharyngitis\n    where AgeInYearsAt(date from start of \"Measurement Period\") >= 3\n    return EncounterWithPharyngitis"
            },
            {
              "url": "displaySequence",
              "valueInteger": 12
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "CMS146FHIRAppropriateTestingforPharyngitis"
            },
            {
              "url": "name",
              "valueString": "Encounter With Pharyngitis or Tonsillitis With Antibiotic"
            },
            {
              "url": "statement",
              "valueString": "define \"Encounter With Pharyngitis or Tonsillitis With Antibiotic\":\n  from\n    \"Encounter With Antibiotic Ordered Within Three Days\" VisitWithAntibiotic,\n    \"Pharyngitis or Tonsillitis\" AcutePharyngitisTonsillitis\n    where AcutePharyngitisTonsillitis.prevalenceInterval ( ) starts during day of VisitWithAntibiotic.period.toInterval ( )\n    return VisitWithAntibiotic"
            },
            {
              "url": "displaySequence",
              "valueInteger": 13
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "SupplementalDataElements"
            },
            {
              "url": "name",
              "valueString": "SDE Ethnicity"
            },
            {
              "url": "statement",
              "valueString": "define \"SDE Ethnicity\":\n  Patient.ethnicity E\n    return Tuple {\n      codes: { E.ombCategory } union E.detailed,\n      display: E.text\n    }"
            },
            {
              "url": "displaySequence",
              "valueInteger": 14
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "CMS146FHIRAppropriateTestingforPharyngitis"
            },
            {
              "url": "name",
              "valueString": "SDE Ethnicity"
            },
            {
              "url": "statement",
              "valueString": "define \"SDE Ethnicity\":\n  SDE.\"SDE Ethnicity\""
            },
            {
              "url": "displaySequence",
              "valueInteger": 15
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "Hospice"
            },
            {
              "url": "name",
              "valueString": "Has Hospice Services"
            },
            {
              "url": "statement",
              "valueString": "define \"Has Hospice Services\":\n  exists ((([Encounter: \"Encounter Inpatient\"]).isEncounterPerformed()) InpatientEncounter\n      where (InpatientEncounter.hospitalization.dischargeDisposition ~ \"Discharge to home for hospice care (procedure)\"\n          or InpatientEncounter.hospitalization.dischargeDisposition ~ \"Discharge to healthcare facility for hospice care (procedure)\"\n      )\n        and InpatientEncounter.period.toInterval() ends during day of \"Measurement Period\"\n  )\n    or exists ((([Encounter: \"Hospice Encounter\"]).isEncounterPerformed()) HospiceEncounter\n        where HospiceEncounter.period.toInterval() overlaps day of \"Measurement Period\"\n    )\n    or exists ((([ObservationScreeningAssessment: \"Hospice care [Minimum Data Set]\"]).isAssessmentPerformed()) HospiceAssessment\n        where HospiceAssessment.value ~ \"Yes (qualifier value)\"\n          and HospiceAssessment.effective.toInterval() overlaps day of \"Measurement Period\"\n    )\n    or exists ((([ServiceRequest: \"Hospice Care Ambulatory\"]).isInterventionOrder()) HospiceOrder\n        where HospiceOrder.authoredOn.toInterval() during day of \"Measurement Period\"\n    )\n    or exists ((([Procedure: \"Hospice Care Ambulatory\"]).isInterventionPerformed()) HospicePerformed\n        where HospicePerformed.performed.toInterval() overlaps day of \"Measurement Period\"\n    )\n    or exists ((([ConditionProblemsHealthConcerns: \"Hospice Diagnosis\"])\n        union ([ConditionEncounterDiagnosis: \"Hospice Diagnosis\"])) HospiceCareDiagnosis\n        where HospiceCareDiagnosis.prevalenceInterval() overlaps day of \"Measurement Period\"\n    )"
            },
            {
              "url": "displaySequence",
              "valueInteger": 16
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "CMS146FHIRAppropriateTestingforPharyngitis"
            },
            {
              "url": "name",
              "valueString": "Encounters and Assessments with Hospice Patient"
            },
            {
              "url": "statement",
              "valueString": "define \"Encounters and Assessments with Hospice Patient\":\n  \"Initial Population\" EligibleEncounters\n    where Hospice.\"Has Hospice Services\""
            },
            {
              "url": "displaySequence",
              "valueInteger": 17
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "CMS146FHIRAppropriateTestingforPharyngitis"
            },
            {
              "url": "name",
              "valueString": "Denominator Exclusions"
            },
            {
              "url": "statement",
              "valueString": "define \"Denominator Exclusions\":\n  \"Encounters and Assessments with Hospice Patient\"\n    union Antibiotic.\"Has Comorbid Condition History\" ( \"Encounter With Pharyngitis or Tonsillitis With Antibiotic\", ( [ConditionEncounterDiagnosis: \"Comorbid Conditions for Respiratory Conditions\"] ) )\n    union Antibiotic.\"Has Antibiotic Medication History\" ( \"Encounter With Pharyngitis or Tonsillitis With Antibiotic\", ( [MedicationRequest: \"Antibiotic Medications for Pharyngitis\"] ).isMedicationActive ( ) )\n    union Antibiotic.\"Has Competing Diagnosis History\" ( \"Encounter With Pharyngitis or Tonsillitis With Antibiotic\", ( [ConditionEncounterDiagnosis: \"Competing Conditions for Respiratory Conditions\"] ) )"
            },
            {
              "url": "displaySequence",
              "valueInteger": 18
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "SupplementalDataElements"
            },
            {
              "url": "name",
              "valueString": "SDE Race"
            },
            {
              "url": "statement",
              "valueString": "define \"SDE Race\":\n  Patient.race R\n    return Tuple {\n      codes: R.ombCategory union R.detailed,\n      display: R.text\n    }"
            },
            {
              "url": "displaySequence",
              "valueInteger": 19
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "CMS146FHIRAppropriateTestingforPharyngitis"
            },
            {
              "url": "name",
              "valueString": "SDE Race"
            },
            {
              "url": "statement",
              "valueString": "define \"SDE Race\":\n  SDE.\"SDE Race\""
            },
            {
              "url": "displaySequence",
              "valueInteger": 20
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "FHIRHelpers"
            },
            {
              "url": "name",
              "valueString": "ToString"
            },
            {
              "url": "statement",
              "valueString": "define function ToString(value uri): value.value"
            },
            {
              "url": "displaySequence",
              "valueInteger": 21
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "Status"
            },
            {
              "url": "name",
              "valueString": "isLaboratoryTestPerformed"
            },
            {
              "url": "statement",
              "valueString": "//Laboratory Test, Performed\ndefine fluent function isLaboratoryTestPerformed(Obs List<LaboratoryResultObservation>):\n  Obs O\n    where O.status in { 'final', 'amended', 'corrected' }"
            },
            {
              "url": "displaySequence",
              "valueInteger": 22
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "Status"
            },
            {
              "url": "name",
              "valueString": "isEncounterPerformed"
            },
            {
              "url": "statement",
              "valueString": "//Encounter, Performed\n//General usage unless required otherwise by measure intent (e.g., follow-up encounters)\ndefine fluent function isEncounterPerformed(Enc List<Encounter>):\n  Enc E\n    where E.status in {'finished', 'arrived', 'triaged', 'in-progress', 'onleave'}"
            },
            {
              "url": "displaySequence",
              "valueInteger": 23
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "FHIRHelpers"
            },
            {
              "url": "name",
              "valueString": "ToConcept"
            },
            {
              "url": "statement",
              "valueString": "/*\n@description: Converts the given FHIR [CodeableConcept](https://hl7.org/fhir/datatypes.html#CodeableConcept) value to a CQL Concept.\n*/\ndefine function ToConcept(concept FHIR.CodeableConcept):\n    if concept is null then\n        null\n    else\n        System.Concept {\n            codes: concept.coding C return ToCode(C),\n            display: concept.text.value\n        }"
            },
            {
              "url": "displaySequence",
              "valueInteger": 24
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "FHIRHelpers"
            },
            {
              "url": "name",
              "valueString": "ToCode"
            },
            {
              "url": "statement",
              "valueString": "/*\n@description: Converts the given FHIR [Coding](https://hl7.org/fhir/datatypes.html#Coding) value to a CQL Code.\n*/\ndefine function ToCode(coding FHIR.Coding):\n    if coding is null then\n        null\n    else\n        System.Code {\n          code: coding.code.value,\n          system: coding.system.value,\n          version: coding.version.value,\n          display: coding.display.value\n        }"
            },
            {
              "url": "displaySequence",
              "valueInteger": 25
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "QICoreCommon"
            },
            {
              "url": "name",
              "valueString": "toInterval"
            },
            {
              "url": "statement",
              "valueString": "/*\n@description: Normalizes a value that is a choice of timing-valued types to an equivalent interval\n@comment: Normalizes a choice type of DateTime, Quanitty, Interval<DateTime>, or Interval<Quantity> types\nto an equivalent interval. This selection of choice types is a superset of the majority of choice types that are used as possible\nrepresentations for timing-valued elements in QICore, allowing this function to be used across any resource.\nThe input can be provided as a DateTime, Quantity, Interval<DateTime> or Interval<Quantity>.\nThe intent of this function is to provide a clear and concise mechanism to treat single\nelements that have multiple possible representations as intervals so that logic doesn't have to account\nfor the variability. More complex calculations (such as medication request period or dispense period\ncalculation) need specific guidance and consideration. That guidance may make use of this function, but\nthe focus of this function is on single element calculations where the semantics are unambiguous.\nIf the input is a DateTime, the result a DateTime Interval beginning and ending on that DateTime.\nIf the input is a Quantity, the quantity is expected to be a calendar-duration interpreted as an Age,\nand the result is a DateTime Interval beginning on the Date the patient turned that age and ending immediately before one year later.\nIf the input is a DateTime Interval, the result is the input.\nIf the input is a Quantity Interval, the quantities are expected to be calendar-durations interpreted as an Age, and the result\nis a DateTime Interval beginning on the date the patient turned the age given as the start of the quantity interval, and ending\nimmediately before one year later than the date the patient turned the age given as the end of the quantity interval.\nIf the input is a Timing, an error will be thrown indicating that Timing calculations are not implemented. Any other input will reslt in a null DateTime Interval\n*/\ndefine fluent function toInterval(choice Choice<DateTime, Quantity, Interval<DateTime>, Interval<Quantity>, Timing>):\n  case\n\t  when choice is DateTime then\n    \tInterval[choice as DateTime, choice as DateTime]\n\t\twhen choice is Interval<DateTime> then\n  \t\tchoice as Interval<DateTime>\n\t\twhen choice is Quantity then\n\t\t  Interval[Patient.birthDate + (choice as Quantity),\n\t\t\t  Patient.birthDate + (choice as Quantity) + 1 year)\n\t\twhen choice is Interval<Quantity> then\n\t\t  Interval[Patient.birthDate + (choice.low as Quantity),\n\t\t\t  Patient.birthDate + (choice.high as Quantity) + 1 year)\n\t\twhen choice is Timing then\n      Message(null, true, 'NOT_IMPLEMENTED', 'Error', 'Calculation of an interval from a Timing value is not supported') as Interval<DateTime>\n\t\telse\n\t\t\tnull as Interval<DateTime>\n\tend"
            },
            {
              "url": "displaySequence",
              "valueInteger": 26
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "FHIRHelpers"
            },
            {
              "url": "name",
              "valueString": "ToInterval"
            },
            {
              "url": "statement",
              "valueString": "/*\n@description: Converts the given [Period](https://hl7.org/fhir/datatypes.html#Period)\nvalue to a CQL DateTime Interval\n@comment: If the start value of the given period is unspecified, the starting\nboundary of the resulting interval will be open (meaning the start of the interval\nis unknown, as opposed to interpreted as the beginning of time).\n*/\ndefine function ToInterval(period FHIR.Period):\n    if period is null then\n        null\n    else\n        if period.\"start\" is null then\n            Interval(period.\"start\".value, period.\"end\".value]\n        else\n            Interval[period.\"start\".value, period.\"end\".value]"
            },
            {
              "url": "displaySequence",
              "valueInteger": 27
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "Status"
            },
            {
              "url": "name",
              "valueString": "isMedicationOrder"
            },
            {
              "url": "statement",
              "valueString": "//Medication, Order\ndefine fluent function isMedicationOrder(MedicationRequest List<MedicationRequest>):\n  MedicationRequest M\n    where M.status in { 'active', 'completed' }\n      and M.intent = 'order'"
            },
            {
              "url": "displaySequence",
              "valueInteger": 28
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "QICoreCommon"
            },
            {
              "url": "name",
              "valueString": "prevalenceInterval"
            },
            {
              "url": "statement",
              "valueString": "/*\n@description: Returns an interval representing the normalized prevalence period of a given Condition.\n@comment: Uses the ToInterval and ToAbatementInterval functions to determine the widest potential interval from\nonset to abatement as specified in the given Condition. If the condition is active, or has an abatement date the resulting \ninterval will have a closed ending boundary. Otherwise, the resulting interval will have an open ending boundary.\n*/\ndefine fluent function prevalenceInterval(condition Choice<\"ConditionEncounterDiagnosis\", \"ConditionProblemsHealthConcerns\">):\nif condition.clinicalStatus ~ \"active\"\n  or condition.clinicalStatus ~ \"recurrence\"\n  or condition.clinicalStatus ~ \"relapse\" then\n  Interval[start of condition.onset.toInterval(), end of condition.abatementInterval()]\nelse\n    (end of condition.abatementInterval()) abatementDate\n    return if abatementDate is null then\n      Interval[start of condition.onset.toInterval(), abatementDate)\n    else\n      Interval[start of condition.onset.toInterval(), abatementDate]"
            },
            {
              "url": "displaySequence",
              "valueInteger": 29
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "QICoreCommon"
            },
            {
              "url": "name",
              "valueString": "abatementInterval"
            },
            {
              "url": "statement",
              "valueString": "/*\n@description: Returns an interval representing the normalized abatement of a given Condition.\n@comment: If the abatement element of the Condition is represented as a DateTime, the result\nis an interval beginning and ending on that DateTime.\nIf the abatement is represented as a Quantity, the quantity is expected to be a calendar-duration and is interpreted as the age of the patient. The\nresult is an interval from the date the patient turned that age to immediately before one year later.\nIf the abatement is represented as a Quantity Interval, the quantities are expected to be calendar-durations and are interpreted as an age range during\nwhich the abatement occurred. The result is an interval from the date the patient turned the starting age of the quantity interval, and ending immediately\nbefore one year later than the date the patient turned the ending age of the quantity interval.\n*/\ndefine fluent function abatementInterval(condition Choice<\"ConditionEncounterDiagnosis\", \"ConditionProblemsHealthConcerns\">):\n\tif condition.abatement is DateTime then\n\t  Interval[condition.abatement as DateTime, condition.abatement as DateTime]\n\telse if condition.abatement is Quantity then\n\t\tInterval[Patient.birthDate + (condition.abatement as Quantity),\n\t\t\tPatient.birthDate + (condition.abatement as Quantity) + 1 year)\n\telse if condition.abatement is Interval<Quantity> then\n\t  Interval[Patient.birthDate + (condition.abatement.low as Quantity),\n\t\t  Patient.birthDate + (condition.abatement.high as Quantity) + 1 year)\n\telse if condition.abatement is Interval<DateTime> then\n\t  Interval[condition.abatement.low, condition.abatement.high)\n\telse null as Interval<DateTime>"
            },
            {
              "url": "displaySequence",
              "valueInteger": 30
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "Status"
            },
            {
              "url": "name",
              "valueString": "isAssessmentPerformed"
            },
            {
              "url": "statement",
              "valueString": "//This library contains functions used to constrain FHIR resource elements for measures authored by NCQA, based on QICore 6.0.0 resources including IG and authoring patterns. The functions may appear similar to some QICoreCommon functions but differ in that they have constraints that are relevant for measures authored by NCQA.\n\n//Assessment, Performed\ndefine fluent function isAssessmentPerformed(Obs List<ObservationScreeningAssessment>):\n  Obs O\n    where O.status in { 'final', 'amended', 'corrected' }"
            },
            {
              "url": "displaySequence",
              "valueInteger": 31
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "Status"
            },
            {
              "url": "name",
              "valueString": "isInterventionOrder"
            },
            {
              "url": "statement",
              "valueString": "//Intervention, Order\ndefine fluent function isInterventionOrder(ServiceRequest List<ServiceRequest>):\n  ServiceRequest S\n    where S.status in { 'active', 'completed' }\n      and S.intent = 'order'"
            },
            {
              "url": "displaySequence",
              "valueInteger": 32
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "Status"
            },
            {
              "url": "name",
              "valueString": "isInterventionPerformed"
            },
            {
              "url": "statement",
              "valueString": "//Intervention, Performed\ndefine fluent function isInterventionPerformed(Proc List<Procedure>):\n  Proc P\n    where P.status ~ 'completed'"
            },
            {
              "url": "displaySequence",
              "valueInteger": 33
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "Antibiotic"
            },
            {
              "url": "name",
              "valueString": "Has Comorbid Condition History"
            },
            {
              "url": "statement",
              "valueString": "define function \"Has Comorbid Condition History\"(episodeDate List<Encounter>, comorbidConditions List<ConditionEncounterDiagnosis>):\n  episodeDate eDate\n      with comorbidConditions comcondition\n        such that date from start of comcondition.prevalenceInterval() during Interval[date from start of eDate.period.toInterval() - 1 year, date from start of eDate.period.toInterval()]\n      return eDate"
            },
            {
              "url": "displaySequence",
              "valueInteger": 34
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "Antibiotic"
            },
            {
              "url": "name",
              "valueString": "Has Antibiotic Medication History"
            },
            {
              "url": "statement",
              "valueString": "define function \"Has Antibiotic Medication History\"(episodeDate List<Encounter>, antibioticMedications List<MedicationRequest>):\n   episodeDate DateOfEpisode\n    with antibioticMedications ActiveMedication\n      such that ActiveMedication.medicationRequestPeriod() overlaps day of Interval[date from start of DateOfEpisode.period.toInterval()  - 30 days, date from start of DateOfEpisode.period.toInterval() - 1 day]"
            },
            {
              "url": "displaySequence",
              "valueInteger": 35
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "CumulativeMedicationDuration"
            },
            {
              "url": "name",
              "valueString": "medicationRequestPeriod"
            },
            {
              "url": "statement",
              "valueString": "define fluent function medicationRequestPeriod(Request \"MedicationRequest\"):\n  Request R\n    let\n      dosage: singleton from R.dosageInstruction,\n      doseAndRate: singleton from dosage.doseAndRate,\n      timing: dosage.timing,\n      frequency: Coalesce(timing.repeat.frequencyMax, timing.repeat.frequency),\n      period: Quantity(timing.repeat.period, timing.repeat.periodUnit),\n      doseRange: doseAndRate.dose,\n      doseQuantity: doseAndRate.dose,\n      dose: Coalesce(end of doseRange, doseQuantity),\n      dosesPerDay: Coalesce(ToDaily(frequency, period), Count(timing.repeat.timeOfDay), 1.0),\n      boundsPeriod: timing.repeat.bounds as Interval<DateTime>,\n      daysSupply: (convert R.dispenseRequest.expectedSupplyDuration to days).value,\n      quantity: R.dispenseRequest.quantity,\n      refills: Coalesce(R.dispenseRequest.numberOfRepeatsAllowed, 0),\n      startDate:\n        Coalesce(\n          date from start of boundsPeriod,\n          date from R.authoredOn,\n          date from start of R.dispenseRequest.validityPeriod\n        ),\n      totalDaysSupplied: Coalesce(daysSupply, quantity.value / (dose.value * dosesPerDay)) * (1 + refills)\n    return\n      if startDate is not null and totalDaysSupplied is not null then\n        Interval[startDate, startDate + Quantity(totalDaysSupplied - 1, 'day') ]\n      else if startDate is not null and boundsPeriod.\"high\" is not null then\n        Interval[startDate, date from end of boundsPeriod]\n      else\n        null"
            },
            {
              "url": "displaySequence",
              "valueInteger": 36
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "CumulativeMedicationDuration"
            },
            {
              "url": "name",
              "valueString": "Quantity"
            },
            {
              "url": "statement",
              "valueString": "/**********************************************************************/\n/* Functions in this region are copied from opioid-mme-r4             */\n/**********************************************************************/\n\ndefine function Quantity(value Decimal, unit String):\n  if value is not null then\n    System.Quantity { value: value, unit: unit }\n  else\n    null"
            },
            {
              "url": "displaySequence",
              "valueInteger": 37
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "CumulativeMedicationDuration"
            },
            {
              "url": "name",
              "valueString": "ToDaily"
            },
            {
              "url": "statement",
              "valueString": "/*\n Goal is to get to number of days\n Two broad approaches to the calculation:\n  1) Based on supply and frequency, calculate the number of expected days the medication will cover/has covered\n  2) Based on relevant period, determine a covered interval and calculate the length of that interval in days\nThis topic covers several use cases and illustrates how to calculate Cumulative\nMedication Duration for each type of medication resource using the supply and\nfrequency approach.\n*/\n\n/*\n  For the first approach, we need to get from frequency to a frequency/day\n  So we define ToDaily\n*/\n\n/*\n  Calculates daily frequency given frequency within a period\n*/\ndefine function ToDaily(frequency System.Integer, period System.Quantity):\n  case period.unit\n    when 'h' then frequency * (24.0 / period.value)\n    when 'min' then frequency * (24.0 / period.value) * 60\n    when 's' then frequency * (24.0 / period.value) * 60 * 60\n    when 'd' then frequency * (24.0 / period.value) / 24\n    when 'wk' then frequency * (24.0 / period.value) / (24 * 7)\n    when 'mo' then frequency * (24.0 / period.value) / (24 * 30) /* assuming 30 days in month */\n    when 'a' then frequency * (24.0 / period.value) / (24 * 365) /* assuming 365 days in year */\n    when 'hour' then frequency * (24.0 / period.value)\n    when 'minute' then frequency * (24.0 / period.value) * 60\n    when 'second' then frequency * (24.0 / period.value) * 60 * 60\n    when 'day' then frequency * (24.0 / period.value) / 24\n    when 'week' then frequency * (24.0 / period.value) / (24 * 7)\n    when 'month' then frequency * (24.0 / period.value) / (24 * 30) /* assuming 30 days in month */\n    when 'year' then frequency * (24.0 / period.value) / (24 * 365) /* assuming 365 days in year */\n    when 'hours' then frequency * (24.0 / period.value)\n    when 'minutes' then frequency * (24.0 / period.value) * 60\n    when 'seconds' then frequency * (24.0 / period.value) * 60 * 60\n    when 'days' then frequency * (24.0 / period.value) / 24\n    when 'weeks' then frequency * (24.0 / period.value) / (24 * 7)\n    when 'months' then frequency * (24.0 / period.value) / (24 * 30) /* assuming 30 days in month */\n    when 'years' then frequency * (24.0 / period.value) / (24 * 365) /* assuming 365 days in year */\n    else Message(null, true, 'CMDLogic.ToDaily.UnknownUnit', ErrorLevel, 'Unknown unit ' & period.unit)\n  end"
            },
            {
              "url": "displaySequence",
              "valueInteger": 38
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "Status"
            },
            {
              "url": "name",
              "valueString": "isMedicationActive"
            },
            {
              "url": "statement",
              "valueString": "//Medication, Active\ndefine fluent function isMedicationActive(MedicationRequest List<MedicationRequest>):\n  MedicationRequest M\n    where M.status = 'active'\n      and M.intent = 'order'"
            },
            {
              "url": "displaySequence",
              "valueInteger": 39
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        },
        {
          "extension": [
            {
              "url": "libraryName",
              "valueString": "Antibiotic"
            },
            {
              "url": "name",
              "valueString": "Has Competing Diagnosis History"
            },
            {
              "url": "statement",
              "valueString": "define function \"Has Competing Diagnosis History\"(episodeDate List<Encounter>, competingConditions List<ConditionEncounterDiagnosis>):\n  episodeDate eDate\n      with competingConditions competcondition\n        such that competcondition.prevalenceInterval() starts 3 days or less on or after day of start of eDate.period\n      return eDate"
            },
            {
              "url": "displaySequence",
              "valueInteger": 40
            }
          ],
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-logicDefinition"
        }
      ],
      "name": "EffectiveDataRequirements",
      "status": "active",
      "type": {
        "coding": [
          {
            "system": "http://terminology.hl7.org/CodeSystem/library-type",
            "code": "module-definition"
          }
        ]
      },
      "relatedArtifact": [
        {
          "type": "depends-on",
          "display": "Library SDE",
          "resource": "Library/SupplementalDataElements|5.1.000"
        },
        {
          "type": "depends-on",
          "display": "Library FHIRHelpers",
          "resource": "Library/FHIRHelpers|4.4.000"
        },
        {
          "type": "depends-on",
          "display": "Library Status",
          "resource": "Library/Status|1.13.000"
        },
        {
          "type": "depends-on",
          "display": "Library FHIRHelpers",
          "resource": "Library/FHIRHelpers|4.4.000"
        },
        {
          "type": "depends-on",
          "display": "Library QICoreCommon",
          "resource": "Library/QICoreCommon|4.0.000"
        },
        {
          "type": "depends-on",
          "display": "Library FHIRHelpers",
          "resource": "Library/FHIRHelpers|4.4.000"
        },
        {
          "type": "depends-on",
          "display": "Library Hospice",
          "resource": "Library/Hospice|6.15.000"
        },
        {
          "type": "depends-on",
          "display": "Library Status",
          "resource": "Library/Status|1.13.000"
        },
        {
          "type": "depends-on",
          "display": "Library FHIRHelpers",
          "resource": "Library/FHIRHelpers|4.4.000"
        },
        {
          "type": "depends-on",
          "display": "Library QICoreCommon",
          "resource": "Library/QICoreCommon|4.0.000"
        },
        {
          "type": "depends-on",
          "display": "Library Antibiotic",
          "resource": "Library/Antibiotic|1.9.000"
        },
        {
          "type": "depends-on",
          "display": "Library QICoreCommon",
          "resource": "Library/QICoreCommon|4.0.000"
        },
        {
          "type": "depends-on",
          "display": "Library FHIRHelpers",
          "resource": "Library/FHIRHelpers|4.4.000"
        },
        {
          "type": "depends-on",
          "display": "Library CMD",
          "resource": "Library/CumulativeMedicationDuration|6.0.000"
        },
        {
          "type": "depends-on",
          "display": "Library FHIRHelpers",
          "resource": "Library/FHIRHelpers|4.4.000"
        },
        {
          "type": "depends-on",
          "display": "Code system SNOMEDCT",
          "resource": "http://snomed.info/sct"
        },
        {
          "type": "depends-on",
          "display": "Code system CPT",
          "resource": "http://www.ama-assn.org/go/cpt"
        },
        {
          "type": "depends-on",
          "display": "Code system ConditionClinicalStatusCodes",
          "resource": "http://terminology.hl7.org/CodeSystem/condition-clinical"
        },
        {
          "type": "depends-on",
          "display": "Code system SNOMEDCT",
          "resource": "http://snomed.info/sct"
        },
        {
          "type": "depends-on",
          "display": "Code system LOINC",
          "resource": "http://loinc.org"
        },
        {
          "type": "depends-on",
          "display": "Value set Group A Streptococcus Test",
          "resource": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.198.12.1012"
        },
        {
          "type": "depends-on",
          "display": "Value set Emergency Department Evaluation and Management Visit",
          "resource": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1010"
        },
        {
          "type": "depends-on",
          "display": "Value set Home Healthcare Services",
          "resource": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1016"
        },
        {
          "type": "depends-on",
          "display": "Value set Medical Disability Exam",
          "resource": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1073"
        },
        {
          "type": "depends-on",
          "display": "Value set Office Visit",
          "resource": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1001"
        },
        {
          "type": "depends-on",
          "display": "Value set Telephone Visits",
          "resource": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1080"
        },
        {
          "type": "depends-on",
          "display": "Value set Virtual Encounter",
          "resource": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1089"
        },
        {
          "type": "depends-on",
          "display": "Value set Outpatient Consultation",
          "resource": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1008"
        },
        {
          "type": "depends-on",
          "display": "Value set Preventive Care Services Established Office Visit, 18 and Up",
          "resource": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1025"
        },
        {
          "type": "depends-on",
          "display": "Value set Preventive Care Services Group Counseling",
          "resource": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1027"
        },
        {
          "type": "depends-on",
          "display": "Value set Preventive Care Services, Initial Office Visit, 0 to 17",
          "resource": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1022"
        },
        {
          "type": "depends-on",
          "display": "Value set Preventive Care Services Individual Counseling",
          "resource": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1026"
        },
        {
          "type": "depends-on",
          "display": "Value set Preventive Care Services Initial Office Visit, 18 and Up",
          "resource": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1023"
        },
        {
          "type": "depends-on",
          "display": "Value set Preventive Care, Established Office Visit, 0 to 17",
          "resource": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1024"
        },
        {
          "type": "depends-on",
          "display": "Value set Antibiotic Medications for Pharyngitis",
          "resource": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.196.12.1001"
        },
        {
          "type": "depends-on",
          "display": "Value set Acute Pharyngitis",
          "resource": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.102.12.1011"
        },
        {
          "type": "depends-on",
          "display": "Value set Acute Tonsillitis",
          "resource": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.102.12.1012"
        },
        {
          "type": "depends-on",
          "display": "Value set Payer Type",
          "resource": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.114222.4.11.3591"
        },
        {
          "type": "depends-on",
          "display": "Value set Encounter Inpatient",
          "resource": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.666.5.307"
        },
        {
          "type": "depends-on",
          "display": "Value set Hospice Encounter",
          "resource": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.1003"
        },
        {
          "type": "depends-on",
          "display": "Value set Hospice Care Ambulatory",
          "resource": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.526.3.1584"
        },
        {
          "type": "depends-on",
          "display": "Value set Hospice Diagnosis",
          "resource": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.1165"
        },
        {
          "type": "depends-on",
          "display": "Value set Comorbid Conditions for Respiratory Conditions",
          "resource": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.102.12.1025"
        },
        {
          "type": "depends-on",
          "display": "Value set Competing Conditions for Respiratory Conditions",
          "resource": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.102.12.1017"
        }
      ],
      "parameter": [
        {
          "name": "Measurement Period",
          "use": "in",
          "min": 0,
          "max": "1",
          "type": "Period"
        },
        {
          "name": "ErrorLevel",
          "use": "in",
          "min": 0,
          "max": "1",
          "type": "string"
        },
        {
          "name": "SDE Sex",
          "use": "out",
          "min": 0,
          "max": "1",
          "type": "Coding"
        },
        {
          "name": "Numerator",
          "use": "out",
          "min": 0,
          "max": "*",
          "type": "Resource"
        },
        {
          "name": "Denominator",
          "use": "out",
          "min": 0,
          "max": "*",
          "type": "Resource"
        },
        {
          "name": "SDE Payer",
          "use": "out",
          "min": 0,
          "max": "*",
          "type": "Resource"
        },
        {
          "name": "Initial Population",
          "use": "out",
          "min": 0,
          "max": "*",
          "type": "Resource"
        },
        {
          "name": "Encounter With Pharyngitis or Tonsillitis With Antibiotic",
          "use": "out",
          "min": 0,
          "max": "*",
          "type": "Resource"
        },
        {
          "name": "SDE Ethnicity",
          "use": "out",
          "min": 0,
          "max": "1",
          "type": "Resource"
        },
        {
          "name": "Denominator Exclusions",
          "use": "out",
          "min": 0,
          "max": "*",
          "type": "Resource"
        },
        {
          "name": "SDE Race",
          "use": "out",
          "min": 0,
          "max": "1",
          "type": "Resource"
        }
      ],
      "dataRequirement": [
        {
          "type": "Patient",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-patient"
          ]
        },
        {
          "type": "Patient",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-patient"
          ],
          "mustSupport": [
            "url",
            "value.value"
          ]
        },
        {
          "type": "Patient",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-patient"
          ],
          "mustSupport": [
            "url",
            "value.value"
          ]
        },
        {
          "type": "Observation",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-observation-lab"
          ],
          "mustSupport": [
            "code",
            "value"
          ],
          "codeFilter": [
            {
              "path": "code",
              "valueSet": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.198.12.1012"
            }
          ]
        },
        {
          "type": "Patient",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-patient"
          ]
        },
        {
          "type": "Encounter",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter"
          ],
          "mustSupport": [
            "type"
          ],
          "codeFilter": [
            {
              "path": "type",
              "valueSet": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1010"
            }
          ]
        },
        {
          "type": "Encounter",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter"
          ],
          "mustSupport": [
            "type"
          ],
          "codeFilter": [
            {
              "path": "type",
              "valueSet": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1016"
            }
          ]
        },
        {
          "type": "Encounter",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter"
          ],
          "mustSupport": [
            "type"
          ],
          "codeFilter": [
            {
              "path": "type",
              "valueSet": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1073"
            }
          ]
        },
        {
          "type": "Encounter",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter"
          ],
          "mustSupport": [
            "type"
          ],
          "codeFilter": [
            {
              "path": "type",
              "valueSet": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1001"
            }
          ]
        },
        {
          "type": "Encounter",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter"
          ],
          "mustSupport": [
            "type"
          ],
          "codeFilter": [
            {
              "path": "type",
              "valueSet": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1080"
            }
          ]
        },
        {
          "type": "Encounter",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter"
          ],
          "mustSupport": [
            "type"
          ],
          "codeFilter": [
            {
              "path": "type",
              "valueSet": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1089"
            }
          ]
        },
        {
          "type": "Encounter",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter"
          ],
          "mustSupport": [
            "type"
          ],
          "codeFilter": [
            {
              "path": "type",
              "valueSet": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1008"
            }
          ]
        },
        {
          "type": "Encounter",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter"
          ],
          "mustSupport": [
            "type"
          ],
          "codeFilter": [
            {
              "path": "type",
              "valueSet": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1025"
            }
          ]
        },
        {
          "type": "Encounter",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter"
          ],
          "mustSupport": [
            "type"
          ],
          "codeFilter": [
            {
              "path": "type",
              "valueSet": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1027"
            }
          ]
        },
        {
          "type": "Encounter",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter"
          ],
          "mustSupport": [
            "type"
          ]
        },
        {
          "type": "Encounter",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter"
          ],
          "mustSupport": [
            "type"
          ],
          "codeFilter": [
            {
              "path": "type",
              "valueSet": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1022"
            }
          ]
        },
        {
          "type": "Encounter",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter"
          ],
          "mustSupport": [
            "type"
          ],
          "codeFilter": [
            {
              "path": "type",
              "valueSet": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1026"
            }
          ]
        },
        {
          "type": "Encounter",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter"
          ],
          "mustSupport": [
            "type"
          ],
          "codeFilter": [
            {
              "path": "type",
              "valueSet": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1023"
            }
          ]
        },
        {
          "type": "Encounter",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter"
          ],
          "mustSupport": [
            "type"
          ],
          "codeFilter": [
            {
              "path": "type",
              "valueSet": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1024"
            }
          ]
        },
        {
          "type": "MedicationRequest",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-medicationrequest"
          ],
          "mustSupport": [
            "medication"
          ],
          "codeFilter": [
            {
              "path": "medication",
              "valueSet": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.196.12.1001"
            }
          ]
        },
        {
          "type": "MedicationRequest",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-medicationrequest"
          ],
          "mustSupport": [
            "medication.reference.value"
          ]
        },
        {
          "type": "Medication",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-medication"
          ],
          "mustSupport": [
            "id.value",
            "code"
          ]
        },
        {
          "type": "Condition",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-condition-encounter-diagnosis"
          ],
          "mustSupport": [
            "code"
          ],
          "codeFilter": [
            {
              "path": "code",
              "valueSet": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.102.12.1011"
            }
          ]
        },
        {
          "type": "Condition",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-condition-encounter-diagnosis"
          ],
          "mustSupport": [
            "code"
          ],
          "codeFilter": [
            {
              "path": "code",
              "valueSet": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.102.12.1012"
            }
          ]
        },
        {
          "type": "Observation",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-observation-lab"
          ],
          "mustSupport": [
            "code",
            "value",
            "effective"
          ],
          "codeFilter": [
            {
              "path": "code",
              "valueSet": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.198.12.1012"
            }
          ]
        },
        {
          "type": "Patient",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-patient"
          ]
        },
        {
          "type": "Coverage",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-coverage"
          ],
          "mustSupport": [
            "type",
            "period"
          ],
          "codeFilter": [
            {
              "path": "type",
              "valueSet": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.114222.4.11.3591"
            }
          ]
        },
        {
          "type": "Patient",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-patient"
          ],
          "mustSupport": [
            "url"
          ]
        },
        {
          "type": "Patient",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-patient"
          ],
          "mustSupport": [
            "url",
            "extension"
          ]
        },
        {
          "type": "Encounter",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter"
          ],
          "mustSupport": [
            "type",
            "hospitalization",
            "hospitalization.dischargeDisposition",
            "period"
          ],
          "codeFilter": [
            {
              "path": "type",
              "valueSet": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.666.5.307"
            }
          ]
        },
        {
          "type": "Encounter",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter"
          ],
          "mustSupport": [
            "type",
            "period"
          ],
          "codeFilter": [
            {
              "path": "type",
              "valueSet": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.1003"
            }
          ]
        },
        {
          "type": "Observation",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-observation-screening-assessment"
          ],
          "mustSupport": [
            "code",
            "value",
            "effective"
          ],
          "codeFilter": [
            {
              "path": "code",
              "code": [
                {
                  "system": "http://loinc.org",
                  "code": "45755-6",
                  "display": "Hospice care [Minimum Data Set]"
                }
              ]
            }
          ]
        },
        {
          "type": "ServiceRequest",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-servicerequest"
          ],
          "mustSupport": [
            "code",
            "authoredOn",
            "authoredOn.value"
          ],
          "codeFilter": [
            {
              "path": "code",
              "valueSet": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.526.3.1584"
            }
          ]
        },
        {
          "type": "Procedure",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-procedure"
          ],
          "mustSupport": [
            "code",
            "performed"
          ],
          "codeFilter": [
            {
              "path": "code",
              "valueSet": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.526.3.1584"
            }
          ]
        },
        {
          "type": "Condition",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-condition-problems-health-concerns"
          ],
          "mustSupport": [
            "code"
          ],
          "codeFilter": [
            {
              "path": "code",
              "valueSet": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.1165"
            }
          ]
        },
        {
          "type": "Condition",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-condition-encounter-diagnosis"
          ],
          "mustSupport": [
            "code"
          ],
          "codeFilter": [
            {
              "path": "code",
              "valueSet": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.1165"
            }
          ]
        },
        {
          "type": "Condition",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-condition-encounter-diagnosis"
          ],
          "mustSupport": [
            "code"
          ],
          "codeFilter": [
            {
              "path": "code",
              "valueSet": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.102.12.1025"
            }
          ]
        },
        {
          "type": "MedicationRequest",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-medicationrequest"
          ],
          "mustSupport": [
            "medication"
          ],
          "codeFilter": [
            {
              "path": "medication",
              "valueSet": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.196.12.1001"
            }
          ]
        },
        {
          "type": "MedicationRequest",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-medicationrequest"
          ],
          "mustSupport": [
            "medication.reference.value"
          ]
        },
        {
          "type": "Medication",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-medication"
          ],
          "mustSupport": [
            "id.value",
            "code"
          ]
        },
        {
          "type": "Condition",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-condition-encounter-diagnosis"
          ],
          "mustSupport": [
            "code"
          ],
          "codeFilter": [
            {
              "path": "code",
              "valueSet": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.102.12.1017"
            }
          ]
        },
        {
          "type": "Patient",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-patient"
          ],
          "mustSupport": [
            "url"
          ]
        },
        {
          "type": "Patient",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-patient"
          ],
          "mustSupport": [
            "url",
            "extension"
          ]
        },
        {
          "type": "Coverage",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-coverage"
          ],
          "mustSupport": [
            "type",
            "period"
          ],
          "codeFilter": [
            {
              "path": "type",
              "valueSet": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.114222.4.11.3591"
            }
          ]
        },
        {
          "type": "Patient",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-patient"
          ],
          "mustSupport": [
            "url",
            "extension"
          ]
        },
        {
          "type": "Patient",
          "profile": [
            "http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-patient"
          ],
          "mustSupport": [
            "url",
            "extension"
          ]
        }
      ]
    }
  ],
  "extension": [
    {
      "id": "supplementalDataGuidance",
      "extension": [
        {
          "url": "guidance",
          "valueString": "For every patient evaluated by this measure also identify payer, race, ethnicity and sex"
        },
        {
          "url": "usage",
          "valueCodeableConcept": {
            "coding": [
              {
                "system": "http://terminology.hl7.org/CodeSystem/measure-data-usage",
                "code": "supplemental-data",
                "display": "Supplemental Data"
              }
            ],
            "text": "Supplemental Data Guidance"
          }
        }
      ],
      "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-supplementalDataGuidance"
    },
    {
      "url": "http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-effectiveDataRequirements",
      "valueCanonical": "#effective-data-requirements"
    },
    {
      "id": "effective-data-requirements",
      "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-effectiveDataRequirements",
      "valueReference": {
        "reference": "#effective-data-requirements"
      }
    }
  ],
  "url": "https://madie.cms.gov/Measure/CMS146FHIRAppropriateTestingforPharyngitis",
  "identifier": [
    {
      "use": "usual",
      "type": {
        "coding": [
          {
            "system": "http://terminology.hl7.org/CodeSystem/artifact-identifier-type",
            "code": "short-name",
            "display": "Short Name"
          }
        ]
      },
      "system": "https://madie.cms.gov/measure/shortName",
      "value": "CMS146FHIR"
    },
    {
      "use": "official",
      "type": {
        "coding": [
          {
            "system": "http://terminology.hl7.org/CodeSystem/artifact-identifier-type",
            "code": "version-independent",
            "display": "Version Independent"
          }
        ]
      },
      "system": "urn:ietf:rfc:3986",
      "value": "urn:uuid:9012731d-f909-4733-aca5-b14e66fe9acd"
    },
    {
      "use": "official",
      "type": {
        "coding": [
          {
            "system": "http://terminology.hl7.org/CodeSystem/artifact-identifier-type",
            "code": "version-specific",
            "display": "Version Specific"
          }
        ]
      },
      "system": "urn:ietf:rfc:3986",
      "value": "urn:uuid:a2e2e358-13e5-4702-9f80-0df2e27f32ab"
    },
    {
      "use": "official",
      "type": {
        "coding": [
          {
            "system": "http://terminology.hl7.org/CodeSystem/artifact-identifier-type",
            "code": "publisher",
            "display": "Publisher"
          }
        ]
      },
      "system": "https://madie.cms.gov/measure/cmsId",
      "value": "146FHIR",
      "assigner": {
        "display": "CMS"
      }
    }
  ],
  "version": "0.3.000",
  "name": "CMS146FHIRAppropriateTestingforPharyngitis",
  "title": "Appropriate Testing for PharyngitisFHIR",
  "status": "active",
  "experimental": false,
  "date": "2025-06-26T19:30:08+00:00",
  "publisher": "National Committee for Quality Assurance",
  "contact": [
    {
      "telecom": [
        {
          "system": "url",
          "value": "https://www.ncqa.org/"
        }
      ]
    }
  ],
  "description": "The percentage of episodes for patients 3 years and older with a diagnosis of pharyngitis that resulted in an antibiotic order on or three days after the episode date and a group A streptococcus (strep) test in the seven-day period from three days prior to the episode date through three days after the episode date",
  "usage": "This is an episode of care measure that examines all eligible episodes for the patient. The intent is to determine whether antibiotics are being ordered appropriately. Antibiotics should only be ordered if a strep test has been performed to confirm a bacterial infection. Antibiotics should not be ordered for viral infections. Antibiotics should be ordered on or three days after the episode date.\n\nThis eCQM is an episode-based measure. An episode is defined as each eligible encounter for patients aged 3 years and older with a diagnosis of pharyngitis that resulted in an antibiotic order from January 1 to December 28 of the measurement period.\n\nThis FHIR-based measure has been derived from the QDM-based measure: CMS146v13. \n\nPlease 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).",
  "copyright": "This Physician Performance Measure (Measure) and related data specifications are owned and were developed by the National Committee for Quality Assurance (NCQA). NCQA is not responsible for any use of the Measure. NCQA makes no representations, warranties, or endorsement about the quality of any organization or physician that uses or reports performance measures and NCQA has no liability to anyone who relies on such measures or specifications. NCQA holds a copyright in the Measure. The Measure can be reproduced and distributed, without modification, for noncommercial purposes (e.g., use by healthcare providers in connection with their practices) without obtaining approval from NCQA. Commercial use is defined as the sale, licensing, or distribution of the Measure for commercial gain, or incorporation of the Measure into a product or service that is sold, licensed or distributed for commercial gain. All commercial uses or requests for modification must be approved by NCQA and are subject to a license at the discretion of NCQA. (C) 2012-2024 National Committee for Quality Assurance. All Rights Reserved.\n\nLimited proprietary coding is contained in the Measure specifications for user convenience. Users of proprietary code sets should obtain all necessary licenses from the owners of the code sets. NCQA disclaims all liability for use or accuracy of any third-party codes contained in the specifications.\n\nCPT(R) codes, descriptions and other data are copyright 2024. American Medical Association. All rights reserved. CPT is a trademark of the American Medical Association. Fee schedules, relative value units, conversion factors and/or related components are not assigned by the AMA, are not part of CPT, and the AMA is not recommending their use. The AMA does not directly or indirectly practice medicine or dispense medical services. The AMA assumes no liability for data contained or not contained herein. Applicable FARS/DFARS restrictions apply to government use.\n\nSome measure specifications contain coding from LOINC(R) (http://loinc.org). The LOINC table, LOINC codes, LOINC panels and form file, LOINC linguistic variants file, LOINC/RSNA Radiology Playbook, and LOINC/IEEE Medical Device Code Mapping Table are copyright 2004-2024 Regenstrief Institute, Inc. and the Logical Observation Identifiers Names and Codes (LOINC) Committee, and are available at no cost under the license at http://loinc.org/terms-of-use.\n\nThis material contains SNOMED Clinical Terms(R) (SNOMED CT[R]) copyright 2004-2023 International Health Terminology Standards Development Organisation.\n\nICD-10 copyright 2024 World Health Organization. All Rights Reserved.\n\nSome measures use RxNorm, a standardized nomenclature and coding for clinical drugs and drug delivery devices, which is made publicly available courtesy of the U.S. National Library of Medicine (NLM), National Institutes of Health, Department of Health and Human Services. NLM is not responsible for the measures and does not endorse or recommend this or any other product.\n\n“HL7” is the registered trademark of Health Level Seven International.",
  "effectivePeriod": {
    "start": "2026-01-01",
    "end": "2026-12-31"
  },
  "author": [
    {
      "name": "National Committee for Quality Assurance",
      "telecom": [
        {
          "system": "url",
          "value": "https://www.ncqa.org/"
        }
      ]
    }
  ],
  "library": [
    "https://madie.cms.gov/Library/CMS146FHIRAppropriateTestingforPharyngitis"
  ],
  "disclaimer": "The performance Measure is not a clinical guideline and does not establish a standard of medical care, and has not been tested for all potential applications. THE MEASURE AND SPECIFICATIONS ARE PROVIDED \"AS IS\" WITHOUT WARRANTY OF ANY KIND.\n \nDue to technical limitations, registered trademarks are indicated by (R) or [R] and unregistered trademarks are indicated by (TM) or [TM].",
  "rationale": "Group A streptococcal (GAS) bacterial infections and other infections that cause pharyngitis (which are most often viral) often produce the same signs and symptoms (Shulman et al., 2012). The American Academy of Pediatrics, the Centers for Disease Control and Prevention, and the Infectious Diseases Society of America all recommend a diagnostic test for Strep A to improve diagnostic accuracy and avoid unnecessary antibiotic treatment (Linder et al., 2005).\n\nEstimated economic costs of pediatric streptococcal pharyngitis in the United States range from $224 million to $539 million per year, including indirect costs related to parental work losses. At a higher level, the economic cost of antibiotic resistance varies but has extended as high as $20 billion in excess direct healthcare costs, with additional costs to society for lost productivity as high as $35 billion a year (2008 dollars) (Pfoh et al., 2008).",
  "clinicalRecommendationStatement": "Infectious Disease Society of America (Shulman et al., 2012) \n\nThe Infectious Diseases Society of America \"recommends swabbing the throat and testing for GAS pharyngitis by rapid antigen detection test (RADT) and/or culture because the clinical features alone do not reliably discriminate between GAS and viral pharyngitis except when overt viral features like rhinorrhea, cough, oral ulcers, and/or hoarseness are present\"",
  "guidance": "This is an episode of care measure that examines all eligible episodes for the patient. The intent is to determine whether antibiotics are being ordered appropriately. Antibiotics should only be ordered if a strep test has been performed to confirm a bacterial infection. Antibiotics should not be ordered for viral infections. Antibiotics should be ordered on or three days after the episode date.\n\nThis eCQM is an episode-based measure. An episode is defined as each eligible encounter for patients aged 3 years and older with a diagnosis of pharyngitis that resulted in an antibiotic order from January 1 to December 28 of the measurement period.\n\nThis FHIR-based measure has been derived from the QDM-based measure: CMS146v13. \n\nPlease 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).",
  "group": [
    {
      "id": "Group_1",
      "extension": [
        {
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoring",
          "valueCodeableConcept": {
            "coding": [
              {
                "system": "http://terminology.hl7.org/CodeSystem/measure-scoring",
                "code": "proportion",
                "display": "Proportion"
              }
            ]
          }
        },
        {
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-populationBasis",
          "valueCode": "Encounter"
        },
        {
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-type",
          "valueCodeableConcept": {
            "coding": [
              {
                "system": "http://terminology.hl7.org/CodeSystem/measure-type",
                "code": "process",
                "display": "Process"
              }
            ]
          }
        },
        {
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-rateAggregation",
          "valueCode": "None"
        },
        {
          "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-improvementNotation",
          "valueCodeableConcept": {
            "coding": [
              {
                "system": "http://terminology.hl7.org/CodeSystem/measure-improvement-notation",
                "code": "increase",
                "display": "Increased score indicates improvement"
              }
            ]
          }
        }
      ],
      "population": [
        {
          "id": "InitialPopulation_1",
          "code": {
            "coding": [
              {
                "system": "http://terminology.hl7.org/CodeSystem/measure-population",
                "code": "initial-population",
                "display": "Initial Population"
              }
            ]
          },
          "description": "Outpatient, telephone, virtual encounter (i.e., e-visit or virtual check-in), or emergency department (ED) visits with a diagnosis of pharyngitis or tonsillitis from January 1 to December 28 of the measurement period and an antibiotic order on or three days after the episode date among patients 3 years or older ",
          "criteria": {
            "language": "text/cql-identifier",
            "expression": "Initial Population"
          }
        },
        {
          "id": "Denominator_1",
          "code": {
            "coding": [
              {
                "system": "http://terminology.hl7.org/CodeSystem/measure-population",
                "code": "denominator",
                "display": "Denominator"
              }
            ]
          },
          "description": "Equals Initial Population",
          "criteria": {
            "language": "text/cql-identifier",
            "expression": "Denominator"
          }
        },
        {
          "id": "DenominatorExclusion_1",
          "code": {
            "coding": [
              {
                "system": "http://terminology.hl7.org/CodeSystem/measure-population",
                "code": "denominator-exclusion",
                "display": "Denominator Exclusion"
              }
            ]
          },
          "description": "Exclude pharyngitis episodes when the patient had hospice care for any part of the measurement period.\n\nExclude pharyngitis episodes when the patient had a comorbid condition during the 12 months prior to or on the episode date.\n\nExclude pharyngitis episodes where the patient is taking antibiotics in the 30 days prior to the episode date.\n\nExclude pharyngitis episodes where the patient had a competing diagnosis on or three days after the episode date.",
          "criteria": {
            "language": "text/cql-identifier",
            "expression": "Denominator Exclusions"
          }
        },
        {
          "id": "Numerator_1",
          "code": {
            "coding": [
              {
                "system": "http://terminology.hl7.org/CodeSystem/measure-population",
                "code": "numerator",
                "display": "Numerator"
              }
            ]
          },
          "description": "A group A streptococcus test in the seven-day period from three days prior to the episode date through three days after the episode date",
          "criteria": {
            "language": "text/cql-identifier",
            "expression": "Numerator"
          }
        }
      ],
      "stratifier": [
        {
          "id": "Stratification_1_1",
          "extension": [
            {
              "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-appliesTo",
              "valueCodeableConcept": {
                "coding": [
                  {
                    "system": "http://terminology.hl7.org/CodeSystem/measure-population",
                    "code": "initial-population",
                    "display": "Initial Population"
                  }
                ]
              }
            }
          ],
          "description": "- 3-17 years ",
          "criteria": {
            "language": "text/cql-identifier",
            "expression": "Encounter With Pharyngitis or Tonsillitis With Antibiotic"
          }
        },
        {
          "id": "Stratification_1_2",
          "extension": [
            {
              "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-appliesTo",
              "valueCodeableConcept": {
                "coding": [
                  {
                    "system": "http://terminology.hl7.org/CodeSystem/measure-population",
                    "code": "initial-population",
                    "display": "Initial Population"
                  }
                ]
              }
            }
          ],
          "description": "- 18-64 years",
          "criteria": {
            "language": "text/cql-identifier",
            "expression": "Encounter With Pharyngitis or Tonsillitis With Antibiotic"
          }
        },
        {
          "id": "Stratification_1_3",
          "extension": [
            {
              "url": "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-appliesTo",
              "valueCodeableConcept": {
                "coding": [
                  {
                    "system": "http://terminology.hl7.org/CodeSystem/measure-population",
                    "code": "initial-population",
                    "display": "Initial Population"
                  }
                ]
              }
            }
          ],
          "description": "- 65 years and older",
          "criteria": {
            "language": "text/cql-identifier",
            "expression": "Encounter With Pharyngitis or Tonsillitis With Antibiotic"
          }
        }
      ]
    }
  ],
  "supplementalData": [
    {
      "id": "sde-ethnicity",
      "usage": [
        {
          "coding": [
            {
              "system": "http://terminology.hl7.org/CodeSystem/measure-data-usage",
              "code": "supplemental-data"
            }
          ]
        }
      ],
      "description": "SDE Ethnicity",
      "criteria": {
        "language": "text/cql-identifier",
        "expression": "SDE Ethnicity"
      }
    },
    {
      "id": "sde-payer",
      "usage": [
        {
          "coding": [
            {
              "system": "http://terminology.hl7.org/CodeSystem/measure-data-usage",
              "code": "supplemental-data"
            }
          ]
        }
      ],
      "description": "SDE Payer",
      "criteria": {
        "language": "text/cql-identifier",
        "expression": "SDE Payer"
      }
    },
    {
      "id": "sde-race",
      "usage": [
        {
          "coding": [
            {
              "system": "http://terminology.hl7.org/CodeSystem/measure-data-usage",
              "code": "supplemental-data"
            }
          ]
        }
      ],
      "description": "SDE Race",
      "criteria": {
        "language": "text/cql-identifier",
        "expression": "SDE Race"
      }
    },
    {
      "id": "sde-sex",
      "usage": [
        {
          "coding": [
            {
              "system": "http://terminology.hl7.org/CodeSystem/measure-data-usage",
              "code": "supplemental-data"
            }
          ]
        }
      ],
      "description": "SDE Sex",
      "criteria": {
        "language": "text/cql-identifier",
        "expression": "SDE Sex"
      }
    }
  ]
}