PlanDefinition-opioidcds-10-order-sign

Sourcefhir.cdc.opioid-cds-r4#current:2022 CDC Clinical Practice Guideline for Prescribing Opioids Implementation Guide (v4.0.1)
resourceTypePlanDefinition
idopioidcds-10-order-sign
canonicalhttp://fhir.org/guides/cdc/opioid-cds/PlanDefinition/opioidcds-10-order-sign
version2022.1.0
statusdraft
publisherCenters for Disease Control and Prevention (CDC)
namePlanDefinition_Recommendation_10_Order_Sign
titlePlanDefinition - 2022 CDC Clinical Practice Guideline for Prescribing Opioids for Pain: Recommendation #10 (order-sign)
date2023-05-01
experimentaltrue
descriptionWhen prescribing opioids for subacute or chronic pain, providers should use urine drug testing before starting opioid therapy and consider urine drug testing at least annually to assess for prescribed medications as well as other controlled prescription drugs and illicit drugs.
copyright© CDC 2016+.
jurisdictionsus
Usages(none)

Generated Narrative: PlanDefinition

Resource PlanDefinition "opioidcds-10-order-sign"

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

url

name

value : Subacute or Chronic Pain Opioid Analgesic with Ambulatory Misuse Potential Prescriptions

url

statement

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

url

displaySequence

value : 0

CQFM Logic Definition

url

libraryName

value : OpioidCDSREC10

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( "Subacute or Chronic Pain Opioid Analgesic with Ambulatory Misuse Potential Prescriptions" )

url

displaySequence

value : 1

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

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

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

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

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

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

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

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

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

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

CQFM Logic Definition

url

libraryName

value : OpioidCDSREC10Common

url

name

value : Lookback Year

url

statement

value : define "Lookback Year": Interval[Today() - 12 months - 1 days, Today() - 1 day]

url

displaySequence

value : 12

CQFM Logic Definition

url

libraryName

value : OpioidCDSREC10Common

url

name

value : Laboratory Observations

url

statement

value : define "Laboratory Observations": [Observation: "category" in Common."Observation Category Laboratory"]

url

displaySequence

value : 13

CQFM Logic Definition

url

libraryName

value : OpioidCDSREC10Common

url

name

value : Non-opioid Screenings

url

statement

value : define "Non-opioid Screenings": GetRelevantScreenings("Laboratory Observations" LabObservations where (LabObservations.code in Common."Non-opioid drug urine screening") )

url

displaySequence

value : 14

CQFM Logic Definition

url

libraryName

value : OpioidCDSREC10Common

url

name

value : Cocaine Screenings

url

statement

value : define "Cocaine Screenings": GetRelevantScreenings("Laboratory Observations" LabObservations where (LabObservations.code in Common."Cocaine Urine Tests") )

url

displaySequence

value : 15

CQFM Logic Definition

url

libraryName

value : OpioidCDSREC10Common

url

name

value : PCP Screenings

url

statement

value : define "PCP Screenings": GetRelevantScreenings("Laboratory Observations" LabObservations where (LabObservations.code in Common."PCP Urine Tests") )

url

displaySequence

value : 16

CQFM Logic Definition

url

libraryName

value : OpioidCDSREC10Common

url

name

value : Patient had Urine Screening in Last 12 Months

url

statement

value : define "Patient had Urine Screening in Last 12 Months": ( exists ("Non-opioid Screenings") or exists ("Cocaine Screenings") or exists ("PCP Screenings") ) or if Config."Opiate Urine Screening Check Enabled" then exists ("Opiate Screenings") else false

url

displaySequence

value : 17

CQFM Logic Definition

url

libraryName

value : OpioidCDSREC10Common

url

name

value : Inclusion Criteria

url

statement

value : define "Inclusion Criteria": Routines."Is Opioid Review Useful?" and (not "Patient had Urine Screening in Last 12 Months")

url

displaySequence

value : 18

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

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

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

CQFM Logic Definition

url

libraryName

value : OpioidCDSREC10Common

url

name

value : Exclusion Criteria

url

statement

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

url

displaySequence

value : 22

CQFM Logic Definition

url

libraryName

value : OpioidCDSREC10

url

name

value : Is Perform Drug Screen Recommendation Applicable?

url

statement

value : define "Is Perform Drug Screen Recommendation Applicable?": "Patient Is Being Prescribed Opioid Analgesic with Ambulatory Misuse Potential" and Rec10Common."Inclusion Criteria" and not Rec10Common."Exclusion Criteria"

url

displaySequence

value : 23

CQFM Logic Definition

url

libraryName

value : OpioidCDSREC10

url

name

value : Summary

url

statement

value : define "Summary": Rec10Common."Get Summary" ("Is Perform Drug Screen Recommendation Applicable?")

url

displaySequence

value : 24

CQFM Logic Definition

url

libraryName

value : OpioidCDSREC10

url

name

value : Detail

url

statement

value : define "Detail": Rec10Common."Get Detail" ("Is Perform Drug Screen Recommendation Applicable?")

url

displaySequence

value : 25

CQFM Logic Definition

url

libraryName

value : OpioidCDSREC10Common

url

name

value : Indicator

url

statement

value : define "Indicator": 'warning'

url

displaySequence

value : 26

CQFM Logic Definition

url

libraryName

value : OpioidCDSREC10

url

name

value : Indicator

url

statement

value : define "Indicator": Rec10Common."Indicator"

url

displaySequence

value : 27

CQFM Logic Definition

url

libraryName

value : OpioidCDSREC10Common

url

name

