Metadata Title HBP Component Library Version 0.0.001 Identifier urn:oid:2.16.840.1.113883.4.642.40.61.28.23 Experimental true Jurisdiction Global (Whole world) Steward (Publisher) HL7 International / Clinical Quality Information Description Preventive Care and Screening: Screening for High Blood Pressure and Follow-Up Documented Type Logic Library Parameter Name: Measurement Period Use: In Min Cardinality: 0 Max Cardinality: 1 Type: Period Parameter Name: Patient Use: Out Min Cardinality: 0 Max Cardinality: 1 Type: Patient Parameter Name: SDE Ethnicity Use: Out Min Cardinality: 0 Max Cardinality: * Type: Coding Parameter Name: SDE Payer Use: Out Min Cardinality: 0 Max Cardinality: * Type: Resource Parameter Name: SDE Race Use: Out Min Cardinality: 0 Max Cardinality: * Type: Coding Parameter Name: SDE Sex Use: Out Min Cardinality: 0 Max Cardinality: 1 Type: Coding Parameter Name: Qualifying Encounter During Measurement Period Use: Out Min Cardinality: 0 Max Cardinality: * Type: Encounter Parameter Name: Encounter with High Blood Pressure Reading Use: Out Min Cardinality: 0 Max Cardinality: * Type: Encounter Parameter Name: Encounter with High Blood Pressure Reading Within Year Prior Use: Out Min Cardinality: 0 Max Cardinality: * Type: Encounter Parameter Name: Encounter with Second Hypertensive Reading Use: Out Min Cardinality: 0 Max Cardinality: * Type: Encounter Parameter Name: Encounter with Normal Blood Pressure Reading Use: Out Min Cardinality: 0 Max Cardinality: * Type: Encounter Parameter Name: Encounter with Prehypertensive Blood Pressure Reading Use: Out Min Cardinality: 0 Max Cardinality: * Type: Encounter Parameter Name: Encounter with Order for Intervention for Hypertension Use: Out Min Cardinality: 0 Max Cardinality: * Type: Encounter Parameter Name: Encounter with Order for Follow Up Within One Year Use: Out Min Cardinality: 0 Max Cardinality: * Type: Encounter Parameter Name: Encounter with Referral to Alternate Provider for High Blood Pressure Reading Use: Out Min Cardinality: 0 Max Cardinality: * Type: Encounter Parameter Name: Encounter with First Hypertensive Reading Use: Out Min Cardinality: 0 Max Cardinality: * Type: Encounter Parameter Name: Encounter with Order for Follow Up Within 4 Weeks Use: Out Min Cardinality: 0 Max Cardinality: * Type: Encounter Parameter Name: Encounter with Order for Laboratory Test for Hypertension Use: Out Min Cardinality: 0 Max Cardinality: * Type: Encounter Parameter Name: Encounter with Order for Electrocardiogram for Hypertension Use: Out Min Cardinality: 0 Max Cardinality: * Type: Encounter Parameter Name: Encounter with Order for Hypertension Medication Use: Out Min Cardinality: 0 Max Cardinality: * Type: Encounter Parameter Name: Numerator Use: Out Min Cardinality: 0 Max Cardinality: * Type: Encounter Parameter Name: Initial Population Use: Out Min Cardinality: 0 Max Cardinality: * Type: Encounter Parameter Name: Encounter with Order for Hypertension Follow Up Declined by Patient Use: Out Min Cardinality: 0 Max Cardinality: * Type: Encounter Parameter Name: Encounter with Medical Reason for Not Obtaining or Patient Declined Blood Pressure Measurement Use: Out Min Cardinality: 0 Max Cardinality: * Type: Encounter Parameter Name: Denominator Exceptions Use: Out Min Cardinality: 0 Max Cardinality: * Type: Encounter Parameter Name: Denominator Exclusions Use: Out Min Cardinality: 0 Max Cardinality: * Type: Encounter Parameter Name: Denominator Use: Out Min Cardinality: 0 Max Cardinality: * Type: Encounter Data Requirement Type: Patient Profile(s): Patient Must Support Elements: birthDate Data Requirement Type: Encounter Profile(s): Encounter Must Support Elements: type, period Code Filter(s): Path: type ValueSet: Encounter to Screen for Blood Pressure Data Requirement Type: Observation Profile(s): Observation Must Support Elements: code, effective, status, value Code Filter(s): Path: code Code(s): LOINC: 8480-6 (Systolic blood pressure) Data Requirement Type: Observation Profile(s): Observation Must Support Elements: code, effective, status, value Code Filter(s): Path: code Code(s): LOINC: 8462-4 (Diastolic blood pressure) Data Requirement Type: ServiceRequest Profile(s): ServiceRequest Must Support Elements: code, authoredOn Code Filter(s): Path: code Code(s): LOINC: 34534-8 (12 lead EKG panel) Data Requirement Type: ServiceRequest Profile(s): ServiceRequest Must Support Elements: code, authoredOn Code Filter(s): Path: code Code(s): LOINC: 11524-6 (EKG study) Data Requirement Type: ServiceRequest Profile(s): ServiceRequest Must Support Elements: code, authoredOn Code Filter(s): Path: code ValueSet: Follow Up Within One Year Data Requirement Type: ServiceRequest Profile(s): ServiceRequest Must Support Elements: code, authoredOn Code Filter(s): Path: code ValueSet: Follow Up Within 4 Weeks Data Requirement Type: ServiceRequest Profile(s): ServiceRequest Must Support Elements: code, authoredOn, reasonCode Code Filter(s): Path: code ValueSet: Referral to Primary Care or Alternate Provider Data Requirement Type: ServiceRequest Profile(s): ServiceRequest Must Support Elements: code, authoredOn Code Filter(s): Path: code ValueSet: Lifestyle Recommendation Data Requirement Type: ServiceRequest Profile(s): ServiceRequest Must Support Elements: code, authoredOn Code Filter(s): Path: code ValueSet: Weight Reduction Recommended Data Requirement Type: ServiceRequest Profile(s): ServiceRequest Must Support Elements: code, authoredOn Code Filter(s): Path: code ValueSet: Dietary Recommendations Data Requirement Type: ServiceRequest Profile(s): ServiceRequest Must Support Elements: code, authoredOn Code Filter(s): Path: code ValueSet: Recommendation to Increase Physical Activity Data Requirement Type: ServiceRequest Profile(s): ServiceRequest Must Support Elements: code, authoredOn Code Filter(s): Path: code ValueSet: Referral or Counseling for Alcohol Consumption Data Requirement Type: ServiceRequest Profile(s): ServiceRequest Must Support Elements: code, authoredOn Code Filter(s): Path: code ValueSet: Laboratory Tests for Hypertension Data Requirement Type: MedicationRequest Profile(s): MedicationRequest Must Support Elements: medication, authoredOn Code Filter(s): Path: medication ValueSet: Pharmacologic Therapy for Hypertension Data Requirement Type: MedicationRequest Profile(s): MedicationRequest Must Support Elements: medication.reference, authoredOn Data Requirement Type: Medication Profile(s): Medication Must Support Elements: id, code Data Requirement Type: Condition Profile(s): Condition Must Support Elements: code Code Filter(s): Path: code ValueSet: Diagnosis of Hypertension Library Content CQL Content /*#xD; This example is a work in progress and should not be considered a final specification#xD; or recommendation for guidance. This example will help guide and direct the process#xD; of finding conventions and usage patterns that meet the needs of the various stakeholders#xD; in the measure development community.#xD; */#xD; library HBPComponent version '0.0.001'#xD; #xD; using FHIR version '4.0.1'#xD; #xD; include hl7.fhir.uv.cql.FHIRHelpers version '4.0.1' called FHIRHelpers#xD; #xD; include SupplementalDataElements version '2.0.000' called SDE#xD; include MATGlobalCommonFunctions version '5.0.000' called Global#xD; #xD; codesystem "LOINC": 'http://loinc.org'#xD; #xD; valueset "Diagnosis of Hypertension": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.600.263'#xD; valueset "Dietary Recommendations": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.600.1515'#xD; valueset "Encounter to Screen for Blood Pressure": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.600.1920'#xD; valueset "Ethnicity": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.114222.4.11.837'#xD; valueset "Finding of Elevated Blood Pressure or Hypertension": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1047.514'#xD; valueset "Follow Up Within 4 Weeks": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.526.3.1578'#xD; valueset "Follow Up Within One Year": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.526.3.1579'#xD; valueset "Laboratory Tests for Hypertension": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.600.1482'#xD; valueset "Lifestyle Recommendation": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.526.3.1581'#xD; valueset "Medical Reason": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.526.3.1007'#xD; valueset "ONC Administrative Sex": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1'#xD; valueset "Patient Declined": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.526.3.1582'#xD; valueset "Pharmacologic Therapy for Hypertension": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.526.1577'#xD; valueset "Recommendation to Increase Physical Activity": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.600.1518'#xD; valueset "Referral or Counseling for Alcohol Consumption": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.526.3.1583'#xD; valueset "Referral to Primary Care or Alternate Provider": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.526.3.1580'#xD; valueset "Weight Reduction Recommended": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.600.1510'#xD; #xD; code "Birth date": '21112-8' from "LOINC" display 'Birth date'#xD; code "Diastolic blood pressure": '8462-4' from "LOINC" display 'Diastolic blood pressure'#xD; code "12 lead EKG panel": '34534-8' from "LOINC" display '12 lead EKG panel'#xD; code "EKG study": '11524-6' from "LOINC" display 'EKG study'#xD; code "Systolic blood pressure": '8480-6' from "LOINC" display 'Systolic blood pressure'#xD; #xD; parameter "Measurement Period" Interval<DateTime>#xD; #xD; context Patient#xD; #xD; define "SDE Ethnicity":#xD; SDE."SDE Ethnicity"#xD; #xD; define "SDE Payer":#xD; SDE."SDE Payer"#xD; #xD; define "SDE Race":#xD; SDE."SDE Race"#xD; #xD; define "SDE Sex":#xD; SDE."SDE Sex"#xD; #xD; define "Encounter with Second Hypertensive Reading":#xD; "Encounter with High Blood Pressure Reading"#xD; intersect "Encounter with High Blood Pressure Reading Within Year Prior"#xD; #xD; define "Numerator":#xD; "Encounter with Normal Blood Pressure Reading"#xD; union ( "Encounter with Prehypertensive Blood Pressure Reading"#xD; intersect ( ( "Encounter with Order for Intervention for Hypertension"#xD; intersect "Encounter with Order for Follow Up Within One Year"#xD; )#xD; union "Encounter with Referral to Alternate Provider for High Blood Pressure Reading"#xD; )#xD; )#xD; union ( "Encounter with First Hypertensive Reading"#xD; intersect ( ( "Encounter with Order for Intervention for Hypertension"#xD; intersect "Encounter with Order for Follow Up Within 4 Weeks"#xD; )#xD; union "Encounter with Referral to Alternate Provider for High Blood Pressure Reading"#xD; )#xD; )#xD; union ( "Encounter with Second Hypertensive Reading"#xD; intersect ( ( "Encounter with Order for Intervention for Hypertension"#xD; intersect ( "Encounter with Order for Laboratory Test for Hypertension"#xD; union "Encounter with Order for Electrocardiogram for Hypertension"#xD; union "Encounter with Order for Hypertension Medication"#xD; )#xD; )#xD; union "Encounter with Referral to Alternate Provider for High Blood Pressure Reading"#xD; )#xD; )#xD; #xD; define "Encounter with First Hypertensive Reading":#xD; "Encounter with High Blood Pressure Reading"#xD; except "Encounter with High Blood Pressure Reading Within Year Prior"#xD; #xD; define "Initial Population":#xD; "Qualifying Encounter During Measurement Period" QualifyingEncounter#xD; with [Patient] BirthDate#xD; such that Global."CalendarAgeInYearsAt" ( FHIRHelpers.ToDate ( BirthDate.birthDate ), start of "Measurement Period" ) >= 18#xD; #xD; define "Encounter with Order for Follow Up Within One Year":#xD; "Qualifying Encounter During Measurement Period" QualifyingEncounter#xD; with [ServiceRequest: "Follow Up Within One Year"] FollowupOneYear#xD; such that FollowupOneYear.authoredOn same day as start of QualifyingEncounter.period#xD; #xD; define "Encounter with Order for Follow Up Within 4 Weeks":#xD; "Qualifying Encounter During Measurement Period" QualifyingEncounter#xD; with [ServiceRequest: "Follow Up Within 4 Weeks"] Followup4Weeks#xD; such that Followup4Weeks.authoredOn same day as start of QualifyingEncounter.period#xD; #xD; define "Encounter with Order for Hypertension Medication":#xD; "Qualifying Encounter During Measurement Period" QualifyingEncounter#xD; with [MedicationRequest: "Pharmacologic Therapy for Hypertension"] AntihypertensiveMedication#xD; such that AntihypertensiveMedication.authoredOn same day as start of QualifyingEncounter.period#xD; #xD; define "Encounter with Order for Laboratory Test for Hypertension":#xD; "Qualifying Encounter During Measurement Period" QualifyingEncounter#xD; with [ServiceRequest: "Laboratory Tests for Hypertension"] HypertensionLabs#xD; such that HypertensionLabs.authoredOn same day as start of QualifyingEncounter.period#xD; #xD; define "Encounter with Referral to Alternate Provider for High Blood Pressure Reading":#xD; "Qualifying Encounter During Measurement Period" QualifyingEncounter#xD; with [ServiceRequest: "Referral to Primary Care or Alternate Provider"] Referral#xD; such that Referral.authoredOn same day as start of QualifyingEncounter.period#xD; and Referral.reasonCode in "Finding of Elevated Blood Pressure or Hypertension"#xD; #xD; define "Encounter with Order for Hypertension Follow Up Declined by Patient":#xD; "Qualifying Encounter During Measurement Period" QualifyingEncounter#xD; with ( [ServiceRequest: "12 lead EKG panel"]#xD; union [ServiceRequest: "EKG study"]#xD; union [ServiceRequest: "Follow Up Within One Year"]#xD; union [ServiceRequest: "Follow Up Within 4 Weeks"]#xD; union [ServiceRequest: "Referral to Primary Care or Alternate Provider"]#xD; union [ServiceRequest: "Lifestyle Recommendation"]#xD; union [ServiceRequest: "Weight Reduction Recommended"]#xD; union [ServiceRequest: "Dietary Recommendations"]#xD; union [ServiceRequest: "Recommendation to Increase Physical Activity"]#xD; union [ServiceRequest: "Referral or Counseling for Alcohol Consumption"]#xD; union [ServiceRequest: "Laboratory Tests for Hypertension"]#xD; union [MedicationRequest: "Pharmacologic Therapy for Hypertension"] ) NoFollowUpOrdered#xD; such that NoFollowUpOrdered.doNotPerform is true#xD; and NoFollowUpOrdered.code in "Patient Declined"#xD; and NoFollowUpOrdered.authoredOn same day as start of QualifyingEncounter.period#xD; #xD; define "Encounter with Medical Reason for Not Obtaining or Patient Declined Blood Pressure Measurement":#xD; "Qualifying Encounter During Measurement Period" QualifyingEncounter#xD; with ( [Observation: "Systolic blood pressure"]#xD; union [Observation: "Diastolic blood pressure"] ) NoBPScreen#xD; such that ( NoBPScreen.code in "Medical Reason"#xD; or NoBPScreen.code in "Patient Declined"#xD; )#xD; and NoBPScreen.effective same day as start of QualifyingEncounter.period#xD; and "Not Done"(NoBPScreen)#xD; and NoBPScreen.status = 'final'#xD; #xD; define "Denominator Exceptions":#xD; "Encounter with Medical Reason for Not Obtaining or Patient Declined Blood Pressure Measurement"#xD; union "Encounter with Order for Hypertension Follow Up Declined by Patient"#xD; #xD; define "Denominator Exclusions":#xD; "Qualifying Encounter During Measurement Period" QualifyingEncounter#xD; with [Condition: "Diagnosis of Hypertension"] Hypertension#xD; such that Global."Prevalence Period" ( Hypertension ) overlaps before QualifyingEncounter.period#xD; #xD; define "Denominator":#xD; "Initial Population"#xD; #xD; define "Encounter with Order for Electrocardiogram for Hypertension":#xD; "Qualifying Encounter During Measurement Period" QualifyingEncounter#xD; with ( [ServiceRequest: "12 lead EKG panel"]#xD; union [ServiceRequest: "EKG study"] ) ECG#xD; such that ECG.authoredOn same day as start of QualifyingEncounter.period#xD; #xD; define "Encounter with Order for Intervention for Hypertension":#xD; "Qualifying Encounter During Measurement Period" QualifyingEncounter#xD; with ( [ServiceRequest: "Lifestyle Recommendation"]#xD; union [ServiceRequest: "Weight Reduction Recommended"]#xD; union [ServiceRequest: "Dietary Recommendations"]#xD; union [ServiceRequest: "Recommendation to Increase Physical Activity"]#xD; union [ServiceRequest: "Referral or Counseling for Alcohol Consumption"] ) HighBloodPressureIntervention#xD; such that HighBloodPressureIntervention.authoredOn same day as start of QualifyingEncounter.period#xD; #xD; define "Encounter with High Blood Pressure Reading":#xD; "Qualifying Encounter During Measurement Period" QualifyingEncounter#xD; let EncounterLastSystolicBP: Last([Observation: "Systolic blood pressure"] SystolicBP#xD; where SystolicBP.effective during QualifyingEncounter.period#xD; sort by effective#xD; ),#xD; EncounterLastDiastolicBP: Last([Observation: "Diastolic blood pressure"] DiastolicBP#xD; where DiastolicBP.effective during QualifyingEncounter.period#xD; sort by effective#xD; )#xD; where EncounterLastSystolicBP.value > 0 'mm[Hg]'#xD; and EncounterLastDiastolicBP.value > 0 'mm[Hg]'#xD; and ( EncounterLastSystolicBP.value >= 140 'mm[Hg]'#xD; or EncounterLastDiastolicBP.value >= 90 'mm[Hg]'#xD; )#xD; #xD; define "Encounter with High Blood Pressure Reading Within Year Prior":#xD; "Qualifying Encounter During Measurement Period" QualifyingEncounter#xD; let EncounterLastSystolicBP: Last([Observation: "Systolic blood pressure"] SystolicBP#xD; where SystolicBP.effective 1 year or less before start of QualifyingEncounter.period#xD; sort by effective#xD; ),#xD; EncounterLastDiastolicBP: Last([Observation: "Diastolic blood pressure"] DiastolicBP#xD; where DiastolicBP.effective 1 year or less before start of QualifyingEncounter.period#xD; sort by effective#xD; )#xD; where EncounterLastSystolicBP.value > 0 'mm[Hg]'#xD; and EncounterLastDiastolicBP.value > 0 'mm[Hg]'#xD; and ( EncounterLastSystolicBP.value >= 140 'mm[Hg]'#xD; or EncounterLastDiastolicBP.value >= 90 'mm[Hg]'#xD; )#xD; #xD; define "Encounter with Normal Blood Pressure Reading":#xD; "Qualifying Encounter During Measurement Period" QualifyingEncounter#xD; let EncounterLastSystolicBP: Last([Observation: "Systolic blood pressure"] SystolicBP#xD; where SystolicBP.effective during QualifyingEncounter.period#xD; sort by effective#xD; ),#xD; EncounterLastDiastolicBP: Last([Observation: "Diastolic blood pressure"] DiastolicBP#xD; where DiastolicBP.effective during QualifyingEncounter.period#xD; sort by effective#xD; )#xD; where EncounterLastSystolicBP.value included in Interval[1 'mm[Hg]', 120 'mm[Hg]' )#xD; and EncounterLastDiastolicBP.value included in Interval[1 'mm[Hg]', 80 'mm[Hg]' )#xD; #xD; define "Encounter with Prehypertensive Blood Pressure Reading":#xD; "Qualifying Encounter During Measurement Period" QualifyingEncounter#xD; let EncounterLastSystolicBP: Last([Observation: "Systolic blood pressure"] SystolicBP#xD; where SystolicBP.effective during QualifyingEncounter.period#xD; sort by effective#xD; ),#xD; EncounterLastDiastolicBP: Last([Observation: "Diastolic blood pressure"] DiastolicBP#xD; where DiastolicBP.effective during QualifyingEncounter.period#xD; sort by effective#xD; )#xD; where EncounterLastSystolicBP.value included in Interval[1 'mm[Hg]', 140 'mm[Hg]' )#xD; and EncounterLastDiastolicBP.value included in Interval[1 'mm[Hg]', 90 'mm[Hg]' )#xD; and ( EncounterLastSystolicBP.value >= 120 'mm[Hg]'#xD; or EncounterLastDiastolicBP.value >= 80 'mm[Hg]'#xD; )#xD; #xD; define "Qualifying Encounter During Measurement Period":#xD; [Encounter: "Encounter to Screen for Blood Pressure"] ValidEncounter#xD; where ValidEncounter.period during "Measurement Period"#xD; #xD; define function "Not Done"(res DomainResource ):#xD; if ( res R#xD; where ( "GetModiferExtension"(R, 'http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-notDone').value = true )#xD; ) is not null then true#xD; else false#xD; #xD; define function "GetModifierExtensions"(res DomainResource, url String ):#xD; res.modifierExtension E#xD; where E.url = ( url )#xD; return E#xD; #xD; define function "GetModiferExtension"(res DomainResource, url String ):#xD; singleton from "GetModifierExtensions"(res, url)#xD; ELM XML Content Encoded data (364196 characters) ELM JSON Content Encoded data (654256 characters) Generated using version 0.4.9 of the sample-content-ig Liquid templates
HL7 International / Clinical Quality Information
Preventive Care and Screening: Screening for High Blood Pressure and Follow-Up Documented
Value set Encounter to Screen for Blood Pressure
Value set Finding of Elevated Blood Pressure or Hypertension
Value set Laboratory Tests for Hypertension
Value set Pharmacologic Therapy for Hypertension
Value set Recommendation to Increase Physical Activity
Value set Referral or Counseling for Alcohol Consumption
Value set Referral to Primary Care or Alternate Provider
Qualifying Encounter During Measurement Period
Encounter with High Blood Pressure Reading
Encounter with High Blood Pressure Reading Within Year Prior
Encounter with Second Hypertensive Reading
Encounter with Normal Blood Pressure Reading
Encounter with Prehypertensive Blood Pressure Reading
Encounter with Order for Intervention for Hypertension
Encounter with Order for Follow Up Within One Year
Encounter with Referral to Alternate Provider for High Blood Pressure Reading
Encounter with First Hypertensive Reading
Encounter with Order for Follow Up Within 4 Weeks
Encounter with Order for Laboratory Test for Hypertension
Encounter with Order for Electrocardiogram for Hypertension
Encounter with Order for Hypertension Medication
Encounter with Order for Hypertension Follow Up Declined by Patient
Encounter with Medical Reason for Not Obtaining or Patient Declined Blood Pressure Measurement