Library Name | Name | sequence |
OpioidCDSREC11OrderSelect |
Opioid Analgesic with Ambulatory Misuse Potential Prescriptions |
0 |
define "Opioid Analgesic with Ambulatory Misuse Potential Prescriptions":
Common."Is Opioid Analgesic with Ambulatory Misuse Potential?"( ContextPrescriptions )
Library Name | Name | sequence |
OpioidCDSREC11OrderSelect |
Patient Is Being Prescribed Opioid Analgesic with Ambulatory Misuse Potential |
1 |
define "Patient Is Being Prescribed Opioid Analgesic with Ambulatory Misuse Potential":
exists( "Opioid Analgesic with Ambulatory Misuse Potential Prescriptions" )
Library Name | Name | sequence |
OpioidCDSCommon |
Active Ambulatory Benzodiazepine or CNS Depressant Rx |
2 |
define "Active Ambulatory Benzodiazepine or CNS Depressant Rx":
if Config."Can the implementing EHR support queries for past medications by date range?" then
(
"Get MedicationRequest Medication as Code"("Active Medication List")
) Rx
where date from Rx.authoredOn 2 years or less on or before Today()
and Rx.medication in "Benzodiazepine medications"
or Rx.medication in "CNS Depressant Medications"
else
List<FHIR.MedicationRequest>{}
Library Name | Name | sequence |
OpioidCDSREC11OrderSelect |
Benzodiazepine or CNS Depressant Prescriptions |
3 |
define "Benzodiazepine or CNS Depressant Prescriptions":
Common."Is Benzodiazepine or CNS Depressant?"( ContextPrescriptions )
Library Name | Name | sequence |
OpioidCDSREC11OrderSelect |
Patient Is Being Prescribed Benzodiazepine or CNS Depressant |
4 |
define "Patient Is Being Prescribed Benzodiazepine or CNS Depressant":
exists( "Benzodiazepine or CNS Depressant Prescriptions" )
Library Name | Name | sequence |
OpioidCDSCommon |
Active Ambulatory Opioid Rx |
5 |
define "Active Ambulatory Opioid Rx":
if Config."Can the implementing EHR support queries for past medications by date range?" then
(
"Get MedicationRequest Medication as Code"("Get Active Ambulatory Medication Requests"([MedicationRequest]))
) Rx
where date from Rx.authoredOn 2 years or less on or before Today()
and Rx.medication in "Opioid analgesics with ambulatory misuse potential"
else
List<FHIR.MedicationRequest>{}
Library Name | Name | sequence |
OpioidCDSRoutines |
Patient Age Less Than 18 |
6 |
define "Patient Age Less Than 18":
if (Config."Age Less than 18 Years Is Enabled") then
AgeInYearsAt(Today()) < 18
else false
Library Name | Name | sequence |
OpioidCDSRoutines |
Condition Positive for Sickle Cell |
7 |
define "Condition Positive for Sickle Cell":
if (Config."Sickle Cell Check Enabled") then
exists(
Common."Positive Sickle Cell Condition"
)
else false
Library Name | Name | sequence |
OpioidCDSRoutines |
Is Active Cancer Treatment? |
8 |
define "Is Active Cancer Treatment?":
if (Config."Active Cancer Treatment Encounters Condition Is Enabled")
then "Has Two or More Encounters with Cancer Diagnosis During Encounter Period"
or "Has Active Cancer Diagnosis on Problem List"
else false
Library Name | Name | sequence |
OpioidCDSRoutines |
Conditions Likely Terminal for Opioid Prescribing |
9 |
define "Conditions Likely Terminal for Opioid Prescribing":
if (Config."End-Stage Disease Criteria Enabled") then
exists (
Common."US Core-Categorized Conditions" EOLC
where EOLC.code in Common."Conditions likely terminal for opioid prescribing"
// and EOLC.clinicalStatus in Common."Active Condition"
)
else false
Library Name | Name | sequence |
OpioidCDSRoutines |
Is Opioid Review Useful? |
10 |
define "Is Opioid Review Useful?":
not "Patient Age Less Than 18"
and not "Condition Positive for Sickle Cell"
and not "Is Active Cancer Treatment?"
and not "Conditions Likely Terminal for Opioid Prescribing"
Library Name | Name | sequence |
OpioidCDSREC11OrderSelect |
Inclusion Criteria |
11 |
define "Inclusion Criteria":
(
(
"Patient Is Being Prescribed Opioid Analgesic with Ambulatory Misuse Potential"
and exists Common."Active Ambulatory Benzodiazepine or CNS Depressant Rx"
)
or (
"Patient Is Being Prescribed Benzodiazepine or CNS Depressant"
and exists Common."Active Ambulatory Opioid Rx"
)
)
and Routines."Is Opioid Review Useful?"
Library Name | Name | sequence |
OpioidCDSCommon |
US Core-Categorized Conditions |
12 |
// 3. Medications indicating end of life
/* or exists (
"Medications Indicating End of Life"
) */
define "US Core-Categorized Conditions":
[Condition: category in "Encounter Diagnosis Condition Category"]
union [Condition: category in "Problem List Condition Category"]
union [Condition: category in "US Core Health Concern Condition Category"]
Library Name | Name | sequence |
OpioidCDSCommon |
Conditions Indicating End of Life or With Limited Life Expectancy |
13 |
define "Conditions Indicating End of Life or With Limited Life Expectancy":
(
"US Core-Categorized Conditions" C
where C.code in "Conditions likely terminal for opioid prescribing"
and C.clinicalStatus in "Active Condition"
)
union
(
"US Core-Categorized Conditions" C
where C.code in "Limited life expectancy conditions"
and C.clinicalStatus in "Active Condition"
)
Library Name | Name | sequence |
OpioidCDSCommon |
Admitted/Referred/Discharged to Hospice Care |
14 |
define "Admitted/Referred/Discharged to Hospice Care":
(
if (Config."Hospice Findings Exclusion Enabled") then
[Observation: code in "Hospice Finding Codes"] O
where not (O.status.value in { 'unknown', 'entered-in-error', 'cancelled' })
else
{}
)
union
(
[Encounter] E
where date from E.period.start 1 year or less on or before Today()
and (
if E.hospitalization.dischargeDisposition.coding is null
or not exists (E.hospitalization.dischargeDisposition.coding)
then false
else E.hospitalization.dischargeDisposition in "Hospice Disposition"
)
and E.status.value in { 'planned', 'arrived', 'in-progress', 'finished', 'onleave' }
)
Library Name | Name | sequence |
OpioidCDSCommon |
End of Life Assessment |
15 |
define "End of Life Assessment":
// 1. Conditions indicating end of life or with limited life expectancy
exists (
"Conditions Indicating End of Life or With Limited Life Expectancy"
)
// 2. Admitted/referred/discharged to hospice care
or exists (
"Admitted/Referred/Discharged to Hospice Care"
)
Library Name | Name | sequence |
OpioidCDSREC11OrderSelect |
Exclusion Criteria |
16 |
define "Exclusion Criteria":
Common."End of Life Assessment"
Library Name | Name | sequence |
OpioidCDSREC11OrderSelect |
Is Recommendation Applicable? |
17 |
define "Is Recommendation Applicable?":
"Inclusion Criteria"
and not "Exclusion Criteria"
Library Name | Name | sequence |
OpioidCDSCommon |
Is Opioid Analgesic with Ambulatory Misuse Potential? |
18 |
define function "Is Opioid Analgesic with Ambulatory Misuse Potential?"(value List<MedicationRequest>):
("Get MedicationRequest Medication as Code"(value)) Rx
where Rx.medication in "Opioid analgesics with ambulatory misuse potential"
and Rx.category in "Community"
Library Name | Name | sequence |
OpioidCDSCommon |
Get MedicationRequest Medication as Code |
19 |
define function "Get MedicationRequest Medication as Code"(value List<MedicationRequest>):
value Rx
let Med:
if Rx.medication is Reference then singleton from (
[Medication] M
where M.id = (Last(Split((Rx.medication as FHIR.Reference).reference, '/')))
) else null
return
MedicationRequest {
id: Rx.id,
status: Rx.status,
intent: Rx.intent,
category: Rx.category,
medication: if Rx.medication is Reference then Med.code else Rx.medication as CodeableConcept,
subject: Rx.subject,
authoredOn: Rx.authoredOn,
recorder: Rx.recorder,
dosageInstruction: Rx.dosageInstruction,
dispenseRequest: Rx.dispenseRequest
}
Library Name | Name | sequence |
FHIRHelpers |
ToConcept |
20 |
define function ToConcept(concept FHIR.CodeableConcept):
if concept is null then
null
else
System.Concept {
codes: concept.coding C return ToCode(C),
display: concept.text.value
}
Library Name | Name | sequence |
OpioidCDSCommon |
Is Benzodiazepine or CNS Depressant? |
21 |
define function "Is Benzodiazepine or CNS Depressant?"(value List<MedicationRequest>):
("Get MedicationRequest Medication as Code"(value)) Rx
where Rx.medication in "Benzodiazepine medications"
or Rx.medication in "CNS Depressant Medications"
and Rx.category in "Community"
Library Name | Name | sequence |
FHIRHelpers |
ToDateTime |
22 |
define function ToDateTime(value dateTime): value.value
|