PlanDefinition-opioidcds-11

Sourcefhir.cdc.opioid-cds-r4#current:2022 CDC Clinical Practice Guideline for Prescribing Opioids Implementation Guide (v4.0.1)
resourceTypePlanDefinition
idopioidcds-11
canonicalhttp://fhir.org/guides/cdc/opioid-cds/PlanDefinition/opioidcds-11
version2022.1.0
statusdraft
publisherCenters for Disease Control and Prevention (CDC)
nameCDC_opioid_11
titlePlanDefinition - 2022 CDC Clinical Practice Guideline for Prescribing Opioids for Pain: Recommendation #11
date2023-05-01
experimentaltrue
descriptionConcurrently prescribing opioid medications with benzodiazepines increases the risk of harm for the patient.
copyright© CDC 2016+.
jurisdictionsus
Usages(none)

Generated Narrative: PlanDefinition

Resource PlanDefinition "opioidcds-11"

Profiles: CPG Recommendation Definition , CPG Publishable Plan Definition

CPG Knowledge Capability Extension : shareable

CPG Knowledge Capability Extension : computable

CPG Knowledge Capability Extension : executable

CPG Knowledge Capability Extension : publishable

CQFM Software System : Device/cqf-tooling

CQFM Logic Definition

url

libraryName

value : OpioidCDSREC11

url

name

value : Get Summary

url

statement

value : define "Get Summary": if "Is Recommendation Applicable?" then 'Avoid prescribing opioid pain medication and benzodiazepine concurrently whenever possible.' else null

url

displaySequence

value : 0

CQFM Logic Definition

url

libraryName

value : OpioidCDSREC11

url

name

value : Opioid Analgesic with Ambulatory Misuse Potential Prescriptions

url

statement

value : define "Opioid Analgesic with Ambulatory Misuse Potential Prescriptions": Common."Is Opioid Analgesic with Ambulatory Misuse Potential?"( ContextPrescriptions )

url

displaySequence

value : 1

CQFM Logic Definition

url

libraryName

value : OpioidCDSREC11

url

name

value : Patient Is Being Prescribed Opioid Analgesic with Ambulatory Misuse Potential

url

statement

value : define "Patient Is Being Prescribed Opioid Analgesic with Ambulatory Misuse Potential": exists( "Opioid Analgesic with Ambulatory Misuse Potential Prescriptions" )

url

displaySequence

value : 2

CQFM Logic Definition

url

libraryName

value : OpioidCDSCommon

url

name

value : Active Ambulatory Benzodiazepine Rx

url

statement

value : define "Active Ambulatory Benzodiazepine 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 "Benzodiazepine medications" else List<FHIR.MedicationRequest>{}

url

displaySequence

value : 3

CQFM Logic Definition

url

libraryName

value : OpioidCDSREC11

url

name

value : Benzodiazepine Prescriptions

url

statement

value : define "Benzodiazepine Prescriptions": Common."Is Benzodiazepine?"( ContextPrescriptions )

url

displaySequence

value : 4

CQFM Logic Definition

url

libraryName

value : OpioidCDSREC11

url

name

value : Patient Is Being Prescribed Benzodiazepine

url

statement

value : define "Patient Is Being Prescribed Benzodiazepine": exists( "Benzodiazepine Prescriptions" )

url

displaySequence

value : 5

CQFM Logic Definition

url

libraryName

value : OpioidCDSCommon

url

name

value : Active Ambulatory Opioid Rx

url

statement

value : 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>{}

url

displaySequence

value : 6

CQFM Logic Definition

url

libraryName

value : OpioidCDSRoutines

url

name

value : Patient Age Less Than 18

url

statement

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

url

displaySequence

value : 7

CQFM Logic Definition

url

libraryName

value : OpioidCDSRoutines

url

name

value : Condition Positive for Sickle Cell

url

statement

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

url

displaySequence

value : 8

CQFM Logic Definition

url

libraryName

value : OpioidCDSCommon

url

name

value : US Core-Categorized Conditions

url

statement

value : // 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"]

url

displaySequence

value : 9

CQFM Logic Definition

url

libraryName

value : OpioidCDSRoutines

url

name

value : Conditions Indicating End Of Life Present

url

statement

value : 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" )

url

displaySequence

value : 10

CQFM Logic Definition

