2022 CDC Clinical Practice Guideline for Prescribing Opioids Implementation Guide
2022.1.0 - CI Build

2022 CDC Clinical Practice Guideline for Prescribing Opioids Implementation Guide, published by Centers for Disease Control and Prevention (CDC). This guide is not an authorized publication; it is the continuous build for version 2022.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/cqframework/opioid-cds-r4/ and changes regularly. See the Directory of published versions

PlanDefinition: Recommendation #9 - Consider Patient's History of Controlled Substance Prescriptions (Experimental)

Official URL: http://fhir.org/guides/cdc/opioid-cds/PlanDefinition/opioidcds-09 Version: 2022.1.0
Draft as of 2024-04-22 Realm: United States of America flag Computable Name: PlanDefinition_Recommendation_09_Order_Sign
Other Identifiers: cdc-opioid-guidance (use: official)

Usage:Clinical Focus: Medication requested (situation), Clinical Focus: Chronic pain (finding), Clinical Focus: Acute pain (finding), Clinical Focus: Subacute pain

Copyright/Legal: © CDC 2016+.

When prescribing initial opioid therapy for acute, subacute, or chronic pain, and periodically during opioid therapy for chronic pain, clinicians should review the patient’s history of controlled substance prescriptions using state prescription drug monitoring program (PDMP) data to determine whether the patient is receiving opioid dosages or combinations that put the patient at high risk for overdose.

The 2022 CDC Clinical Practice Guideline for Prescribing Opioids for Pain is intended to improve communication between clinicians and patients about the benefits and risks of pain treatments, including opioid therapy; improve the effectiveness and safety of pain treatment; mitigate pain; improve function and quality of life for patients with pain; and reduce risks associated with opioid pain therapy, including opioid use disorder, overdose, and death. The recommendations do not apply to pain related to sickle cell disease or cancer or to patients receiving palliative or end-of-life care.

Id: opioidcds-09
Url: Recommendation #9 - Consider Patient's History of Controlled Substance Prescriptions
Version: 2022.1.0
Identifier:

value: cdc-opioid-guidance

Name: PlanDefinition_Recommendation_09_Order_Sign
Title: Recommendation #9 - Consider Patient's History of Controlled Substance Prescriptions
Status: draft
Experimental: true
Type:

system: PlanDefinitionType

code: eca-rule

display: ECA Rule

Date: 2024-04-22
Publisher: Centers for Disease Control and Prevention (CDC)
Description: When prescribing initial opioid therapy for acute, subacute, or chronic pain, and periodically during opioid therapy for chronic pain, clinicians should review the patient's history of controlled substance prescriptions using state prescription drug monitoring program (PDMP) data to determine whether the patient is receiving opioid dosages or combinations that put the patient at high risk for overdose.
Logic Definitions:
Library NameNamesequence
OpioidCDSREC09 Chronic Pain Opioid Analgesic with Ambulatory Misuse Potential Prescriptions 0
define "Chronic Pain Opioid Analgesic with Ambulatory Misuse Potential Prescriptions":
  ( Common."Is Opioid Analgesic with Ambulatory Misuse Potential?"( ContextPrescriptions ) ) AmbulatoryOpioidPrescription
    where Routines."Is Subacute or Chronic Pain Prescription?"( AmbulatoryOpioidPrescription )


Library NameNamesequence
OpioidCDSREC09 Patient Is Being Prescribed Opioid Analgesic with Ambulatory Misuse Potential 1
define "Patient Is Being Prescribed Opioid Analgesic with Ambulatory Misuse Potential":
  exists( "Chronic Pain Opioid Analgesic with Ambulatory Misuse Potential Prescriptions" )


Library NameNamesequence
OpioidCDSRoutines Patient Age Less Than 18 2
define "Patient Age Less Than 18":
  if (Config."Age Less than 18 Years Is Enabled") then
    AgeInYearsAt(Today()) < 18
  else
    false


Library NameNamesequence
OpioidCDSRoutines Condition Positive for Sickle Cell 3
define "Condition Positive for Sickle Cell":
      if (Config."Sickle Cell Check Enabled") then
        exists(
            Common."Positive Sickle Cell Condition"
        )  else
        false


Library NameNamesequence
OpioidCDSCommon US Core-Categorized Conditions 4
// 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 NameNamesequence
OpioidCDSRoutines Conditions Indicating End Of Life Present 5
define "Conditions Indicating End Of Life Present":
  exists (
    Common."US Core-Categorized Conditions" LLEC
      where LLEC.code in Common."Limited life expectancy conditions"
        and LLEC.clinicalStatus in Common."Active Condition"
  )


Library NameNamesequence
OpioidCDSRoutines Is Active Cancer Treatment? 6
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"
    else
      false