value : Applicable Because of Positive Cocaine or PCP or Opiates

url

statement

value : define "Applicable Because of Positive Cocaine or PCP or Opiates": if exists (Common."Opioid Other Than Synthetic Ordered In Last 12 Months") then "Has Positive Screening for Cocaine in Last 12 Months" or "Has Positive Screening for PCP in Last 12 Months" else "Has Positive Screening for Cocaine in Last 12 Months" or "Has Positive Screening for PCP in Last 12 Months" or if Config."Opiate Urine Screening Check Enabled" then "Has Positive Screening for Opiates in Last 12 Months" else false

url

displaySequence

value : 28

CQFM Logic Definition

url

libraryName

value : OpioidCDSREC10

url

name

value : Applicable Because of Positive Cocaine or PCP or Opiates

url

statement

value : define "Applicable Because of Positive Cocaine or PCP or Opiates": Rec10Common."Applicable Because of Positive Cocaine or PCP or Opiates"

url

displaySequence

value : 29

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 Library Rec10Common http://fhir.org/guides/cdc/opioid-cds/Library/OpioidCDSREC10Common|2022.1.0
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 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 Observation Category Laboratory ValueSet - Observation Category Laboratory
depends-on Value set Non-opioid drug urine screening Non-opioid drug urine screening
depends-on Value set Cocaine Urine Tests Cocaine urine drug screening tests
depends-on Value set PCP Urine Tests Phencyclidine urine drug screening tests
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
Is Perform Drug Screen Recommendation Applicable? out 0 1 boolean
Summary out 0 1 string
Detail out 0 1 string
Indicator out 0 1 string
Applicable Because of Positive Cocaine or PCP or Opiates out 0 1 boolean

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 : Observation ( Observation )
Filter Value
category In ValueSet ValueSet - Observation Category Laboratory
Type : Observation ( Observation )
Filter Value
category In ValueSet ValueSet - Observation Category Laboratory
Type : Observation ( Observation )
Filter Value
category In ValueSet ValueSet - Observation Category Laboratory
Type : Observation ( Observation )
Filter Value
category In ValueSet ValueSet - Observation Category Laboratory
Type : Procedure ( Procedure )
Filter Value
code In ValueSet Hospice Procedure
Type : ServiceRequest ( ServiceRequest )
Type : Encounter ( Encounter )
Type : Observation ( Observation )
Filter Value
category In ValueSet ValueSet - Observation Category Laboratory
Type : Observation ( Observation )
Filter Value
category In ValueSet ValueSet - Observation Category Laboratory
Type : Observation ( Observation )
Filter Value
category In ValueSet ValueSet - Observation Category Laboratory

Contents

url : http://fhir.org/guides/cdc/opioid-cds/PlanDefinition/opioidcds-10-order-sign

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

version : 2022.1.0

name : PlanDefinition_Recommendation_10_Order_Sign

title : PlanDefinition - 2022 CDC Clinical Practice Guideline for Prescribing Opioids for Pain: Recommendation #10 (order-sign)

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 : When prescribing opioids for subacute or chronic pain, providers should use urine drug testing before starting opioid therapy and consider urine drug testing at least annually to assess for prescribed medications as well as other controlled prescription drugs and illicit drugs.

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 : Providers should be aware if patients are taking other prescription drugs or illicit drugs that might increase their risk of an overdose.

copyright : © CDC 2016+.

topic : Opioid Prescribing ()

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

relatedArtifact

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

action

prefix : 1.

title : Annual Urine Screening Check

description : Patient has not had a urine screening in the past 12 months

documentation

documentation

Triggers

- Type Name
* NAMEDEVENT order-sign

condition

kind : APPLICABILITY

Expressions

- Description Language Expression
* Patient has not had a urine screening in the past 12 months text/cql.identifier Is Perform Drug Screen Recommendation Applicable?

type : Create (action-type#create)

definition : ActivityDefinition - Urine Screening ServiceRequest

dynamicValue

path : action.description

Expressions

- Language Expression
* text/cql.identifier Detail

dynamicValue

path : action.title

Expressions

- Language Expression
* text/cql.identifier Summary

dynamicValue

path : action.extension

Expressions

- Language Expression
* text/cql.identifier Indicator

Actions

- Description
* Will perform urine screening
* Not for subacute or chronic pain management. Snooze 3 months
* N/A - see comment, snooze 3 months

action

prefix : 1.

title : Tested Positive for Cocaine, Opiates, or PCP

description : Urine screening showed positive for cocaine, opiates or PCP

documentation

documentation

Triggers

- Type Name
* NAMEDEVENT order-sign

condition

kind : APPLICABILITY

Expressions

- Description Language Expression
* Urine screening tested positive for cocaine, opiates or PCP text/cql.identifier Applicable Because of Positive Cocaine or PCP or Opiates

type : Create (action-type#create)

definition : ActivityDefinition - Urine Screening ServiceRequest

dynamicValue

path : action.description

Expressions

- Language Expression
* text/cql.identifier Detail

dynamicValue

path : action.title

Expressions

- Language Expression
* text/cql.identifier Summary

dynamicValue

path : action.extension

Expressions

- Language Expression
* text/cql.identifier Indicator

Actions

- Description
* Will repeat urine drug screen more frequently
* Will assess patient for substance abuse disorder
* Will access CDS quality improvement and care coordination for prescribing opioids for subacute or chronic pain https://www.cdc.gov/drugoverdose/pdf/prescribing/CDC-DUIP-QualityImprovementAndCareCoordination-508.pdf

Produced 08 Sep 2023