-
Notifications
You must be signed in to change notification settings - Fork 2
/
MNACInitialExpressions.cql
101 lines (71 loc) · 2.54 KB
/
MNACInitialExpressions.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
library MNACInitialExpressions version '0.1.0'
using USCore version '3.1.1'
using FHIR version '4.0.1'
include FHIRHelpers version '4.1.0'
include USCoreCommon version '0.1.0' called UC
include USCoreElements version '0.1.0' called UCE
codesystem "Identifier Type": 'http://terminology.hl7.org/CodeSystem/v2-0203'
codesystem "ICD10": 'http://hl7.org/fhir/sid/icd-10-cm'
codesystem "SNOMED CT": 'http://snomed.info/sct'
code "Member Number": 'MB' from "Identifier Type"
code "UTI": 'T83.5' from "ICD10"
code "Abnormal Urine Finding": '102866000' from "SNOMED CT"
context Patient
define "Date of Request":
"Most Recent ServiceRequest".authoredOn
//https://www.hca.wa.gov/assets/billers-and-providers/13-760.pdf
//assuming that client id is the coverage member id
define "Client ID":
UCE."Member ID"
define "Patient Name":
UCE."Name - First Middle(s) Last"
define "Diagnosis":
First("SR Related Condition".code).text.value
define "Item Requested":
"Most Recent ServiceRequest".code.coding.display.value
define "UTI in Last Year":
Exists("UTI Diagnostic Reports Last Year")
define "Lab Reports UTIs":
"UTI Diagnostic Reports Last Year".presentedForm
define "Dates of UTIs":
"UTI Diagnostic Reports Last Year".effective.value
//TODO: create example MedicationStatement
define "Antibiotics Used":
[FHIR.MedicationStatement] MS
where First(MS.reasonReference.reference) in "UTI Diagnostic Reports Last Year".id
define "Check Symptoms":
'TBD'
define "Fever Temperature":
'TBD'
define "Catheterization Frequency":
'TBD'
define "Additional Comment":
'TBD'
define "Physician Name":
"Requesting Physician".name.family
define "Physician Telephone":
UC.Mobile("Requesting Physician".telecom).value
define "Physician Fax":
Fax("Requesting Physician".telecom).value
define "Referring Physician Telephone":
'TBD'
define "Date":
Today()
//helper definitions
define "All ServiceRequests":
[FHIR.ServiceRequest]
define "Most Recent ServiceRequest":
UC.MostRecentSR("All ServiceRequests")
define "SR Related Condition":
[FHIR.Condition] C
where EndsWith(First("Most Recent ServiceRequest".reasonReference.reference.value), C.id)
define "UTI Diagnostic Reports Last Year":
[FHIR.DiagnosticReport] C
where "Abnormal Urine Finding".code in C.conclusionCode.coding.code
and C.effective > (Today() - 1 year)
define "Requesting Physician":
singleton from (
[USCore.PractitionerProfile] P
where EndsWith("Most Recent ServiceRequest".requester.reference, P.id))
define function Fax(contactPoints List<USCore.ContactPoint>):
singleton from (contactPoints P where P.system = 'fax')