-
Notifications
You must be signed in to change notification settings - Fork 1
/
EXM124-8.2.000.cql
103 lines (80 loc) · 4.93 KB
/
EXM124-8.2.000.cql
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
library EXM124 version '8.2.000'
/*
Based on CMS124v7 - Cervical Cancer Screening
*/
/*
This example is a work in progress and should not be considered a final specification
or recommendation for guidance. This example will help guide and direct the process
of finding conventions and usage patterns that meet the needs of the various stakeholders
in the measure development community.
*/
using FHIR version '4.0.1'
include FHIRHelpers version '4.0.1' called FHIRHelpers
include Hospice version '2.0.000' called Hospice
include AdultOutpatientEncounters version '2.0.000' called AdultOutpatientEncounters
include MATGlobalCommonFunctions version '5.0.000' called Global
include SupplementalDataElements version '2.0.0' called SDE
codesystem "SNOMEDCT:2017-09": 'http://snomed.info/sct/731000124108' version 'http://snomed.info/sct/731000124108/version/201709'
valueset "ONC Administrative Sex": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1'
valueset "Race": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.114222.4.11.836'
valueset "Ethnicity": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.114222.4.11.837'
valueset "Payer": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.114222.4.11.3591'
valueset "Female": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.560.100.2'
valueset "Home Healthcare Services": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1016'
valueset "Hysterectomy with No Residual Cervix": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.198.12.1014'
valueset "Office Visit": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1001'
valueset "Pap Test": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.108.12.1017'
valueset "Preventive Care Services - Established Office Visit, 18 and Up": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1025'
valueset "Preventive Care Services-Initial Office Visit, 18 and Up": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.101.12.1023'
valueset "HPV Test": 'http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113883.3.464.1003.110.12.1059'
code "Congenital absence of cervix (disorder)": '37687000' from "SNOMEDCT:2017-09" display 'Congenital absence of cervix (disorder)'
parameter "Measurement Period" Interval<DateTime>
default Interval[@2020-01-01T00:00:00.0, @2021-01-01T00:00:00.0)
context Patient
define "SDE Ethnicity":
SDE."SDE Ethnicity"
define "SDE Payer":
SDE."SDE Payer"
define "SDE Race":
SDE."SDE Race"
define "SDE Sex":
SDE."SDE Sex"
define "Numerator":
exists "Pap Test Within 3 Years"
or exists "Pap Test With HPV Within 5 Years"
define "Denominator":
"Initial Population"
define "Pap Test with Results":
[Observation: "Pap Test"] PapTest
where PapTest.value is not null
and PapTest.status in { 'final', 'amended', 'corrected', 'preliminary' }
define "Pap Test Within 3 Years":
"Pap Test with Results" PapTest
where Global."Normalize Interval"(PapTest.effective) ends 3 years or less before end of "Measurement Period"
define "PapTest Within 5 Years":
( "Pap Test with Results" PapTestOver30YearsOld
where Global."CalendarAgeInYearsAt"(FHIRHelpers.ToDate(Patient.birthDate), start of Global."Normalize Interval"(PapTestOver30YearsOld.effective))>= 30
and Global."Normalize Interval"(PapTestOver30YearsOld.effective) ends 5 years or less before end of "Measurement Period"
)
define "Pap Test With HPV Within 5 Years":
"PapTest Within 5 Years" PapTestOver30YearsOld
with [Observation: "HPV Test"] HPVTest
such that HPVTest.value is not null
and Global."Normalize Interval"(HPVTest.effective) starts within 1 day of start of Global."Normalize Interval"(PapTestOver30YearsOld.effective)
and HPVTest.status in { 'final', 'amended', 'corrected', 'preliminary' }
define "Denominator Exclusion":
Hospice."Has Hospice"//("Measurement Period") removed MP because Hospice libarary no longer uses it
or exists "Surgical Absence of Cervix"
or exists "Absence of Cervix"
define "Absence of Cervix":
[Condition : "Congenital absence of cervix (disorder)"] NoCervixBirth
where Global."Normalize Interval"(NoCervixBirth.onset) starts before end of "Measurement Period" //Changed "Normalize Onset" to "Normalize Interval" because Global library v5 doesn't have the former
and NoCervixBirth.clinicalStatus ~ ToConcept(Global."active")
define "Surgical Absence of Cervix":
[Procedure: "Hysterectomy with No Residual Cervix"] NoCervixHysterectomy
where Global."Normalize Interval"(NoCervixHysterectomy.performed) ends before end of "Measurement Period"
and NoCervixHysterectomy.status = 'completed'
define "Initial Population":
Patient.gender = 'female'
and Global."CalendarAgeInYearsAt"(FHIRHelpers.ToDate(Patient.birthDate), start of "Measurement Period") in Interval[23, 64]
and exists AdultOutpatientEncounters."Qualifying Encounters"//("Measurement Period") removed MP because AdultOutpatientEncounters libarary no longer uses it