url

libraryName

value : OpioidCDSCommon

url

name

value : Service Requests

url

statement

value : define "Service Requests": [ServiceRequest] SR return SR

url

displaySequence

value : 11

CQFM Logic Definition

url

libraryName

value : OpioidCDSRoutines

url

name

value : Palliative Care Lookback Period

url

statement

value : /* ** Routine #1 ** Opioid Review Useful Routine ** ** Definition | Answer to Proceed | Details | Data (Terminology) Requirement ** ------------------------------------------------------------------------------------------------------------------------------------ ** Age < 18 years? | No | Calculate age from date of birth; exclude | Date of birth ** | | patients with age less than 18 years at the | ** | | time of the prescription | ** ------------------------------------------------------------------------------------------------------------------------------------ ** Evidence of | No | Look for documented findings consistent | Sickle cell disease conditions ** sickle cell disease? | | with those listed in the sickle cell | ** | | value set | ** ------------------------------------------------------------------------------------------------------------------------------------ ** Limited life | No | Look for documented findings consistent | Limited life expectancy conditions ** expectancy conditions | | with those listed in the limited life | ** present? | | expectancy value set (terminal illness, bad | ** | | prognosis, pre-terminal) | ** ------------------------------------------------------------------------------------------------------------------------------------ ** Order for therapies | No | Look for patients with an existing order for | Therapies indicating end of life care ** indicating end of life | | therapies indicating end of life care | ** care in past 90 days? | | written within past 90 days | ** ------------------------------------------------------------------------------------------------------------------------------------ ** Active cancer | No | See sub-routine 3 | See sub-routine 3 ** treatment? | | | ** ------------------------------------------------------------------------------------------------------------------------------------ ** Conditions Likely | No | Look for patients with active conditions in | Conditions likely terminal for opioid ** Terminal for opioid | | the value set end-of-life-conditions | prescribing ** prescribing present? | | | ** ------------------------------------------------------------------------------------------------------------------------------------ ** */ define "Palliative Care Lookback Period": Interval[Today() - 90 days, Today()]

url

displaySequence

value : 12

CQFM Logic Definition

url

libraryName

value : OpioidCDSRoutines

url

name

value : Order For Palliative Care In Past 90 Days

url

statement

value : define "Order For Palliative Care In Past 90 Days": exists ( Common."Service Requests" SR where SR.status in { 'active', 'completed'} and SR.intent in {'proposal', 'plan,', 'directive', 'order', 'original-order', 'reflex-order', 'filler-order', 'instance-order'} and FHIRHelpers.ToDateTime(SR.authoredOn) during day of "Palliative Care Lookback Period" and SR.code in Common."Therapies indicating end of life care" )

url

displaySequence

value : 13

CQFM Logic Definition

url

libraryName

value : OpioidCDSRoutines

url

name

value : Is Active Cancer Treatment?

url

statement

value : 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

url

displaySequence

value : 14

CQFM Logic Definition

url

libraryName

value : OpioidCDSRoutines

url

name

value : Conditions Including Cancer To Exclude Opioid Management Indicating End-Stage Disease Present

url

statement

value : 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

url

displaySequence

value : 15

CQFM Logic Definition

url

libraryName

value : OpioidCDSRoutines

url

name

value : Is Opioid Review Useful?

url

statement

value : 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 "Order For Palliative Care In Past 90 Days" and not "Is Active Cancer Treatment?" and not "Conditions Including Cancer To Exclude Opioid Management Indicating End-Stage Disease Present"

url

displaySequence

value : 16

CQFM Logic Definition

url

libraryName

value : OpioidCDSREC11

url

name

value : Inclusion Criteria

url

statement

value : define "Inclusion Criteria": ( ( "Patient Is Being Prescribed Opioid Analgesic with Ambulatory Misuse Potential" and exists Common."Active Ambulatory Benzodiazepine Rx" ) or ( "Patient Is Being Prescribed Benzodiazepine" and exists Common."Active Ambulatory Opioid Rx" ) ) and Routines."Is Opioid Review Useful?"

url

displaySequence

value : 17

CQFM Logic Definition

url

libraryName

value : OpioidCDSCommon

url

name

value : Conditions Indicating End of Life or With Limited Life Expectancy

url

statement

value : 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" )

url

displaySequence

value : 18

