Formats: XML, JSON, Turtle

Id: library-OpioidCDSREC11PatientView
Type: Logic Library
Status: active

type: depends-on

reference: http://fhir.org/guides/cdc/opioid-cds/Library/FHIRHelpers

type: depends-on

reference: http://fhir.org/guides/cdc/opioid-cds/Library/library-OpioidCDSCommon

type: depends-on

reference: http://fhir.org/guides/cdc/opioid-cds/Library/library-OpioidCDSRoutines

Content: type: text/cql
library OpioidCDSREC11PatientView version '1.2.2'

using FHIR version '3.0.0'

include FHIRHelpers version '3.0.0' called FHIRHelpers
include OpioidCDSCommon version '1.2.2' called Common
include OpioidCDSRoutines version '1.2.2' called Routines

**  Recommendation #11
**    Clinicians should avoid prescribing opioid pain medication and benzodiazepines
**    concurrently whenever possible (recommendation category: A, evidence type: 3)
**  When
**    Provider is prescribing an opioid analgesic with ambulatory misuse potential in the outpatient setting
**    Provider is prescribing a benzodiazepine medication
**    Opioid review is useful for this patient:
**      Patient is 18 or over
**      Patient does not have findings indicating limited life expectancy
**      Patient does not have orders for therapies indicating end of life care
**      Patient is not undergoing active cancer treatment:
**        Patient has had at least 2 encounters within the past year with any diagnosis of cancer
**    Patient prescribed opioid analgesic with ambulatory misuse potential and benzodiazepine medication concurrently
**  Then
**    Recommend to avoid prescribing opioid pain medication and benzodiazepine concurrently
**      Will revise
**      Benefits outweigh risks, snooze 3 months
**      N/A - see comment, snooze 3 months

// META: Plan Definition: http://fhir.org/guides/cdc/opioid-cds/PlanDefinition/opioid-cds-11-patient-view

context Patient

define "Is Recommendation Applicable?":
  "Inclusion Criteria"
    and not "Exclusion Criteria"

define "Inclusion Criteria":
    exists (Common."Active Ambulatory Benzodiazepine Rx")
      and exists (Common."Active Ambulatory Opioid Rx")
    and Routines."Is Opioid Review Useful?"

define "Exclusion Criteria":

define "Get Indicator":
  if "Is Recommendation Applicable?"
    then 'warning'
  else null

define "Get Summary":
  if "Is Recommendation Applicable?"
    then 'Patient has active prescriptions for opioid pain medication and benzodiazepines'
  else null

define "Get Detail":
  if "Is Recommendation Applicable?"
    then 'Avoid prescribing opioid pain medication and benzodiazepines concurrently whenever possible'
  else null

// Detected Issue - Avoid prescribing opioid pain medication and benzodiazepines concurrently

define "Concurrent Benzodiazepine Prescription Issue":
  DetectedIssue {
    status: FHIR.ObservationStatus { value: 'preliminary' },
    category: FHIR.CodeableConcept { text: FHIR.string { value: "Get Summary" } },
    severity: FHIR.DetectedIssueSeverity { value: 'moderate' },
    patient: FHIR.Reference { reference: FHIR.string { value: 'Patient/' + Patient.id } },
    date: FHIR.dateTime { value: Now() },
    // TODO: Device representation...
    // author:,
      (Common."Active Ambulatory Benzodiazepine Rx"
				union Common."Active Ambulatory Opioid Rx") M
        return FHIR.Reference { reference: FHIR.string { value: 'MedicationRequest/' + M.id } },
    detail: FHIR.string { value: "Get Detail" },
    reference: FHIR.uri { value: 'http://fhir.org/guides/cdc/opioid-cds/PlanDefinition/opioidcds-11-patient-view'}