Draft dQM CMS Content Implementation Guide
2025.1.0 - CI Build
Draft dQM CMS Content Implementation Guide, published by cqframework. This guide is not an authorized publication; it is the continuous build for version 2025.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/cqframework/dqm-content-cms-2025/ and changes regularly. See the Directory of published versions
| Active as of 2026-01-16 |
{
"resourceType" : "Measure",
"id" : "CMS146FHIRApproTestPharyngitis",
"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" : "<div xmlns=\"http://www.w3.org/1999/xhtml\">\n <table class=\"narrative-table\">\n <tbody>\n<tr>\n\n\n<th colspan=\"2\" scope=\"row\" class=\"row-header\">Metadata</th>\n\n\n</tr>\n\n<tr>\n\n\n<th scope=\"row\" class=\"row-header\">Title</th>\n\n\n\n<td class=\"content-container\">Appropriate Testing for PharyngitisFHIR</td>\n\n\n</tr>\n\n\n\n<tr>\n\n\n<th scope=\"row\" class=\"row-header\">Version</th>\n\n\n\n<td class=\"content-container\">1.1.000</td>\n\n\n</tr>\n\n\n \n<tr>\n\n\n<th scope=\"row\" class=\"row-header\">Short Name</th>\n\n\n\n<td class=\"content-container\">CMS146FHIR</td>\n\n\n</tr>\n\n\n\n \n<tr>\n\n\n<th scope=\"row\" class=\"row-header\">GUID (Version Independent)</th>\n\n\n\n<td class=\"content-container\">urn:uuid:9012731d-f909-4733-aca5-b14e66fe9acd</td>\n\n\n</tr>\n\n\n\n \n<tr>\n\n\n<th scope=\"row\" class=\"row-header\">GUID (Version Specific)</th>\n\n\n\n<td class=\"content-container\">urn:uuid:f5065d63-f2b7-438c-b677-14862bdecd27</td>\n\n\n</tr>\n\n\n\n \n \n \n<tr>\n\n\n<th scope=\"row\" class=\"row-header\">CMS Identifier</th>\n\n\n\n<td class=\"content-container\">146FHIR</td>\n\n\n</tr>\n\n \n\n\n\n\n \n \n \n<tr>\n\n\n<th scope=\"row\" class=\"row-header\">Effective Period</th>\n\n\n\n<td class=\"content-container\">2026-01-01 through 2026-12-31</td>\n\n\n</tr>\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<tr>\n\n\n<th scope=\"row\" class=\"row-header\">Steward (Publisher)</th>\n\n\n\n<td class=\"content-container\">National Committee for Quality Assurance</td>\n\n\n</tr>\n\n\n\n\n\n\n<tr>\n\n\n<th scope=\"row\" class=\"row-header\">Developer</th>\n\n\n\n<td class=\"content-container\">National Committee for Quality Assurance</td>\n\n\n</tr>\n\n\n\n\n\n\n<tr>\n\n\n<th scope=\"row\" class=\"row-header\">Description</th>\n\n\n\n<td class=\"content-container\"><div><p>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</p>\n</div></td>\n\n\n</tr>\n\n\n\n<tr>\n\n\n<th scope=\"row\" class=\"row-header\">Copyright</th>\n\n\n\n<td class=\"content-container\"><div><p>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 endorsements about the quality of any product, test or protocol identified as numerator compliant or otherwise identified as meeting the requirements of the measure or specification. 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 may be used for internal, noncommercial purposes (e.g., use by healthcare providers in connection with their practices) without obtaining approval from NCQA. All other uses, including a commercial use (including but not limited to vendors using or embedding the measures and specifications into any product or service to calculate measure results for customers for any purpose), must be approved by NCQA and are subject to a license at the discretion of NCQA. (C) 2012-2025 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 2025. 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) (https://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-2025 Regenstrief Institute, Inc. and the Logical Observation Identifiers Names and Codes (LOINC) Committee, and are available at no cost under the license at https://loinc.org/kb/license/. This material contains SNOMED Clinical Terms(R) (SNOMED CT[R]) copyright 2004-2024 International Health Terminology Standards Development Organisation. ICD-10 copyright 2025 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.</p>\n</div></td>\n\n\n</tr>\n\n\n<tr>\n\n\n<th scope=\"row\" class=\"row-header\">Disclaimer</th>\n\n\n\n<td class=\"content-container\"><div><p>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].</p>\n</div></td>\n\n\n</tr>\n\n\n\n\n\n\n\n\n\n\n\n\n\n<tr>\n\n\n<th scope=\"row\" class=\"row-header\">Rationale</th>\n\n\n\n<td class=\"content-container\"><div><p>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).</p>\n</div></td>\n\n\n</tr>\n\n\n<tr>\n\n\n<th scope=\"row\" class=\"row-header\">Clinical Recommendation Statement</th>\n\n\n\n<td class=\"content-container\"><div><p>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"</p>\n</div></td>\n\n\n</tr>\n\n\n\n<tr>\n \n \n \n \n\n<th scope=\"row\" class=\"row-header\">Citation</th>\n\n\n \n \n \n <td class=\"content-container\">\n \n \n \n <div><p>Linder, J. A., Bates, D. W., Lee, G. M., et al. (2005). Antibiotic Treatment of Children with Sore Throat. JAMA, 294(18), 2315-2322.</p>\n</div>\n \n \n \n \n \n \n \n </td>\n</tr>\n\n<tr>\n \n \n \n \n\n<th scope=\"row\" class=\"row-header\">Citation</th>\n\n\n \n \n \n <td class=\"content-container\">\n \n \n \n <div><p>Pfoh, E., Wessels, M.R., Goldmann, D., et al. (2008). Burden and Economic Cost of Group A Streptococcal Pharyngitis. Pediatrics, 121(2), 229-234. doi: 10.1542/peds.2007-0484</p>\n</div>\n \n \n \n \n \n \n \n </td>\n</tr>\n\n<tr>\n \n \n \n \n\n<th scope=\"row\" class=\"row-header\">Citation</th>\n\n\n \n \n \n <td class=\"content-container\">\n \n \n \n <div><p>Shulman, S. T., Bisno, A. L., Clegg, H. W., et al. (2012). Clinical Practice Guideline for the Diagnosis and Management of Group A Streptococcal Pharyngitis: 2012 Update by the Infectious Diseases Society of America. Clinical Infectious Diseases, 55(10), E86-E102. doi:10.1093/cid/cis629</p>\n</div>\n \n \n \n \n \n \n \n </td>\n</tr>\n\n\n\n\n\n\n\n<tr>\n\n\n<th scope=\"row\" class=\"row-header\">Guidance (Usage)</th>\n\n\n\n<td class=\"content-container\">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: CMS146v14. Please refer to the HL7 QI-Core Implementation Guide (https://hl7.org/fhir/us/qicore/STU6/) for more information on QI-Core and mapping recommendations from QDM to QI-Core STU 6. (https://hl7.org/fhir/us/qicore/STU6/qdm-to-qicore.html).</td>\n\n\n</tr>\n\n\n\n \n \n \n \n <tr>\n\n\n<th colspan=\"2\" scope=\"row\" class=\"row-header\">Measure Group (Rate) (ID: Group_1)</th>\n\n\n</tr>\n \n \n \n \n<tr>\n\n\n<th scope=\"row\" class=\"row-header\">Basis</th>\n\n\n\n<td class=\"content-container\">Encounter</td>\n\n\n</tr>\n\n\n\n \n<tr>\n\n\n<th scope=\"row\" class=\"row-header\">Scoring</th>\n\n\n\n<td class=\"content-container\">\n Proportion\n\n\n</td>\n\n\n</tr>\n\n\n\n\n\n \n<tr>\n\n\n<th scope=\"row\" class=\"row-header\">Improvement Notation</th>\n\n\n\n<td class=\"content-container\">\n Increased score indicates improvement\n\n\n</td>\n\n\n</tr>\n\n\n\n\n\n\n<tr>\n\n\n<th scope=\"row\" class=\"row-header\">Type</th>\n\n\n\n<td class=\"content-container\">\n Process\n\n\n</td>\n\n\n</tr>\n\n\n\n \n<tr>\n\n\n<th scope=\"row\" class=\"row-header\">Rate Aggregation</th>\n\n\n\n<td class=\"content-container\">None</td>\n\n\n</tr>\n\n\n\n \n \n\n \n \n \n \n \n \n <tr>\n \n \n\n<th scope=\"row\" class=\"row-header\">Initial Population</th>\n\n\n \n <td class=\"content-container\">\n \n <em>ID</em>: InitialPopulation_1\n <br/>\n \n \n <em>Description</em>:\n <p style=\"white-space: pre-line\" class=\"tab-one\">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</p>\n \n \n \n \n \n <em>Criteria</em>: <a href=\"#Group_1-InitialPopulation_1\">Initial Population</a> \n \n \n \n \n \n \n </td>\n </tr>\n \n\n \n \n\n \n \n \n \n \n \n <tr>\n \n \n\n<th scope=\"row\" class=\"row-header\">Denominator</th>\n\n\n \n <td class=\"content-container\">\n \n <em>ID</em>: Denominator_1\n <br/>\n \n \n <em>Description</em>:\n <p style=\"white-space: pre-line\" class=\"tab-one\">Equals Initial Population</p>\n \n \n \n \n \n <em>Criteria</em>: <a href=\"#Group_1-Denominator_1\">Denominator</a> \n \n \n \n \n \n \n </td>\n </tr>\n \n\n \n \n\n \n \n \n \n \n \n <tr>\n \n \n\n<th scope=\"row\" class=\"row-header\">Denominator Exclusion</th>\n\n\n \n <td class=\"content-container\">\n \n <em>ID</em>: DenominatorExclusion_1\n <br/>\n \n \n <em>Description</em>:\n <p style=\"white-space: pre-line\" class=\"tab-one\">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.</p>\n \n \n \n \n \n <em>Criteria</em>: <a href=\"#Group_1-DenominatorExclusion_1\">Denominator Exclusions</a> \n \n \n \n \n \n \n </td>\n </tr>\n \n\n \n \n\n \n \n \n\n \n \n \n \n \n \n <tr>\n \n \n\n<th scope=\"row\" class=\"row-header\">Numerator</th>\n\n\n \n <td class=\"content-container\">\n \n <em>ID</em>: Numerator_1\n <br/>\n \n \n <em>Description</em>:\n <p style=\"white-space: pre-line\" class=\"tab-one\">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</p>\n \n \n \n \n \n <em>Criteria</em>: <a href=\"#Group_1-Numerator_1\">Numerator</a> \n \n \n \n \n \n \n </td>\n </tr>\n \n\n \n \n\n \n \n \n\n \n\n\n \n\n<tr>\n \n\n<th scope=\"row\" class=\"row-header\">Stratifier</th>\n\n\n <td class=\"content-container\">\n \n <em>ID</em>: Stratification_1_1\n \n <br/>\n \n \n \n \n <em>Description</em>: - 3-17 years\n \n </td>\n</tr>\n\n<tr>\n \n\n<th scope=\"row\" class=\"row-header\">Stratifier</th>\n\n\n <td class=\"content-container\">\n \n <em>ID</em>: Stratification_1_2\n \n <br/>\n \n \n \n \n <em>Description</em>: - 18-64 years\n \n </td>\n</tr>\n\n<tr>\n \n\n<th scope=\"row\" class=\"row-header\">Stratifier</th>\n\n\n <td class=\"content-container\">\n \n <em>ID</em>: Stratification_1_3\n \n <br/>\n \n \n \n \n <em>Description</em>: - 65 years and older\n \n </td>\n</tr>\n\n\n\n\n\n\n\n \n \n \n \n \n \n<tr>\n\n\n<th scope=\"row\" class=\"row-header\">Supplemental Data Guidance Guidance</th>\n\n\n\n<td class=\"content-container\">For every patient evaluated by this measure also identify payer, race, ethnicity and sex</td>\n\n\n</tr>\n\n \n\n\n\n\n <tr>\n\n\n<th colspan=\"2\" scope=\"row\" class=\"row-header\">Supplemental Data Elements</th>\n\n\n</tr>\n\n\n<tr>\n \n\n<th scope=\"row\" class=\"row-header\">Supplemental Data Element</th>\n\n\n <td class=\"content-container\">\n \n <em>ID</em>: sde-ethnicity\n \n <br/>\n \n \n \n \n \n <em>Usage Code</em>: <span title=\"Codes:{http://terminology.hl7.org/CodeSystem/measure-data-usage supplemental-data}\">Supplemental Data</span>\n \n <br/>\n \n \n \n <em>Description</em>: SDE Ethnicity\n \n \n \n <br/>\n \n \n <em>Logic Definition</em>: <a href=\"#cms146fhirapprotestpharyngitis-sde-ethnicity\">SDE Ethnicity</a> \n \n \n \n </td>\n</tr>\n\n<tr>\n \n\n<th scope=\"row\" class=\"row-header\">Supplemental Data Element</th>\n\n\n <td class=\"content-container\">\n \n <em>ID</em>: sde-payer\n \n <br/>\n \n \n \n \n \n <em>Usage Code</em>: <span title=\"Codes:{http://terminology.hl7.org/CodeSystem/measure-data-usage supplemental-data}\">Supplemental Data</span>\n \n <br/>\n \n \n \n <em>Description</em>: SDE Payer\n \n \n \n <br/>\n \n \n <em>Logic Definition</em>: <a href=\"#cms146fhirapprotestpharyngitis-sde-payer\">SDE Payer</a> \n \n \n \n </td>\n</tr>\n\n<tr>\n \n\n<th scope=\"row\" class=\"row-header\">Supplemental Data Element</th>\n\n\n <td class=\"content-container\">\n \n <em>ID</em>: sde-race\n \n <br/>\n \n \n \n \n \n <em>Usage Code</em>: <span title=\"Codes:{http://terminology.hl7.org/CodeSystem/measure-data-usage supplemental-data}\">Supplemental Data</span>\n \n <br/>\n \n \n \n <em>Description</em>: SDE Race\n \n \n \n <br/>\n \n \n <em>Logic Definition</em>: <a href=\"#cms146fhirapprotestpharyngitis-sde-race\">SDE Race</a> \n \n \n \n </td>\n</tr>\n\n<tr>\n \n\n<th scope=\"row\" class=\"row-header\">Supplemental Data Element</th>\n\n\n <td class=\"content-container\">\n \n <em>ID</em>: sde-sex\n \n <br/>\n \n \n \n \n \n <em>Usage Code</em>: <span title=\"Codes:{http://terminology.hl7.org/CodeSystem/measure-data-usage supplemental-data}\">Supplemental Data</span>\n \n <br/>\n \n \n \n <em>Description</em>: SDE Sex\n \n \n \n <br/>\n \n \n <em>Logic Definition</em>: <a href=\"#cms146fhirapprotestpharyngitis-sde-sex\">SDE Sex</a> \n \n \n \n </td>\n</tr>\n\n\n<tr>\n\n\n<th colspan=\"2\" scope=\"row\" class=\"row-header\">Measure Logic</th>\n\n\n</tr>\n\n<tr>\n\n\n<th scope=\"row\" class=\"row-header\">Primary Library</th>\n\n\n\n<td class=\"content-container\"><a href=\"Library-CMS146FHIRApproTestPharyngitis.html\">CMS146FHIRApproTestPharyngitis</a></td>\n\n\n</tr>\n\n\n\n\n<tr>\n <th scope=\"row\" class=\"row-header\">Contents</th>\n <td class=\"content-container\">\n <em><a href=\"#population-criteria\">Population Criteria</a></em>\n <br/>\n <em><a href=\"#definitions\">Logic Definitions</a></em>\n <br/>\n <em><a href=\"#terminology\">Terminology</a></em>\n <br/>\n <em><a href=\"#dependencies\">Dependencies</a></em>\n <br/>\n <em><a href=\"#data-requirements\">Data Requirements</a></em>\n <br/>\n <em><a href=\"#parameters\">Parameters</a></em>\n <br/>\n </td>\n</tr>\n\n\n <tr>\n\n\n<th colspan=\"2\" scope=\"row\" class=\"row-header\"><a name=\"population-criteria\"> </a>Population Criteria</th>\n\n\n</tr>\n \n \n \n\n \n \n \n \n <tr>\n\n\n<th colspan=\"2\" scope=\"row\" class=\"row-header\">Measure Group (Rate) (ID: Group_1)</th>\n\n\n</tr>\n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n <tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n \n Initial Population\n \n </th>\n</tr>\n<tr>\n\n <td>\n \n \n \n \n \n <a name=\"Group_1-InitialPopulation_1\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">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</code></pre>\n \n \n <a href=\"#cms146fhirapprotestpharyngitis-initial-population\"><em>Definition</em></a>\n \n </td>\n\n</tr>\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n <tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n \n Denominator\n \n </th>\n</tr>\n<tr>\n\n <td>\n \n \n \n \n \n <a name=\"Group_1-Denominator_1\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">define "Denominator":\n "Initial Population"</code></pre>\n \n \n <a href=\"#cms146fhirapprotestpharyngitis-denominator\"><em>Definition</em></a>\n \n </td>\n\n</tr>\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n <tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n \n Denominator Exclusion\n \n </th>\n</tr>\n<tr>\n\n <td>\n \n \n \n \n \n <a name=\"Group_1-DenominatorExclusion_1\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">define "Denominator Exclusions":\n "Encounters and Assessments with Hospice Patient"\n union Antibiotic."Encounter with Comorbid Condition History" ( "Encounter With Pharyngitis or Tonsillitis With Antibiotic", ( [ConditionEncounterDiagnosis: "Comorbid Conditions for Respiratory Conditions"] ).verified ( ) )\n union Antibiotic."Encounter with Antibiotic Medication History" ( "Encounter With Pharyngitis or Tonsillitis With Antibiotic", ( [MedicationRequest: "Antibiotic Medications for Pharyngitis"] ).isMedicationActive ( ) )\n union Antibiotic."Encounter with Competing Diagnosis History" ( "Encounter With Pharyngitis or Tonsillitis With Antibiotic", ( [ConditionEncounterDiagnosis: "Competing Conditions for Respiratory Conditions"] ).verified ( ) )</code></pre>\n \n \n <a href=\"#cms146fhirapprotestpharyngitis-denominator-exclusions\"><em>Definition</em></a>\n \n </td>\n\n</tr>\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n\n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n <tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n \n Numerator\n \n </th>\n</tr>\n<tr>\n\n <td>\n \n \n \n \n \n <a name=\"Group_1-Numerator_1\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">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</code></pre>\n \n \n <a href=\"#cms146fhirapprotestpharyngitis-numerator\"><em>Definition</em></a>\n \n </td>\n\n</tr>\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n\n \n \n \n\n \n\n\n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n <tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n \n Stratifier\n \n </th>\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">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\n return VisitWithAntibiotic</code></pre>\n \n \n <a href=\"#cms146fhirapprotestpharyngitis-encounter-with-pharyngitis-or-tonsillitis-with-antibiotic\"><em>Definition</em></a>\n \n </td>\n\n</tr>\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n <tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n \n Stratifier\n \n </th>\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">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\n return VisitWithAntibiotic</code></pre>\n \n \n <a href=\"#cms146fhirapprotestpharyngitis-encounter-with-pharyngitis-or-tonsillitis-with-antibiotic\"><em>Definition</em></a>\n \n </td>\n\n</tr>\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n <tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n \n Stratifier\n \n </th>\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">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\n return VisitWithAntibiotic</code></pre>\n \n \n <a href=\"#cms146fhirapprotestpharyngitis-encounter-with-pharyngitis-or-tonsillitis-with-antibiotic\"><em>Definition</em></a>\n \n </td>\n\n</tr>\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n\n \n\n \n \n\n\n <tr>\n\n\n<th colspan=\"2\" scope=\"row\" class=\"row-header\"><a name=\"definitions\"> </a>Logic Definitions</th>\n\n\n</tr>\n \n \n \n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> Hospice</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"hospice-has-hospice-services\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">define "Has Hospice Services":\n exists ((([USQualityCore.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 ends during day of "Measurement Period"\n )\n or exists ((([USQualityCore.Encounter: "Hospice Encounter"]).isEncounterPerformed()) HospiceEncounter\n where HospiceEncounter.period overlaps day of "Measurement Period"\n )\n // TODO: Shouldn't need to specify a code path here (see https://jira.hl7.org/browse/FHIR-53941)\n or exists ((([USQualityCore.ObservationScreeningAssessment: code ~ "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 ((([USQualityCore.ServiceRequest: "Hospice Care Ambulatory"]).isInterventionOrder()) HospiceOrder\n where HospiceOrder.authoredOn during day of "Measurement Period"\n )\n or exists ((([USQualityCore.Procedure: "Hospice Care Ambulatory"]).isInterventionPerformed()) HospicePerformed\n where HospicePerformed.performed.toInterval() overlaps day of "Measurement Period"\n )\n // TODO: Consider whether to keep this as the union of Problems and EncounterDiagnosis\n or exists ((([FHIR.Condition: "Hospice Diagnosis"]).verified()) HospiceCareDiagnosis\n where HospiceCareDiagnosis.prevalenceInterval() overlaps day of "Measurement Period"\n )</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n\n \n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> SupplementalDataElements</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"supplementaldataelements-sde-sex\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">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</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> SupplementalDataElements</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"supplementaldataelements-sde-payer\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">define "SDE Payer":\n [USQualityCore.Coverage: type in "Payer Type"] Payer\n return {\n code: Payer.type,\n period: Payer.period\n }</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> SupplementalDataElements</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"supplementaldataelements-sde-ethnicity\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">define "SDE Ethnicity":\n (Patient.ethnicity()) E\n return Tuple {\n codes: { E.ombCategory } union E.detailed,\n display: E.text\n }</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> SupplementalDataElements</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"supplementaldataelements-sde-race\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">define "SDE Race":\n (Patient.race()) R\n return Tuple {\n codes: R.ombCategory union R.detailed,\n display: R.text\n }</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n\n \n \n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> CMS146FHIRApproTestPharyngitis</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"cms146fhirapprotestpharyngitis-sde-sex\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">define "SDE Sex":\n SDE."SDE Sex"</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> CMS146FHIRApproTestPharyngitis</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"cms146fhirapprotestpharyngitis-group-a-streptococcus-lab-test-with-result\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">define "Group A Streptococcus Lab Test With Result":\n ( ( [LaboratoryResultObservation: "Group A Streptococcus Test"] ).isLaboratoryTestPerformed ( ) ) GroupAStreptococcusTest\n where GroupAStreptococcusTest.value is not null</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> CMS146FHIRApproTestPharyngitis</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"cms146fhirapprotestpharyngitis-qualifying-encounters\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">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 ends during day of Interval[( start of "Measurement Period" ), ( end of "Measurement Period" ) - 3 days]</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> CMS146FHIRApproTestPharyngitis</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"cms146fhirapprotestpharyngitis-encounter-with-antibiotic-ordered-within-three-days\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">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</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> CMS146FHIRApproTestPharyngitis</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"cms146fhirapprotestpharyngitis-pharyngitis-or-tonsillitis\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">define "Pharyngitis or Tonsillitis":\n ( [ConditionEncounterDiagnosis: "Acute Pharyngitis"]\n union [ConditionEncounterDiagnosis: "Acute Tonsillitis"]\n ).verified ( )</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> CMS146FHIRApproTestPharyngitis</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"cms146fhirapprotestpharyngitis-encounter-with-pharyngitis-or-tonsillitis-with-antibiotic\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">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\n return VisitWithAntibiotic</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> CMS146FHIRApproTestPharyngitis</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"cms146fhirapprotestpharyngitis-numerator\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">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</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> CMS146FHIRApproTestPharyngitis</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"cms146fhirapprotestpharyngitis-initial-population\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">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</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> CMS146FHIRApproTestPharyngitis</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"cms146fhirapprotestpharyngitis-denominator\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">define "Denominator":\n "Initial Population"</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> CMS146FHIRApproTestPharyngitis</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"cms146fhirapprotestpharyngitis-sde-payer\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">define "SDE Payer":\n SDE."SDE Payer"</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> CMS146FHIRApproTestPharyngitis</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"cms146fhirapprotestpharyngitis-sde-ethnicity\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">define "SDE Ethnicity":\n SDE."SDE Ethnicity"</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> CMS146FHIRApproTestPharyngitis</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"cms146fhirapprotestpharyngitis-encounters-and-assessments-with-hospice-patient\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">define "Encounters and Assessments with Hospice Patient":\n "Initial Population" EligibleEncounters\n where Hospice."Has Hospice Services"</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> CMS146FHIRApproTestPharyngitis</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"cms146fhirapprotestpharyngitis-denominator-exclusions\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">define "Denominator Exclusions":\n "Encounters and Assessments with Hospice Patient"\n union Antibiotic."Encounter with Comorbid Condition History" ( "Encounter With Pharyngitis or Tonsillitis With Antibiotic", ( [ConditionEncounterDiagnosis: "Comorbid Conditions for Respiratory Conditions"] ).verified ( ) )\n union Antibiotic."Encounter with Antibiotic Medication History" ( "Encounter With Pharyngitis or Tonsillitis With Antibiotic", ( [MedicationRequest: "Antibiotic Medications for Pharyngitis"] ).isMedicationActive ( ) )\n union Antibiotic."Encounter with Competing Diagnosis History" ( "Encounter With Pharyngitis or Tonsillitis With Antibiotic", ( [ConditionEncounterDiagnosis: "Competing Conditions for Respiratory Conditions"] ).verified ( ) )</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> CMS146FHIRApproTestPharyngitis</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"cms146fhirapprotestpharyngitis-sde-race\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">define "SDE Race":\n SDE."SDE Race"</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n\n \n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> FHIRCommon</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"fhircommon-ext\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">/*\n@description: Returns the single extension (if present) on the given resource with the specified url.\n@comment: This function uses singleton from to ensure that a run-time exception is thrown if there\nis more than one extension on the given resource with the specified url.\n*/\ndefine fluent function ext(domainResource DomainResource, url String):\n singleton from domainResource.exts(url)</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> FHIRCommon</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"fhircommon-exts\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">/*\n@description: Returns any extensions defined on the given resource with the specified url\n*/\ndefine fluent function exts(domainResource DomainResource, url String):\n domainResource.extension E\n where E.url = url\n return E</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> FHIRCommon</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"fhircommon-tointerval\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">/*\n@description: Normalizes a value that is a choice of timing-valued types to an equivalent interval\n@comment: Normalizes a choice type of FHIR.dateTime, FHIR.Period, FHIR.Timing, FHIR.instance, FHIR.string, FHIR.Age, or FHIR.Range 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 FHIR, allowing this function to be used across any resource.\n\nThe input can be provided as a dateTime, Period, Timing, instant, string, Age, or Range.\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 Period, the result is a DateTime Interval.\nIf the input is a Timing, an error is raised indicating a single interval cannot be computed from a Timing.\nIf the input is an instant, the result is a DateTime Interval beginning and ending on that instant.\nIf the input is a string, an error is raised indicating a single interval cannot be computed from a string.\nIf the input is an Age, the result is a DateTime Interval beginning when the patient was the given Age,\nand ending immediately prior to when the patient was the given Age plus one year.\nIf the input is a Range, the result is a DateTime Interval beginning when the patient was the Age given\nby the low end of the Range, and ending immediately prior to when the patient was the Age given by the\nhigh end of the Range plus one year.\n\nNOTE: Due to the\ncomplexity of determining a single interval from a Timing or String type, this function will throw a run-time exception if it is used\nwith a Timing or String.\n*/\ndefine fluent function toInterval(choice Choice<FHIR.dateTime, FHIR.Period, FHIR.Timing, FHIR.instant, FHIR.string, FHIR.Age, FHIR.Range>):\n case\n when choice is FHIR.dateTime then\n Interval[FHIRHelpers.ToDateTime(choice as FHIR.dateTime), FHIRHelpers.ToDateTime(choice as FHIR.dateTime)]\n when choice is FHIR.Period then\n FHIRHelpers.ToInterval(choice as FHIR.Period)\n when choice is FHIR.instant then\n Interval[FHIRHelpers.ToDateTime(choice as FHIR.instant), FHIRHelpers.ToDateTime(choice as FHIR.instant)]\n when choice is FHIR.Age then\n Interval[FHIRHelpers.ToDate(Patient.birthDate) + FHIRHelpers.ToQuantity(choice as FHIR.Age),\n FHIRHelpers.ToDate(Patient.birthDate) + FHIRHelpers.ToQuantity(choice as FHIR.Age) + 1 year)\n when choice is FHIR.Range then\n Interval[FHIRHelpers.ToDate(Patient.birthDate) + FHIRHelpers.ToQuantity((choice as FHIR.Range).low),\n FHIRHelpers.ToDate(Patient.birthDate) + FHIRHelpers.ToQuantity((choice as FHIR.Range).high) + 1 year)\n when choice is FHIR.Timing then\n Message(null as Interval<DateTime>, true, 'NOT_IMPLEMENTED', 'Error', 'Calculation of an interval from a Timing value is not supported')\n when choice is FHIR.string then\n Message(null as Interval<DateTime>, true, 'NOT_IMPLEMENTED', 'Error', 'Calculation of an interval from a String value is not supported')\n else\n null as Interval<DateTime>\n end</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> FHIRCommon</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"fhircommon-verified\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">/*\n@description: Returns conditions in the given list that either have no verification status or have a verification status of confirmed, unconfirmed, provisional, or differential\n*/\ndefine fluent function verified(conditions List<FHIR.Condition>):\n conditions C\n where C.verificationStatus is not null implies\n (C.verificationStatus ~ "confirmed"\n or C.verificationStatus ~ "unconfirmed"\n or C.verificationStatus ~ "provisional"\n or C.verificationStatus ~ "differential"\n )</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> FHIRCommon</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"fhircommon-prevalenceinterval\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">/*\n@description: Returns an interval representing the normalized prevalence period of a given Condition resource.\n@comment: Uses the toInterval and toAbatementInterval functions to determine the widest potential interval from\nonset to abatement as specified in the given Condition.\n*/\ndefine fluent function prevalenceInterval(condition Condition):\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 \n\t if abatementDate is null then\n Interval[start of condition.onset.toInterval(), abatementDate)\n else\n Interval[start of condition.onset.toInterval(), abatementDate]</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> FHIRCommon</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"fhircommon-abatementinterval\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">/*\n@description: Returns an interval representing the normalized Abatement of a given Condition resource.\n@comment: @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\nNOTE: Due to the complexity of determining an interval from a String, this function will throw\na run-time exception if used with a Condition instance that has a String as the abatement value.\n*/\ndefine fluent function abatementInterval(condition Condition):\n if condition.abatement is FHIR.dateTime then\n Interval[FHIRHelpers.ToDateTime(condition.abatement as FHIR.dateTime), FHIRHelpers.ToDateTime(condition.abatement as FHIR.dateTime)]\n else if condition.abatement is FHIR.Period then\n FHIRHelpers.ToInterval(condition.abatement as FHIR.Period)\n else if condition.abatement is FHIR.string then\n Message(null as Interval<DateTime>, true, 'NOT_IMPLEMENTED', 'Error', 'Calculation of an interval from a String value is not supported')\n else if condition.abatement is FHIR.Age then\n Interval[FHIRHelpers.ToDate(Patient.birthDate) + FHIRHelpers.ToQuantity(condition.abatement as FHIR.Age),\n FHIRHelpers.ToDate(Patient.birthDate) + FHIRHelpers.ToQuantity(condition.abatement as FHIR.Age) + 1 year)\n else if condition.abatement is FHIR.Range then\n Interval[FHIRHelpers.ToDate(Patient.birthDate) + FHIRHelpers.ToQuantity((condition.abatement as FHIR.Range).low),\n FHIRHelpers.ToDate(Patient.birthDate) + FHIRHelpers.ToQuantity((condition.abatement as FHIR.Range).high) + 1 year)\n else if condition.abatement is FHIR.boolean then\n Interval[end of condition.onset.toInterval(), condition.recordedDate)\n else \n null</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> FHIRCommon</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"fhircommon-ext\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">/*\n@description: Returns the single extension (if present) on the given element with the specified url.\n@comment: This function uses singleton from to ensure that a run-time exception is thrown if there\nis more than one extension on the given element with the specified url.\n*/\ndefine fluent function ext(element Element, url String):\n singleton from element.exts(url)</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> FHIRCommon</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"fhircommon-exts\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">/*\n@description: Returns any extensions defined on the given element with the specified url.\n*/\ndefine fluent function exts(element Element, url String):\n element.extension E\n where E.url = url\n return E</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n\n \n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> CumulativeMedicationDuration</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"cumulativemedicationduration-medicationrequestperiod\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">/*\nCalculates the Medication Period for a single MedicationRequest.\nMedicationRequest instances provided to this function are expected\nto conform to the [MMEMedicationRequest](http://build.fhir.org/ig/cqframework/opioid-mme-r4/StructureDefinition-mmemedicationrequest.html)\nprofile, which expects:\n* 1 and only 1 dosageInstruction, multiple dosageInstruction elements will result in an error\n* 1 and only 1 doseAndRate, multiple doseAndRate elements will result in an error\n* 1 timing with 1 repeat, missing timing or repeat elements will result in a null\n* frequency, frequencyMax, defaulting to 1\n* period, periodUnit, defaulting to 1 'd'\n* timeOfDay\n* doseQuantity or doseRange, missing doseQuantity and doseRange will result in a null\nNote that MedicationRequest status is not considered by this calculation, as the\nlist of MedicationRequest instances provided to this function should already have\nconsidered appropriate statuses, depending on the use case, typically `completed`.\n\nNOTE: Updated return to use "date from end of boundsPeriod" to ensure result is Interval<Date>\n*/\ndefine 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 as FHIR.Range,\n doseQuantity: doseAndRate.dose as FHIR.SimpleQuantity,\n\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 Period,\n // TODO: this isn't working as expected, convert results in null\n //daysSupply: (convert(R.dispenseRequest.expectedSupplyDuration) to days).value,\n daysSupply: (R.dispenseRequest.expectedSupplyDuration).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."end" is not null then\n Interval[startDate, date from end of boundsPeriod]\n else\n null</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> CumulativeMedicationDuration</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"cumulativemedicationduration-quantity\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">/**********************************************************************/\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</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> CumulativeMedicationDuration</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"cumulativemedicationduration-todaily\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">/*\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\n\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</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n\n \n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> FHIRHelpers</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"fhirhelpers-tostring\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">define function ToString(value string): value.value</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> FHIRHelpers</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"fhirhelpers-tostring\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">define function ToString(value uri): value.value</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> FHIRHelpers</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"fhirhelpers-tostring\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">define function ToString(value ObservationStatus): value.value</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> FHIRHelpers</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"fhirhelpers-tostring\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">define function ToString(value EncounterStatus): value.value</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> FHIRHelpers</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"fhirhelpers-toconcept\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">/*\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 }</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> FHIRHelpers</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"fhirhelpers-tocode\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">/*\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 }</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> FHIRHelpers</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"fhirhelpers-tointerval\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">/*\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]</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> FHIRHelpers</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"fhirhelpers-tostring\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">define function ToString(value MedicationRequestStatus): value.value</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> FHIRHelpers</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"fhirhelpers-tostring\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">define function ToString(value MedicationRequestIntent): value.value</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> FHIRHelpers</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"fhirhelpers-todatetime\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">define function ToDateTime(value dateTime): value.value</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> FHIRHelpers</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"fhirhelpers-todatetime\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">define function ToDateTime(value instant): value.value</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> FHIRHelpers</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"fhirhelpers-todate\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">define function ToDate(value date): value.value</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> FHIRHelpers</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"fhirhelpers-toquantity\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">/*\n@description: Converts the given FHIR [Quantity](https://hl7.org/fhir/datatypes.html#Quantity) \nvalue to a CQL Quantity\n@comment: If the given quantity has a comparator specified, a runtime error is raised. If the given quantity\nhas a system other than UCUM (i.e. `http://unitsofmeasure.org`) or CQL calendar units (i.e. `http://hl7.org/fhirpath/CodeSystem/calendar-units`)\nan error is raised. For UCUM to calendar units, the `ToCalendarUnit` function is used.\n@seealso: ToCalendarUnit\n*/\ndefine function ToQuantity(quantity FHIR.Quantity):\n case\n when quantity is null then null\n when quantity.value is null then null\n when quantity.comparator is not null then\n Message(null, true, 'FHIRHelpers.ToQuantity.ComparatorQuantityNotSupported', 'Error', 'FHIR Quantity value has a comparator and cannot be converted to a System.Quantity value.')\n when quantity.system is null or quantity.system.value = 'http://unitsofmeasure.org'\n or quantity.system.value = 'http://hl7.org/fhirpath/CodeSystem/calendar-units' then\n System.Quantity { value: quantity.value.value, unit: ToCalendarUnit(Coalesce(quantity.code.value, quantity.unit.value, '1')) }\n else\n Message(null, true, 'FHIRHelpers.ToQuantity.InvalidFHIRQuantity', 'Error', 'Invalid FHIR Quantity code: ' & quantity.unit.value & ' (' & quantity.system.value & '|' & quantity.code.value & ')')\n end</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> FHIRHelpers</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"fhirhelpers-tocalendarunit\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">/*\n@description: Converts a UCUM definite duration unit to a CQL calendar duration\nunit using conversions specified in the [quantities](https://cql.hl7.org/02-authorsguide.html#quantities) \ntopic of the CQL specification.\n@comment: Note that for durations above days (or weeks), the conversion is understood to be approximate\n*/\ndefine function ToCalendarUnit(unit System.String):\n case unit\n when 'ms' then 'millisecond'\n when 's' then 'second'\n when 'min' then 'minute'\n when 'h' then 'hour'\n when 'd' then 'day'\n when 'wk' then 'week'\n when 'mo' then 'month'\n when 'a' then 'year'\n else unit\n end</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> FHIRHelpers</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"fhirhelpers-tostring\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">define function ToString(value ServiceRequestStatus): value.value</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> FHIRHelpers</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"fhirhelpers-tostring\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">define function ToString(value ServiceRequestIntent): value.value</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> FHIRHelpers</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"fhirhelpers-tostring\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">define function ToString(value ProcedureStatus): value.value</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> FHIRHelpers</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"fhirhelpers-todecimal\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">define function ToDecimal(value decimal): value.value</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> FHIRHelpers</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"fhirhelpers-tostring\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">define function ToString(value UnitsOfTime): value.value</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> FHIRHelpers</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"fhirhelpers-tointerval\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">/*\n@description: Converts the given FHIR [Range](https://hl7.org/fhir/datatypes.html#Range) value to a CQL Interval of Quantity\n*/\ndefine function ToInterval(range FHIR.Range):\n if range is null then\n null\n else\n Interval[ToQuantity(range.low), ToQuantity(range.high)]</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> FHIRHelpers</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"fhirhelpers-tointeger\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">define function ToInteger(value integer): value.value</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n\n \n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> Status</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"status-islaboratorytestperformed\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">//Laboratory Test, Performed\ndefine fluent function isLaboratoryTestPerformed(Obs List<LaboratoryResultObservation>):\n Obs O\n where O.status in { 'final', 'amended', 'corrected' }</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> Status</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"status-isencounterperformed\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">//Encounter, Performed\n//General usage unless required otherwise by measure intent (e.g., follow-up encounters)\ndefine fluent function isEncounterPerformed(Enc List<FHIR.Encounter>):\n Enc E\n where E.status = 'finished'</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> Status</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"status-ismedicationorder\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">//Medication, Order\ndefine fluent function isMedicationOrder(MedicationRequest List<FHIR.MedicationRequest>):\n MedicationRequest M\n where M.status in { 'active', 'completed' }\n and M.intent in {'order', 'original-order', 'reflex-order', 'filler-order', 'instance-order'}</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> Status</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"status-isassessmentperformed\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">//Assessment, Performed\ndefine fluent function isAssessmentPerformed(Obs List<ObservationScreeningAssessment>):\n Obs O\n where O.status in { 'final', 'amended', 'corrected' }</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> Status</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"status-isinterventionorder\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">//Intervention, Order\ndefine fluent function isInterventionOrder(ServiceRequest List<FHIR.ServiceRequest>):\n ServiceRequest S\n where S.status in { 'active', 'completed' }\n and S.intent in {'order', 'original-order', 'reflex-order', 'filler-order', 'instance-order'}</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n\n \n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> Status</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"status-isinterventionperformed\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">//Intervention, Performed\ndefine fluent function isInterventionPerformed(Proc List<FHIR.Procedure>):\n Proc P\n where P.status ~ 'completed'</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> Status</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"status-ismedicationactive\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">//Medication, Active\ndefine fluent function isMedicationActive(MedicationRequest List<FHIR.MedicationRequest>):\n MedicationRequest M\n where M.status = 'active'\n and M.intent in {'order', 'original-order', 'reflex-order', 'filler-order', 'instance-order'}</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n\n \n\n\n\n\n \n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> Antibiotic</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"antibiotic-encounter-with-comorbid-condition-history\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">define function "Encounter with Comorbid Condition History"(episodes List<Encounter>, comorbidConditions List<Condition>):\n episodes episode\n with comorbidConditions comcondition\n such that date from start of comcondition.prevalenceInterval() during Interval[date from start of episode.period - 1 year, date from start of episode.period]\n return episode</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> Antibiotic</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"antibiotic-encounter-with-antibiotic-medication-history\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">define function "Encounter with Antibiotic Medication History"(episodes List<Encounter>, antibioticMedications List<MedicationRequest>):\n episodes episode\n with antibioticMedications ActiveMedication\n such that ActiveMedication.medicationRequestPeriod() overlaps day of Interval[date from start of episode.period - 30 days, date from start of episode.period - 1 day]</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> Antibiotic</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"antibiotic-encounter-with-competing-diagnosis-history\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">define function "Encounter with Competing Diagnosis History"(episodes List<Encounter>, competingConditions List<Condition>):\n episodes episode\n with competingConditions competcondition\n such that competcondition.prevalenceInterval() starts 3 days or less on or after day of start of episode.period\n return episode</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n\n\n \n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> USCoreCommon</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"uscorecommon-sex\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">/*\n@description: Returns the sex element as defined for the USCore patient profile\n*/\ndefine fluent function sex(patient Patient):\n patient.ext('http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex').value as FHIR.code</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> USCoreCommon</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"uscorecommon-ethnicity\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">define fluent function ethnicity(patient Patient):\n (patient.ext('http://hl7.org/fhir/us/core/StructureDefinition/us-core-ethnicity')) E\n return {\n ombCategory: E.ext('ombCategory').value as FHIR.Coding,\n detailed: (E.exts('detailed')) d return d.value as FHIR.Coding,\n text: E.ext('text').value as FHIR.string\n }</code></pre>\n </td>\n\n</tr>\n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n\n \n\n\n<tr>\n <th scope=\"row\" rowspan=\"2\" class=\"row-header\">\n Logic Definition\n </th>\n\n <td class=\"content-container\"><em>Library Name:</em> USCoreCommon</td>\n\n</tr>\n<tr>\n\n <td>\n \n \n \n \n <a name=\"uscorecommon-race\"> </a>\n \n <pre style=\"border: none;\" class=\"content-container highlight language-cql\"><code class=\"language-cql\">define fluent function race(patient Patient):\n (patient.ext('http://hl7.org/fhir/us/core/StructureDefinition/us-core-race')) E\n return {\n ombCategory: (E.exts('ombCategory')) o return o.value as FHIR.Coding,\n detailed: (E.exts('detailed')) d return d.value as FHIR.Coding,\n text: E.ext('text').value as FHIR.string\n }</code></pre>\n </td>\n\n</tr>\n\n\n\n\n\n \n \n\n\n <tr>\n\n\n<th colspan=\"2\" scope=\"row\" class=\"row-header\"><a name=\"terminology\"> </a>Terminology</th>\n\n\n</tr>\n \n \n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n\n<tr>\n \n \n \n\n<th scope=\"row\" class=\"row-header\">Code System</th>\n\n\n \n <td class=\"content-container\">\n \n <em>Description</em>: Code system SNOMEDCT\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <a href=\"http://hl7.org/fhir/R4/codesystem-snomedct.html\">SNOMED CT (all versions)</a>\n <br/>\n <em>Canonical URL</em>: <tt>http://snomed.info/sct</tt>\n \n </td>\n</tr>\n \n\n\n<tr>\n \n \n \n\n<th scope=\"row\" class=\"row-header\">Code System</th>\n\n\n \n <td class=\"content-container\">\n \n <em>Description</em>: Code system CPT\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <a href=\"http://terminology.hl7.org/6.5.0/CodeSystem-CPT.html\">Current Procedural Terminology (CPT®)</a>\n <br/>\n <em>Canonical URL</em>: <tt>http://www.ama-assn.org/go/cpt</tt>\n \n </td>\n</tr>\n \n\n\n<tr>\n \n \n \n\n<th scope=\"row\" class=\"row-header\">Code System</th>\n\n\n \n <td class=\"content-container\">\n \n <em>Description</em>: Code system ConditionVerificationStatusCodes\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <a href=\"http://terminology.hl7.org/7.1.0/CodeSystem-condition-ver-status.html\">ConditionVerificationStatus</a>\n <br/>\n <em>Canonical URL</em>: <tt>http://terminology.hl7.org/CodeSystem/condition-ver-status</tt>\n \n </td>\n</tr>\n \n\n\n<tr>\n \n \n \n\n<th scope=\"row\" class=\"row-header\">Code System</th>\n\n\n \n <td class=\"content-container\">\n \n <em>Description</em>: Code system ConditionClinicalStatusCodes\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <a href=\"http://terminology.hl7.org/7.1.0/CodeSystem-condition-clinical.html\">Condition Clinical Status Codes</a>\n <br/>\n <em>Canonical URL</em>: <tt>http://terminology.hl7.org/CodeSystem/condition-clinical</tt>\n \n </td>\n</tr>\n \n\n\n<tr>\n \n \n \n\n<th scope=\"row\" class=\"row-header\">Code System</th>\n\n\n \n <td class=\"content-container\">\n \n <em>Description</em>: Code system LOINC\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <a href=\"http://terminology.hl7.org/6.5.0/CodeSystem-v3-loinc.html\">Logical Observation Identifiers, Names and Codes (LOINC)</a>\n <br/>\n <em>Canonical URL</em>: <tt>http://loinc.org</tt>\n \n </td>\n</tr>\n \n\n\n<tr>\n \n \n\n<th scope=\"row\" class=\"row-header\">Value Set</th>\n\n\n \n \n <td class=\"content-container\">\n \n <em>Description</em>: Value set Group A Streptococcus Test\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.198.12.1012/expansion\">Group A Streptococcus Test</a>\n <br/>\n <em>Canonical URL</em>: <tt>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.198.12.1012</tt>\n \n </td>\n</tr>\n \n\n\n<tr>\n \n \n\n<th scope=\"row\" class=\"row-header\">Value Set</th>\n\n\n \n \n <td class=\"content-container\">\n \n <em>Description</em>: Value set Emergency Department Evaluation and Management Visit\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.101.12.1010/expansion\">Emergency Department Evaluation and Management Visit</a>\n <br/>\n <em>Canonical URL</em>: <tt>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1010</tt>\n \n </td>\n</tr>\n \n\n\n<tr>\n \n \n\n<th scope=\"row\" class=\"row-header\">Value Set</th>\n\n\n \n \n <td class=\"content-container\">\n \n <em>Description</em>: Value set Home Healthcare Services\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.101.12.1016/expansion\">Home Healthcare Services</a>\n <br/>\n <em>Canonical URL</em>: <tt>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1016</tt>\n \n </td>\n</tr>\n \n\n\n<tr>\n \n \n\n<th scope=\"row\" class=\"row-header\">Value Set</th>\n\n\n \n \n <td class=\"content-container\">\n \n <em>Description</em>: Value set Medical Disability Exam\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.101.12.1073/expansion\">Medical Disability Exam</a>\n <br/>\n <em>Canonical URL</em>: <tt>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1073</tt>\n \n </td>\n</tr>\n \n\n\n<tr>\n \n \n\n<th scope=\"row\" class=\"row-header\">Value Set</th>\n\n\n \n \n <td class=\"content-container\">\n \n <em>Description</em>: Value set Office Visit\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.101.12.1001/expansion\">Office Visit</a>\n <br/>\n <em>Canonical URL</em>: <tt>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1001</tt>\n \n </td>\n</tr>\n \n\n\n<tr>\n \n \n\n<th scope=\"row\" class=\"row-header\">Value Set</th>\n\n\n \n \n <td class=\"content-container\">\n \n <em>Description</em>: Value set Telephone Visits\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.101.12.1080/expansion\">Telephone Visits</a>\n <br/>\n <em>Canonical URL</em>: <tt>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1080</tt>\n \n </td>\n</tr>\n \n\n\n<tr>\n \n \n\n<th scope=\"row\" class=\"row-header\">Value Set</th>\n\n\n \n \n <td class=\"content-container\">\n \n <em>Description</em>: Value set Virtual Encounter\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.101.12.1089/expansion\">Virtual Encounter</a>\n <br/>\n <em>Canonical URL</em>: <tt>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1089</tt>\n \n </td>\n</tr>\n \n\n\n<tr>\n \n \n\n<th scope=\"row\" class=\"row-header\">Value Set</th>\n\n\n \n \n <td class=\"content-container\">\n \n <em>Description</em>: Value set Outpatient Consultation\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.101.12.1008/expansion\">Outpatient Consultation</a>\n <br/>\n <em>Canonical URL</em>: <tt>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1008</tt>\n \n </td>\n</tr>\n \n\n\n<tr>\n \n \n\n<th scope=\"row\" class=\"row-header\">Value Set</th>\n\n\n \n \n <td class=\"content-container\">\n \n <em>Description</em>: Value set Preventive Care Services Established Office Visit, 18 and Up\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.101.12.1025/expansion\">Preventive Care Services Established Office Visit, 18 and Up</a>\n <br/>\n <em>Canonical URL</em>: <tt>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1025</tt>\n \n </td>\n</tr>\n \n\n\n<tr>\n \n \n\n<th scope=\"row\" class=\"row-header\">Value Set</th>\n\n\n \n \n <td class=\"content-container\">\n \n <em>Description</em>: Value set Preventive Care Services Group Counseling\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.101.12.1027/expansion\">Preventive Care Services Group Counseling</a>\n <br/>\n <em>Canonical URL</em>: <tt>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1027</tt>\n \n </td>\n</tr>\n \n\n\n<tr>\n \n \n\n<th scope=\"row\" class=\"row-header\">Value Set</th>\n\n\n \n \n <td class=\"content-container\">\n \n <em>Description</em>: Value set Preventive Care Services, Initial Office Visit, 0 to 17\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.101.12.1022/expansion\">Preventive Care Services, Initial Office Visit, 0 to 17</a>\n <br/>\n <em>Canonical URL</em>: <tt>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1022</tt>\n \n </td>\n</tr>\n \n\n\n<tr>\n \n \n\n<th scope=\"row\" class=\"row-header\">Value Set</th>\n\n\n \n \n <td class=\"content-container\">\n \n <em>Description</em>: Value set Preventive Care Services Individual Counseling\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.101.12.1026/expansion\">Preventive Care Services Individual Counseling</a>\n <br/>\n <em>Canonical URL</em>: <tt>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1026</tt>\n \n </td>\n</tr>\n \n\n\n<tr>\n \n \n\n<th scope=\"row\" class=\"row-header\">Value Set</th>\n\n\n \n \n <td class=\"content-container\">\n \n <em>Description</em>: Value set Preventive Care Services Initial Office Visit, 18 and Up\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.101.12.1023/expansion\">Preventive Care Services Initial Office Visit, 18 and Up</a>\n <br/>\n <em>Canonical URL</em>: <tt>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1023</tt>\n \n </td>\n</tr>\n \n\n\n<tr>\n \n \n\n<th scope=\"row\" class=\"row-header\">Value Set</th>\n\n\n \n \n <td class=\"content-container\">\n \n <em>Description</em>: Value set Preventive Care, Established Office Visit, 0 to 17\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.101.12.1024/expansion\">Preventive Care, Established Office Visit, 0 to 17</a>\n <br/>\n <em>Canonical URL</em>: <tt>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1024</tt>\n \n </td>\n</tr>\n \n\n\n<tr>\n \n \n\n<th scope=\"row\" class=\"row-header\">Value Set</th>\n\n\n \n \n <td class=\"content-container\">\n \n <em>Description</em>: Value set Antibiotic Medications for Pharyngitis\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.196.12.1001/expansion\">Antibiotic Medications for Pharyngitis</a>\n <br/>\n <em>Canonical URL</em>: <tt>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.196.12.1001</tt>\n \n </td>\n</tr>\n \n\n\n<tr>\n \n \n\n<th scope=\"row\" class=\"row-header\">Value Set</th>\n\n\n \n \n <td class=\"content-container\">\n \n <em>Description</em>: Value set Acute Pharyngitis\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.102.12.1011/expansion\">Acute Pharyngitis</a>\n <br/>\n <em>Canonical URL</em>: <tt>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.102.12.1011</tt>\n \n </td>\n</tr>\n \n\n\n<tr>\n \n \n\n<th scope=\"row\" class=\"row-header\">Value Set</th>\n\n\n \n \n <td class=\"content-container\">\n \n <em>Description</em>: Value set Acute Tonsillitis\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.102.12.1012/expansion\">Acute Tonsillitis</a>\n <br/>\n <em>Canonical URL</em>: <tt>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.102.12.1012</tt>\n \n </td>\n</tr>\n \n\n\n<tr>\n \n \n\n<th scope=\"row\" class=\"row-header\">Value Set</th>\n\n\n \n \n <td class=\"content-container\">\n \n <em>Description</em>: Value set Payer Type\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.114222.4.11.3591/expansion\">Payer Type</a>\n <br/>\n <em>Canonical URL</em>: <tt>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.114222.4.11.3591</tt>\n \n </td>\n</tr>\n \n\n\n<tr>\n \n \n\n<th scope=\"row\" class=\"row-header\">Value Set</th>\n\n\n \n \n <td class=\"content-container\">\n \n <em>Description</em>: Value set Encounter Inpatient\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.666.5.307/expansion\">Encounter Inpatient</a>\n <br/>\n <em>Canonical URL</em>: <tt>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.666.5.307</tt>\n \n </td>\n</tr>\n \n\n\n<tr>\n \n \n\n<th scope=\"row\" class=\"row-header\">Value Set</th>\n\n\n \n \n <td class=\"content-container\">\n \n <em>Description</em>: Value set Hospice Encounter\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.1003/expansion\">Hospice Encounter</a>\n <br/>\n <em>Canonical URL</em>: <tt>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.1003</tt>\n \n </td>\n</tr>\n \n\n\n<tr>\n \n \n\n<th scope=\"row\" class=\"row-header\">Value Set</th>\n\n\n \n \n <td class=\"content-container\">\n \n <em>Description</em>: Value set Hospice Care Ambulatory\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.526.3.1584/expansion\">Hospice Care Ambulatory</a>\n <br/>\n <em>Canonical URL</em>: <tt>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.526.3.1584</tt>\n \n </td>\n</tr>\n \n\n\n<tr>\n \n \n\n<th scope=\"row\" class=\"row-header\">Value Set</th>\n\n\n \n \n <td class=\"content-container\">\n \n <em>Description</em>: Value set Hospice Diagnosis\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.1165/expansion\">Hospice Diagnosis</a>\n <br/>\n <em>Canonical URL</em>: <tt>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.1165</tt>\n \n </td>\n</tr>\n \n\n\n<tr>\n \n \n\n<th scope=\"row\" class=\"row-header\">Value Set</th>\n\n\n \n \n <td class=\"content-container\">\n \n <em>Description</em>: Value set Comorbid Conditions for Respiratory Conditions\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.102.12.1025/expansion\">Comorbid Conditions for Respiratory Conditions</a>\n <br/>\n <em>Canonical URL</em>: <tt>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.102.12.1025</tt>\n \n </td>\n</tr>\n \n\n\n<tr>\n \n \n\n<th scope=\"row\" class=\"row-header\">Value Set</th>\n\n\n \n \n <td class=\"content-container\">\n \n <em>Description</em>: Value set Competing Conditions for Respiratory Conditions\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.102.12.1017/expansion\">Competing Conditions for Respiratory Conditions</a>\n <br/>\n <em>Canonical URL</em>: <tt>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.102.12.1017</tt>\n \n </td>\n</tr>\n \n\n\n \n <tr>\n <th scope=\"row\" class=\"row-header\">Direct Reference Code</th>\n <td class=\"content-container\">\n \n <em>Display</em>: Male (finding)\n <br/>\n \n <em>Code</em>: 248153007\n <br/>\n <em>System</em>: <tt>http://snomed.info/sct</tt>\n </td>\n </tr>\n\n <tr>\n <th scope=\"row\" class=\"row-header\">Direct Reference Code</th>\n <td class=\"content-container\">\n \n <em>Display</em>: Female (finding)\n <br/>\n \n <em>Code</em>: 248152002\n <br/>\n <em>System</em>: <tt>http://snomed.info/sct</tt>\n </td>\n </tr>\n\n <tr>\n <th scope=\"row\" class=\"row-header\">Direct Reference Code</th>\n <td class=\"content-container\">\n \n <em>Display</em>: Unlisted preventive medicine service\n <br/>\n \n <em>Code</em>: 99429\n <br/>\n <em>System</em>: <tt>http://www.ama-assn.org/go/cpt</tt>\n </td>\n </tr>\n\n <tr>\n <th scope=\"row\" class=\"row-header\">Direct Reference Code</th>\n <td class=\"content-container\">\n \n <em>Code</em>: confirmed\n <br/>\n <em>System</em>: <tt>http://terminology.hl7.org/CodeSystem/condition-ver-status</tt>\n </td>\n </tr>\n\n <tr>\n <th scope=\"row\" class=\"row-header\">Direct Reference Code</th>\n <td class=\"content-container\">\n \n <em>Code</em>: unconfirmed\n <br/>\n <em>System</em>: <tt>http://terminology.hl7.org/CodeSystem/condition-ver-status</tt>\n </td>\n </tr>\n\n <tr>\n <th scope=\"row\" class=\"row-header\">Direct Reference Code</th>\n <td class=\"content-container\">\n \n <em>Code</em>: provisional\n <br/>\n <em>System</em>: <tt>http://terminology.hl7.org/CodeSystem/condition-ver-status</tt>\n </td>\n </tr>\n\n <tr>\n <th scope=\"row\" class=\"row-header\">Direct Reference Code</th>\n <td class=\"content-container\">\n \n <em>Code</em>: differential\n <br/>\n <em>System</em>: <tt>http://terminology.hl7.org/CodeSystem/condition-ver-status</tt>\n </td>\n </tr>\n\n <tr>\n <th scope=\"row\" class=\"row-header\">Direct Reference Code</th>\n <td class=\"content-container\">\n \n <em>Code</em>: active\n <br/>\n <em>System</em>: <tt>http://terminology.hl7.org/CodeSystem/condition-clinical</tt>\n </td>\n </tr>\n\n <tr>\n <th scope=\"row\" class=\"row-header\">Direct Reference Code</th>\n <td class=\"content-container\">\n \n <em>Code</em>: recurrence\n <br/>\n <em>System</em>: <tt>http://terminology.hl7.org/CodeSystem/condition-clinical</tt>\n </td>\n </tr>\n\n <tr>\n <th scope=\"row\" class=\"row-header\">Direct Reference Code</th>\n <td class=\"content-container\">\n \n <em>Code</em>: relapse\n <br/>\n <em>System</em>: <tt>http://terminology.hl7.org/CodeSystem/condition-clinical</tt>\n </td>\n </tr>\n\n <tr>\n <th scope=\"row\" class=\"row-header\">Direct Reference Code</th>\n <td class=\"content-container\">\n \n <em>Display</em>: Discharge to home for hospice care (procedure)\n <br/>\n \n <em>Code</em>: 428361000124107\n <br/>\n <em>System</em>: <tt>http://snomed.info/sct</tt>\n </td>\n </tr>\n\n <tr>\n <th scope=\"row\" class=\"row-header\">Direct Reference Code</th>\n <td class=\"content-container\">\n \n <em>Display</em>: Discharge to healthcare facility for hospice care (procedure)\n <br/>\n \n <em>Code</em>: 428371000124100\n <br/>\n <em>System</em>: <tt>http://snomed.info/sct</tt>\n </td>\n </tr>\n\n <tr>\n <th scope=\"row\" class=\"row-header\">Direct Reference Code</th>\n <td class=\"content-container\">\n \n <em>Display</em>: Yes (qualifier value)\n <br/>\n \n <em>Code</em>: 373066001\n <br/>\n <em>System</em>: <tt>http://snomed.info/sct</tt>\n </td>\n </tr>\n\n <tr>\n <th scope=\"row\" class=\"row-header\">Direct Reference Code</th>\n <td class=\"content-container\">\n \n <em>Display</em>: Hospice care [Minimum Data Set]\n <br/>\n \n <em>Code</em>: 45755-6\n <br/>\n <em>System</em>: <tt>http://loinc.org</tt>\n </td>\n </tr>\n\n \n \n\n\n <tr>\n\n\n<th colspan=\"2\" scope=\"row\" class=\"row-header\"><a name=\"dependencies\"> </a>Dependencies</th>\n\n\n</tr>\n \n \n \n\n\n<tr>\n \n\n<th scope=\"row\" class=\"row-header\">Dependency</th>\n\n\n <td class=\"content-container\">\n \n <em>Description</em>: USQualityCore model information\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <code>https://madie.cms.gov/Library/USQualityCore-ModelInfo|0.1.0-cibuild</code>\n <br/>\n <em>Canonical URL</em>: <tt>https://madie.cms.gov/Library/USQualityCore-ModelInfo|0.1.0-cibuild</tt>\n \n </td>\n</tr>\n \n\n\n<tr>\n \n\n<th scope=\"row\" class=\"row-header\">Dependency</th>\n\n\n <td class=\"content-container\">\n \n <em>Description</em>: USCore model information\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <a href=\"http://hl7.org/fhir/us/cql/2026May/Library-USCore-ModelInfo.html\">http://hl7.org/fhir/us/cql/Library/USCore-ModelInfo|6.1.0-derived</a>\n <br/>\n <em>Canonical URL</em>: <tt>http://hl7.org/fhir/us/cql/Library/USCore-ModelInfo|6.1.0-derived</tt>\n \n </td>\n</tr>\n \n\n\n<tr>\n \n\n<th scope=\"row\" class=\"row-header\">Dependency</th>\n\n\n <td class=\"content-container\">\n \n <em>Description</em>: FHIR model information\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <a href=\"http://hl7.org/fhir/uv/cql/STU2/Library-FHIR-ModelInfo.html\">http://hl7.org/fhir/uv/cql/Library/FHIR-ModelInfo|4.0.1</a>\n <br/>\n <em>Canonical URL</em>: <tt>http://hl7.org/fhir/uv/cql/Library/FHIR-ModelInfo|4.0.1</tt>\n \n </td>\n</tr>\n \n\n\n<tr>\n \n\n<th scope=\"row\" class=\"row-header\">Dependency</th>\n\n\n <td class=\"content-container\">\n \n <em>Description</em>: Library SDE\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <a href=\"Library-SupplementalDataElements.html\">SupplementalDataElements</a> version: 6.1.000\n <br/>\n <em>Canonical URL</em>: <tt>https://madie.cms.gov/Library/SupplementalDataElements|6.1.000</tt>\n \n </td>\n</tr>\n \n\n\n<tr>\n \n\n<th scope=\"row\" class=\"row-header\">Dependency</th>\n\n\n <td class=\"content-container\">\n \n <em>Description</em>: Library FHIRHelpers\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <a href=\"http://hl7.org/fhir/uv/cql/STU2/Library-FHIRHelpers.html\">http://hl7.org/fhir/uv/cql/Library/FHIRHelpers|4.0.1</a>\n <br/>\n <em>Canonical URL</em>: <tt>http://hl7.org/fhir/uv/cql/Library/FHIRHelpers|4.0.1</tt>\n \n </td>\n</tr>\n \n\n\n<tr>\n \n\n<th scope=\"row\" class=\"row-header\">Dependency</th>\n\n\n <td class=\"content-container\">\n \n <em>Description</em>: Library USCommon\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <a href=\"http://hl7.org/fhir/us/cql/2026May/Library-USCoreCommon.html\">http://hl7.org/fhir/us/cql/Library/USCoreCommon|2.0.0-ballot</a>\n <br/>\n <em>Canonical URL</em>: <tt>http://hl7.org/fhir/us/cql/Library/USCoreCommon|2.0.0-ballot</tt>\n \n </td>\n</tr>\n \n\n\n<tr>\n \n\n<th scope=\"row\" class=\"row-header\">Dependency</th>\n\n\n <td class=\"content-container\">\n \n <em>Description</em>: Library FHIRCommon\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <a href=\"http://hl7.org/fhir/uv/cql/STU2/Library-FHIRCommon.html\">http://hl7.org/fhir/uv/cql/Library/FHIRCommon|2.0.0</a>\n <br/>\n <em>Canonical URL</em>: <tt>http://hl7.org/fhir/uv/cql/Library/FHIRCommon|2.0.0</tt>\n \n </td>\n</tr>\n \n\n\n<tr>\n \n\n<th scope=\"row\" class=\"row-header\">Dependency</th>\n\n\n <td class=\"content-container\">\n \n <em>Description</em>: Library Status\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <a href=\"Library-Status.html\">Status</a> version: 2.1.000\n <br/>\n <em>Canonical URL</em>: <tt>https://madie.cms.gov/Library/Status|2.1.000</tt>\n \n </td>\n</tr>\n \n\n\n<tr>\n \n\n<th scope=\"row\" class=\"row-header\">Dependency</th>\n\n\n <td class=\"content-container\">\n \n <em>Description</em>: Library Hospice\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <a href=\"Library-Hospice.html\">Hospice</a> version: 7.1.000\n <br/>\n <em>Canonical URL</em>: <tt>https://madie.cms.gov/Library/Hospice|7.1.000</tt>\n \n </td>\n</tr>\n \n\n\n<tr>\n \n\n<th scope=\"row\" class=\"row-header\">Dependency</th>\n\n\n <td class=\"content-container\">\n \n <em>Description</em>: Library Antibiotic\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <a href=\"Library-Antibiotic.html\">Antibiotic</a> version: 2.1.000\n <br/>\n <em>Canonical URL</em>: <tt>https://madie.cms.gov/Library/Antibiotic|2.1.000</tt>\n \n </td>\n</tr>\n \n\n\n<tr>\n \n\n<th scope=\"row\" class=\"row-header\">Dependency</th>\n\n\n <td class=\"content-container\">\n \n <em>Description</em>: Library CMD\n \n <br/>\n \n \n \n \n \n \n <em>Resource</em>: <a href=\"http://hl7.org/fhir/us/cql/2026May/Library-CumulativeMedicationDuration.html\">http://hl7.org/fhir/us/cql/Library/CumulativeMedicationDuration|2.0.0-ballot</a>\n <br/>\n <em>Canonical URL</em>: <tt>http://hl7.org/fhir/us/cql/Library/CumulativeMedicationDuration|2.0.0-ballot</tt>\n \n </td>\n</tr>\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n\n \n \n\n\n\n\n\n\n <tr>\n\n\n<th colspan=\"2\" scope=\"row\" class=\"row-header\"><a name=\"data-requirements\"> </a>Data Requirements</th>\n\n\n</tr>\n \n \n \n<tr>\n <th scope=\"row\" class=\"row-header\">Data Requirement</th>\n <td class=\"content-container\">\n <em>Type</em>: Patient\n <br/>\n \n <em>Profile(s)</em>: \n \n <code>http://fhir.org/guides/astp/us-quality-core/StructureDefinition/us-quality-core-patient</code>\n <br/> \n \n \n \n <em>Must Support Elements</em>: ombCategory, detailed, text\n <br/>\n \n \n </td>\n</tr>\n\n<tr>\n <th scope=\"row\" class=\"row-header\">Data Requirement</th>\n <td class=\"content-container\">\n <em>Type</em>: Observation\n <br/>\n \n <em>Profile(s)</em>: \n \n <code>http://fhir.org/guides/astp/us-quality-core/StructureDefinition/us-quality-core-observation-lab</code>\n <br/> \n \n \n \n <em>Must Support Elements</em>: code, value, status\n <br/>\n \n \n <em>Code Filter(s)</em>: \n <br/>\n \n \n <span class=\"tab-one\"><em>Path</em>: code</span>\n <br/>\n \n \n \n <span class=\"tab-one\"><em>ValueSet</em>:</span> <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.198.12.1012/expansion\">Group A Streptococcus Test</a>\n <br/> \n \n \n \n \n </td>\n</tr>\n\n<tr>\n <th scope=\"row\" class=\"row-header\">Data Requirement</th>\n <td class=\"content-container\">\n <em>Type</em>: Observation\n <br/>\n \n <em>Profile(s)</em>: \n \n <code>http://fhir.org/guides/astp/us-quality-core/StructureDefinition/us-quality-core-observation-lab</code>\n <br/> \n \n \n \n <em>Must Support Elements</em>: code, value, effective, status\n <br/>\n \n \n <em>Code Filter(s)</em>: \n <br/>\n \n \n <span class=\"tab-one\"><em>Path</em>: code</span>\n <br/>\n \n \n \n <span class=\"tab-one\"><em>ValueSet</em>:</span> <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.198.12.1012/expansion\">Group A Streptococcus Test</a>\n <br/> \n \n \n \n \n </td>\n</tr>\n\n<tr>\n <th scope=\"row\" class=\"row-header\">Data Requirement</th>\n <td class=\"content-container\">\n <em>Type</em>: Encounter\n <br/>\n \n <em>Profile(s)</em>: \n \n <a href=\"http://hl7.org/fhir/R4/encounter.html\">Encounter</a>\n <br/> \n \n \n \n <em>Must Support Elements</em>: type, status, period\n <br/>\n \n \n </td>\n</tr>\n\n<tr>\n <th scope=\"row\" class=\"row-header\">Data Requirement</th>\n <td class=\"content-container\">\n <em>Type</em>: Encounter\n <br/>\n \n <em>Profile(s)</em>: \n \n <a href=\"http://hl7.org/fhir/R4/encounter.html\">Encounter</a>\n <br/> \n \n \n \n <em>Must Support Elements</em>: type, status, period\n <br/>\n \n \n <em>Code Filter(s)</em>: \n <br/>\n \n \n <span class=\"tab-one\"><em>Path</em>: type</span>\n <br/>\n \n \n \n <span class=\"tab-one\"><em>ValueSet</em>:</span> <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.101.12.1010/expansion\">Emergency Department Evaluation and Management Visit</a>\n <br/> \n \n \n \n \n </td>\n</tr>\n\n<tr>\n <th scope=\"row\" class=\"row-header\">Data Requirement</th>\n <td class=\"content-container\">\n <em>Type</em>: Encounter\n <br/>\n \n <em>Profile(s)</em>: \n \n <a href=\"http://hl7.org/fhir/R4/encounter.html\">Encounter</a>\n <br/> \n \n \n \n <em>Must Support Elements</em>: type, status, period\n <br/>\n \n \n <em>Code Filter(s)</em>: \n <br/>\n \n \n <span class=\"tab-one\"><em>Path</em>: type</span>\n <br/>\n \n \n \n <span class=\"tab-one\"><em>ValueSet</em>:</span> <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.101.12.1016/expansion\">Home Healthcare Services</a>\n <br/> \n \n \n \n \n </td>\n</tr>\n\n<tr>\n <th scope=\"row\" class=\"row-header\">Data Requirement</th>\n <td class=\"content-container\">\n <em>Type</em>: Encounter\n <br/>\n \n <em>Profile(s)</em>: \n \n <a href=\"http://hl7.org/fhir/R4/encounter.html\">Encounter</a>\n <br/> \n \n \n \n <em>Must Support Elements</em>: type, status, period\n <br/>\n \n \n <em>Code Filter(s)</em>: \n <br/>\n \n \n <span class=\"tab-one\"><em>Path</em>: type</span>\n <br/>\n \n \n \n <span class=\"tab-one\"><em>ValueSet</em>:</span> <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.101.12.1073/expansion\">Medical Disability Exam</a>\n <br/> \n \n \n \n \n </td>\n</tr>\n\n<tr>\n <th scope=\"row\" class=\"row-header\">Data Requirement</th>\n <td class=\"content-container\">\n <em>Type</em>: Encounter\n <br/>\n \n <em>Profile(s)</em>: \n \n <a href=\"http://hl7.org/fhir/R4/encounter.html\">Encounter</a>\n <br/> \n \n \n \n <em>Must Support Elements</em>: type, status, period\n <br/>\n \n \n <em>Code Filter(s)</em>: \n <br/>\n \n \n <span class=\"tab-one\"><em>Path</em>: type</span>\n <br/>\n \n \n \n <span class=\"tab-one\"><em>ValueSet</em>:</span> <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.101.12.1001/expansion\">Office Visit</a>\n <br/> \n \n \n \n \n </td>\n</tr>\n\n<tr>\n <th scope=\"row\" class=\"row-header\">Data Requirement</th>\n <td class=\"content-container\">\n <em>Type</em>: Encounter\n <br/>\n \n <em>Profile(s)</em>: \n \n <a href=\"http://hl7.org/fhir/R4/encounter.html\">Encounter</a>\n <br/> \n \n \n \n <em>Must Support Elements</em>: type, status, period\n <br/>\n \n \n <em>Code Filter(s)</em>: \n <br/>\n \n \n <span class=\"tab-one\"><em>Path</em>: type</span>\n <br/>\n \n \n \n <span class=\"tab-one\"><em>ValueSet</em>:</span> <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.101.12.1080/expansion\">Telephone Visits</a>\n <br/> \n \n \n \n \n </td>\n</tr>\n\n<tr>\n <th scope=\"row\" class=\"row-header\">Data Requirement</th>\n <td class=\"content-container\">\n <em>Type</em>: Encounter\n <br/>\n \n <em>Profile(s)</em>: \n \n <a href=\"http://hl7.org/fhir/R4/encounter.html\">Encounter</a>\n <br/> \n \n \n \n <em>Must Support Elements</em>: type, status, period\n <br/>\n \n \n <em>Code Filter(s)</em>: \n <br/>\n \n \n <span class=\"tab-one\"><em>Path</em>: type</span>\n <br/>\n \n \n \n <span class=\"tab-one\"><em>ValueSet</em>:</span> <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.101.12.1089/expansion\">Virtual Encounter</a>\n <br/> \n \n \n \n \n </td>\n</tr>\n\n<tr>\n <th scope=\"row\" class=\"row-header\">Data Requirement</th>\n <td class=\"content-container\">\n <em>Type</em>: Encounter\n <br/>\n \n <em>Profile(s)</em>: \n \n <a href=\"http://hl7.org/fhir/R4/encounter.html\">Encounter</a>\n <br/> \n \n \n \n <em>Must Support Elements</em>: type, status, period\n <br/>\n \n \n <em>Code Filter(s)</em>: \n <br/>\n \n \n <span class=\"tab-one\"><em>Path</em>: type</span>\n <br/>\n \n \n \n <span class=\"tab-one\"><em>ValueSet</em>:</span> <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.101.12.1008/expansion\">Outpatient Consultation</a>\n <br/> \n \n \n \n \n </td>\n</tr>\n\n<tr>\n <th scope=\"row\" class=\"row-header\">Data Requirement</th>\n <td class=\"content-container\">\n <em>Type</em>: Encounter\n <br/>\n \n <em>Profile(s)</em>: \n \n <a href=\"http://hl7.org/fhir/R4/encounter.html\">Encounter</a>\n <br/> \n \n \n \n <em>Must Support Elements</em>: type, status, period\n <br/>\n \n \n <em>Code Filter(s)</em>: \n <br/>\n \n \n <span class=\"tab-one\"><em>Path</em>: type</span>\n <br/>\n \n \n \n <span class=\"tab-one\"><em>ValueSet</em>:</span> <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.101.12.1025/expansion\">Preventive Care Services Established Office Visit, 18 and Up</a>\n <br/> \n \n \n \n \n </td>\n</tr>\n\n<tr>\n <th scope=\"row\" class=\"row-header\">Data Requirement</th>\n <td class=\"content-container\">\n <em>Type</em>: Encounter\n <br/>\n \n <em>Profile(s)</em>: \n \n <a href=\"http://hl7.org/fhir/R4/encounter.html\">Encounter</a>\n <br/> \n \n \n \n <em>Must Support Elements</em>: type, status, period\n <br/>\n \n \n <em>Code Filter(s)</em>: \n <br/>\n \n \n <span class=\"tab-one\"><em>Path</em>: type</span>\n <br/>\n \n \n \n <span class=\"tab-one\"><em>ValueSet</em>:</span> <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.101.12.1027/expansion\">Preventive Care Services Group Counseling</a>\n <br/> \n \n \n \n \n </td>\n</tr>\n\n<tr>\n <th scope=\"row\" class=\"row-header\">Data Requirement</th>\n <td class=\"content-container\">\n <em>Type</em>: Encounter\n <br/>\n \n <em>Profile(s)</em>: \n \n <a href=\"http://hl7.org/fhir/R4/encounter.html\">Encounter</a>\n <br/> \n \n \n \n <em>Must Support Elements</em>: type, status, period\n <br/>\n \n \n <em>Code Filter(s)</em>: \n <br/>\n \n \n <span class=\"tab-one\"><em>Path</em>: type</span>\n <br/>\n \n \n \n <span class=\"tab-one\"><em>ValueSet</em>:</span> <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.101.12.1022/expansion\">Preventive Care Services, Initial Office Visit, 0 to 17</a>\n <br/> \n \n \n \n \n </td>\n</tr>\n\n<tr>\n <th scope=\"row\" class=\"row-header\">Data Requirement</th>\n <td class=\"content-container\">\n <em>Type</em>: Encounter\n <br/>\n \n <em>Profile(s)</em>: \n \n <a href=\"http://hl7.org/fhir/R4/encounter.html\">Encounter</a>\n <br/> \n \n \n \n <em>Must Support Elements</em>: type, status, period\n <br/>\n \n \n <em>Code Filter(s)</em>: \n <br/>\n \n \n <span class=\"tab-one\"><em>Path</em>: type</span>\n <br/>\n \n \n \n <span class=\"tab-one\"><em>ValueSet</em>:</span> <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.101.12.1026/expansion\">Preventive Care Services Individual Counseling</a>\n <br/> \n \n \n \n \n </td>\n</tr>\n\n<tr>\n <th scope=\"row\" class=\"row-header\">Data Requirement</th>\n <td class=\"content-container\">\n <em>Type</em>: Encounter\n <br/>\n \n <em>Profile(s)</em>: \n \n <a href=\"http://hl7.org/fhir/R4/encounter.html\">Encounter</a>\n <br/> \n \n \n \n <em>Must Support Elements</em>: type, status, period\n <br/>\n \n \n <em>Code Filter(s)</em>: \n <br/>\n \n \n <span class=\"tab-one\"><em>Path</em>: type</span>\n <br/>\n \n \n \n <span class=\"tab-one\"><em>ValueSet</em>:</span> <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.101.12.1023/expansion\">Preventive Care Services Initial Office Visit, 18 and Up</a>\n <br/> \n \n \n \n \n </td>\n</tr>\n\n<tr>\n <th scope=\"row\" class=\"row-header\">Data Requirement</th>\n <td class=\"content-container\">\n <em>Type</em>: Encounter\n <br/>\n \n <em>Profile(s)</em>: \n \n <a href=\"http://hl7.org/fhir/R4/encounter.html\">Encounter</a>\n <br/> \n \n \n \n <em>Must Support Elements</em>: type, status, period\n <br/>\n \n \n <em>Code Filter(s)</em>: \n <br/>\n \n \n <span class=\"tab-one\"><em>Path</em>: type</span>\n <br/>\n \n \n \n <span class=\"tab-one\"><em>ValueSet</em>:</span> <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.101.12.1024/expansion\">Preventive Care, Established Office Visit, 0 to 17</a>\n <br/> \n \n \n \n \n </td>\n</tr>\n\n<tr>\n <th scope=\"row\" class=\"row-header\">Data Requirement</th>\n <td class=\"content-container\">\n <em>Type</em>: Patient\n <br/>\n \n <em>Profile(s)</em>: \n \n <a href=\"http://hl7.org/fhir/R4/patient.html\">Patient</a>\n <br/> \n \n \n \n <em>Must Support Elements</em>: birthDate\n <br/>\n \n \n </td>\n</tr>\n\n<tr>\n <th scope=\"row\" class=\"row-header\">Data Requirement</th>\n <td class=\"content-container\">\n <em>Type</em>: Medication\n <br/>\n \n <em>Profile(s)</em>: \n \n <a href=\"http://hl7.org/fhir/R4/medication.html\">Medication</a>\n <br/> \n \n \n \n <em>Must Support Elements</em>: id, code\n <br/>\n \n \n <em>Code Filter(s)</em>: \n <br/>\n \n \n <span class=\"tab-one\"><em>Path</em>: code</span>\n <br/>\n \n \n \n <span class=\"tab-one\"><em>ValueSet</em>:</span> <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.196.12.1001/expansion\">Antibiotic Medications for Pharyngitis</a>\n <br/> \n \n \n \n \n </td>\n</tr>\n\n<tr>\n <th scope=\"row\" class=\"row-header\">Data Requirement</th>\n <td class=\"content-container\">\n <em>Type</em>: MedicationRequest\n <br/>\n \n <em>Profile(s)</em>: \n \n <a href=\"http://hl7.org/fhir/R4/medicationrequest.html\">MedicationRequest</a>\n <br/> \n \n \n \n <em>Must Support Elements</em>: medication, status, intent, authoredOn, dosageInstruction, dispenseRequest, dispenseRequest.expectedSupplyDuration, dispenseRequest.expectedSupplyDuration.value, dispenseRequest.quantity, dispenseRequest.numberOfRepeatsAllowed, dispenseRequest.validityPeriod\n <br/>\n \n \n <em>Code Filter(s)</em>: \n <br/>\n \n \n <span class=\"tab-one\"><em>Path</em>: medication</span>\n <br/>\n \n \n \n <span class=\"tab-one\"><em>ValueSet</em>:</span> <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.196.12.1001/expansion\">Antibiotic Medications for Pharyngitis</a>\n <br/> \n \n \n \n \n </td>\n</tr>\n\n<tr>\n <th scope=\"row\" class=\"row-header\">Data Requirement</th>\n <td class=\"content-container\">\n <em>Type</em>: MedicationRequest\n <br/>\n \n <em>Profile(s)</em>: \n \n <a href=\"http://hl7.org/fhir/R4/medicationrequest.html\">MedicationRequest</a>\n <br/> \n \n \n \n <em>Must Support Elements</em>: medication.reference, status, intent, authoredOn, dosageInstruction, dispenseRequest, dispenseRequest.expectedSupplyDuration, dispenseRequest.expectedSupplyDuration.value, dispenseRequest.quantity, dispenseRequest.numberOfRepeatsAllowed, dispenseRequest.validityPeriod\n <br/>\n \n \n </td>\n</tr>\n\n<tr>\n <th scope=\"row\" class=\"row-header\">Data Requirement</th>\n <td class=\"content-container\">\n <em>Type</em>: Condition\n <br/>\n \n <em>Profile(s)</em>: \n \n <code>http://fhir.org/guides/astp/us-quality-core/StructureDefinition/us-quality-core-condition-encounter-diagnosis</code>\n <br/> \n \n \n \n <em>Must Support Elements</em>: code\n <br/>\n \n \n <em>Code Filter(s)</em>: \n <br/>\n \n \n <span class=\"tab-one\"><em>Path</em>: code</span>\n <br/>\n \n \n \n <span class=\"tab-one\"><em>ValueSet</em>:</span> <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.102.12.1011/expansion\">Acute Pharyngitis</a>\n <br/> \n \n \n \n \n </td>\n</tr>\n\n<tr>\n <th scope=\"row\" class=\"row-header\">Data Requirement</th>\n <td class=\"content-container\">\n <em>Type</em>: Condition\n <br/>\n \n <em>Profile(s)</em>: \n \n <code>http://fhir.org/guides/astp/us-quality-core/StructureDefinition/us-quality-core-condition-encounter-diagnosis</code>\n <br/> \n \n \n \n <em>Must Support Elements</em>: code\n <br/>\n \n \n <em>Code Filter(s)</em>: \n <br/>\n \n \n <span class=\"tab-one\"><em>Path</em>: code</span>\n <br/>\n \n \n \n <span class=\"tab-one\"><em>ValueSet</em>:</span> <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.102.12.1012/expansion\">Acute Tonsillitis</a>\n <br/> \n \n \n \n \n </td>\n</tr>\n\n<tr>\n <th scope=\"row\" class=\"row-header\">Data Requirement</th>\n <td class=\"content-container\">\n <em>Type</em>: Condition\n <br/>\n \n <em>Profile(s)</em>: \n \n <code>http://fhir.org/guides/astp/us-quality-core/StructureDefinition/us-quality-core-condition-encounter-diagnosis</code>\n <br/> \n \n \n \n <em>Must Support Elements</em>: code\n <br/>\n \n \n <em>Code Filter(s)</em>: \n <br/>\n \n \n <span class=\"tab-one\"><em>Path</em>: code</span>\n <br/>\n \n \n \n <span class=\"tab-one\"><em>ValueSet</em>:</span> <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.102.12.1025/expansion\">Comorbid Conditions for Respiratory Conditions</a>\n <br/> \n \n \n \n \n </td>\n</tr>\n\n<tr>\n <th scope=\"row\" class=\"row-header\">Data Requirement</th>\n <td class=\"content-container\">\n <em>Type</em>: Condition\n <br/>\n \n <em>Profile(s)</em>: \n \n <code>http://fhir.org/guides/astp/us-quality-core/StructureDefinition/us-quality-core-condition-encounter-diagnosis</code>\n <br/> \n \n \n \n <em>Must Support Elements</em>: code\n <br/>\n \n \n <em>Code Filter(s)</em>: \n <br/>\n \n \n <span class=\"tab-one\"><em>Path</em>: code</span>\n <br/>\n \n \n \n <span class=\"tab-one\"><em>ValueSet</em>:</span> <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.102.12.1017/expansion\">Competing Conditions for Respiratory Conditions</a>\n <br/> \n \n \n \n \n </td>\n</tr>\n\n<tr>\n <th scope=\"row\" class=\"row-header\">Data Requirement</th>\n <td class=\"content-container\">\n <em>Type</em>: Condition\n <br/>\n \n <em>Profile(s)</em>: \n \n <a href=\"http://hl7.org/fhir/R4/condition.html\">Condition</a>\n <br/> \n \n \n \n <em>Must Support Elements</em>: abatement, verificationStatus, onset, recordedDate, clinicalStatus\n <br/>\n \n \n </td>\n</tr>\n\n<tr>\n <th scope=\"row\" class=\"row-header\">Data Requirement</th>\n <td class=\"content-container\">\n <em>Type</em>: Condition\n <br/>\n \n <em>Profile(s)</em>: \n \n <a href=\"http://hl7.org/fhir/R4/condition.html\">Condition</a>\n <br/> \n \n \n \n <em>Must Support Elements</em>: code, verificationStatus\n <br/>\n \n \n <em>Code Filter(s)</em>: \n <br/>\n \n \n <span class=\"tab-one\"><em>Path</em>: code</span>\n <br/>\n \n \n \n <span class=\"tab-one\"><em>ValueSet</em>:</span> <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.1165/expansion\">Hospice Diagnosis</a>\n <br/> \n \n \n \n \n </td>\n</tr>\n\n<tr>\n <th scope=\"row\" class=\"row-header\">Data Requirement</th>\n <td class=\"content-container\">\n <em>Type</em>: Coverage\n <br/>\n \n <em>Profile(s)</em>: \n \n <code>http://fhir.org/guides/astp/us-quality-core/StructureDefinition/us-quality-core-coverage</code>\n <br/> \n \n \n \n <em>Must Support Elements</em>: type, period\n <br/>\n \n \n <em>Code Filter(s)</em>: \n <br/>\n \n \n <span class=\"tab-one\"><em>Path</em>: type</span>\n <br/>\n \n \n \n <span class=\"tab-one\"><em>ValueSet</em>:</span> <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.114222.4.11.3591/expansion\">Payer Type</a>\n <br/> \n \n \n \n \n </td>\n</tr>\n\n<tr>\n <th scope=\"row\" class=\"row-header\">Data Requirement</th>\n <td class=\"content-container\">\n <em>Type</em>: Encounter\n <br/>\n \n <em>Profile(s)</em>: \n \n <code>http://fhir.org/guides/astp/us-quality-core/StructureDefinition/us-quality-core-encounter</code>\n <br/> \n \n \n \n <em>Must Support Elements</em>: type, hospitalization, hospitalization.dischargeDisposition, period\n <br/>\n \n \n <em>Code Filter(s)</em>: \n <br/>\n \n \n <span class=\"tab-one\"><em>Path</em>: type</span>\n <br/>\n \n \n \n <span class=\"tab-one\"><em>ValueSet</em>:</span> <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.666.5.307/expansion\">Encounter Inpatient</a>\n <br/> \n \n \n \n \n </td>\n</tr>\n\n<tr>\n <th scope=\"row\" class=\"row-header\">Data Requirement</th>\n <td class=\"content-container\">\n <em>Type</em>: Encounter\n <br/>\n \n <em>Profile(s)</em>: \n \n <code>http://fhir.org/guides/astp/us-quality-core/StructureDefinition/us-quality-core-encounter</code>\n <br/> \n \n \n \n <em>Must Support Elements</em>: type, period\n <br/>\n \n \n <em>Code Filter(s)</em>: \n <br/>\n \n \n <span class=\"tab-one\"><em>Path</em>: type</span>\n <br/>\n \n \n \n <span class=\"tab-one\"><em>ValueSet</em>:</span> <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.464.1003.1003/expansion\">Hospice Encounter</a>\n <br/> \n \n \n \n \n </td>\n</tr>\n\n<tr>\n <th scope=\"row\" class=\"row-header\">Data Requirement</th>\n <td class=\"content-container\">\n <em>Type</em>: Observation\n <br/>\n \n <em>Profile(s)</em>: \n \n <code>http://fhir.org/guides/astp/us-quality-core/StructureDefinition/us-quality-core-observation-screening-assessment</code>\n <br/> \n \n \n \n <em>Must Support Elements</em>: code, value, effective, status\n <br/>\n \n \n <em>Code Filter(s)</em>: \n <br/>\n \n \n <span class=\"tab-one\"><em>Path</em>: code</span>\n <br/>\n \n \n \n \n <span class=\"tab-one\"><em>Code(s)</em>: \n \n \n <a href=\"https://loinc.org/45755-6\">LOINC: 45755-6</a> (Hospice care [Minimum Data Set])\n \n \n </span>\n <br/>\n \n \n \n <span class=\"tab-one\"><em>Path</em>: value</span>\n <br/>\n \n \n \n \n \n \n </td>\n</tr>\n\n<tr>\n <th scope=\"row\" class=\"row-header\">Data Requirement</th>\n <td class=\"content-container\">\n <em>Type</em>: ServiceRequest\n <br/>\n \n <em>Profile(s)</em>: \n \n <code>http://fhir.org/guides/astp/us-quality-core/StructureDefinition/us-quality-core-servicerequest</code>\n <br/> \n \n \n \n <em>Must Support Elements</em>: code, authoredOn\n <br/>\n \n \n <em>Code Filter(s)</em>: \n <br/>\n \n \n <span class=\"tab-one\"><em>Path</em>: code</span>\n <br/>\n \n \n \n <span class=\"tab-one\"><em>ValueSet</em>:</span> <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.526.3.1584/expansion\">Hospice Care Ambulatory</a>\n <br/> \n \n \n \n \n </td>\n</tr>\n\n<tr>\n <th scope=\"row\" class=\"row-header\">Data Requirement</th>\n <td class=\"content-container\">\n <em>Type</em>: Procedure\n <br/>\n \n <em>Profile(s)</em>: \n \n <code>http://fhir.org/guides/astp/us-quality-core/StructureDefinition/us-quality-core-procedure</code>\n <br/> \n \n \n \n <em>Must Support Elements</em>: code, performed\n <br/>\n \n \n <em>Code Filter(s)</em>: \n <br/>\n \n \n <span class=\"tab-one\"><em>Path</em>: code</span>\n <br/>\n \n \n \n <span class=\"tab-one\"><em>ValueSet</em>:</span> <a href=\"https://vsac.nlm.nih.gov/valueset/2.16.840.1.113883.3.526.3.1584/expansion\">Hospice Care Ambulatory</a>\n <br/> \n \n \n \n \n </td>\n</tr>\n\n \n \n\n\n <tr>\n\n\n<th colspan=\"2\" scope=\"row\" class=\"row-header\"><a name=\"parameters\"> </a>Parameters</th>\n\n\n</tr>\n \n \n <tr>\n \n\n<th scope=\"row\" class=\"row-header\"/>\n\n\n <td class=\"content-container\">\n <table>\n <thead>\n <tr>\n <td><em>Name</em></td>\n <td><em>Use</em></td>\n <td><em>Card.</em></td>\n <td><em>Type</em></td>\n <td><em>Documentation</em></td>\n </tr>\n </thead>\n <tbody>\n \n <tr>\n <td>Measurement Period</td>\n <td>In</td>\n <td>0..1</td>\n <td>Period</td>\n <td/>\n </tr>\n \n <tr>\n <td>ErrorLevel</td>\n <td>In</td>\n <td>0..1</td>\n <td>string</td>\n <td/>\n </tr>\n \n <tr>\n <td>SDE Sex</td>\n <td>Out</td>\n <td>0..1</td>\n <td>Coding</td>\n <td/>\n </tr>\n \n <tr>\n <td>Numerator</td>\n <td>Out</td>\n <td>0..*</td>\n <td>Encounter</td>\n <td/>\n </tr>\n \n <tr>\n <td>Denominator</td>\n <td>Out</td>\n <td>0..*</td>\n <td>Encounter</td>\n <td/>\n </tr>\n \n <tr>\n <td>SDE Payer</td>\n <td>Out</td>\n <td>0..*</td>\n <td>Resource</td>\n <td/>\n </tr>\n \n <tr>\n <td>Initial Population</td>\n <td>Out</td>\n <td>0..*</td>\n <td>Encounter</td>\n <td/>\n </tr>\n \n <tr>\n <td>Encounter With Pharyngitis or Tonsillitis With Antibiotic</td>\n <td>Out</td>\n <td>0..*</td>\n <td>Encounter</td>\n <td/>\n </tr>\n \n <tr>\n <td>SDE Ethnicity</td>\n <td>Out</td>\n <td>0..1</td>\n <td>Resource</td>\n <td/>\n </tr>\n \n <tr>\n <td>Denominator Exclusions</td>\n <td>Out</td>\n <td>0..*</td>\n <td>Encounter</td>\n <td/>\n </tr>\n \n <tr>\n <td>SDE Race</td>\n <td>Out</td>\n <td>0..1</td>\n <td>Resource</td>\n <td/>\n </tr>\n \n </tbody>\n </table>\n </td>\n</tr>\n\n \n \n\n<tr>\n <th colspan=\"2\" scope=\"row\" class=\"row-header\">Generated using version 0.5.4 of the sample-content-ig Liquid templates</th>\n</tr>\n\n </tbody>\n </table>\n</div>"
},
"contained" : [
{
"resourceType" : "Library",
"id" : "effective-data-requirements",
"extension" : [
{
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-directReferenceCode",
"valueCoding" : {
"system" : "http://snomed.info/sct",
"code" : "248153007",
"display" : "Male (finding)"
}
},
{
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-directReferenceCode",
"valueCoding" : {
"system" : "http://snomed.info/sct",
"code" : "248152002",
"display" : "Female (finding)"
}
},
{
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-directReferenceCode",
"valueCoding" : {
"system" : "http://www.ama-assn.org/go/cpt",
"code" : "99429",
"display" : "Unlisted preventive medicine service"
}
},
{
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-directReferenceCode",
"valueCoding" : {
"system" : "http://terminology.hl7.org/CodeSystem/condition-ver-status",
"code" : "confirmed"
}
},
{
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-directReferenceCode",
"valueCoding" : {
"system" : "http://terminology.hl7.org/CodeSystem/condition-ver-status",
"code" : "unconfirmed"
}
},
{
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-directReferenceCode",
"valueCoding" : {
"system" : "http://terminology.hl7.org/CodeSystem/condition-ver-status",
"code" : "provisional"
}
},
{
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-directReferenceCode",
"valueCoding" : {
"system" : "http://terminology.hl7.org/CodeSystem/condition-ver-status",
"code" : "differential"
}
},
{
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-directReferenceCode",
"valueCoding" : {
"system" : "http://terminology.hl7.org/CodeSystem/condition-clinical",
"code" : "active"
}
},
{
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-directReferenceCode",
"valueCoding" : {
"system" : "http://terminology.hl7.org/CodeSystem/condition-clinical",
"code" : "recurrence"
}
},
{
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-directReferenceCode",
"valueCoding" : {
"system" : "http://terminology.hl7.org/CodeSystem/condition-clinical",
"code" : "relapse"
}
},
{
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-directReferenceCode",
"valueCoding" : {
"system" : "http://snomed.info/sct",
"code" : "428361000124107",
"display" : "Discharge to home for hospice care (procedure)"
}
},
{
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-directReferenceCode",
"valueCoding" : {
"system" : "http://snomed.info/sct",
"code" : "428371000124100",
"display" : "Discharge to healthcare facility for hospice care (procedure)"
}
},
{
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-directReferenceCode",
"valueCoding" : {
"system" : "http://snomed.info/sct",
"code" : "373066001",
"display" : "Yes (qualifier value)"
}
},
{
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-directReferenceCode",
"valueCoding" : {
"system" : "http://loinc.org",
"code" : "45755-6",
"display" : "Hospice care [Minimum Data Set]"
}
},
{
"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/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "CMS146FHIRApproTestPharyngitis"
},
{
"url" : "name",
"valueString" : "SDE Sex"
},
{
"url" : "statement",
"valueString" : "define \"SDE Sex\":\n SDE.\"SDE Sex\""
},
{
"url" : "displaySequence",
"valueInteger" : 1
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "CMS146FHIRApproTestPharyngitis"
},
{
"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/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "CMS146FHIRApproTestPharyngitis"
},
{
"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 ends during day of Interval[( start of \"Measurement Period\" ), ( end of \"Measurement Period\" ) - 3 days]"
},
{
"url" : "displaySequence",
"valueInteger" : 3
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "CMS146FHIRApproTestPharyngitis"
},
{
"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/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "CMS146FHIRApproTestPharyngitis"
},
{
"url" : "name",
"valueString" : "Pharyngitis or Tonsillitis"
},
{
"url" : "statement",
"valueString" : "define \"Pharyngitis or Tonsillitis\":\n ( [ConditionEncounterDiagnosis: \"Acute Pharyngitis\"]\n union [ConditionEncounterDiagnosis: \"Acute Tonsillitis\"]\n ).verified ( )"
},
{
"url" : "displaySequence",
"valueInteger" : 5
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "CMS146FHIRApproTestPharyngitis"
},
{
"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\n return VisitWithAntibiotic"
},
{
"url" : "displaySequence",
"valueInteger" : 6
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "CMS146FHIRApproTestPharyngitis"
},
{
"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/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "CMS146FHIRApproTestPharyngitis"
},
{
"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/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "CMS146FHIRApproTestPharyngitis"
},
{
"url" : "name",
"valueString" : "Denominator"
},
{
"url" : "statement",
"valueString" : "define \"Denominator\":\n \"Initial Population\""
},
{
"url" : "displaySequence",
"valueInteger" : 9
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "SupplementalDataElements"
},
{
"url" : "name",
"valueString" : "SDE Payer"
},
{
"url" : "statement",
"valueString" : "define \"SDE Payer\":\n [USQualityCore.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/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "CMS146FHIRApproTestPharyngitis"
},
{
"url" : "name",
"valueString" : "SDE Payer"
},
{
"url" : "statement",
"valueString" : "define \"SDE Payer\":\n SDE.\"SDE Payer\""
},
{
"url" : "displaySequence",
"valueInteger" : 11
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-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" : 12
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "CMS146FHIRApproTestPharyngitis"
},
{
"url" : "name",
"valueString" : "SDE Ethnicity"
},
{
"url" : "statement",
"valueString" : "define \"SDE Ethnicity\":\n SDE.\"SDE Ethnicity\""
},
{
"url" : "displaySequence",
"valueInteger" : 13
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "Hospice"
},
{
"url" : "name",
"valueString" : "Has Hospice Services"
},
{
"url" : "statement",
"valueString" : "define \"Has Hospice Services\":\n exists ((([USQualityCore.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 ends during day of \"Measurement Period\"\n )\n or exists ((([USQualityCore.Encounter: \"Hospice Encounter\"]).isEncounterPerformed()) HospiceEncounter\n where HospiceEncounter.period overlaps day of \"Measurement Period\"\n )\n // TODO: Shouldn't need to specify a code path here (see https://jira.hl7.org/browse/FHIR-53941)\n or exists ((([USQualityCore.ObservationScreeningAssessment: code ~ \"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 ((([USQualityCore.ServiceRequest: \"Hospice Care Ambulatory\"]).isInterventionOrder()) HospiceOrder\n where HospiceOrder.authoredOn during day of \"Measurement Period\"\n )\n or exists ((([USQualityCore.Procedure: \"Hospice Care Ambulatory\"]).isInterventionPerformed()) HospicePerformed\n where HospicePerformed.performed.toInterval() overlaps day of \"Measurement Period\"\n )\n // TODO: Consider whether to keep this as the union of Problems and EncounterDiagnosis\n or exists ((([FHIR.Condition: \"Hospice Diagnosis\"]).verified()) HospiceCareDiagnosis\n where HospiceCareDiagnosis.prevalenceInterval() overlaps day of \"Measurement Period\"\n )"
},
{
"url" : "displaySequence",
"valueInteger" : 14
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "CMS146FHIRApproTestPharyngitis"
},
{
"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" : 15
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "CMS146FHIRApproTestPharyngitis"
},
{
"url" : "name",
"valueString" : "Denominator Exclusions"
},
{
"url" : "statement",
"valueString" : "define \"Denominator Exclusions\":\n \"Encounters and Assessments with Hospice Patient\"\n union Antibiotic.\"Encounter with Comorbid Condition History\" ( \"Encounter With Pharyngitis or Tonsillitis With Antibiotic\", ( [ConditionEncounterDiagnosis: \"Comorbid Conditions for Respiratory Conditions\"] ).verified ( ) )\n union Antibiotic.\"Encounter with Antibiotic Medication History\" ( \"Encounter With Pharyngitis or Tonsillitis With Antibiotic\", ( [MedicationRequest: \"Antibiotic Medications for Pharyngitis\"] ).isMedicationActive ( ) )\n union Antibiotic.\"Encounter with Competing Diagnosis History\" ( \"Encounter With Pharyngitis or Tonsillitis With Antibiotic\", ( [ConditionEncounterDiagnosis: \"Competing Conditions for Respiratory Conditions\"] ).verified ( ) )"
},
{
"url" : "displaySequence",
"valueInteger" : 16
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-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" : 17
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "CMS146FHIRApproTestPharyngitis"
},
{
"url" : "name",
"valueString" : "SDE Race"
},
{
"url" : "statement",
"valueString" : "define \"SDE Race\":\n SDE.\"SDE Race\""
},
{
"url" : "displaySequence",
"valueInteger" : 18
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "FHIRHelpers"
},
{
"url" : "name",
"valueString" : "ToString"
},
{
"url" : "statement",
"valueString" : "define function ToString(value string): value.value"
},
{
"url" : "displaySequence",
"valueInteger" : 19
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "USCoreCommon"
},
{
"url" : "name",
"valueString" : "sex"
},
{
"url" : "statement",
"valueString" : "/*\n@description: Returns the sex element as defined for the USCore patient profile\n*/\ndefine fluent function sex(patient Patient):\n patient.ext('http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex').value as FHIR.code"
},
{
"url" : "displaySequence",
"valueInteger" : 20
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "FHIRCommon"
},
{
"url" : "name",
"valueString" : "ext"
},
{
"url" : "statement",
"valueString" : "/*\n@description: Returns the single extension (if present) on the given resource with the specified url.\n@comment: This function uses singleton from to ensure that a run-time exception is thrown if there\nis more than one extension on the given resource with the specified url.\n*/\ndefine fluent function ext(domainResource DomainResource, url String):\n singleton from domainResource.exts(url)"
},
{
"url" : "displaySequence",
"valueInteger" : 21
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "FHIRCommon"
},
{
"url" : "name",
"valueString" : "exts"
},
{
"url" : "statement",
"valueString" : "/*\n@description: Returns any extensions defined on the given resource with the specified url\n*/\ndefine fluent function exts(domainResource DomainResource, url String):\n domainResource.extension E\n where E.url = url\n return E"
},
{
"url" : "displaySequence",
"valueInteger" : 22
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "FHIRHelpers"
},
{
"url" : "name",
"valueString" : "ToString"
},
{
"url" : "statement",
"valueString" : "define function ToString(value uri): value.value"
},
{
"url" : "displaySequence",
"valueInteger" : 23
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-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" : 24
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "FHIRHelpers"
},
{
"url" : "name",
"valueString" : "ToString"
},
{
"url" : "statement",
"valueString" : "define function ToString(value ObservationStatus): value.value"
},
{
"url" : "displaySequence",
"valueInteger" : 25
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-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<FHIR.Encounter>):\n Enc E\n where E.status = 'finished'"
},
{
"url" : "displaySequence",
"valueInteger" : 26
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "FHIRHelpers"
},
{
"url" : "name",
"valueString" : "ToString"
},
{
"url" : "statement",
"valueString" : "define function ToString(value EncounterStatus): value.value"
},
{
"url" : "displaySequence",
"valueInteger" : 27
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-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" : 28
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-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" : 29
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-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" : 30
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "Status"
},
{
"url" : "name",
"valueString" : "isMedicationOrder"
},
{
"url" : "statement",
"valueString" : "//Medication, Order\ndefine fluent function isMedicationOrder(MedicationRequest List<FHIR.MedicationRequest>):\n MedicationRequest M\n where M.status in { 'active', 'completed' }\n and M.intent in {'order', 'original-order', 'reflex-order', 'filler-order', 'instance-order'}"
},
{
"url" : "displaySequence",
"valueInteger" : 31
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "FHIRHelpers"
},
{
"url" : "name",
"valueString" : "ToString"
},
{
"url" : "statement",
"valueString" : "define function ToString(value MedicationRequestStatus): value.value"
},
{
"url" : "displaySequence",
"valueInteger" : 32
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "FHIRHelpers"
},
{
"url" : "name",
"valueString" : "ToString"
},
{
"url" : "statement",
"valueString" : "define function ToString(value MedicationRequestIntent): value.value"
},
{
"url" : "displaySequence",
"valueInteger" : 33
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "FHIRCommon"
},
{
"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 FHIR.dateTime, FHIR.Period, FHIR.Timing, FHIR.instance, FHIR.string, FHIR.Age, or FHIR.Range 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 FHIR, allowing this function to be used across any resource.\n\nThe input can be provided as a dateTime, Period, Timing, instant, string, Age, or Range.\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 Period, the result is a DateTime Interval.\nIf the input is a Timing, an error is raised indicating a single interval cannot be computed from a Timing.\nIf the input is an instant, the result is a DateTime Interval beginning and ending on that instant.\nIf the input is a string, an error is raised indicating a single interval cannot be computed from a string.\nIf the input is an Age, the result is a DateTime Interval beginning when the patient was the given Age,\nand ending immediately prior to when the patient was the given Age plus one year.\nIf the input is a Range, the result is a DateTime Interval beginning when the patient was the Age given\nby the low end of the Range, and ending immediately prior to when the patient was the Age given by the\nhigh end of the Range plus one year.\n\nNOTE: Due to the\ncomplexity of determining a single interval from a Timing or String type, this function will throw a run-time exception if it is used\nwith a Timing or String.\n*/\ndefine fluent function toInterval(choice Choice<FHIR.dateTime, FHIR.Period, FHIR.Timing, FHIR.instant, FHIR.string, FHIR.Age, FHIR.Range>):\n case\n when choice is FHIR.dateTime then\n Interval[FHIRHelpers.ToDateTime(choice as FHIR.dateTime), FHIRHelpers.ToDateTime(choice as FHIR.dateTime)]\n when choice is FHIR.Period then\n FHIRHelpers.ToInterval(choice as FHIR.Period)\n when choice is FHIR.instant then\n Interval[FHIRHelpers.ToDateTime(choice as FHIR.instant), FHIRHelpers.ToDateTime(choice as FHIR.instant)]\n when choice is FHIR.Age then\n Interval[FHIRHelpers.ToDate(Patient.birthDate) + FHIRHelpers.ToQuantity(choice as FHIR.Age),\n FHIRHelpers.ToDate(Patient.birthDate) + FHIRHelpers.ToQuantity(choice as FHIR.Age) + 1 year)\n when choice is FHIR.Range then\n Interval[FHIRHelpers.ToDate(Patient.birthDate) + FHIRHelpers.ToQuantity((choice as FHIR.Range).low),\n FHIRHelpers.ToDate(Patient.birthDate) + FHIRHelpers.ToQuantity((choice as FHIR.Range).high) + 1 year)\n when choice is FHIR.Timing then\n Message(null as Interval<DateTime>, true, 'NOT_IMPLEMENTED', 'Error', 'Calculation of an interval from a Timing value is not supported')\n when choice is FHIR.string then\n Message(null as Interval<DateTime>, true, 'NOT_IMPLEMENTED', 'Error', 'Calculation of an interval from a String value is not supported')\n else\n null as Interval<DateTime>\n end"
},
{
"url" : "displaySequence",
"valueInteger" : 34
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "FHIRHelpers"
},
{
"url" : "name",
"valueString" : "ToDateTime"
},
{
"url" : "statement",
"valueString" : "define function ToDateTime(value dateTime): value.value"
},
{
"url" : "displaySequence",
"valueInteger" : 35
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "FHIRHelpers"
},
{
"url" : "name",
"valueString" : "ToDateTime"
},
{
"url" : "statement",
"valueString" : "define function ToDateTime(value instant): value.value"
},
{
"url" : "displaySequence",
"valueInteger" : 36
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "FHIRHelpers"
},
{
"url" : "name",
"valueString" : "ToDate"
},
{
"url" : "statement",
"valueString" : "define function ToDate(value date): value.value"
},
{
"url" : "displaySequence",
"valueInteger" : 37
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "FHIRHelpers"
},
{
"url" : "name",
"valueString" : "ToQuantity"
},
{
"url" : "statement",
"valueString" : "/*\n@description: Converts the given FHIR [Quantity](https://hl7.org/fhir/datatypes.html#Quantity) \nvalue to a CQL Quantity\n@comment: If the given quantity has a comparator specified, a runtime error is raised. If the given quantity\nhas a system other than UCUM (i.e. `http://unitsofmeasure.org`) or CQL calendar units (i.e. `http://hl7.org/fhirpath/CodeSystem/calendar-units`)\nan error is raised. For UCUM to calendar units, the `ToCalendarUnit` function is used.\n@seealso: ToCalendarUnit\n*/\ndefine function ToQuantity(quantity FHIR.Quantity):\n case\n when quantity is null then null\n when quantity.value is null then null\n when quantity.comparator is not null then\n Message(null, true, 'FHIRHelpers.ToQuantity.ComparatorQuantityNotSupported', 'Error', 'FHIR Quantity value has a comparator and cannot be converted to a System.Quantity value.')\n when quantity.system is null or quantity.system.value = 'http://unitsofmeasure.org'\n or quantity.system.value = 'http://hl7.org/fhirpath/CodeSystem/calendar-units' then\n System.Quantity { value: quantity.value.value, unit: ToCalendarUnit(Coalesce(quantity.code.value, quantity.unit.value, '1')) }\n else\n Message(null, true, 'FHIRHelpers.ToQuantity.InvalidFHIRQuantity', 'Error', 'Invalid FHIR Quantity code: ' & quantity.unit.value & ' (' & quantity.system.value & '|' & quantity.code.value & ')')\n end"
},
{
"url" : "displaySequence",
"valueInteger" : 38
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "FHIRHelpers"
},
{
"url" : "name",
"valueString" : "ToCalendarUnit"
},
{
"url" : "statement",
"valueString" : "/*\n@description: Converts a UCUM definite duration unit to a CQL calendar duration\nunit using conversions specified in the [quantities](https://cql.hl7.org/02-authorsguide.html#quantities) \ntopic of the CQL specification.\n@comment: Note that for durations above days (or weeks), the conversion is understood to be approximate\n*/\ndefine function ToCalendarUnit(unit System.String):\n case unit\n when 'ms' then 'millisecond'\n when 's' then 'second'\n when 'min' then 'minute'\n when 'h' then 'hour'\n when 'd' then 'day'\n when 'wk' then 'week'\n when 'mo' then 'month'\n when 'a' then 'year'\n else unit\n end"
},
{
"url" : "displaySequence",
"valueInteger" : 39
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "FHIRCommon"
},
{
"url" : "name",
"valueString" : "verified"
},
{
"url" : "statement",
"valueString" : "/*\n@description: Returns conditions in the given list that either have no verification status or have a verification status of confirmed, unconfirmed, provisional, or differential\n*/\ndefine fluent function verified(conditions List<FHIR.Condition>):\n conditions C\n where C.verificationStatus is not null implies\n (C.verificationStatus ~ \"confirmed\"\n or C.verificationStatus ~ \"unconfirmed\"\n or C.verificationStatus ~ \"provisional\"\n or C.verificationStatus ~ \"differential\"\n )"
},
{
"url" : "displaySequence",
"valueInteger" : 40
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "FHIRCommon"
},
{
"url" : "name",
"valueString" : "prevalenceInterval"
},
{
"url" : "statement",
"valueString" : "/*\n@description: Returns an interval representing the normalized prevalence period of a given Condition resource.\n@comment: Uses the toInterval and toAbatementInterval functions to determine the widest potential interval from\nonset to abatement as specified in the given Condition.\n*/\ndefine fluent function prevalenceInterval(condition Condition):\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 \n\t 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" : 41
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "FHIRCommon"
},
{
"url" : "name",
"valueString" : "abatementInterval"
},
{
"url" : "statement",
"valueString" : "/*\n@description: Returns an interval representing the normalized Abatement of a given Condition resource.\n@comment: @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\nNOTE: Due to the complexity of determining an interval from a String, this function will throw\na run-time exception if used with a Condition instance that has a String as the abatement value.\n*/\ndefine fluent function abatementInterval(condition Condition):\n if condition.abatement is FHIR.dateTime then\n Interval[FHIRHelpers.ToDateTime(condition.abatement as FHIR.dateTime), FHIRHelpers.ToDateTime(condition.abatement as FHIR.dateTime)]\n else if condition.abatement is FHIR.Period then\n FHIRHelpers.ToInterval(condition.abatement as FHIR.Period)\n else if condition.abatement is FHIR.string then\n Message(null as Interval<DateTime>, true, 'NOT_IMPLEMENTED', 'Error', 'Calculation of an interval from a String value is not supported')\n else if condition.abatement is FHIR.Age then\n Interval[FHIRHelpers.ToDate(Patient.birthDate) + FHIRHelpers.ToQuantity(condition.abatement as FHIR.Age),\n FHIRHelpers.ToDate(Patient.birthDate) + FHIRHelpers.ToQuantity(condition.abatement as FHIR.Age) + 1 year)\n else if condition.abatement is FHIR.Range then\n Interval[FHIRHelpers.ToDate(Patient.birthDate) + FHIRHelpers.ToQuantity((condition.abatement as FHIR.Range).low),\n FHIRHelpers.ToDate(Patient.birthDate) + FHIRHelpers.ToQuantity((condition.abatement as FHIR.Range).high) + 1 year)\n else if condition.abatement is FHIR.boolean then\n Interval[end of condition.onset.toInterval(), condition.recordedDate)\n else \n null"
},
{
"url" : "displaySequence",
"valueInteger" : 42
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "USCoreCommon"
},
{
"url" : "name",
"valueString" : "ethnicity"
},
{
"url" : "statement",
"valueString" : "define fluent function ethnicity(patient Patient):\n (patient.ext('http://hl7.org/fhir/us/core/StructureDefinition/us-core-ethnicity')) E\n return {\n ombCategory: E.ext('ombCategory').value as FHIR.Coding,\n detailed: (E.exts('detailed')) d return d.value as FHIR.Coding,\n text: E.ext('text').value as FHIR.string\n }"
},
{
"url" : "displaySequence",
"valueInteger" : 43
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "FHIRCommon"
},
{
"url" : "name",
"valueString" : "ext"
},
{
"url" : "statement",
"valueString" : "/*\n@description: Returns the single extension (if present) on the given element with the specified url.\n@comment: This function uses singleton from to ensure that a run-time exception is thrown if there\nis more than one extension on the given element with the specified url.\n*/\ndefine fluent function ext(element Element, url String):\n singleton from element.exts(url)"
},
{
"url" : "displaySequence",
"valueInteger" : 44
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "FHIRCommon"
},
{
"url" : "name",
"valueString" : "exts"
},
{
"url" : "statement",
"valueString" : "/*\n@description: Returns any extensions defined on the given element with the specified url.\n*/\ndefine fluent function exts(element Element, url String):\n element.extension E\n where E.url = url\n return E"
},
{
"url" : "displaySequence",
"valueInteger" : 45
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "Status"
},
{
"url" : "name",
"valueString" : "isAssessmentPerformed"
},
{
"url" : "statement",
"valueString" : "//Assessment, Performed\ndefine fluent function isAssessmentPerformed(Obs List<ObservationScreeningAssessment>):\n Obs O\n where O.status in { 'final', 'amended', 'corrected' }"
},
{
"url" : "displaySequence",
"valueInteger" : 46
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "Status"
},
{
"url" : "name",
"valueString" : "isInterventionOrder"
},
{
"url" : "statement",
"valueString" : "//Intervention, Order\ndefine fluent function isInterventionOrder(ServiceRequest List<FHIR.ServiceRequest>):\n ServiceRequest S\n where S.status in { 'active', 'completed' }\n and S.intent in {'order', 'original-order', 'reflex-order', 'filler-order', 'instance-order'}"
},
{
"url" : "displaySequence",
"valueInteger" : 47
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "FHIRHelpers"
},
{
"url" : "name",
"valueString" : "ToString"
},
{
"url" : "statement",
"valueString" : "define function ToString(value ServiceRequestStatus): value.value"
},
{
"url" : "displaySequence",
"valueInteger" : 48
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "FHIRHelpers"
},
{
"url" : "name",
"valueString" : "ToString"
},
{
"url" : "statement",
"valueString" : "define function ToString(value ServiceRequestIntent): value.value"
},
{
"url" : "displaySequence",
"valueInteger" : 49
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "Status"
},
{
"url" : "name",
"valueString" : "isInterventionPerformed"
},
{
"url" : "statement",
"valueString" : "//Intervention, Performed\ndefine fluent function isInterventionPerformed(Proc List<FHIR.Procedure>):\n Proc P\n where P.status ~ 'completed'"
},
{
"url" : "displaySequence",
"valueInteger" : 50
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "FHIRHelpers"
},
{
"url" : "name",
"valueString" : "ToString"
},
{
"url" : "statement",
"valueString" : "define function ToString(value ProcedureStatus): value.value"
},
{
"url" : "displaySequence",
"valueInteger" : 51
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "Antibiotic"
},
{
"url" : "name",
"valueString" : "Encounter with Comorbid Condition History"
},
{
"url" : "statement",
"valueString" : "define function \"Encounter with Comorbid Condition History\"(episodes List<Encounter>, comorbidConditions List<Condition>):\n episodes episode\n with comorbidConditions comcondition\n such that date from start of comcondition.prevalenceInterval() during Interval[date from start of episode.period - 1 year, date from start of episode.period]\n return episode"
},
{
"url" : "displaySequence",
"valueInteger" : 52
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "Antibiotic"
},
{
"url" : "name",
"valueString" : "Encounter with Antibiotic Medication History"
},
{
"url" : "statement",
"valueString" : "define function \"Encounter with Antibiotic Medication History\"(episodes List<Encounter>, antibioticMedications List<MedicationRequest>):\n episodes episode\n with antibioticMedications ActiveMedication\n such that ActiveMedication.medicationRequestPeriod() overlaps day of Interval[date from start of episode.period - 30 days, date from start of episode.period - 1 day]"
},
{
"url" : "displaySequence",
"valueInteger" : 53
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "CumulativeMedicationDuration"
},
{
"url" : "name",
"valueString" : "medicationRequestPeriod"
},
{
"url" : "statement",
"valueString" : "/*\nCalculates the Medication Period for a single MedicationRequest.\nMedicationRequest instances provided to this function are expected\nto conform to the [MMEMedicationRequest](http://build.fhir.org/ig/cqframework/opioid-mme-r4/StructureDefinition-mmemedicationrequest.html)\nprofile, which expects:\n* 1 and only 1 dosageInstruction, multiple dosageInstruction elements will result in an error\n* 1 and only 1 doseAndRate, multiple doseAndRate elements will result in an error\n* 1 timing with 1 repeat, missing timing or repeat elements will result in a null\n* frequency, frequencyMax, defaulting to 1\n* period, periodUnit, defaulting to 1 'd'\n* timeOfDay\n* doseQuantity or doseRange, missing doseQuantity and doseRange will result in a null\nNote that MedicationRequest status is not considered by this calculation, as the\nlist of MedicationRequest instances provided to this function should already have\nconsidered appropriate statuses, depending on the use case, typically `completed`.\n\nNOTE: Updated return to use \"date from end of boundsPeriod\" to ensure result is Interval<Date>\n*/\ndefine 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 as FHIR.Range,\n doseQuantity: doseAndRate.dose as FHIR.SimpleQuantity,\n\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 Period,\n // TODO: this isn't working as expected, convert results in null\n //daysSupply: (convert(R.dispenseRequest.expectedSupplyDuration) to days).value,\n daysSupply: (R.dispenseRequest.expectedSupplyDuration).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.\"end\" is not null then\n Interval[startDate, date from end of boundsPeriod]\n else\n null"
},
{
"url" : "displaySequence",
"valueInteger" : 54
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-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" : 55
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "FHIRHelpers"
},
{
"url" : "name",
"valueString" : "ToDecimal"
},
{
"url" : "statement",
"valueString" : "define function ToDecimal(value decimal): value.value"
},
{
"url" : "displaySequence",
"valueInteger" : 56
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "FHIRHelpers"
},
{
"url" : "name",
"valueString" : "ToString"
},
{
"url" : "statement",
"valueString" : "define function ToString(value UnitsOfTime): value.value"
},
{
"url" : "displaySequence",
"valueInteger" : 57
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "FHIRHelpers"
},
{
"url" : "name",
"valueString" : "ToInterval"
},
{
"url" : "statement",
"valueString" : "/*\n@description: Converts the given FHIR [Range](https://hl7.org/fhir/datatypes.html#Range) value to a CQL Interval of Quantity\n*/\ndefine function ToInterval(range FHIR.Range):\n if range is null then\n null\n else\n Interval[ToQuantity(range.low), ToQuantity(range.high)]"
},
{
"url" : "displaySequence",
"valueInteger" : 58
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-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\n\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" : 59
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "FHIRHelpers"
},
{
"url" : "name",
"valueString" : "ToInteger"
},
{
"url" : "statement",
"valueString" : "define function ToInteger(value integer): value.value"
},
{
"url" : "displaySequence",
"valueInteger" : 60
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "Status"
},
{
"url" : "name",
"valueString" : "isMedicationActive"
},
{
"url" : "statement",
"valueString" : "//Medication, Active\ndefine fluent function isMedicationActive(MedicationRequest List<FHIR.MedicationRequest>):\n MedicationRequest M\n where M.status = 'active'\n and M.intent in {'order', 'original-order', 'reflex-order', 'filler-order', 'instance-order'}"
},
{
"url" : "displaySequence",
"valueInteger" : 61
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "Antibiotic"
},
{
"url" : "name",
"valueString" : "Encounter with Competing Diagnosis History"
},
{
"url" : "statement",
"valueString" : "define function \"Encounter with Competing Diagnosis History\"(episodes List<Encounter>, competingConditions List<Condition>):\n episodes episode\n with competingConditions competcondition\n such that competcondition.prevalenceInterval() starts 3 days or less on or after day of start of episode.period\n return episode"
},
{
"url" : "displaySequence",
"valueInteger" : 62
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
},
{
"extension" : [
{
"url" : "libraryName",
"valueString" : "USCoreCommon"
},
{
"url" : "name",
"valueString" : "race"
},
{
"url" : "statement",
"valueString" : "define fluent function race(patient Patient):\n (patient.ext('http://hl7.org/fhir/us/core/StructureDefinition/us-core-race')) E\n return {\n ombCategory: (E.exts('ombCategory')) o return o.value as FHIR.Coding,\n detailed: (E.exts('detailed')) d return d.value as FHIR.Coding,\n text: E.ext('text').value as FHIR.string\n }"
},
{
"url" : "displaySequence",
"valueInteger" : 63
}
],
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition"
}
],
"name" : "EffectiveDataRequirements",
"status" : "active",
"type" : {
"coding" : [
{
"system" : "http://terminology.hl7.org/CodeSystem/library-type",
"code" : "module-definition"
}
]
},
"relatedArtifact" : [
{
"type" : "depends-on",
"display" : "USQualityCore model information",
"resource" : "https://madie.cms.gov/Library/USQualityCore-ModelInfo|0.1.0-cibuild"
},
{
"type" : "depends-on",
"display" : "USCore model information",
"resource" : "http://hl7.org/fhir/us/cql/Library/USCore-ModelInfo|6.1.0-derived"
},
{
"type" : "depends-on",
"display" : "FHIR model information",
"resource" : "http://hl7.org/fhir/uv/cql/Library/FHIR-ModelInfo|4.0.1"
},
{
"type" : "depends-on",
"display" : "Library SDE",
"resource" : "https://madie.cms.gov/Library/SupplementalDataElements|6.1.000"
},
{
"type" : "depends-on",
"display" : "Library FHIRHelpers",
"resource" : "http://hl7.org/fhir/uv/cql/Library/FHIRHelpers|4.0.1"
},
{
"type" : "depends-on",
"display" : "Library USCommon",
"resource" : "http://hl7.org/fhir/us/cql/Library/USCoreCommon|2.0.0-ballot"
},
{
"type" : "depends-on",
"display" : "Library FHIRCommon",
"resource" : "http://hl7.org/fhir/uv/cql/Library/FHIRCommon|2.0.0"
},
{
"type" : "depends-on",
"display" : "Library Status",
"resource" : "https://madie.cms.gov/Library/Status|2.1.000"
},
{
"type" : "depends-on",
"display" : "Library Hospice",
"resource" : "https://madie.cms.gov/Library/Hospice|7.1.000"
},
{
"type" : "depends-on",
"display" : "Library Antibiotic",
"resource" : "https://madie.cms.gov/Library/Antibiotic|2.1.000"
},
{
"type" : "depends-on",
"display" : "Library CMD",
"resource" : "http://hl7.org/fhir/us/cql/Library/CumulativeMedicationDuration|2.0.0-ballot"
},
{
"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 ConditionVerificationStatusCodes",
"resource" : "http://terminology.hl7.org/CodeSystem/condition-ver-status"
},
{
"type" : "depends-on",
"display" : "Code system ConditionClinicalStatusCodes",
"resource" : "http://terminology.hl7.org/CodeSystem/condition-clinical"
},
{
"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" : "Encounter"
},
{
"name" : "Denominator",
"use" : "out",
"min" : 0,
"max" : "*",
"type" : "Encounter"
},
{
"name" : "SDE Payer",
"use" : "out",
"min" : 0,
"max" : "*",
"type" : "Resource"
},
{
"name" : "Initial Population",
"use" : "out",
"min" : 0,
"max" : "*",
"type" : "Encounter"
},
{
"name" : "Encounter With Pharyngitis or Tonsillitis With Antibiotic",
"use" : "out",
"min" : 0,
"max" : "*",
"type" : "Encounter"
},
{
"name" : "SDE Ethnicity",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "Resource"
},
{
"name" : "Denominator Exclusions",
"use" : "out",
"min" : 0,
"max" : "*",
"type" : "Encounter"
},
{
"name" : "SDE Race",
"use" : "out",
"min" : 0,
"max" : "1",
"type" : "Resource"
}
],
"dataRequirement" : [
{
"type" : "Patient",
"profile" : [
"http://fhir.org/guides/astp/us-quality-core/StructureDefinition/us-quality-core-patient"
],
"mustSupport" : [
"ombCategory",
"detailed",
"text"
]
},
{
"type" : "Observation",
"profile" : [
"http://fhir.org/guides/astp/us-quality-core/StructureDefinition/us-quality-core-observation-lab"
],
"mustSupport" : [
"code",
"value",
"status"
],
"codeFilter" : [
{
"path" : "code",
"valueSet" : "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.198.12.1012"
}
]
},
{
"type" : "Observation",
"profile" : [
"http://fhir.org/guides/astp/us-quality-core/StructureDefinition/us-quality-core-observation-lab"
],
"mustSupport" : [
"code",
"value",
"effective",
"status"
],
"codeFilter" : [
{
"path" : "code",
"valueSet" : "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.198.12.1012"
}
],
"dateFilter" : [
{
"path" : "effective",
"valuePeriod" : {
"extension" : [
{
"url" : "http://hl7.org/fhir/uv/crmi-analysisException",
"valueString" : "Error attempting to determine filter value: toFhirValue not implemented for Subtract"
}
]
}
}
]
},
{
"type" : "Encounter",
"profile" : [
🔗 "http://hl7.org/fhir/StructureDefinition/Encounter"
],
"mustSupport" : [
"type",
"status",
"period"
]
},
{
"type" : "Encounter",
"profile" : [
🔗 "http://hl7.org/fhir/StructureDefinition/Encounter"
],
"mustSupport" : [
"type",
"status",
"period"
],
"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/StructureDefinition/Encounter"
],
"mustSupport" : [
"type",
"status",
"period"
],
"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/StructureDefinition/Encounter"
],
"mustSupport" : [
"type",
"status",
"period"
],
"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/StructureDefinition/Encounter"
],
"mustSupport" : [
"type",
"status",
"period"
],
"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/StructureDefinition/Encounter"
],
"mustSupport" : [
"type",
"status",
"period"
],
"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/StructureDefinition/Encounter"
],
"mustSupport" : [
"type",
"status",
"period"
],
"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/StructureDefinition/Encounter"
],
"mustSupport" : [
"type",
"status",
"period"
],
"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/StructureDefinition/Encounter"
],
"mustSupport" : [
"type",
"status",
"period"
],
"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/StructureDefinition/Encounter"
],
"mustSupport" : [
"type",
"status",
"period"
],
"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/StructureDefinition/Encounter"
],
"mustSupport" : [
"type",
"status",
"period"
],
"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/StructureDefinition/Encounter"
],
"mustSupport" : [
"type",
"status",
"period"
],
"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/StructureDefinition/Encounter"
],
"mustSupport" : [
"type",
"status",
"period"
],
"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/StructureDefinition/Encounter"
],
"mustSupport" : [
"type",
"status",
"period"
],
"codeFilter" : [
{
"path" : "type",
"valueSet" : "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1024"
}
]
},
{
"type" : "Patient",
"profile" : [
🔗 "http://hl7.org/fhir/StructureDefinition/Patient"
],
"mustSupport" : [
"birthDate"
]
},
{
"type" : "Medication",
"profile" : [
🔗 "http://hl7.org/fhir/StructureDefinition/Medication"
],
"mustSupport" : [
"id",
"code"
],
"codeFilter" : [
{
"path" : "code",
"valueSet" : "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.196.12.1001"
}
]
},
{
"type" : "Medication",
"profile" : [
🔗 "http://hl7.org/fhir/StructureDefinition/Medication"
],
"mustSupport" : [
"id",
"code"
],
"codeFilter" : [
{
"path" : "code",
"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/StructureDefinition/MedicationRequest"
],
"mustSupport" : [
"medication",
"status",
"intent",
"authoredOn",
"dosageInstruction",
"dispenseRequest",
"dispenseRequest.expectedSupplyDuration",
"dispenseRequest.expectedSupplyDuration.value",
"dispenseRequest.quantity",
"dispenseRequest.numberOfRepeatsAllowed",
"dispenseRequest.validityPeriod"
],
"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/StructureDefinition/MedicationRequest"
],
"mustSupport" : [
"medication.reference",
"status",
"intent",
"authoredOn",
"dosageInstruction",
"dispenseRequest",
"dispenseRequest.expectedSupplyDuration",
"dispenseRequest.expectedSupplyDuration.value",
"dispenseRequest.quantity",
"dispenseRequest.numberOfRepeatsAllowed",
"dispenseRequest.validityPeriod"
]
},
{
"type" : "Condition",
"profile" : [
"http://fhir.org/guides/astp/us-quality-core/StructureDefinition/us-quality-core-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://fhir.org/guides/astp/us-quality-core/StructureDefinition/us-quality-core-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" : "Condition",
"profile" : [
"http://fhir.org/guides/astp/us-quality-core/StructureDefinition/us-quality-core-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" : "Condition",
"profile" : [
"http://fhir.org/guides/astp/us-quality-core/StructureDefinition/us-quality-core-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" : "Condition",
"profile" : [
🔗 "http://hl7.org/fhir/StructureDefinition/Condition"
],
"mustSupport" : [
"abatement",
"verificationStatus",
"onset",
"recordedDate",
"clinicalStatus"
]
},
{
"type" : "Condition",
"profile" : [
🔗 "http://hl7.org/fhir/StructureDefinition/Condition"
],
"mustSupport" : [
"code",
"verificationStatus"
],
"codeFilter" : [
{
"path" : "code",
"valueSet" : "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.1165"
}
]
},
{
"type" : "Coverage",
"profile" : [
"http://fhir.org/guides/astp/us-quality-core/StructureDefinition/us-quality-core-coverage"
],
"mustSupport" : [
"type",
"period"
],
"codeFilter" : [
{
"path" : "type",
"valueSet" : "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.114222.4.11.3591"
}
]
},
{
"type" : "Encounter",
"profile" : [
"http://fhir.org/guides/astp/us-quality-core/StructureDefinition/us-quality-core-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://fhir.org/guides/astp/us-quality-core/StructureDefinition/us-quality-core-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://fhir.org/guides/astp/us-quality-core/StructureDefinition/us-quality-core-observation-screening-assessment"
],
"mustSupport" : [
"code",
"value",
"effective",
"status"
],
"codeFilter" : [
{
"path" : "code",
"code" : [
{
"system" : "http://loinc.org",
"code" : "45755-6",
"display" : "Hospice care [Minimum Data Set]"
}
]
},
{
"path" : "value"
}
]
},
{
"type" : "ServiceRequest",
"profile" : [
"http://fhir.org/guides/astp/us-quality-core/StructureDefinition/us-quality-core-servicerequest"
],
"mustSupport" : [
"code",
"authoredOn"
],
"codeFilter" : [
{
"path" : "code",
"valueSet" : "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.526.3.1584"
}
],
"dateFilter" : [
{
"path" : "authoredOn",
"valuePeriod" : {
"extension" : [
{
"url" : "http://hl7.org/fhir/StructureDefinition/cqf-expression",
"valueExpression" : {
"language" : "text/cql-identifier",
"expression" : "Measurement Period"
}
}
]
}
}
]
},
{
"type" : "Procedure",
"profile" : [
"http://fhir.org/guides/astp/us-quality-core/StructureDefinition/us-quality-core-procedure"
],
"mustSupport" : [
"code",
"performed"
],
"codeFilter" : [
{
"path" : "code",
"valueSet" : "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.526.3.1584"
}
]
}
]
}
],
"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"
}
],
"url" : "https://madie.cms.gov/Measure/CMS146FHIRApproTestPharyngitis",
"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:f5065d63-f2b7-438c-b677-14862bdecd27"
},
{
"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" : "1.1.000",
"name" : "CMS146FHIRApproTestPharyngitis",
"title" : "Appropriate Testing for PharyngitisFHIR",
"status" : "active",
"experimental" : false,
"date" : "2026-01-16T18:18:13+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. 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: CMS146v14. Please refer to the HL7 QI-Core Implementation Guide (https://hl7.org/fhir/us/qicore/STU6/) for more information on QI-Core and mapping recommendations from QDM to QI-Core STU 6. (https://hl7.org/fhir/us/qicore/STU6/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 endorsements about the quality of any product, test or protocol identified as numerator compliant or otherwise identified as meeting the requirements of the measure or specification. 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 may be used for internal, noncommercial purposes (e.g., use by healthcare providers in connection with their practices) without obtaining approval from NCQA. All other uses, including a commercial use (including but not limited to vendors using or embedding the measures and specifications into any product or service to calculate measure results for customers for any purpose), must be approved by NCQA and are subject to a license at the discretion of NCQA. (C) 2012-2025 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 2025. 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) (https://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-2025 Regenstrief Institute, Inc. and the Logical Observation Identifiers Names and Codes (LOINC) Committee, and are available at no cost under the license at https://loinc.org/kb/license/. This material contains SNOMED Clinical Terms(R) (SNOMED CT[R]) copyright 2004-2024 International Health Terminology Standards Development Organisation. ICD-10 copyright 2025 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.",
"effectivePeriod" : {
"start" : "2026-01-01",
"end" : "2026-12-31"
},
"author" : [
{
"name" : "National Committee for Quality Assurance",
"telecom" : [
{
"system" : "url",
"value" : "https://www.ncqa.org/"
}
]
}
],
"relatedArtifact" : [
{
"type" : "citation",
"citation" : "Linder, J. A., Bates, D. W., Lee, G. M., et al. (2005). Antibiotic Treatment of Children with Sore Throat. JAMA, 294(18), 2315-2322."
},
{
"type" : "citation",
"citation" : "Pfoh, E., Wessels, M.R., Goldmann, D., et al. (2008). Burden and Economic Cost of Group A Streptococcal Pharyngitis. Pediatrics, 121(2), 229-234. doi: 10.1542/peds.2007-0484"
},
{
"type" : "citation",
"citation" : "Shulman, S. T., Bisno, A. L., Clegg, H. W., et al. (2012). Clinical Practice Guideline for the Diagnosis and Management of Group A Streptococcal Pharyngitis: 2012 Update by the Infectious Diseases Society of America. Clinical Infectious Diseases, 55(10), E86-E102. doi:10.1093/cid/cis629"
}
],
"library" : [
🔗 "https://madie.cms.gov/Library/CMS146FHIRApproTestPharyngitis"
],
"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).",
"clinicalRecommendationStatement" : "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\"",
"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. 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.",
"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"
}
}
]
}