CQFM Logic Definition

url

libraryName

value : OpioidCDSCommon

url

name

value : Admitted/Referred/Discharged to Hospice Care

url

statement

value : define "Admitted/Referred/Discharged to Hospice Care": ( [Procedure: code in "Hospice Procedure Codes"] P where P.status.value in { 'in-progress', 'completed' } ) union ( "Service Requests" SR where SR.code in "Hospice Procedure Codes" and SR.status.value in { 'active', 'completed' } ) union ( 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' } )

url

displaySequence

value : 19

CQFM Logic Definition

url

libraryName

value : OpioidCDSCommon

url

name

value : End of Life Assessment

url

statement

value : 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" )

url

displaySequence

value : 20

CQFM Logic Definition

url

libraryName

value : OpioidCDSREC11

url

name

value : Exclusion Criteria

url

statement

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

url

displaySequence

value : 21

CQFM Logic Definition

url

libraryName

value : OpioidCDSREC11

url

name

value : Is Recommendation Applicable?

url

statement

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

url

displaySequence

value : 22

CQFM Logic Definition

url

libraryName

value : OpioidCDSREC11

url

name

value : Get Detail

url

statement

value : define "Get Detail": if "Is Recommendation Applicable?" then 'Consider whether the benefits outweigh the risks of concurrently prescribing opioids and benzodiazepines, or other central nervous system depressant medications. When co-prescribing risks outweigh benefits, consult the [2022 CDC Clinical Practice Guideline Recommendation 11](https://www.cdc.gov/mmwr/volumes/71/rr/rr7103a1.htm#:~:text=evidence%20type%3A%203).-,Implementation%20Considerations,-Although%20in%20some) for further guidance. [For patients being treated for opioid use disorder who are also taking benzodiazepines or other medications that depress the central nervous system, the CDC recommends not withholding buprenorphine or methadone](https://www.cdc.gov/mmwr/volumes/71/rr/rr7103a1.htm#:~:text=gabapentin%20and%20pregabalin).-,Buprenorphine%20or%20methadone%20for%20opioid%20use%20disorder%20should%20not%20be%20withheld%20from%20patients%20taking%20benzodiazepines%20or%20other%20medications%20that%20depress%20the%20central%20nervous%20system.,-Clinicians%20should%20check). If the decision is made to taper benzodiazepine medications, [the CDC recommends tapering benzodiazepines gradually prior to discontinuation](https://www.cdc.gov/mmwr/volumes/71/rr/rr7103a1.htm#:~:text=Clinicians%20should%20taper%20benzodiazepines%20gradually%20before%20discontinuation%20because%20abrupt%20withdrawal%20can%20be%20associated%20with%20rebound%20anxiety%2C%20hallucinations%2C%20seizures%2C%20delirium%20tremens%2C%20and%2C%20rarely%2C%20death.%20The%20rate%20of%20tapering%20should%20be%20individualized).' else null

url

displaySequence

value : 23

CQFM Logic Definition

url

libraryName

value : OpioidCDSREC11

url

name

value : Get Indicator

url

statement

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

url

displaySequence

value : 24

CQFM Effective Data Requirements :

Related Artifacts

depends-on Library Common http://fhir.org/guides/cdc/opioid-cds/Library/OpioidCDSCommon|2022.1.0
depends-on Library FHIRHelpers http://fhir.org/guides/cdc/opioid-cds/Library/FHIRHelpers|4.0.1
depends-on Library Routines http://fhir.org/guides/cdc/opioid-cds/Library/OpioidCDSRoutines|2022.1.0
depends-on Value set Opioid analgesics with ambulatory misuse potential Opioid analgesics with ambulatory misuse potential
depends-on Value set Community http://fhir.org/guides/cdc/opioid-cds/ValueSet/medicationrequest-category-community
depends-on Value set Benzodiazepine medications Benzodiazepine medications
depends-on Value set Encounter Diagnosis Condition Category ValueSet - Encounter Diagnosis Condition Categories
depends-on Value set Problem List Condition Category ValueSet - Problem List Condition Category
depends-on Value set US Core Health Concern Condition Category ValueSet - US Core Health Concern Condition Category
depends-on Value set Limited life expectancy conditions Limited life expectancy conditions
depends-on Value set Active Condition ValueSet - Condition Clinical Status Active
depends-on Value set Therapies indicating end of life care Therapies indicating end of life care
depends-on Value set Conditions likely terminal for opioid prescribing Conditions likely terminal for opioid prescribing
depends-on Value set Hospice Procedure Codes Hospice Procedure

Parameters

ContextPrescriptions in 0 * MedicationRequest
Get Summary out 0 1 string
Is Recommendation Applicable? out 0 1 boolean
Get Detail out 0 1 string
Get Indicator out 0 1 string

Data Requirements

Type : Medication ( Medication )
Filter Value
id One of these codes:
Type : Condition ( Condition )
Filter Value
category In ValueSet ValueSet - Encounter Diagnosis Condition Categories
Type : Condition ( Condition )
Filter Value
category In ValueSet ValueSet - Problem List Condition Category
Type : Condition ( Condition )
Filter Value
category In ValueSet ValueSet - US Core Health Concern Condition Category
Type : ServiceRequest ( ServiceRequest )
Type : ServiceRequest ( ServiceRequest )
Type : Procedure ( Procedure )
Filter Value
code In ValueSet Hospice Procedure
Type : ServiceRequest ( ServiceRequest )
Type : Encounter ( Encounter )

Contents

url : http://fhir.org/guides/cdc/opioid-cds/PlanDefinition/opioidcds-11

identifier : id: cdc-opioid-guidance (use: OFFICIAL)

version : 2022.1.0

name : CDC_opioid_11

title : PlanDefinition - 2022 CDC Clinical Practice Guideline for Prescribing Opioids for Pain: Recommendation #11

type : ECA Rule (plan-definition-type#eca-rule)

status : DRAFT

experimental : true

date : 2023-05-01

publisher : Centers for Disease Control and Prevention (CDC)

contact : https://www.cdc.gov

description : Concurrently prescribing opioid medications with benzodiazepines increases the risk of harm for the patient.

UseContexts

- Code Value[x]
* Clinical Focus (Details: http://terminology.hl7.org/CodeSystem/usage-context-type code focus = 'focus', stated as 'Clinical Focus') Medication requested (situation) (SNOMED CT#182888003)
* Clinical Focus (Details: http://terminology.hl7.org/CodeSystem/usage-context-type code focus = 'focus', stated as 'Clinical Focus') Chronic pain (finding) (SNOMED CT#82423001)

jurisdiction : United States of America (ISO Country Codes (ISO-3166)#US)

purpose : The 2022 CDC Clinical Practice Guideline for Prescribing Opioids for Pain is intended to improve communication between providers and patients about the risks and benefits of opioid therapy for chronic pain, improve the safety and effectiveness of pain treatment, and reduce the risks associated with long-term opioid therapy, including opioid use disorder and overdose. The Guideline is not intended for patients who are in active cancer treatment, palliative care, or end-of-life care.

usage : Clinicians should avoid prescribing opioid pain medication and benzodiazepines or other central nervous system depressant concurrently whenever possible.

copyright : © CDC 2016+.

topic : Opioid Prescribing ()

author : Kensaku Kawamoto, MD, PhD, MHS: , Bryn Rhodes: , Floyd Eisenberg, MD, MPH: , Robert McClure, MD, MPH:

relatedArtifact

relatedArtifact

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

action

title : Existing patient has concurrent opioid and benzodiazepine prescriptions.

description : Checking if the trigger prescription meets the inclusion criteria for recommendation #11 workflow.

documentation

documentation

Triggers

- Type Name
* NAMEDEVENT order-select

condition

kind : APPLICABILITY

Expressions

- Description Language Expression
* Check whether the existing patient is using opioids concurrently with benzodiazepines. text/cql.identifier Is Recommendation Applicable?

groupingBehavior : VISUALGROUP

selectionBehavior : ANY

dynamicValue

path : action.description

Expressions

- Language Expression
* text/cql.identifier Get Detail

dynamicValue

path : action.title

Expressions

- Language Expression
* text/cql.identifier Get Summary

dynamicValue

path : action.extension

Expressions

- Language Expression
* text/cql.identifier Get Indicator

Actions

- Description
* Document - Will modify prescription
* Snooze* - Benefits outweigh risks, snooze 3 months
* Snooze* - N/A see comment, snooze 3 months

Produced 08 Sep 2023