dQM QICore Content Implementation Guide
2025.0.0 - CI Build
dQM QICore Content Implementation Guide, published by cqframework. This guide is not an authorized publication; it is the continuous build for version 2025.0.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-qicore-2025/ and changes regularly. See the Directory of published versions
Active as of 2025-08-21 |
<Measure xmlns="http://hl7.org/fhir">
<id value="CMS314FHIRHIVViralSuppression"/>
<meta>
<profile
value="http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-shareablemeasure"/>
<profile
value="http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/computable-measure-cqfm"/>
<profile
value="http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/publishable-measure-cqfm"/>
<profile
value="http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/executable-measure-cqfm"/>
<profile
value="http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cql-measure-cqfm"/>
<profile
value="http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/elm-measure-cqfm"/>
<profile
value="http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/proportion-measure-cqfm"/>
</meta>
<text>
<status value="extensions"/>
<div xmlns="http://www.w3.org/1999/xhtml" class="col-12">
<table class="narrative-table">
<tbody>
<tr>
<th colspan="2" scope="row" class="row-header">Metadata</th>
</tr>
<tr>
<th scope="row" class="row-header">Title</th>
<td class="content-container">HIV Viral SuppressionFHIR</td>
</tr>
<tr>
<th scope="row" class="row-header">Version</th>
<td class="content-container">1.0.000</td>
</tr>
<tr>
<th scope="row" class="row-header">Short Name</th>
<td class="content-container">CMS314FHIR</td>
</tr>
<tr>
<th scope="row" class="row-header">GUID (Version Independent)</th>
<td class="content-container">urn:uuid:b8aa1302-d225-4dc7-9a3b-ffec45976a3e</td>
</tr>
<tr>
<th scope="row" class="row-header">GUID (Version Specific)</th>
<td class="content-container">urn:uuid:24caf503-3df8-41b4-a020-8c130973b91c</td>
</tr>
<tr>
<th scope="row" class="row-header">CMS Identifier</th>
<td class="content-container">314FHIR</td>
</tr>
<tr>
<th scope="row" class="row-header">Effective Period</th>
<td class="content-container">2026-01-01 through 2026-12-31</td>
</tr>
<tr>
<th scope="row" class="row-header">Steward (Publisher)</th>
<td class="content-container">Health Resources & Services Administration</td>
</tr>
<tr>
<th scope="row" class="row-header">Developer</th>
<td class="content-container">Health Resources & Services Administration</td>
</tr>
<tr>
<th scope="row" class="row-header">Description</th>
<td class="content-container"><p>Percentage of patients, regardless of age, diagnosed with Human Immunodeficiency Virus (HIV) prior to or during the first 90 days of the measurement period, with an eligible encounter in the first 240 days of the measurement period, whose last HIV viral load test result was less than 200 copies/mL during the measurement period</p></td>
</tr>
<tr>
<th scope="row" class="row-header">Copyright</th>
<td class="content-container"><p>This measure was developed by the Health Resources & Services Administration (HRSA) of the U.S. Department of Health & Human Services (HHS). It is in the public domain.</p>
<p>Citation of HRSA as the source of the original measure is appreciated. Any modified versions may not be represented as approved, endorsed, or authorized by HRSA or HHS. 42 U.S.C. Section 1320b-10. Users of modified versions should clearly explain how they deviate from HRSA's original measure.</p>
<p>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.</p>
<p>CPT(R) contained in the Measure specifications is copyright 2004-2024 American Medical Association. LOINC(R) is copyright 2004-2024 Regenstrief Institute, Inc. This material contains SNOMED Clinical Terms(R) (SNOMED CT[R]) copyright 2004-2024 International Health Terminology Standards Development Organisation. ICD-10 is copyright 2024 World Health Organization. All Rights Reserved.</p>
<p>Due to technical limitations, registered trademarks are indicated by (R) or [R] and unregistered trademarks are indicated by (TM) or [TM].</p></td>
</tr>
<tr>
<th scope="row" class="row-header">Disclaimer</th>
<td class="content-container"><p>These performance measures are not clinical guidelines and do not establish a standard of medical care, and have not been tested for all potential applications.</p>
<p>THE MEASURES AND SPECIFICATIONS ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND.</p>
<p>Due to technical limitations, registered trademarks are indicated by (R) or [R] and unregistered trademarks are indicated by (TM) or [TM].</p></td>
</tr>
<tr>
<th scope="row" class="row-header">Rationale</th>
<td class="content-container"><p>HIV is a communicable infection that leads to a progressive disease with a long asymptomatic period. Approximately 40,000 persons in the United States are newly infected with HIV each year (Centers for Disease Control and Prevention, 2021, p. 51). Without treatment, most persons develop acquired immunodeficiency syndrome (AIDS) within 10 years of HIV infection.</p>
<p>HIV viral suppression is a long-standing priority outcome among the HIV community in the United States and around the world. The National HIV/AIDS Strategy for the United States from 2022-2025, developed by the White House Office of National AIDS Policy with input from the HIV community across the United States, prioritizes increasing HIV viral suppression rates to 95 percent (The White House, 2020). The DHHS Panel on Antiretroviral Guidelines for Adults and Adolescents defines viral suppression as a viral load below the lower limits of detection in its guidelines on virologic failure, and it defines viral suppression as a viral load of less than 200 copies/mL as part of its guidelines for the use of antiretroviral therapy to prevent HIV transmission (Panel on Antiretroviral Guidelines for Adults and Adolescents, 2022).</p>
<p>Antiretroviral therapy (ART) delays the progression to AIDS and increases the length of survival. ART reduces HIV-associated morbidity and mortality by maximally inhibiting HIV replication to achieve viral suppression (Hogg et al., 2001; Lundgren et al., 2015). ART has also been shown to reduce transmission of HIV (Rodger et al., 2019). Studies show disparities in rates of viral suppression by race and ethnicity among MSM and among women, with Black and Hispanic or Latino/a study participants having lower rates of viral suppression than White participants (Buchacz et al., 2020; Buchacz et al., 2018; Geter et al., 2018). This measure will help providers direct their attention and quality improvement efforts towards improving HIV viral suppression rates.</p></td>
</tr>
<tr>
<th scope="row" class="row-header">Clinical Recommendation Statement</th>
<td class="content-container"><p>Adult guidelines: "The primary goal of antiretroviral therapy (ART) is to prevent HIV-associated morbidity and mortality. This goal is accomplished by using effective ART to achieve and maintain a plasma HIV-1 RNA (viral load) below the quantification limits of commercially available assays. Durable viral suppression improves immune function and overall quality of life, lowers the risk of both AIDS-defining and non-AIDS–defining complications, and allows persons with HIV to live a lifespan approaching that of persons without HIV" (Panel on Antiretroviral Guidelines for Adults and Adolescents, 2022, p. E-1).</p>
<p>"ART is recommended for all individuals with HIV to reduce the morbidity and mortality associated with HIV infection and to prevent HIV transmission to sexual partners and infants (AI). ART should be initiated as soon as possible after HIV diagnosis (AI)" (Panel on Antiretroviral Guidelines for Adults and Adolescents, 2022, p. E-2).</p>
<p>"The guidelines and the AIDS Clinical Trials Group (ACTG) now define virologic failure as a confirmed viral load >200 copies/mL- a threshold that eliminates most cases of apparent viremia caused by viral load blips or assay variability" (Panel on Antiretroviral Guidelines for Adults and Adolescents, 2022, p. C-6).</p>
<p>"Individuals who are adherent to their ARV regimen and do not harbor resistance mutations to the component drugs can generally achieve suppression 8 to 24 weeks after ART initiation; rarely, in some patients it may take longer" (Panel on Antiretroviral Guidelines for Adults and Adolescents, 2022, p. C-6).</p>
<p>Pediatric guidelines: "Based on accumulated experience with currently available assays, the current definition of virologic suppression is a plasma viral load below the detection limit of the assay used (generally <20 to 75 copies/mL)" (Panel on Antiretroviral Therapy and Medical Management of Children Living with HIV, 2022, p. D-5).</p>
<p>"Temporary viral load elevations ("blips") that are between the level of detection and 200 copies/mL to 500 copies/mL are often detected in adults and children who are on ART; these temporary elevations do not represent virologic failure, as long as the values have returned to below the level of detection when testing is repeated" (Panel on Antiretroviral Therapy and Medical Management of Children Living with HIV, 2022, p. D-5).</p></td>
</tr>
<tr>
<th scope="row" class="row-header">Citation</th>
<td class="content-container">
<p>Buchacz, K., Armon, C., Palella, F. J., Novak, R. M., Fuhrer, J., Tedaldi, E., . . . Investigators, HOPS (2020). The HIV Outpatient study-25 Years of HIV patient care and epidemiologic research. Open Forum Infect Dis, 7(5), ofaa123. https://doi.org/10.1093/ofid/ofaa123</p>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Citation</th>
<td class="content-container">
<p>Buchacz, K., Armon, C., Tedaldi, E., Palella, F. J., Novak, R. M., Ward, D., . . . Investigators, HOPS (2018). Disparities in HIV viral load suppression by race/ethnicity among men who have sex with men in the HIV Outpatient Study. AIDS Res Hum Retroviruses, 34(4), 357-364. https://doi.org/10.1089/AID.2017.0162</p>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Citation</th>
<td class="content-container">
<p>Centers for Disease Control and Prevention (2021). HIV surveillance report, 2019. http://www.cdc.gov/hiv/library/reports/hiv-surveillance.html</p>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Citation</th>
<td class="content-container">
<p>Geter, A., Sutton, M. Y., Armon, C., Durham, M. D., Palella, F. J., Tedaldi, E., . . . Investigators, HOPS (2018). Trends of racial and ethnic disparities in virologic suppression among women in the HIV Outpatient Study, USA, 2010-2015. PLoS One, 13(1), e0189973. https://doi.org/10.1371/journal.pone.0189973</p>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Citation</th>
<td class="content-container">
<p>Hogg, R. S., Yip, B., Chan, K. J., Wood, E., Craib, K. J., O'Shaughnessy, M. V., & Montaner, J. S. (2001). Rates of disease progression by baseline CD4 cell count and viral load after initiating triple-drug therapy. JAMA, 286(20), 2568-2577. https://doi.org/10.1001/jama.286.20.2568</p>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Citation</th>
<td class="content-container">
<p>Lundgren, J. D., Babiker, A. G., Gordin, F., Emery, S., Grund, B., Sharma, S., . . . Group, ISS (2015a). Initiation of antiretroviral therapy in early asymptomatic HIV infection. N Engl J Med, 373(9), 795-807. https://doi.org/10.1056/NEJMoa1506816</p>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Citation</th>
<td class="content-container">
<p>Panel on Antiretroviral Guidelines for Adults and Adolescents. (2022, September). "Guidelines for the Use of Antiretroviral Agents in Adults and Adolescents with HIV." Retrieved from https://clinicalinfo.hiv.gov/sites/default/files/guidelines/documents/adult-adolescent-arv/guidelines-adult-adolescent-arv.pdf</p>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Citation</th>
<td class="content-container">
<p>Panel on Antiretroviral Therapy and Medical Management of Children Living with HIV. (2022, October). Guidelines for the use of antiretroviral agents in pediatric HIV infection. Retrieved from https://clinicalinfo.hiv.gov/sites/default/files/guidelines/documents/pediatric-arv/guidelines-pediatric-arv.pdf</p>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Citation</th>
<td class="content-container">
<p>Rodger, A. J., Cambiano, V., Bruun, T., Vernazza, P., Collins, S., Degen, O., . . . Group, PS (2019). Risk of HIV transmission through condomless sex in serodifferent gay couples with the HIV-positive partner taking suppressive antiretroviral therapy (PARTNER): Final results of a multicentre, prospective, observational study. Lancet, 393(10189), 2428-2438. https://doi.org/10.1016/S0140-6736(19)30418-0</p>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Citation</th>
<td class="content-container">
<p>The White House. (2021). National HIV/AIDS strategy for the United States 2022–2025. https://files.hiv.gov/s3fs-public/NHAS-2022-2025.pdf</p>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Guidance (Usage)</th>
<td class="content-container"><p>HIV viral load data should be captured either as a numeric value or as a character/text value, depending on whether a given viral load result falls above or below the lab’s lower limit of detection. For viral loads at or above the lower limit of detection, the viral load should be captured as a numeric value (expressed as the number of copies/mL). For viral loads below the lower limit of detection, the viral load should be populated with a character/text value equivalent to "Below lower limit of detection." The EHR need not record this character value using this exact wording (for example, the character value could be recorded as "<20 copies/mL" or "not detected"), but values below the lower limit of detection should be documented to allow the submitter to accurately map them to a value of "Below lower limit of detection" for reporting purposes.</p>
<p>HIV viral load test results may be expressed as log values (log copies/mL). For this eCQM, please convert the log value to copies/mL.</p>
<p>Only patients diagnosed with HIV prior to or in the first 90 days of the measurement period are included in this measure to allow for sufficient time for patients to achieve viral suppression after their initial HIV diagnosis.</p>
<p>Only patients with an eligible encounter in the first 240 days of the measurement period are included in this measure to allow the reporting clinician to have sufficient time to collect follow-up labs on patients in the clinic before the end of the measurement period.</p>
<p>This eCQM is a patient-based measure.</p>
<p>This FHIR-based measure has been derived from the QDM-based measure CMS314v3. 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).</p></td>
</tr>
<tr>
<th colspan="2" scope="row" class="row-header">Measure Group (Rate) (ID: Group_1)</th>
</tr>
<tr>
<th scope="row" class="row-header">Basis</th>
<td class="content-container">boolean</td>
</tr>
<tr>
<th scope="row" class="row-header">Scoring</th>
<td class="content-container">[http://terminology.hl7.org/CodeSystem/measure-scoring#proportion: 'Proportion']</td>
</tr>
<tr>
<th scope="row" class="row-header">Type</th>
<td class="content-container">[http://terminology.hl7.org/CodeSystem/measure-type#outcome: 'Outcome']</td>
</tr>
<tr>
<th scope="row" class="row-header">Improvement Notation</th>
<td class="content-container">[http://terminology.hl7.org/CodeSystem/measure-improvement-notation#increase: 'Increased score indicates improvement']</td>
</tr>
<tr>
<th scope="row" class="row-header">Initial Population</th>
<td class="content-container">
<em>ID</em>: InitialPopulation_1
<br/>
<em>Description</em>:
<p style="white-space: pre-line" class="tab-one"><p>All patients, regardless of age, diagnosed with HIV prior to or during the first 90 days of the measurement period with at least one eligible encounter in the first 240 days of the measurement period</p></p>
<em>Logic Definition</em>: <a href="#primary-cms314fhirhivviralsuppression-initial-population">Initial Population</a>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Denominator</th>
<td class="content-container">
<em>ID</em>: Denominator_1
<br/>
<em>Description</em>:
<p style="white-space: pre-line" class="tab-one"><p>Equals Initial Population</p></p>
<em>Logic Definition</em>: <a href="#primary-cms314fhirhivviralsuppression-denominator">Denominator</a>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Numerator</th>
<td class="content-container">
<em>ID</em>: Numerator_1
<br/>
<em>Description</em>:
<p style="white-space: pre-line" class="tab-one"><p>Patients with a last HIV viral load test result of less than 200 copies/mL during the measurement period</p></p>
<em>Logic Definition</em>: <a href="#primary-cms314fhirhivviralsuppression-numerator">Numerator</a>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Supplemental Data Guidance</th>
<td class="content-container"><p>For every patient evaluated by this measure also identify payer, race, ethnicity and sex</p></td>
</tr>
<tr>
<th colspan="2" scope="row" class="row-header">Supplemental Data Elements</th>
</tr>
<tr>
<th scope="row" class="row-header">Supplemental Data Element</th>
<td class="content-container">
<em>ID</em>: sde-ethnicity
<br/>
<em>Usage Code</em>: [http://terminology.hl7.org/CodeSystem/measure-data-usage#supplemental-data]
<br/>
<em>Description</em>: SDE Ethnicity
<br/>
<em>Logic Definition</em>: <a href="#cms314fhirhivviralsuppression-sde-ethnicity">SDE Ethnicity</a>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Supplemental Data Element</th>
<td class="content-container">
<em>ID</em>: sde-race
<br/>
<em>Usage Code</em>: [http://terminology.hl7.org/CodeSystem/measure-data-usage#supplemental-data]
<br/>
<em>Description</em>: SDE Race
<br/>
<em>Logic Definition</em>: <a href="#cms314fhirhivviralsuppression-sde-race">SDE Race</a>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Supplemental Data Element</th>
<td class="content-container">
<em>ID</em>: sde-sex
<br/>
<em>Usage Code</em>: [http://terminology.hl7.org/CodeSystem/measure-data-usage#supplemental-data]
<br/>
<em>Description</em>: SDE Sex
<br/>
<em>Logic Definition</em>: <a href="#cms314fhirhivviralsuppression-sde-sex">SDE Sex</a>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Supplemental Data Element</th>
<td class="content-container">
<em>ID</em>: sde-payer
<br/>
<em>Usage Code</em>: [http://terminology.hl7.org/CodeSystem/measure-data-usage#supplemental-data]
<br/>
<em>Description</em>: SDE Payer
<br/>
<em>Logic Definition</em>: <a href="#cms314fhirhivviralsuppression-sde-payer">SDE Payer</a>
</td>
</tr>
<tr>
<th colspan="2" scope="row" class="row-header">Measure Logic</th>
</tr>
<tr>
<th scope="row" class="row-header">Primary Library</th>
<td class="content-container">https://madie.cms.gov/Library/CMS314FHIRHIVViralSuppression</td>
</tr>
<tr>
<th scope="row" class="row-header">Contents</th>
<td class="content-container">
<em><a href="#population-criteria">Population Criteria</a></em>
<br/>
<em><a href="#definitions">Logic Definitions</a></em>
<br/>
<em><a href="#terminology">Terminology</a></em>
<br/>
<em><a href="#dependencies">Dependencies</a></em>
<br/>
<em><a href="#data-requirements">Data Requirements</a></em>
<br/>
</td>
</tr>
<tr>
<th colspan="2" scope="row" class="row-header"><a name="population-criteria"> </a>Population Criteria</th>
</tr>
<tr>
<th colspan="2" scope="row" class="row-header">Measure Group (Rate) (ID: Group_1)</th>
</tr>
<tr>
<th scope="row" rowspan="2" class="row-header">
<a name="primary-cms314fhirhivviralsuppression-initial-population"> </a>
Initial Population
</th>
</tr>
<tr>
<td>
<pre style="border: none;" class="content-container highlight language-cql"><code class="language-cql">define "Initial Population":
"Has Active HIV Diagnosis Before or in First 90 Days of Measurement Period"
and "Has Qualifying Encounter During First 240 Days of Measurement Period"</code></pre>
</td>
</tr>
<tr>
<th scope="row" rowspan="2" class="row-header">
<a name="primary-cms314fhirhivviralsuppression-denominator"> </a>
Denominator
</th>
</tr>
<tr>
<td>
<pre style="border: none;" class="content-container highlight language-cql"><code class="language-cql">define "Denominator":
"Initial Population"</code></pre>
</td>
</tr>
<tr>
<th scope="row" rowspan="2" class="row-header">
<a name="primary-cms314fhirhivviralsuppression-numerator"> </a>
Numerator
</th>
</tr>
<tr>
<td>
<pre style="border: none;" class="content-container highlight language-cql"><code class="language-cql">define "Numerator":
"Most Recent Viral Load Test During Measurement Period".value < 200 '{copies}/mL'
or "Most Recent Viral Load Test During Measurement Period".value ~ "Below threshold level (qualifier value)"
or "Most Recent Viral Load Test During Measurement Period".value ~ "Not detected (qualifier value)"</code></pre>
</td>
</tr>
<tr>
<th colspan="2" scope="row" class="row-header"><a name="definitions"> </a>Logic Definitions</th>
</tr>
<tr>
<th scope="row" rowspan="2" class="row-header">
<a name="supplementaldataelements-sde-sex"> </a>
Logic Definition
</th>
<td class="content-container"><em>Library Name:</em> SupplementalDataElements</td>
</tr>
<tr>
<td>
<pre style="border: none;" class="content-container highlight language-cql"><code class="language-cql">define "SDE Sex":
case
when Patient.sex = '248153007' then "Male (finding)"
when Patient.sex = '248152002' then "Female (finding)"
else null
end</code></pre>
</td>
</tr>
<tr>
<th scope="row" rowspan="2" class="row-header">
<a name="supplementaldataelements-sde-payer"> </a>
Logic Definition
</th>
<td class="content-container"><em>Library Name:</em> SupplementalDataElements</td>
</tr>
<tr>
<td>
<pre style="border: none;" class="content-container highlight language-cql"><code class="language-cql">define "SDE Payer":
[Coverage: type in "Payer Type"] Payer
return {
code: Payer.type,
period: Payer.period
}</code></pre>
</td>
</tr>
<tr>
<th scope="row" rowspan="2" class="row-header">
<a name="supplementaldataelements-sde-ethnicity"> </a>
Logic Definition
</th>
<td class="content-container"><em>Library Name:</em> SupplementalDataElements</td>
</tr>
<tr>
<td>
<pre style="border: none;" class="content-container highlight language-cql"><code class="language-cql">define "SDE Ethnicity":
Patient.ethnicity E
return Tuple {
codes: { E.ombCategory } union E.detailed,
display: E.text
}</code></pre>
</td>
</tr>
<tr>
<th scope="row" rowspan="2" class="row-header">
<a name="supplementaldataelements-sde-race"> </a>
Logic Definition
</th>
<td class="content-container"><em>Library Name:</em> SupplementalDataElements</td>
</tr>
<tr>
<td>
<pre style="border: none;" class="content-container highlight language-cql"><code class="language-cql">define "SDE Race":
Patient.race R
return Tuple {
codes: R.ombCategory union R.detailed,
display: R.text
}</code></pre>
</td>
</tr>
<tr>
<th scope="row" rowspan="2" class="row-header">
<a name="qicorecommon-latest"> </a>
Logic Definition
</th>
<td class="content-container"><em>Library Name:</em> QICoreCommon</td>
</tr>
<tr>
<td>
<pre style="border: none;" class="content-container highlight language-cql"><code class="language-cql">/*
@description: Given an interval, returns the ending point if the interval has an ending boundary specified,
otherwise, returns the starting point
*/
define fluent function latest(choice Choice<DateTime, Quantity, Interval<DateTime>, Interval<Quantity>> ):
(choice.toInterval()) period
return
if (period."hasEnd"()) then end of period
else start of period</code></pre>
</td>
</tr>
<tr>
<th scope="row" rowspan="2" class="row-header">
<a name="qicorecommon-hasend"> </a>
Logic Definition
</th>
<td class="content-container"><em>Library Name:</em> QICoreCommon</td>
</tr>
<tr>
<td>
<pre style="border: none;" class="content-container highlight language-cql"><code class="language-cql">/*
@description: Given an interval, returns true if the interval has an ending boundary specified
(i.e. the end of the interval is not null and not the maximum DateTime value)
*/
define fluent function hasEnd(period Interval<DateTime> ):
not (
end of period is null
or end of period = maximum DateTime
)</code></pre>
</td>
</tr>
<tr>
<th scope="row" rowspan="2" class="row-header">
<a name="qicorecommon-earliest"> </a>
Logic Definition
</th>
<td class="content-container"><em>Library Name:</em> QICoreCommon</td>
</tr>
<tr>
<td>
<pre style="border: none;" class="content-container highlight language-cql"><code class="language-cql">/*
@description: Given an interval, return the starting point if the interval has a starting boundary specified,
otherwise, return the ending point
*/
define fluent function earliest(choice Choice<DateTime, Quantity, Interval<DateTime>, Interval<Quantity>> ):
(choice.toInterval()) period
return
if (period."hasStart"()) then start of period
else end of period</code></pre>
</td>
</tr>
<tr>
<th scope="row" rowspan="2" class="row-header">
<a name="qicorecommon-hasstart"> </a>
Logic Definition
</th>
<td class="content-container"><em>Library Name:</em> QICoreCommon</td>
</tr>
<tr>
<td>
<pre style="border: none;" class="content-container highlight language-cql"><code class="language-cql">/*
@description: Given an interval, return true if the interval has a starting boundary specified
(i.e. the start of the interval is not null and not the minimum DateTime value)
*/
define fluent function hasStart(period Interval<DateTime> ):
not ( start of period is null
or start of period = minimum DateTime
)</code></pre>
</td>
</tr>
<tr>
<th scope="row" rowspan="2" class="row-header">
<a name="cms314fhirhivviralsuppression-sde-sex"> </a>
Logic Definition
</th>
<td class="content-container"><em>Library Name:</em> CMS314FHIRHIVViralSuppression</td>
</tr>
<tr>
<td>
<pre style="border: none;" class="content-container highlight language-cql"><code class="language-cql">define "SDE Sex":
SDE."SDE Sex"</code></pre>
</td>
</tr>
<tr>
<th scope="row" rowspan="2" class="row-header">
<a name="cms314fhirhivviralsuppression-most-recent-viral-load-test-during-measurement-period"> </a>
Logic Definition
</th>
<td class="content-container"><em>Library Name:</em> CMS314FHIRHIVViralSuppression</td>
</tr>
<tr>
<td>
<pre style="border: none;" class="content-container highlight language-cql"><code class="language-cql">define "Most Recent Viral Load Test During Measurement Period":
Last(["LaboratoryResultObservation": "HIV Viral Load Tests"] ViralLoad
where ViralLoad.status in { 'final', 'amended', 'corrected' }
and ViralLoad.effective.latest() during day of "Measurement Period"
sort by effective.earliest()
)</code></pre>
</td>
</tr>
<tr>
<th scope="row" rowspan="2" class="row-header">
<a name="cms314fhirhivviralsuppression-numerator"> </a>
Logic Definition
</th>
<td class="content-container"><em>Library Name:</em> CMS314FHIRHIVViralSuppression</td>
</tr>
<tr>
<td>
<pre style="border: none;" class="content-container highlight language-cql"><code class="language-cql">define "Numerator":
"Most Recent Viral Load Test During Measurement Period".value < 200 '{copies}/mL'
or "Most Recent Viral Load Test During Measurement Period".value ~ "Below threshold level (qualifier value)"
or "Most Recent Viral Load Test During Measurement Period".value ~ "Not detected (qualifier value)"</code></pre>
</td>
</tr>
<tr>
<th scope="row" rowspan="2" class="row-header">
<a name="cms314fhirhivviralsuppression-has-active-hiv-diagnosis-before-or-in-first-90-days-of-measurement-period"> </a>
Logic Definition
</th>
<td class="content-container"><em>Library Name:</em> CMS314FHIRHIVViralSuppression</td>
</tr>
<tr>
<td>
<pre style="border: none;" class="content-container highlight language-cql"><code class="language-cql">define "Has Active HIV Diagnosis Before or in First 90 Days of Measurement Period":
exists ( ["ConditionProblemsHealthConcerns": "HIV"]
union ["ConditionEncounterDiagnosis": "HIV"] ) HIVDx
where HIVDx.prevalenceInterval ( ) starts before day of ( start of "Measurement Period" + 90 days )
and HIVDx.isVerified ( )</code></pre>
</td>
</tr>
<tr>
<th scope="row" rowspan="2" class="row-header">
<a name="cms314fhirhivviralsuppression-has-qualifying-encounter-during-first-240-days-of-measurement-period"> </a>
Logic Definition
</th>
<td class="content-container"><em>Library Name:</em> CMS314FHIRHIVViralSuppression</td>
</tr>
<tr>
<td>
<pre style="border: none;" class="content-container highlight language-cql"><code class="language-cql">define "Has Qualifying Encounter During First 240 Days of Measurement Period":
/*Note: applied workaround using value set 'Preventive Care Services Other', as a DRC cannot be used directly from an encounter retrieve; additional info can be found in CQLIT-368*/
exists ( ["Encounter": "Office Visit"]
union ["Encounter": "Outpatient Consultation"]
union ["Encounter": "Annual Wellness Visit"]
union ["Encounter": "Face-to-Face Interaction"]
union ["Encounter": "Home Healthcare Services"]
union ["Encounter": "Preventive Care Services Established Office Visit, 18 and Up"]
union ["Encounter": "Preventive Care Services Initial Office Visit, 18 and Up"]
union ["Encounter": "Preventive Care Services, Initial Office Visit, 0 to 17"]
union ["Encounter": "Preventive Care, Established Office Visit, 0 to 17"]
union ["Encounter": "Telephone Visits"]
union ["Encounter": "Preventive Care Services Other"] ) QualifyingEncounter
where QualifyingEncounter.period during day of Interval[start of "Measurement Period", start of "Measurement Period" + 240 days]
and QualifyingEncounter.status = 'finished'</code></pre>
</td>
</tr>
<tr>
<th scope="row" rowspan="2" class="row-header">
<a name="cms314fhirhivviralsuppression-initial-population"> </a>
Logic Definition
</th>
<td class="content-container"><em>Library Name:</em> CMS314FHIRHIVViralSuppression</td>
</tr>
<tr>
<td>
<pre style="border: none;" class="content-container highlight language-cql"><code class="language-cql">define "Initial Population":
"Has Active HIV Diagnosis Before or in First 90 Days of Measurement Period"
and "Has Qualifying Encounter During First 240 Days of Measurement Period"</code></pre>
</td>
</tr>
<tr>
<th scope="row" rowspan="2" class="row-header">
<a name="cms314fhirhivviralsuppression-denominator"> </a>
Logic Definition
</th>
<td class="content-container"><em>Library Name:</em> CMS314FHIRHIVViralSuppression</td>
</tr>
<tr>
<td>
<pre style="border: none;" class="content-container highlight language-cql"><code class="language-cql">define "Denominator":
"Initial Population"</code></pre>
</td>
</tr>
<tr>
<th scope="row" rowspan="2" class="row-header">
<a name="cms314fhirhivviralsuppression-sde-payer"> </a>
Logic Definition
</th>
<td class="content-container"><em>Library Name:</em> CMS314FHIRHIVViralSuppression</td>
</tr>
<tr>
<td>
<pre style="border: none;" class="content-container highlight language-cql"><code class="language-cql">define "SDE Payer":
SDE."SDE Payer"</code></pre>
</td>
</tr>
<tr>
<th scope="row" rowspan="2" class="row-header">
<a name="cms314fhirhivviralsuppression-sde-ethnicity"> </a>
Logic Definition
</th>
<td class="content-container"><em>Library Name:</em> CMS314FHIRHIVViralSuppression</td>
</tr>
<tr>
<td>
<pre style="border: none;" class="content-container highlight language-cql"><code class="language-cql">define "SDE Ethnicity":
SDE."SDE Ethnicity"</code></pre>
</td>
</tr>
<tr>
<th scope="row" rowspan="2" class="row-header">
<a name="cms314fhirhivviralsuppression-sde-race"> </a>
Logic Definition
</th>
<td class="content-container"><em>Library Name:</em> CMS314FHIRHIVViralSuppression</td>
</tr>
<tr>
<td>
<pre style="border: none;" class="content-container highlight language-cql"><code class="language-cql">define "SDE Race":
SDE."SDE Race"</code></pre>
</td>
</tr>
<tr>
<th scope="row" rowspan="2" class="row-header">
<a name="cms314fhirhivviralsuppression-isverified"> </a>
Logic Definition
</th>
<td class="content-container"><em>Library Name:</em> CMS314FHIRHIVViralSuppression</td>
</tr>
<tr>
<td>
<pre style="border: none;" class="content-container highlight language-cql"><code class="language-cql">define fluent function isVerified(condition Choice<QICore.ConditionProblemsHealthConcerns, QICore.ConditionEncounterDiagnosis>):
condition.verificationStatus is not null implies ( condition.verificationStatus ~ QICoreCommon."confirmed"
or condition.verificationStatus ~ QICoreCommon."unconfirmed"
or condition.verificationStatus ~ QICoreCommon."provisional"
or condition.verificationStatus ~ QICoreCommon."differential"
)</code></pre>
</td>
</tr>
<tr>
<th scope="row" rowspan="2" class="row-header">
<a name="fhirhelpers-tostring"> </a>
Logic Definition
</th>
<td class="content-container"><em>Library Name:</em> FHIRHelpers</td>
</tr>
<tr>
<td>
<pre style="border: none;" class="content-container highlight language-cql"><code class="language-cql">define function ToString(value uri): value.value</code></pre>
</td>
</tr>
<tr>
<th scope="row" rowspan="2" class="row-header">
<a name="fhirhelpers-tointerval"> </a>
Logic Definition
</th>
<td class="content-container"><em>Library Name:</em> FHIRHelpers</td>
</tr>
<tr>
<td>
<pre style="border: none;" class="content-container highlight language-cql"><code class="language-cql">/*
@description: Converts the given [Period](https://hl7.org/fhir/datatypes.html#Period)
value to a CQL DateTime Interval
@comment: If the start value of the given period is unspecified, the starting
boundary of the resulting interval will be open (meaning the start of the interval
is unknown, as opposed to interpreted as the beginning of time).
*/
define function ToInterval(period FHIR.Period):
if period is null then
null
else
if period."start" is null then
Interval(period."start".value, period."end".value]
else
Interval[period."start".value, period."end".value]</code></pre>
</td>
</tr>
<tr>
<th scope="row" rowspan="2" class="row-header">
<a name="fhirhelpers-tocode"> </a>
Logic Definition
</th>
<td class="content-container"><em>Library Name:</em> FHIRHelpers</td>
</tr>
<tr>
<td>
<pre style="border: none;" class="content-container highlight language-cql"><code class="language-cql">/*
@description: Converts the given FHIR [Coding](https://hl7.org/fhir/datatypes.html#Coding) value to a CQL Code.
*/
define function ToCode(coding FHIR.Coding):
if coding is null then
null
else
System.Code {
code: coding.code.value,
system: coding.system.value,
version: coding.version.value,
display: coding.display.value
}</code></pre>
</td>
</tr>
<tr>
<th colspan="2" scope="row" class="row-header"><a name="terminology"> </a>Terminology</th>
</tr>
<tr>
<th scope="row" class="row-header">Code System</th>
<td class="content-container">
<em>Description</em>: Code system SNOMEDCT
<br/>
<em>Resource</em>: http://snomed.info/sct
<br/>
<em>Canonical URL</em>: <tt>http://snomed.info/sct</tt>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Code System</th>
<td class="content-container">
<em>Description</em>: Code system ConditionVerificationStatusCodes
<br/>
<em>Resource</em>: http://terminology.hl7.org/CodeSystem/condition-ver-status
<br/>
<em>Canonical URL</em>: <tt>http://terminology.hl7.org/CodeSystem/condition-ver-status</tt>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Value Set</th>
<td class="content-container">
<em>Description</em>: Value set HIV Viral Load Tests
<br/>
<em>Resource</em>: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1248.377
<br/>
<em>Canonical URL</em>: <tt>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1248.377</tt>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Value Set</th>
<td class="content-container">
<em>Description</em>: Value set HIV
<br/>
<em>Resource</em>: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.120.12.1003
<br/>
<em>Canonical URL</em>: <tt>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.120.12.1003</tt>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Value Set</th>
<td class="content-container">
<em>Description</em>: Value set Office Visit
<br/>
<em>Resource</em>: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1001
<br/>
<em>Canonical URL</em>: <tt>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1001</tt>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Value Set</th>
<td class="content-container">
<em>Description</em>: Value set Outpatient Consultation
<br/>
<em>Resource</em>: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1008
<br/>
<em>Canonical URL</em>: <tt>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1008</tt>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Value Set</th>
<td class="content-container">
<em>Description</em>: Value set Annual Wellness Visit
<br/>
<em>Resource</em>: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.526.3.1240
<br/>
<em>Canonical URL</em>: <tt>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.526.3.1240</tt>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Value Set</th>
<td class="content-container">
<em>Description</em>: Value set Face-to-Face Interaction
<br/>
<em>Resource</em>: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1248.375
<br/>
<em>Canonical URL</em>: <tt>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1248.375</tt>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Value Set</th>
<td class="content-container">
<em>Description</em>: Value set Home Healthcare Services
<br/>
<em>Resource</em>: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1016
<br/>
<em>Canonical URL</em>: <tt>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1016</tt>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Value Set</th>
<td class="content-container">
<em>Description</em>: Value set Preventive Care Services Established Office Visit, 18 and Up
<br/>
<em>Resource</em>: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1025
<br/>
<em>Canonical URL</em>: <tt>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1025</tt>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Value Set</th>
<td class="content-container">
<em>Description</em>: Value set Preventive Care Services Initial Office Visit, 18 and Up
<br/>
<em>Resource</em>: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1023
<br/>
<em>Canonical URL</em>: <tt>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1023</tt>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Value Set</th>
<td class="content-container">
<em>Description</em>: Value set Preventive Care Services, Initial Office Visit, 0 to 17
<br/>
<em>Resource</em>: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1022
<br/>
<em>Canonical URL</em>: <tt>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1022</tt>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Value Set</th>
<td class="content-container">
<em>Description</em>: Value set Preventive Care, Established Office Visit, 0 to 17
<br/>
<em>Resource</em>: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1024
<br/>
<em>Canonical URL</em>: <tt>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1024</tt>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Value Set</th>
<td class="content-container">
<em>Description</em>: Value set Telephone Visits
<br/>
<em>Resource</em>: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1080
<br/>
<em>Canonical URL</em>: <tt>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1080</tt>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Value Set</th>
<td class="content-container">
<em>Description</em>: Value set Preventive Care Services Other
<br/>
<em>Resource</em>: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.11.1150
<br/>
<em>Canonical URL</em>: <tt>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.11.1150</tt>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Value Set</th>
<td class="content-container">
<em>Description</em>: Value set Payer Type
<br/>
<em>Resource</em>: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.114222.4.11.3591
<br/>
<em>Canonical URL</em>: <tt>http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.114222.4.11.3591</tt>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Direct Reference Code</th>
<td class="content-container">
<em>Display</em>: Male (finding)
<br/>
<em>Code</em>: 248153007
<br/>
<em>System</em>: <tt>http://snomed.info/sct</tt>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Direct Reference Code</th>
<td class="content-container">
<em>Display</em>: Female (finding)
<br/>
<em>Code</em>: 248152002
<br/>
<em>System</em>: <tt>http://snomed.info/sct</tt>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Direct Reference Code</th>
<td class="content-container">
<em>Display</em>: Below threshold level (qualifier value)
<br/>
<em>Code</em>: 260988000
<br/>
<em>System</em>: <tt>http://snomed.info/sct</tt>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Direct Reference Code</th>
<td class="content-container">
<em>Display</em>: Not detected (qualifier value)
<br/>
<em>Code</em>: 260415000
<br/>
<em>System</em>: <tt>http://snomed.info/sct</tt>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Direct Reference Code</th>
<td class="content-container">
<em>Display</em>: Confirmed
<br/>
<em>Code</em>: confirmed
<br/>
<em>System</em>: <tt>http://terminology.hl7.org/CodeSystem/condition-ver-status</tt>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Direct Reference Code</th>
<td class="content-container">
<em>Display</em>: Unconfirmed
<br/>
<em>Code</em>: unconfirmed
<br/>
<em>System</em>: <tt>http://terminology.hl7.org/CodeSystem/condition-ver-status</tt>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Direct Reference Code</th>
<td class="content-container">
<em>Display</em>: Provisional
<br/>
<em>Code</em>: provisional
<br/>
<em>System</em>: <tt>http://terminology.hl7.org/CodeSystem/condition-ver-status</tt>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Direct Reference Code</th>
<td class="content-container">
<em>Display</em>: Differential
<br/>
<em>Code</em>: differential
<br/>
<em>System</em>: <tt>http://terminology.hl7.org/CodeSystem/condition-ver-status</tt>
</td>
</tr>
<tr>
<th colspan="2" scope="row" class="row-header"><a name="dependencies"> </a>Dependencies</th>
</tr>
<tr>
<th scope="row" class="row-header">Dependency</th>
<td class="content-container">
<em>Description</em>: QICore model information
<br/>
<em>Resource</em>: http://hl7.org/fhir/Library/QICore-ModelInfo
<br/>
<em>Canonical URL</em>: <tt>http://hl7.org/fhir/Library/QICore-ModelInfo</tt>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Dependency</th>
<td class="content-container">
<em>Description</em>: Library SDE
<br/>
<em>Resource</em>: https://madie.cms.gov/Library/SupplementalDataElements|5.1.000
<br/>
<em>Canonical URL</em>: <tt>https://madie.cms.gov/Library/SupplementalDataElements|5.1.000</tt>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Dependency</th>
<td class="content-container">
<em>Description</em>: Library FHIRHelpers
<br/>
<em>Resource</em>: https://madie.cms.gov/Library/FHIRHelpers|4.4.000
<br/>
<em>Canonical URL</em>: <tt>https://madie.cms.gov/Library/FHIRHelpers|4.4.000</tt>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Dependency</th>
<td class="content-container">
<em>Description</em>: Library QICoreCommon
<br/>
<em>Resource</em>: https://madie.cms.gov/Library/QICoreCommon|4.0.000
<br/>
<em>Canonical URL</em>: <tt>https://madie.cms.gov/Library/QICoreCommon|4.0.000</tt>
</td>
</tr>
<tr>
<th colspan="2" scope="row" class="row-header"><a name="data-requirements"> </a>Data Requirements</th>
</tr>
<tr>
<th scope="row" class="row-header">Data Requirement</th>
<td class="content-container">
<em>Type</em>: Patient
<br/>
<em>Profile(s)</em>:
http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-patient
<br/>
<em>Must Support Elements</em>: extension, url
<br/>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Data Requirement</th>
<td class="content-container">
<em>Type</em>: Observation
<br/>
<em>Profile(s)</em>:
http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-observation-lab
<br/>
<em>Must Support Elements</em>: code, status, status.value, effective
<br/>
<em>Code Filter(s)</em>:
<br/>
<span class="tab-one"><em>Path</em>: code</span>
<br/>
<span class="tab-one"><em>ValueSet</em>:</span> http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1248.377
<br/>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Data Requirement</th>
<td class="content-container">
<em>Type</em>: Observation
<br/>
<em>Profile(s)</em>:
http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-observation-lab
<br/>
<em>Must Support Elements</em>: value
<br/>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Data Requirement</th>
<td class="content-container">
<em>Type</em>: Condition
<br/>
<em>Profile(s)</em>:
http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-condition-problems-health-concerns
<br/>
<em>Must Support Elements</em>: code
<br/>
<em>Code Filter(s)</em>:
<br/>
<span class="tab-one"><em>Path</em>: code</span>
<br/>
<span class="tab-one"><em>ValueSet</em>:</span> http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.120.12.1003
<br/>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Data Requirement</th>
<td class="content-container">
<em>Type</em>: Condition
<br/>
<em>Profile(s)</em>:
http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-condition-encounter-diagnosis
<br/>
<em>Must Support Elements</em>: code
<br/>
<em>Code Filter(s)</em>:
<br/>
<span class="tab-one"><em>Path</em>: code</span>
<br/>
<span class="tab-one"><em>ValueSet</em>:</span> http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.120.12.1003
<br/>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Data Requirement</th>
<td class="content-container">
<em>Type</em>: Encounter
<br/>
<em>Profile(s)</em>:
http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter
<br/>
<em>Must Support Elements</em>: type, period, status, status.value
<br/>
<em>Code Filter(s)</em>:
<br/>
<span class="tab-one"><em>Path</em>: type</span>
<br/>
<span class="tab-one"><em>ValueSet</em>:</span> http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1001
<br/>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Data Requirement</th>
<td class="content-container">
<em>Type</em>: Encounter
<br/>
<em>Profile(s)</em>:
http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter
<br/>
<em>Must Support Elements</em>: type, period, status, status.value
<br/>
<em>Code Filter(s)</em>:
<br/>
<span class="tab-one"><em>Path</em>: type</span>
<br/>
<span class="tab-one"><em>ValueSet</em>:</span> http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1008
<br/>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Data Requirement</th>
<td class="content-container">
<em>Type</em>: Encounter
<br/>
<em>Profile(s)</em>:
http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter
<br/>
<em>Must Support Elements</em>: type, period, status, status.value
<br/>
<em>Code Filter(s)</em>:
<br/>
<span class="tab-one"><em>Path</em>: type</span>
<br/>
<span class="tab-one"><em>ValueSet</em>:</span> http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.526.3.1240
<br/>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Data Requirement</th>
<td class="content-container">
<em>Type</em>: Encounter
<br/>
<em>Profile(s)</em>:
http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter
<br/>
<em>Must Support Elements</em>: type, period, status, status.value
<br/>
<em>Code Filter(s)</em>:
<br/>
<span class="tab-one"><em>Path</em>: type</span>
<br/>
<span class="tab-one"><em>ValueSet</em>:</span> http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1248.375
<br/>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Data Requirement</th>
<td class="content-container">
<em>Type</em>: Encounter
<br/>
<em>Profile(s)</em>:
http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter
<br/>
<em>Must Support Elements</em>: type, period, status, status.value
<br/>
<em>Code Filter(s)</em>:
<br/>
<span class="tab-one"><em>Path</em>: type</span>
<br/>
<span class="tab-one"><em>ValueSet</em>:</span> http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1016
<br/>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Data Requirement</th>
<td class="content-container">
<em>Type</em>: Encounter
<br/>
<em>Profile(s)</em>:
http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter
<br/>
<em>Must Support Elements</em>: type, period, status, status.value
<br/>
<em>Code Filter(s)</em>:
<br/>
<span class="tab-one"><em>Path</em>: type</span>
<br/>
<span class="tab-one"><em>ValueSet</em>:</span> http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1025
<br/>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Data Requirement</th>
<td class="content-container">
<em>Type</em>: Encounter
<br/>
<em>Profile(s)</em>:
http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter
<br/>
<em>Must Support Elements</em>: type, period, status, status.value
<br/>
<em>Code Filter(s)</em>:
<br/>
<span class="tab-one"><em>Path</em>: type</span>
<br/>
<span class="tab-one"><em>ValueSet</em>:</span> http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1023
<br/>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Data Requirement</th>
<td class="content-container">
<em>Type</em>: Encounter
<br/>
<em>Profile(s)</em>:
http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter
<br/>
<em>Must Support Elements</em>: type, period, status, status.value
<br/>
<em>Code Filter(s)</em>:
<br/>
<span class="tab-one"><em>Path</em>: type</span>
<br/>
<span class="tab-one"><em>ValueSet</em>:</span> http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1022
<br/>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Data Requirement</th>
<td class="content-container">
<em>Type</em>: Encounter
<br/>
<em>Profile(s)</em>:
http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter
<br/>
<em>Must Support Elements</em>: type, period, status, status.value
<br/>
<em>Code Filter(s)</em>:
<br/>
<span class="tab-one"><em>Path</em>: type</span>
<br/>
<span class="tab-one"><em>ValueSet</em>:</span> http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1024
<br/>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Data Requirement</th>
<td class="content-container">
<em>Type</em>: Encounter
<br/>
<em>Profile(s)</em>:
http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter
<br/>
<em>Must Support Elements</em>: type, period, status, status.value
<br/>
<em>Code Filter(s)</em>:
<br/>
<span class="tab-one"><em>Path</em>: type</span>
<br/>
<span class="tab-one"><em>ValueSet</em>:</span> http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1080
<br/>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Data Requirement</th>
<td class="content-container">
<em>Type</em>: Encounter
<br/>
<em>Profile(s)</em>:
http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter
<br/>
<em>Must Support Elements</em>: type, period, status, status.value
<br/>
<em>Code Filter(s)</em>:
<br/>
<span class="tab-one"><em>Path</em>: type</span>
<br/>
<span class="tab-one"><em>ValueSet</em>:</span> http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.11.1150
<br/>
</td>
</tr>
<tr>
<th scope="row" class="row-header">Data Requirement</th>
<td class="content-container">
<em>Type</em>: Coverage
<br/>
<em>Profile(s)</em>:
http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-coverage
<br/>
<em>Must Support Elements</em>: type, period
<br/>
<em>Code Filter(s)</em>:
<br/>
<span class="tab-one"><em>Path</em>: type</span>
<br/>
<span class="tab-one"><em>ValueSet</em>:</span> http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.114222.4.11.3591
<br/>
</td>
</tr>
<tr>
<th colspan="2" scope="row" class="row-header">Generated using version 0.4.8 of the sample-content-ig Liquid templates</th>
</tr>
</tbody>
</table>
</div>
</text>
<contained>
<Library>
<id value="effective-data-requirements"/>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-directReferenceCode">
<valueCoding>
<system value="http://snomed.info/sct"/>
<code value="248153007"/>
<display value="Male (finding)"/>
</valueCoding>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-directReferenceCode">
<valueCoding>
<system value="http://snomed.info/sct"/>
<code value="248152002"/>
<display value="Female (finding)"/>
</valueCoding>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-directReferenceCode">
<valueCoding>
<system value="http://snomed.info/sct"/>
<code value="260988000"/>
<display value="Below threshold level (qualifier value)"/>
</valueCoding>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-directReferenceCode">
<valueCoding>
<system value="http://snomed.info/sct"/>
<code value="260415000"/>
<display value="Not detected (qualifier value)"/>
</valueCoding>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-directReferenceCode">
<valueCoding>
<system
value="http://terminology.hl7.org/CodeSystem/condition-ver-status"/>
<code value="confirmed"/>
<display value="Confirmed"/>
</valueCoding>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-directReferenceCode">
<valueCoding>
<system
value="http://terminology.hl7.org/CodeSystem/condition-ver-status"/>
<code value="unconfirmed"/>
<display value="Unconfirmed"/>
</valueCoding>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-directReferenceCode">
<valueCoding>
<system
value="http://terminology.hl7.org/CodeSystem/condition-ver-status"/>
<code value="provisional"/>
<display value="Provisional"/>
</valueCoding>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-directReferenceCode">
<valueCoding>
<system
value="http://terminology.hl7.org/CodeSystem/condition-ver-status"/>
<code value="differential"/>
<display value="Differential"/>
</valueCoding>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="SupplementalDataElements"/>
</extension>
<extension url="name">
<valueString value="SDE Sex"/>
</extension>
<extension url="statement">
<valueString
value="define "SDE Sex":
case
when Patient.sex = '248153007' then "Male (finding)"
when Patient.sex = '248152002' then "Female (finding)"
else null
end"/>
</extension>
<extension url="displaySequence">
<valueInteger value="0"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="CMS314FHIRHIVViralSuppression"/>
</extension>
<extension url="name">
<valueString value="SDE Sex"/>
</extension>
<extension url="statement">
<valueString
value="define "SDE Sex":
SDE."SDE Sex""/>
</extension>
<extension url="displaySequence">
<valueInteger value="1"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="CMS314FHIRHIVViralSuppression"/>
</extension>
<extension url="name">
<valueString
value="Most Recent Viral Load Test During Measurement Period"/>
</extension>
<extension url="statement">
<valueString
value="define "Most Recent Viral Load Test During Measurement Period":
Last(["LaboratoryResultObservation": "HIV Viral Load Tests"] ViralLoad
where ViralLoad.status in { 'final', 'amended', 'corrected' }
and ViralLoad.effective.latest() during day of "Measurement Period"
sort by effective.earliest()
)"/>
</extension>
<extension url="displaySequence">
<valueInteger value="2"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="CMS314FHIRHIVViralSuppression"/>
</extension>
<extension url="name">
<valueString value="Numerator"/>
</extension>
<extension url="statement">
<valueString
value="define "Numerator":
"Most Recent Viral Load Test During Measurement Period".value < 200 '{copies}/mL'
or "Most Recent Viral Load Test During Measurement Period".value ~ "Below threshold level (qualifier value)"
or "Most Recent Viral Load Test During Measurement Period".value ~ "Not detected (qualifier value)""/>
</extension>
<extension url="displaySequence">
<valueInteger value="3"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="CMS314FHIRHIVViralSuppression"/>
</extension>
<extension url="name">
<valueString
value="Has Active HIV Diagnosis Before or in First 90 Days of Measurement Period"/>
</extension>
<extension url="statement">
<valueString
value="define "Has Active HIV Diagnosis Before or in First 90 Days of Measurement Period":
exists ( ["ConditionProblemsHealthConcerns": "HIV"]
union ["ConditionEncounterDiagnosis": "HIV"] ) HIVDx
where HIVDx.prevalenceInterval ( ) starts before day of ( start of "Measurement Period" + 90 days )
and HIVDx.isVerified ( )"/>
</extension>
<extension url="displaySequence">
<valueInteger value="4"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="CMS314FHIRHIVViralSuppression"/>
</extension>
<extension url="name">
<valueString
value="Has Qualifying Encounter During First 240 Days of Measurement Period"/>
</extension>
<extension url="statement">
<valueString
value="define "Has Qualifying Encounter During First 240 Days of Measurement Period":
/*Note: applied workaround using value set 'Preventive Care Services Other', as a DRC cannot be used directly from an encounter retrieve; additional info can be found in CQLIT-368*/
exists ( ["Encounter": "Office Visit"]
union ["Encounter": "Outpatient Consultation"]
union ["Encounter": "Annual Wellness Visit"]
union ["Encounter": "Face-to-Face Interaction"]
union ["Encounter": "Home Healthcare Services"]
union ["Encounter": "Preventive Care Services Established Office Visit, 18 and Up"]
union ["Encounter": "Preventive Care Services Initial Office Visit, 18 and Up"]
union ["Encounter": "Preventive Care Services, Initial Office Visit, 0 to 17"]
union ["Encounter": "Preventive Care, Established Office Visit, 0 to 17"]
union ["Encounter": "Telephone Visits"]
union ["Encounter": "Preventive Care Services Other"] ) QualifyingEncounter
where QualifyingEncounter.period during day of Interval[start of "Measurement Period", start of "Measurement Period" + 240 days]
and QualifyingEncounter.status = 'finished'"/>
</extension>
<extension url="displaySequence">
<valueInteger value="5"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="CMS314FHIRHIVViralSuppression"/>
</extension>
<extension url="name">
<valueString value="Initial Population"/>
</extension>
<extension url="statement">
<valueString
value="define "Initial Population":
"Has Active HIV Diagnosis Before or in First 90 Days of Measurement Period"
and "Has Qualifying Encounter During First 240 Days of Measurement Period""/>
</extension>
<extension url="displaySequence">
<valueInteger value="6"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="CMS314FHIRHIVViralSuppression"/>
</extension>
<extension url="name">
<valueString value="Denominator"/>
</extension>
<extension url="statement">
<valueString
value="define "Denominator":
"Initial Population""/>
</extension>
<extension url="displaySequence">
<valueInteger value="7"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="SupplementalDataElements"/>
</extension>
<extension url="name">
<valueString value="SDE Payer"/>
</extension>
<extension url="statement">
<valueString
value="define "SDE Payer":
[Coverage: type in "Payer Type"] Payer
return {
code: Payer.type,
period: Payer.period
}"/>
</extension>
<extension url="displaySequence">
<valueInteger value="8"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="CMS314FHIRHIVViralSuppression"/>
</extension>
<extension url="name">
<valueString value="SDE Payer"/>
</extension>
<extension url="statement">
<valueString
value="define "SDE Payer":
SDE."SDE Payer""/>
</extension>
<extension url="displaySequence">
<valueInteger value="9"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="SupplementalDataElements"/>
</extension>
<extension url="name">
<valueString value="SDE Ethnicity"/>
</extension>
<extension url="statement">
<valueString
value="define "SDE Ethnicity":
Patient.ethnicity E
return Tuple {
codes: { E.ombCategory } union E.detailed,
display: E.text
}"/>
</extension>
<extension url="displaySequence">
<valueInteger value="10"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="CMS314FHIRHIVViralSuppression"/>
</extension>
<extension url="name">
<valueString value="SDE Ethnicity"/>
</extension>
<extension url="statement">
<valueString
value="define "SDE Ethnicity":
SDE."SDE Ethnicity""/>
</extension>
<extension url="displaySequence">
<valueInteger value="11"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="SupplementalDataElements"/>
</extension>
<extension url="name">
<valueString value="SDE Race"/>
</extension>
<extension url="statement">
<valueString
value="define "SDE Race":
Patient.race R
return Tuple {
codes: R.ombCategory union R.detailed,
display: R.text
}"/>
</extension>
<extension url="displaySequence">
<valueInteger value="12"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="CMS314FHIRHIVViralSuppression"/>
</extension>
<extension url="name">
<valueString value="SDE Race"/>
</extension>
<extension url="statement">
<valueString
value="define "SDE Race":
SDE."SDE Race""/>
</extension>
<extension url="displaySequence">
<valueInteger value="13"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="FHIRHelpers"/>
</extension>
<extension url="name">
<valueString value="ToString"/>
</extension>
<extension url="statement">
<valueString
value="define function ToString(value uri): value.value"/>
</extension>
<extension url="displaySequence">
<valueInteger value="14"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="QICoreCommon"/>
</extension>
<extension url="name">
<valueString value="latest"/>
</extension>
<extension url="statement">
<valueString
value="/*
@description: Given an interval, returns the ending point if the interval has an ending boundary specified,
otherwise, returns the starting point
*/
define fluent function latest(choice Choice<DateTime, Quantity, Interval<DateTime>, Interval<Quantity>> ):
(choice.toInterval()) period
return
if (period."hasEnd"()) then end of period
else start of period"/>
</extension>
<extension url="displaySequence">
<valueInteger value="15"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="QICoreCommon"/>
</extension>
<extension url="name">
<valueString value="hasEnd"/>
</extension>
<extension url="statement">
<valueString
value="/*
@description: Given an interval, returns true if the interval has an ending boundary specified
(i.e. the end of the interval is not null and not the maximum DateTime value)
*/
define fluent function hasEnd(period Interval<DateTime> ):
not (
end of period is null
or end of period = maximum DateTime
)"/>
</extension>
<extension url="displaySequence">
<valueInteger value="16"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="QICoreCommon"/>
</extension>
<extension url="name">
<valueString value="earliest"/>
</extension>
<extension url="statement">
<valueString
value="/*
@description: Given an interval, return the starting point if the interval has a starting boundary specified,
otherwise, return the ending point
*/
define fluent function earliest(choice Choice<DateTime, Quantity, Interval<DateTime>, Interval<Quantity>> ):
(choice.toInterval()) period
return
if (period."hasStart"()) then start of period
else end of period"/>
</extension>
<extension url="displaySequence">
<valueInteger value="17"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="QICoreCommon"/>
</extension>
<extension url="name">
<valueString value="hasStart"/>
</extension>
<extension url="statement">
<valueString
value="/*
@description: Given an interval, return true if the interval has a starting boundary specified
(i.e. the start of the interval is not null and not the minimum DateTime value)
*/
define fluent function hasStart(period Interval<DateTime> ):
not ( start of period is null
or start of period = minimum DateTime
)"/>
</extension>
<extension url="displaySequence">
<valueInteger value="18"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="CMS314FHIRHIVViralSuppression"/>
</extension>
<extension url="name">
<valueString value="isVerified"/>
</extension>
<extension url="statement">
<valueString
value="define fluent function isVerified(condition Choice<QICore.ConditionProblemsHealthConcerns, QICore.ConditionEncounterDiagnosis>):
condition.verificationStatus is not null implies ( condition.verificationStatus ~ QICoreCommon."confirmed"
or condition.verificationStatus ~ QICoreCommon."unconfirmed"
or condition.verificationStatus ~ QICoreCommon."provisional"
or condition.verificationStatus ~ QICoreCommon."differential"
)"/>
</extension>
<extension url="displaySequence">
<valueInteger value="19"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="FHIRHelpers"/>
</extension>
<extension url="name">
<valueString value="ToInterval"/>
</extension>
<extension url="statement">
<valueString
value="/*
@description: Converts the given [Period](https://hl7.org/fhir/datatypes.html#Period)
value to a CQL DateTime Interval
@comment: If the start value of the given period is unspecified, the starting
boundary of the resulting interval will be open (meaning the start of the interval
is unknown, as opposed to interpreted as the beginning of time).
*/
define function ToInterval(period FHIR.Period):
if period is null then
null
else
if period."start" is null then
Interval(period."start".value, period."end".value]
else
Interval[period."start".value, period."end".value]"/>
</extension>
<extension url="displaySequence">
<valueInteger value="20"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="FHIRHelpers"/>
</extension>
<extension url="name">
<valueString value="ToCode"/>
</extension>
<extension url="statement">
<valueString
value="/*
@description: Converts the given FHIR [Coding](https://hl7.org/fhir/datatypes.html#Coding) value to a CQL Code.
*/
define function ToCode(coding FHIR.Coding):
if coding is null then
null
else
System.Code {
code: coding.code.value,
system: coding.system.value,
version: coding.version.value,
display: coding.display.value
}"/>
</extension>
<extension url="displaySequence">
<valueInteger value="21"/>
</extension>
</extension>
<name value="EffectiveDataRequirements"/>
<status value="active"/>
<type>
<coding>
<system value="http://terminology.hl7.org/CodeSystem/library-type"/>
<code value="module-definition"/>
</coding>
</type>
<relatedArtifact>
<type value="depends-on"/>
<display value="QICore model information"/>
<resource value="http://hl7.org/fhir/Library/QICore-ModelInfo"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Library SDE"/>
<resource
value="https://madie.cms.gov/Library/SupplementalDataElements|5.1.000"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Library FHIRHelpers"/>
<resource value="https://madie.cms.gov/Library/FHIRHelpers|4.4.000"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Library QICoreCommon"/>
<resource value="https://madie.cms.gov/Library/QICoreCommon|4.0.000"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Code system SNOMEDCT"/>
<resource value="http://snomed.info/sct"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Code system ConditionVerificationStatusCodes"/>
<resource
value="http://terminology.hl7.org/CodeSystem/condition-ver-status"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Value set HIV Viral Load Tests"/>
<resource
value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1248.377"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Value set HIV"/>
<resource
value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.120.12.1003"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Value set Office Visit"/>
<resource
value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1001"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Value set Outpatient Consultation"/>
<resource
value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1008"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Value set Annual Wellness Visit"/>
<resource
value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.526.3.1240"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Value set Face-to-Face Interaction"/>
<resource
value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1248.375"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Value set Home Healthcare Services"/>
<resource
value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1016"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display
value="Value set Preventive Care Services Established Office Visit, 18 and Up"/>
<resource
value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1025"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display
value="Value set Preventive Care Services Initial Office Visit, 18 and Up"/>
<resource
value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1023"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display
value="Value set Preventive Care Services, Initial Office Visit, 0 to 17"/>
<resource
value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1022"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display
value="Value set Preventive Care, Established Office Visit, 0 to 17"/>
<resource
value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1024"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Value set Telephone Visits"/>
<resource
value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1080"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Value set Preventive Care Services Other"/>
<resource
value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.11.1150"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Value set Payer Type"/>
<resource
value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.114222.4.11.3591"/>
</relatedArtifact>
<parameter>
<name value="Measurement Period"/>
<use value="in"/>
<min value="0"/>
<max value="1"/>
<type value="Period"/>
</parameter>
<parameter>
<name value="Numerator"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name value="Denominator"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name value="Initial Population"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name value="SDE Sex"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="Coding"/>
</parameter>
<parameter>
<name value="SDE Payer"/>
<use value="out"/>
<min value="0"/>
<max value="*"/>
<type value="Resource"/>
</parameter>
<parameter>
<name value="SDE Ethnicity"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="Resource"/>
</parameter>
<parameter>
<name value="SDE Race"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="Resource"/>
</parameter>
<dataRequirement>
<type value="Patient"/>
<profile
value="http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-patient"/>
<mustSupport value="extension"/>
<mustSupport value="url"/>
</dataRequirement>
<dataRequirement>
<type value="Observation"/>
<profile
value="http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-observation-lab"/>
<mustSupport value="code"/>
<mustSupport value="status"/>
<mustSupport value="status.value"/>
<mustSupport value="effective"/>
<codeFilter>
<path value="code"/>
<valueSet
value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1248.377"/>
</codeFilter>
</dataRequirement>
<dataRequirement>
<type value="Observation"/>
<profile
value="http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-observation-lab"/>
<mustSupport value="value"/>
</dataRequirement>
<dataRequirement>
<type value="Condition"/>
<profile
value="http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-condition-problems-health-concerns"/>
<mustSupport value="code"/>
<codeFilter>
<path value="code"/>
<valueSet
value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.120.12.1003"/>
</codeFilter>
</dataRequirement>
<dataRequirement>
<type value="Condition"/>
<profile
value="http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-condition-encounter-diagnosis"/>
<mustSupport value="code"/>
<codeFilter>
<path value="code"/>
<valueSet
value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.120.12.1003"/>
</codeFilter>
</dataRequirement>
<dataRequirement>
<type value="Encounter"/>
<profile
value="http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter"/>
<mustSupport value="type"/>
<mustSupport value="period"/>
<mustSupport value="status"/>
<mustSupport value="status.value"/>
<codeFilter>
<path value="type"/>
<valueSet
value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1001"/>
</codeFilter>
</dataRequirement>
<dataRequirement>
<type value="Encounter"/>
<profile
value="http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter"/>
<mustSupport value="type"/>
<mustSupport value="period"/>
<mustSupport value="status"/>
<mustSupport value="status.value"/>
<codeFilter>
<path value="type"/>
<valueSet
value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1008"/>
</codeFilter>
</dataRequirement>
<dataRequirement>
<type value="Encounter"/>
<profile
value="http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter"/>
<mustSupport value="type"/>
<mustSupport value="period"/>
<mustSupport value="status"/>
<mustSupport value="status.value"/>
<codeFilter>
<path value="type"/>
<valueSet
value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.526.3.1240"/>
</codeFilter>
</dataRequirement>
<dataRequirement>
<type value="Encounter"/>
<profile
value="http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter"/>
<mustSupport value="type"/>
<mustSupport value="period"/>
<mustSupport value="status"/>
<mustSupport value="status.value"/>
<codeFilter>
<path value="type"/>
<valueSet
value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1248.375"/>
</codeFilter>
</dataRequirement>
<dataRequirement>
<type value="Encounter"/>
<profile
value="http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter"/>
<mustSupport value="type"/>
<mustSupport value="period"/>
<mustSupport value="status"/>
<mustSupport value="status.value"/>
<codeFilter>
<path value="type"/>
<valueSet
value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1016"/>
</codeFilter>
</dataRequirement>
<dataRequirement>
<type value="Encounter"/>
<profile
value="http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter"/>
<mustSupport value="type"/>
<mustSupport value="period"/>
<mustSupport value="status"/>
<mustSupport value="status.value"/>
<codeFilter>
<path value="type"/>
<valueSet
value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1025"/>
</codeFilter>
</dataRequirement>
<dataRequirement>
<type value="Encounter"/>
<profile
value="http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter"/>
<mustSupport value="type"/>
<mustSupport value="period"/>
<mustSupport value="status"/>
<mustSupport value="status.value"/>
<codeFilter>
<path value="type"/>
<valueSet
value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1023"/>
</codeFilter>
</dataRequirement>
<dataRequirement>
<type value="Encounter"/>
<profile
value="http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter"/>
<mustSupport value="type"/>
<mustSupport value="period"/>
<mustSupport value="status"/>
<mustSupport value="status.value"/>
<codeFilter>
<path value="type"/>
<valueSet
value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1022"/>
</codeFilter>
</dataRequirement>
<dataRequirement>
<type value="Encounter"/>
<profile
value="http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter"/>
<mustSupport value="type"/>
<mustSupport value="period"/>
<mustSupport value="status"/>
<mustSupport value="status.value"/>
<codeFilter>
<path value="type"/>
<valueSet
value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1024"/>
</codeFilter>
</dataRequirement>
<dataRequirement>
<type value="Encounter"/>
<profile
value="http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter"/>
<mustSupport value="type"/>
<mustSupport value="period"/>
<mustSupport value="status"/>
<mustSupport value="status.value"/>
<codeFilter>
<path value="type"/>
<valueSet
value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1080"/>
</codeFilter>
</dataRequirement>
<dataRequirement>
<type value="Encounter"/>
<profile
value="http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter"/>
<mustSupport value="type"/>
<mustSupport value="period"/>
<mustSupport value="status"/>
<mustSupport value="status.value"/>
<codeFilter>
<path value="type"/>
<valueSet
value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.11.1150"/>
</codeFilter>
</dataRequirement>
<dataRequirement>
<type value="Coverage"/>
<profile
value="http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-coverage"/>
<mustSupport value="type"/>
<mustSupport value="period"/>
<codeFilter>
<path value="type"/>
<valueSet
value="http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.114222.4.11.3591"/>
</codeFilter>
</dataRequirement>
</Library>
</contained>
<extension
url="http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-supplementalDataGuidance" id="supplementalDataGuidance">
<extension url="guidance">
<valueString
value="<p>For every patient evaluated by this measure also identify payer, race, ethnicity and sex</p>"/>
</extension>
<extension url="usage">
<valueCodeableConcept>
<coding>
<system
value="http://terminology.hl7.org/CodeSystem/measure-data-usage"/>
<code value="supplemental-data"/>
<display value="Supplemental Data"/>
</coding>
<text value="Supplemental Data Guidance"/>
</valueCodeableConcept>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-effectiveDataRequirements">
<valueReference>
<reference value="#effective-data-requirements"/>
</valueReference>
</extension>
<url value="https://madie.cms.gov/Measure/CMS314FHIRHIVViralSuppression"/>
<identifier>
<use value="usual"/>
<type>
<coding>
<system
value="http://terminology.hl7.org/CodeSystem/artifact-identifier-type"/>
<code value="short-name"/>
<display value="Short Name"/>
</coding>
</type>
<system value="https://madie.cms.gov/measure/shortName"/>
<value value="CMS314FHIR"/>
</identifier>
<identifier>
<use value="official"/>
<type>
<coding>
<system
value="http://terminology.hl7.org/CodeSystem/artifact-identifier-type"/>
<code value="version-independent"/>
<display value="Version Independent"/>
</coding>
</type>
<system value="urn:ietf:rfc:3986"/>
<value value="urn:uuid:b8aa1302-d225-4dc7-9a3b-ffec45976a3e"/>
</identifier>
<identifier>
<use value="official"/>
<type>
<coding>
<system
value="http://terminology.hl7.org/CodeSystem/artifact-identifier-type"/>
<code value="version-specific"/>
<display value="Version Specific"/>
</coding>
</type>
<system value="urn:ietf:rfc:3986"/>
<value value="urn:uuid:24caf503-3df8-41b4-a020-8c130973b91c"/>
</identifier>
<identifier>
<use value="official"/>
<type>
<coding>
<system
value="http://terminology.hl7.org/CodeSystem/artifact-identifier-type"/>
<code value="publisher"/>
<display value="Publisher"/>
</coding>
</type>
<system value="https://madie.cms.gov/measure/cmsId"/>
<value value="314FHIR"/>
<assigner>
<display value="CMS"/>
</assigner>
</identifier>
<version value="1.0.000"/>
<name value="CMS314FHIRHIVViralSuppression"/>
<title value="HIV Viral SuppressionFHIR
"/>
<status value="active"/>
<experimental value="false"/>
<date value="2025-08-21T14:01:09+00:00"/>
<publisher value="Health Resources &amp; Services Administration"/>
<contact>
<telecom>
<system value="url"/>
<value value=" https://www.hrsa.gov/"/>
</telecom>
</contact>
<description
value="Percentage of patients, regardless of age, diagnosed with Human Immunodeficiency Virus (HIV) prior to or during the first 90 days of the measurement period, with an eligible encounter in the first 240 days of the measurement period, whose last HIV viral load test result was less than 200 copies/mL during the measurement period
"/>
<usage
value="HIV viral load data should be captured either as a numeric value or as a character/text value, depending on whether a given viral load result falls above or below the lab's lower limit of detection. For viral loads at or above the lower limit of detection, the viral load should be captured as a numeric value (expressed as the number of copies/mL). For viral loads below the lower limit of detection, the viral load should be populated with a character/text value equivalent to "Below lower limit of detection." The EHR need not record this character value using this exact wording (for example, the character value could be recorded as "\<20 copies/mL" or "not detected"), but values below the lower limit of detection should be documented to allow the submitter to accurately map them to a value of "Below lower limit of detection" for reporting purposes.
HIV viral load test results may be expressed as log values (log copies/mL). For this eCQM, please convert the log value to copies/mL.
Only patients diagnosed with HIV prior to or in the first 90 days of the measurement period are included in this measure to allow for sufficient time for patients to achieve viral suppression after their initial HIV diagnosis.
Only patients with an eligible encounter in the first 240 days of the measurement period are included in this measure to allow the reporting clinician to have sufficient time to collect follow-up labs on patients in the clinic before the end of the measurement period.
This eCQM is a patient-based measure.
This FHIR-based measure has been derived from the QDM-based measure CMS314v3. 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
value="This measure was developed by the Health Resources \& Services Administration (HRSA) of the U.S. Department of Health \& Human Services (HHS). It is in the public domain.
Citation of HRSA as the source of the original measure is appreciated. Any modified versions may not be represented as approved, endorsed, or authorized by HRSA or HHS. 42 U.S.C. Section 1320b-10. Users of modified versions should clearly explain how they deviate from HRSA's original measure.
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.
CPT(R) contained in the Measure specifications is copyright 2004-2024 American Medical Association. LOINC(R) is copyright 2004-2024 Regenstrief Institute, Inc. This material contains SNOMED Clinical Terms(R) (SNOMED CT\[R\]) copyright 2004-2024 International Health Terminology Standards Development Organisation. ICD-10 is copyright 2024 World Health Organization. All Rights Reserved.
Due to technical limitations, registered trademarks are indicated by (R) or \[R\] and unregistered trademarks are indicated by (TM) or \[TM\].
"/>
<effectivePeriod>
<start value="2026-01-01"/>
<end value="2026-12-31"/>
</effectivePeriod>
<author>
<name value="Health Resources &amp; Services Administration"/>
<telecom>
<system value="url"/>
<value value=" https://www.hrsa.gov/"/>
</telecom>
</author>
<relatedArtifact>
<type value="citation"/>
<citation
value="Buchacz, K., Armon, C., Palella, F. J., Novak, R. M., Fuhrer, J., Tedaldi, E., . . . Investigators, HOPS (2020). The HIV Outpatient study-25 Years of HIV patient care and epidemiologic research. Open Forum Infect Dis, 7(5), ofaa123. https://doi.org/10.1093/ofid/ofaa123
"/>
</relatedArtifact>
<relatedArtifact>
<type value="citation"/>
<citation
value="Buchacz, K., Armon, C., Tedaldi, E., Palella, F. J., Novak, R. M., Ward, D., . . . Investigators, HOPS (2018). Disparities in HIV viral load suppression by race/ethnicity among men who have sex with men in the HIV Outpatient Study. AIDS Res Hum Retroviruses, 34(4), 357-364. https://doi.org/10.1089/AID.2017.0162
"/>
</relatedArtifact>
<relatedArtifact>
<type value="citation"/>
<citation
value="Centers for Disease Control and Prevention (2021). HIV surveillance report, 2019. http://www.cdc.gov/hiv/library/reports/hiv-surveillance.html
"/>
</relatedArtifact>
<relatedArtifact>
<type value="citation"/>
<citation
value="Geter, A., Sutton, M. Y., Armon, C., Durham, M. D., Palella, F. J., Tedaldi, E., . . . Investigators, HOPS (2018). Trends of racial and ethnic disparities in virologic suppression among women in the HIV Outpatient Study, USA, 2010-2015. PLoS One, 13(1), e0189973. https://doi.org/10.1371/journal.pone.0189973
"/>
</relatedArtifact>
<relatedArtifact>
<type value="citation"/>
<citation
value="Hogg, R. S., Yip, B., Chan, K. J., Wood, E., Craib, K. J., O'Shaughnessy, M. V., \& Montaner, J. S. (2001). Rates of disease progression by baseline CD4 cell count and viral load after initiating triple-drug therapy. JAMA, 286(20), 2568-2577. https://doi.org/10.1001/jama.286.20.2568
"/>
</relatedArtifact>
<relatedArtifact>
<type value="citation"/>
<citation
value="Lundgren, J. D., Babiker, A. G., Gordin, F., Emery, S., Grund, B., Sharma, S., . . . Group, ISS (2015a). Initiation of antiretroviral therapy in early asymptomatic HIV infection. N Engl J Med, 373(9), 795-807. https://doi.org/10.1056/NEJMoa1506816
"/>
</relatedArtifact>
<relatedArtifact>
<type value="citation"/>
<citation
value="Panel on Antiretroviral Guidelines for Adults and Adolescents. (2022, September). "Guidelines for the Use of Antiretroviral Agents in Adults and Adolescents with HIV." Retrieved from https://clinicalinfo.hiv.gov/sites/default/files/guidelines/documents/adult-adolescent-arv/guidelines-adult-adolescent-arv.pdf
"/>
</relatedArtifact>
<relatedArtifact>
<type value="citation"/>
<citation
value="Panel on Antiretroviral Therapy and Medical Management of Children Living with HIV. (2022, October). Guidelines for the use of antiretroviral agents in pediatric HIV infection. Retrieved from https://clinicalinfo.hiv.gov/sites/default/files/guidelines/documents/pediatric-arv/guidelines-pediatric-arv.pdf
"/>
</relatedArtifact>
<relatedArtifact>
<type value="citation"/>
<citation
value="Rodger, A. J., Cambiano, V., Bruun, T., Vernazza, P., Collins, S., Degen, O., . . . Group, PS (2019). Risk of HIV transmission through condomless sex in serodifferent gay couples with the HIV-positive partner taking suppressive antiretroviral therapy (PARTNER): Final results of a multicentre, prospective, observational study. Lancet, 393(10189), 2428-2438. https://doi.org/10.1016/S0140-6736(19)30418-0
"/>
</relatedArtifact>
<relatedArtifact>
<type value="citation"/>
<citation
value="The White House. (2021). National HIV/AIDS strategy for the United States 2022--2025. https://files.hiv.gov/s3fs-public/NHAS-2022-2025.pdf
"/>
</relatedArtifact>
<library
value="https://madie.cms.gov/Library/CMS314FHIRHIVViralSuppression"/>
<disclaimer
value="These performance measures are not clinical guidelines and do not establish a standard of medical care, and have not been tested for all potential applications.
THE MEASURES AND SPECIFICATIONS ARE PROVIDED "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
value="HIV is a communicable infection that leads to a progressive disease with a long asymptomatic period. Approximately 40,000 persons in the United States are newly infected with HIV each year (Centers for Disease Control and Prevention, 2021, p. 51). Without treatment, most persons develop acquired immunodeficiency syndrome (AIDS) within 10 years of HIV infection.
HIV viral suppression is a long-standing priority outcome among the HIV community in the United States and around the world. The National HIV/AIDS Strategy for the United States from 2022-2025, developed by the White House Office of National AIDS Policy with input from the HIV community across the United States, prioritizes increasing HIV viral suppression rates to 95 percent (The White House, 2020). The DHHS Panel on Antiretroviral Guidelines for Adults and Adolescents defines viral suppression as a viral load below the lower limits of detection in its guidelines on virologic failure, and it defines viral suppression as a viral load of less than 200 copies/mL as part of its guidelines for the use of antiretroviral therapy to prevent HIV transmission (Panel on Antiretroviral Guidelines for Adults and Adolescents, 2022).
Antiretroviral therapy (ART) delays the progression to AIDS and increases the length of survival. ART reduces HIV-associated morbidity and mortality by maximally inhibiting HIV replication to achieve viral suppression (Hogg et al., 2001; Lundgren et al., 2015). ART has also been shown to reduce transmission of HIV (Rodger et al., 2019). Studies show disparities in rates of viral suppression by race and ethnicity among MSM and among women, with Black and Hispanic or Latino/a study participants having lower rates of viral suppression than White participants (Buchacz et al., 2020; Buchacz et al., 2018; Geter et al., 2018). This measure will help providers direct their attention and quality improvement efforts towards improving HIV viral suppression rates.
"/>
<clinicalRecommendationStatement
value="Adult guidelines: "The primary goal of antiretroviral therapy (ART) is to prevent HIV-associated morbidity and mortality. This goal is accomplished by using effective ART to achieve and maintain a plasma HIV-1 RNA (viral load) below the quantification limits of commercially available assays. Durable viral suppression improves immune function and overall quality of life, lowers the risk of both AIDS-defining and non-AIDS--defining complications, and allows persons with HIV to live a lifespan approaching that of persons without HIV" (Panel on Antiretroviral Guidelines for Adults and Adolescents, 2022, p. E-1).
"ART is recommended for all individuals with HIV to reduce the morbidity and mortality associated with HIV infection and to prevent HIV transmission to sexual partners and infants (AI). ART should be initiated as soon as possible after HIV diagnosis (AI)" (Panel on Antiretroviral Guidelines for Adults and Adolescents, 2022, p. E-2).
"The guidelines and the AIDS Clinical Trials Group (ACTG) now define virologic failure as a confirmed viral load \>200 copies/mL- a threshold that eliminates most cases of apparent viremia caused by viral load blips or assay variability" (Panel on Antiretroviral Guidelines for Adults and Adolescents, 2022, p. C-6).
"Individuals who are adherent to their ARV regimen and do not harbor resistance mutations to the component drugs can generally achieve suppression 8 to 24 weeks after ART initiation; rarely, in some patients it may take longer" (Panel on Antiretroviral Guidelines for Adults and Adolescents, 2022, p. C-6).
Pediatric guidelines: "Based on accumulated experience with currently available assays, the current definition of virologic suppression is a plasma viral load below the detection limit of the assay used (generally \<20 to 75 copies/mL)" (Panel on Antiretroviral Therapy and Medical Management of Children Living with HIV, 2022, p. D-5).
"Temporary viral load elevations ("blips") that are between the level of detection and 200 copies/mL to 500 copies/mL are often detected in adults and children who are on ART; these temporary elevations do not represent virologic failure, as long as the values have returned to below the level of detection when testing is repeated" (Panel on Antiretroviral Therapy and Medical Management of Children Living with HIV, 2022, p. D-5).
"/>
<group id="Group_1">
<extension
url="http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-scoring">
<valueCodeableConcept>
<coding>
<system
value="http://terminology.hl7.org/CodeSystem/measure-scoring"/>
<code value="proportion"/>
<display value="Proportion"/>
</coding>
</valueCodeableConcept>
</extension>
<extension
url="http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-populationBasis">
<valueCode value="boolean"/>
</extension>
<extension
url="http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-type">
<valueCodeableConcept>
<coding>
<system value="http://terminology.hl7.org/CodeSystem/measure-type"/>
<code value="outcome"/>
<display value="Outcome"/>
</coding>
</valueCodeableConcept>
</extension>
<extension
url="http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-improvementNotation">
<valueCodeableConcept>
<coding>
<system
value="http://terminology.hl7.org/CodeSystem/measure-improvement-notation"/>
<code value="increase"/>
<display value="Increased score indicates improvement"/>
</coding>
</valueCodeableConcept>
</extension>
<population id="InitialPopulation_1">
<code>
<coding>
<system
value="http://terminology.hl7.org/CodeSystem/measure-population"/>
<code value="initial-population"/>
<display value="Initial Population"/>
</coding>
</code>
<description
value="All patients, regardless of age, diagnosed with HIV prior to or during the first 90 days of the measurement period with at least one eligible encounter in the first 240 days of the measurement period
"/>
<criteria>
<language value="text/cql-identifier"/>
<expression value="Initial Population"/>
</criteria>
</population>
<population id="Denominator_1">
<code>
<coding>
<system
value="http://terminology.hl7.org/CodeSystem/measure-population"/>
<code value="denominator"/>
<display value="Denominator"/>
</coding>
</code>
<description value="Equals Initial Population
"/>
<criteria>
<language value="text/cql-identifier"/>
<expression value="Denominator"/>
</criteria>
</population>
<population id="Numerator_1">
<code>
<coding>
<system
value="http://terminology.hl7.org/CodeSystem/measure-population"/>
<code value="numerator"/>
<display value="Numerator"/>
</coding>
</code>
<description
value="Patients with a last HIV viral load test result of less than 200 copies/mL during the measurement period
"/>
<criteria>
<language value="text/cql-identifier"/>
<expression value="Numerator"/>
</criteria>
</population>
</group>
<supplementalData id="sde-ethnicity">
<usage>
<coding>
<system
value="http://terminology.hl7.org/CodeSystem/measure-data-usage"/>
<code value="supplemental-data"/>
</coding>
</usage>
<description value="SDE Ethnicity
"/>
<criteria>
<language value="text/cql-identifier"/>
<expression value="SDE Ethnicity"/>
</criteria>
</supplementalData>
<supplementalData id="sde-race">
<usage>
<coding>
<system
value="http://terminology.hl7.org/CodeSystem/measure-data-usage"/>
<code value="supplemental-data"/>
</coding>
</usage>
<description value="SDE Race
"/>
<criteria>
<language value="text/cql-identifier"/>
<expression value="SDE Race"/>
</criteria>
</supplementalData>
<supplementalData id="sde-sex">
<usage>
<coding>
<system
value="http://terminology.hl7.org/CodeSystem/measure-data-usage"/>
<code value="supplemental-data"/>
</coding>
</usage>
<description value="SDE Sex
"/>
<criteria>
<language value="text/cql-identifier"/>
<expression value="SDE Sex"/>
</criteria>
</supplementalData>
<supplementalData id="sde-payer">
<usage>
<coding>
<system
value="http://terminology.hl7.org/CodeSystem/measure-data-usage"/>
<code value="supplemental-data"/>
</coding>
</usage>
<description value="SDE Payer
"/>
<criteria>
<language value="text/cql-identifier"/>
<expression value="SDE Payer"/>
</criteria>
</supplementalData>
</Measure>