Library NameNamesequence
OpioidCDSRoutines Conditions Including Cancer To Exclude Opioid Management Indicating End-Stage Disease Present 7
define "Conditions Including Cancer To Exclude Opioid Management Indicating End-Stage Disease Present":
  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 NameNamesequence
OpioidCDSRoutines Is Opioid Review Useful? 8
define "Is Opioid Review Useful?":
  not "Patient Age Less Than 18"
    and not "Condition Positive for Sickle Cell"
    and not "Conditions Indicating End Of Life Present"
    and not "Is Active Cancer Treatment?"
    and not "Conditions Including Cancer To Exclude Opioid Management Indicating End-Stage Disease Present"


Library NameNamesequence
OpioidCDSCommonConfig PDMP Data Not Reviewed in Past 90 Days Criteria Enabled 9
// Recommendation 9
define "PDMP Data Not Reviewed in Past 90 Days Criteria Enabled":
  true


Library NameNamesequence
OpioidCDSREC09 Look Back 90 Days 10
define "Look Back 90 Days":
  Interval[Today() - 90 days, Today()]


Library NameNamesequence
OpioidCDSREC09 PDMP Data Not Reviewed in Past 90 Days 11
define "PDMP Data Not Reviewed in Past 90 Days":
  Config."PDMP Data Not Reviewed in Past 90 Days Criteria Enabled"
    and not (
      exists (
        [Procedure: Common."PDMP review procedure"] P
          where P.status ~ 'completed'
            and P.performed during "Look Back 90 Days"
      )
      or exists (
        [Observation: Common."PDMP data reviewed finding"] O
          where O.status in { 'final', 'amended' }
            and (
              if O.effective is FHIR.Period
                then (O.effective as FHIR.Period) during day of "Look Back 90 Days"
                else if O.effective is FHIR.dateTime
                  then date from O.effective in day of "Look Back 90 Days"
                  else false
          )
      )
    )


Library NameNamesequence
OpioidCDSREC09 Inclusion Criteria 12
define "Inclusion Criteria":
  "Patient Is Being Prescribed Opioid Analgesic with Ambulatory Misuse Potential"
    and Routines."Is Opioid Review Useful?"
    and "PDMP Data Not Reviewed in Past 90 Days"


Library NameNamesequence
OpioidCDSREC09 Exclusion Criteria 13
define "Exclusion Criteria":
  false


Library NameNamesequence
OpioidCDSREC09 Is Recommendation Applicable? 14
define "Is Recommendation Applicable?":
  "Inclusion Criteria"
    and not "Exclusion Criteria"


Knowledge Capability: shareable computable executable publishable
Use Context:
codevaluedisplay
focus 182888003 Medication requested (situation)
focus 82423001 Chronic pain (finding)
focus 274663001 Acute pain (finding)
focus
Jurisdiction: US
Purpose:

The 2022 CDC Clinical Practice Guideline for Prescribing Opioids for Pain is intended to improve communication between clinicians and patients about the benefits and risks of pain treatments, including opioid therapy; improve the effectiveness and safety of pain treatment; mitigate pain; improve function and quality of life for patients with pain; and reduce risks associated with opioid pain therapy, including opioid use disorder, overdose, and death. The recommendations do not apply to pain related to sickle cell disease or cancer or to patients receiving palliative or end-of-life care.

Usage: At a minimum, during long-term opioid therapy, PDMP data should be reviewed before an initial opioid prescription and then every 3 months or more frequently.
Copyright:

© CDC 2016+.

Related Artifacts:

Documentation

Libraries:
Library - Recommendation #9 - Consider Patient's History of Controlled Substance Prescriptions
Actions:
Before Ordering Opioids, Review PDMP Data: Review PDMP data for this patient before completing an opioid order. For guidance about utilizing PDMP information to improve patient safety, see [Recommendation 9 of the 2022 CDC Clinical Practice Guideline](https://www.cdc.gov/mmwr/volumes/71/rr/rr7103a1.htm#:~:text=Clinicians%20should%20take,see%20Recommendation%2010).). [CDC advises not to dismiss patients from your practice on the basis of PDMP information](https://www.cdc.gov/mmwr/volumes/71/rr/rr7103a1.htm#:~:text=Clinicians%20should%20not%20dismiss,Recommendations%208%20and%2012%5D).)
When: named-event: order-sign
If: applicability: Check whether the current order is for an opioid with ambulatory misuse potential, if an opioid review is appropriate or there exists evidence of a prescription drug monitoring program (PDMP) review procedure or finding occurred in the past 90 days. (Is Recommendation Applicable?)
Then:
: Access Data - Launch app to review PDMP data
Then:
: Document - PDMP data reviewed, snooze 3 months
Then:
: Snooze* - N/A see comment, snooze 3 months
Then: