Title: HIV Viral SuppressionFHIR Id: HIVViralSuppressionFHIR Download cql: HIVViralSuppressionFHIR.cql Version: 0.0.001 Url: HIV Viral SuppressionFHIR short-name identifier: CMS314FHIR version-independent identifier: urn:uuid:b8aa1302-d225-4dc7-9a3b-ffec45976a3e version-specific identifier: urn:uuid:2c92808287dd6f640188b022a80a1e8d publisher (CMS) identifier: 314FHIR Effective Period: 2024-01-01 ..2024-12-31 Status: draft Date: 2023-10-27 08:12:32+0000 Approval Date: 2023-08-14 Last Review Date: 2023-08-14 Name: HIVViralSuppressionFHIR Publisher: Health Resources & Services Administration Author: Health Resources & Services Administration: https://www.hrsa.gov/ Description: Percentage of patients, regardless of age, diagnosed with 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 Use Context: code value program Purpose: UNKNOWN Copyright: 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-2022 American Medical Association. LOINC(R) is copyright 2004-2022 Regenstrief Institute, Inc. This material contains SNOMED Clinical Terms(R) (SNOMED CT[R]) copyright 2004-2022 International Health Terminology Standards Development Organisation. ICD-10 is copyright 2022 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]. Disclaimer: 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: 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% (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; Lundgern 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. Clinical recommendation statement: 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). Guidance (Usage): 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. This eCQM is a patient-based measure. This FHIR-based measure has been derived from the QDM-based measure: CMS314v1. Please refer to the HL7 QI-Core Implementation Guide (http://hl7.org/fhir/us/qicore/index.html) for more information on QI-Core and mapping recommendations from QDM to QI-Core 4.1.1 (http://hl7.org/fhir/us/qicore/qdm-to-qicore.html). Population Criteria: 64873a03be23a058642d5816 Initial Population: 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 Denominator: Equals Initial Population Denominator Exclusion: None Numerator: Patients with a last HIV viral load test result of less than 200 copies/mL during the measurement period Numerator Exclusion: None Denominator Exception: None Libraries: HIVViralSuppressionFHIR Related Artifact Dependencies: FHIRHelpers version: 4.3.000 QICoreCommon version: 1.5.000 SNOMED CT (all versions) HIV Viral Load HIV Office Visit Outpatient Consultation Annual Wellness Visit Face-to-Face Interaction Home Healthcare Services Preventive Care Services - Established Office Visit, 18 and Up Preventive Care Services-Initial Office Visit, 18 and Up Preventive Care Services, Initial Office Visit, 0 to 17 Preventive Care, Established Office Visit, 0 to 17 Telephone Visits Preventive Care Services - Other Parameters: name use min max type Measurement Period In 0 1 Period Numerator Out 0 1 boolean Denominator Out 0 1 boolean Initial Population Out 0 1 boolean DataRequirements: Type Elements Valueset Name Valueset Patient(QICorePatient) Observation(QICoreObservation) code effective HIV Viral Load HIV Viral Load Condition(QICoreCondition) code HIV HIV Encounter(QICoreEncounter) type period Office Visit Office Visit Encounter(QICoreEncounter) type period Outpatient Consultation Outpatient Consultation Encounter(QICoreEncounter) type period Annual Wellness Visit Annual Wellness Visit Encounter(QICoreEncounter) type period Face-to-Face Interaction Face-to-Face Interaction Encounter(QICoreEncounter) type period Home Healthcare Services Home Healthcare Services Encounter(QICoreEncounter) type period Preventive Care Services Established Office Visit, 18 and Up Preventive Care Services - Established Office Visit, 18 and Up Encounter(QICoreEncounter) type period Preventive Care Services Initial Office Visit, 18 and Up Preventive Care Services-Initial Office Visit, 18 and Up Encounter(QICoreEncounter) type period Preventive Care Services, Initial Office Visit, 0 to 17 Preventive Care Services, Initial Office Visit, 0 to 17 Encounter(QICoreEncounter) type period Preventive Care, Established Office Visit, 0 to 17 Preventive Care, Established Office Visit, 0 to 17 Encounter(QICoreEncounter) type period Telephone Visits Telephone Visits Encounter(QICoreEncounter) type period Preventive Care Services Other Preventive Care Services - Other Direct Reference Codes: display code system Below threshold level (qualifier value) 260988000 http://snomed.info/sct Not detected (qualifier value) 260415000 http://snomed.info/sct Logic Definitions: Group Scoring Population Criteria Expression 64873a03be23a058642d5816 Group scoring: proportion Initial Population 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" Denominator define "Denominator": "Initial Population" Denominator Exclusion None Numerator 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)" Numerator Exclusion None Denominator Exception None Library Name Name HIVViralSuppressionFHIR Most Recent Viral Load Test During Measurement Period define "Most Recent Viral Load Test During Measurement Period": Last(["Observation": "HIV Viral Load"] ViralLoad where QICoreCommon."Latest"(ViralLoad.effective) during day of "Measurement Period" sort by start of QICoreCommon."ToInterval"(effective) ) Library Name Name HIVViralSuppressionFHIR Numerator 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)" Library Name Name HIVViralSuppressionFHIR Has Active HIV Diagnosis Before or in First 90 Days of Measurement Period define "Has Active HIV Diagnosis Before or in First 90 Days of Measurement Period": exists ["Condition": "HIV"] HIVDx where QICoreCommon."ToPrevalenceInterval" ( HIVDx ) starts before day of ( start of "Measurement Period" + 90 days ) Library Name Name HIVViralSuppressionFHIR Has Qualifying Encounter During First 240 Days of Measurement Period define "Has Qualifying Encounter During First 240 Days of Measurement Period": 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] Library Name Name HIVViralSuppressionFHIR Initial Population 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" Library Name Name HIVViralSuppressionFHIR Denominator define "Denominator": "Initial Population" Library Name Name QICoreCommon Latest /* @description: Given an interval, returns the ending point if the interval has an ending boundary specified, otherwise, returns the starting point @deprecated: This function is deprecated. Use the fluent function `latest()` instead */ define function "Latest"(choice Choice<DateTime, Quantity, Interval<DateTime>, Interval<Quantity>> ): (choice.toInterval()) period return if (HasEnd(period)) then end of period else start of period Library Name Name QICoreCommon toInterval /* @description: Normalizes a value that is a choice of timing-valued types to an equivalent interval @comment: Normalizes a choice type of DateTime, Quanitty, Interval<DateTime>, or Interval<Quantity> types to an equivalent interval. This selection of choice types is a superset of the majority of choice types that are used as possible representations for timing-valued elements in QICore, allowing this function to be used across any resource. The input can be provided as a DateTime, Quantity, Interval<DateTime> or Interval<Quantity>. The intent of this function is to provide a clear and concise mechanism to treat single elements that have multiple possible representations as intervals so that logic doesn't have to account for the variability. More complex calculations (such as medication request period or dispense period calculation) need specific guidance and consideration. That guidance may make use of this function, but the focus of this function is on single element calculations where the semantics are unambiguous. If the input is a DateTime, the result a DateTime Interval beginning and ending on that DateTime. If the input is a Quantity, the quantity is expected to be a calendar-duration interpreted as an Age, and the result is a DateTime Interval beginning on the Date the patient turned that age and ending immediately before one year later. If the input is a DateTime Interval, the result is the input. If the input is a Quantity Interval, the quantities are expected to be calendar-durations interpreted as an Age, and the result is a DateTime Interval beginning on the date the patient turned the age given as the start of the quantity interval, and ending immediately before one year later than the date the patient turned the age given as the end of the quantity interval. Any other input will reslt in a null DateTime Interval */ define fluent function toInterval(choice Choice<DateTime, Quantity, Interval<DateTime>, Interval<Quantity>>): case when choice is DateTime then Interval[choice as DateTime, choice as DateTime] when choice is Interval<DateTime> then choice as Interval<DateTime> when choice is Quantity then Interval[Patient.birthDate + (choice as Quantity), Patient.birthDate + (choice as Quantity) + 1 year) when choice is Interval<Quantity> then Interval[Patient.birthDate + (choice.low as Quantity), Patient.birthDate + (choice.high as Quantity) + 1 year) else null as Interval<DateTime> end Library Name Name QICoreCommon ToInterval /* @description: Normalizes a value that is a choice of timing-valued types to an equivalent interval @comment: Normalizes a choice type of DateTime, Quanitty, Interval<DateTime>, or Interval<Quantity> types to an equivalent interval. This selection of choice types is a superset of the majority of choice types that are used as possible representations for timing-valued elements in QICore, allowing this function to be used across any resource. The input can be provided as a DateTime, Quantity, Interval<DateTime> or Interval<Quantity>. The intent of this function is to provide a clear and concise mechanism to treat single elements that have multiple possible representations as intervals so that logic doesn't have to account for the variability. More complex calculations (such as medication request period or dispense period calculation) need specific guidance and consideration. That guidance may make use of this function, but the focus of this function is on single element calculations where the semantics are unambiguous. If the input is a DateTime, the result a DateTime Interval beginning and ending on that DateTime. If the input is a Quantity, the quantity is expected to be a calendar-duration interpreted as an Age, and the result is a DateTime Interval beginning on the Date the patient turned that age and ending immediately before one year later. If the input is a DateTime Interval, the result is the input. If the input is a Quantity Interval, the quantities are expected to be calendar-durations interpreted as an Age, and the result is a DateTime Interval beginning on the date the patient turned the age given as the start of the quantity interval, and ending immediately before one year later than the date the patient turned the age given as the end of the quantity interval. Any other input will reslt in a null DateTime Interval @deprecated: This function is deprecated. Use the fluent function `toInterval()` instead */ define function ToInterval(choice Choice<DateTime, Quantity, Interval<DateTime>, Interval<Quantity>>): case when choice is DateTime then Interval[choice as DateTime, choice as DateTime] when choice is Interval<DateTime> then choice as Interval<DateTime> when choice is Quantity then Interval[Patient.birthDate + (choice as Quantity), Patient.birthDate + (choice as Quantity) + 1 year) when choice is Interval<Quantity> then Interval[Patient.birthDate + (choice.low as Quantity), Patient.birthDate + (choice.high as Quantity) + 1 year) when choice is QICore.Timing then null as Interval<DateTime> else null as Interval<DateTime> end Library Name Name QICoreCommon ToPrevalenceInterval /* @description: Returns an interval representing the normalized prevalence period of a given Condition. @comment: Uses the ToInterval and ToAbatementInterval functions to determine the widest potential interval from onset to abatement as specified in the given Condition. If the condition is active, the resulting interval will have a closed ending boundary. If the condition is not active, the resulting interval will have an open ending boundary. @deprecated: This function is deprecated. Use the `prevalenceInterval()` fluent function instead */ define function ToPrevalenceInterval(condition Condition): if condition.clinicalStatus ~ "active" or condition.clinicalStatus ~ "recurrence" or condition.clinicalStatus ~ "relapse" then Interval[start of ToInterval(condition.onset), end of ToAbatementInterval(condition)] else Interval[start of ToInterval(condition.onset), end of ToAbatementInterval(condition))
Most Recent Viral Load Test During Measurement Period
define "Most Recent Viral Load Test During Measurement Period": Last(["Observation": "HIV Viral Load"] ViralLoad where QICoreCommon."Latest"(ViralLoad.effective) during day of "Measurement Period" sort by start of QICoreCommon."ToInterval"(effective) )
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)"
Has Active HIV Diagnosis Before or in First 90 Days of Measurement Period
define "Has Active HIV Diagnosis Before or in First 90 Days of Measurement Period": exists ["Condition": "HIV"] HIVDx where QICoreCommon."ToPrevalenceInterval" ( HIVDx ) starts before day of ( start of "Measurement Period" + 90 days )
Has Qualifying Encounter During First 240 Days of Measurement Period
define "Has Qualifying Encounter During First 240 Days of Measurement Period": 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]
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"
define "Denominator": "Initial Population"
/* @description: Given an interval, returns the ending point if the interval has an ending boundary specified, otherwise, returns the starting point @deprecated: This function is deprecated. Use the fluent function `latest()` instead */ define function "Latest"(choice Choice<DateTime, Quantity, Interval<DateTime>, Interval<Quantity>> ): (choice.toInterval()) period return if (HasEnd(period)) then end of period else start of period
/* @description: Normalizes a value that is a choice of timing-valued types to an equivalent interval @comment: Normalizes a choice type of DateTime, Quanitty, Interval<DateTime>, or Interval<Quantity> types to an equivalent interval. This selection of choice types is a superset of the majority of choice types that are used as possible representations for timing-valued elements in QICore, allowing this function to be used across any resource. The input can be provided as a DateTime, Quantity, Interval<DateTime> or Interval<Quantity>. The intent of this function is to provide a clear and concise mechanism to treat single elements that have multiple possible representations as intervals so that logic doesn't have to account for the variability. More complex calculations (such as medication request period or dispense period calculation) need specific guidance and consideration. That guidance may make use of this function, but the focus of this function is on single element calculations where the semantics are unambiguous. If the input is a DateTime, the result a DateTime Interval beginning and ending on that DateTime. If the input is a Quantity, the quantity is expected to be a calendar-duration interpreted as an Age, and the result is a DateTime Interval beginning on the Date the patient turned that age and ending immediately before one year later. If the input is a DateTime Interval, the result is the input. If the input is a Quantity Interval, the quantities are expected to be calendar-durations interpreted as an Age, and the result is a DateTime Interval beginning on the date the patient turned the age given as the start of the quantity interval, and ending immediately before one year later than the date the patient turned the age given as the end of the quantity interval. Any other input will reslt in a null DateTime Interval */ define fluent function toInterval(choice Choice<DateTime, Quantity, Interval<DateTime>, Interval<Quantity>>): case when choice is DateTime then Interval[choice as DateTime, choice as DateTime] when choice is Interval<DateTime> then choice as Interval<DateTime> when choice is Quantity then Interval[Patient.birthDate + (choice as Quantity), Patient.birthDate + (choice as Quantity) + 1 year) when choice is Interval<Quantity> then Interval[Patient.birthDate + (choice.low as Quantity), Patient.birthDate + (choice.high as Quantity) + 1 year) else null as Interval<DateTime> end
/* @description: Normalizes a value that is a choice of timing-valued types to an equivalent interval @comment: Normalizes a choice type of DateTime, Quanitty, Interval<DateTime>, or Interval<Quantity> types to an equivalent interval. This selection of choice types is a superset of the majority of choice types that are used as possible representations for timing-valued elements in QICore, allowing this function to be used across any resource. The input can be provided as a DateTime, Quantity, Interval<DateTime> or Interval<Quantity>. The intent of this function is to provide a clear and concise mechanism to treat single elements that have multiple possible representations as intervals so that logic doesn't have to account for the variability. More complex calculations (such as medication request period or dispense period calculation) need specific guidance and consideration. That guidance may make use of this function, but the focus of this function is on single element calculations where the semantics are unambiguous. If the input is a DateTime, the result a DateTime Interval beginning and ending on that DateTime. If the input is a Quantity, the quantity is expected to be a calendar-duration interpreted as an Age, and the result is a DateTime Interval beginning on the Date the patient turned that age and ending immediately before one year later. If the input is a DateTime Interval, the result is the input. If the input is a Quantity Interval, the quantities are expected to be calendar-durations interpreted as an Age, and the result is a DateTime Interval beginning on the date the patient turned the age given as the start of the quantity interval, and ending immediately before one year later than the date the patient turned the age given as the end of the quantity interval. Any other input will reslt in a null DateTime Interval @deprecated: This function is deprecated. Use the fluent function `toInterval()` instead */ define function ToInterval(choice Choice<DateTime, Quantity, Interval<DateTime>, Interval<Quantity>>): case when choice is DateTime then Interval[choice as DateTime, choice as DateTime] when choice is Interval<DateTime> then choice as Interval<DateTime> when choice is Quantity then Interval[Patient.birthDate + (choice as Quantity), Patient.birthDate + (choice as Quantity) + 1 year) when choice is Interval<Quantity> then Interval[Patient.birthDate + (choice.low as Quantity), Patient.birthDate + (choice.high as Quantity) + 1 year) when choice is QICore.Timing then null as Interval<DateTime> else null as Interval<DateTime> end
/* @description: Returns an interval representing the normalized prevalence period of a given Condition. @comment: Uses the ToInterval and ToAbatementInterval functions to determine the widest potential interval from onset to abatement as specified in the given Condition. If the condition is active, the resulting interval will have a closed ending boundary. If the condition is not active, the resulting interval will have an open ending boundary. @deprecated: This function is deprecated. Use the `prevalenceInterval()` fluent function instead */ define function ToPrevalenceInterval(condition Condition): if condition.clinicalStatus ~ "active" or condition.clinicalStatus ~ "recurrence" or condition.clinicalStatus ~ "relapse" then Interval[start of ToInterval(condition.onset), end of ToAbatementInterval(condition)] else Interval[start of ToInterval(condition.onset), end of ToAbatementInterval(condition))
Value set Preventive Care Services Established Office Visit, 18 and Up
Value set Preventive Care Services Initial Office Visit, 18 and Up
Value set Preventive Care Services, Initial Office Visit, 0 to 17
Value set Preventive Care, Established Office Visit, 0 to 17
Value set Preventive Care Services Other
Health Resources & Services Administration
Percentage of patients, regardless of age, diagnosed with 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
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. This eCQM is a patient-based measure. This FHIR-based measure has been derived from the QDM-based measure: CMS314v1. Please refer to the HL7 QI-Core Implementation Guide (http://hl7.org/fhir/us/qicore/index.html) for more information on QI-Core and mapping recommendations from QDM to QI-Core 4.1.1 (http://hl7.org/fhir/us/qicore/qdm-to-qicore.html).
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-2022 American Medical Association. LOINC(R) is copyright 2004-2022 Regenstrief Institute, Inc. This material contains SNOMED Clinical Terms(R) (SNOMED CT[R]) copyright 2004-2022 International Health Terminology Standards Development Organisation. ICD-10 is copyright 2022 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].
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].
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% (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; Lundgern 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.
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).
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
Patients with a last HIV viral load test result of less than 200 copies/mL during the measurement period