FHIR Clinical Guidelines (v1.0.0) (STU1)

This page is part of the Clinical Guidelines (v1.0.0: STU 1) based on FHIR R4. This is the current published version. For a full list of available versions, see the Directory of published versions

Library-OpioidCDSR4Recommendation05

Formats: XML, JSON, Turtle

Participants

AuthorKensaku Kawamoto, MD, PhD, MHS
AuthorBryn Rhodes
AuthorFloyd Eisenberg, MD, MPH
AuthorRobert McClure, MD, MPH

Related Artifacts

documentationCDC guideline for prescribing opioids for chronic painhttps://www.cdc.gov/mmwr/volumes/65/rr/rr6501e1.htm?CDC_AA_refVal=https%3A%2F%2Fwww.cdc.gov%2Fmmwr%2Fvolumes%2F65%2Frr%2Frr6501e1er.htm
depends-onOpioid CDS R4 Common Logic
documentationMME Conversion Tableshttps://www.cdc.gov/drugoverdose/pdf/calculating_total_daily_dose-a.pdf

Data Requirements

Type: MedicationRequest
FilterValue
statusOne of these codes: http://hl7.org/fhir/CodeSystem/medicationrequest-status active: Active
categoryOne of these codes: http://terminology.hl7.org/CodeSystem/medicationrequest-category outpatient: Outpatient

Contents

text/cql

library OpioidCDSR4Recommendation05 version '0.1.0'

using FHIR version '4.0.0'

include OpioidCDSR4Common version '0.1.0' called Common

/*
**
** Recommendation #5
**
*/

/*
  Plan Definition:
	http://build.fhir.org/ig/cqframework/opioid-cds/PlanDefinition-opioidcds-r4-recommendation-05.html
*/

parameter ContextPrescriptions List<MedicationRequest>

context Patient

define "Inclusion Criteria":
  AgeInYears() >= 18
    and not "Exclusion Criteria"
    and "Total MME" >= 50 'mg/d'

define "Exclusion Criteria":
  Common."End of Life Assessment"

define "Total MME":
  Common.TotalMME(ContextPrescriptions union Common."Active Ambulatory Opioid Rx")

define "Taper Now": "Total MME".value >= 90

define "Consider Tapering": "Total MME".value < 90

define "Get Indicator":
  if "Inclusion Criteria"
    then 'warning'
  else null

define "Get Summary":
  if "Inclusion Criteria"
    then
      'High risk for opioid overdose - '
        + case when "Taper Now"
           then 'taper now'
           else 'consider tapering'
         end
  else null

define "Get Detail":
  if "Inclusion Criteria"
    then'Total morphine milligram equivalent (MME) is ' + ToString("Total MME") + '. Taper to less than 50.'
  else null