US Prescription Drug Monitoring Program (PDMP)
1.0.0 - STU1 United States of America flag

US Prescription Drug Monitoring Program (PDMP), published by HL7 International / Pharmacy. This guide is not an authorized publication; it is the continuous build for version 1.0.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/fhir-pdmp/ and changes regularly. See the Directory of published versions

Resource Profile: PDMP MedicationDispense

Official URL: http://hl7.org/fhir/us/pdmp/StructureDefinition/pdmp-medicationdispense Version: 1.0.0
Active as of 2024-04-01 Computable Name: PdmpMedicationDispense
Other Identifiers: OID:2.16.840.1.113883.4.642.40.35.42.13

Defines constraints and extensions on the MedicationDispense resource when used by a Prescription Drug Monitoring Program (PDMP) to return an individual's medication dispense history.

Important elements in this profile:

  • MedicationDispense.subject
    • A reference to the patient receiving the medication SHALL be populated
  • MedicationDispense.medicationCodeableConcept (or Medication reference)
    • The dispensed medication SHALL be populated, including the associated RxNorm code and NDC11, as available, reflecting the medication name, strength and dose form
    • For information concerning mapping between NDC and RxNorm, see Mapping NDC, RXCUI, and Drug Names in the RxNorm Files
  • MedicationDispense.performer
    • The party that dispensed the medication SHALL be populated using either a reference to the performer (PDMP Organization-Pharmacy or US Core Practitioner resource) or an identifier specifying both the identifier value and system
  • MedicationDispense.authorizingPrescription
    • A reference to the authorizing MedicationRequest SHOULD be populated
  • MedicationDispense.quantity
    • Quantity, including numeric value and units SHALL be populated
    • When the dispense quantity is stated in terms of "eaches" (e.g., tablets, capsules, etc.), populate only the quantity.unit value with the text "each". Do not populate the quantity.system or quantity.code values
  • MedicationDispense.daysSupply
    • Dispensed days supply SHALL be populated
  • MedicationDispense.whenPrepared
    • The date that the medication was prepared SHALL be populated in the whenPrepared element
  • MedicationDispense.medicationCodeableConcept.userSelected
    • The userSelected element associated with the drug code received from the pharmacy or other dispensation data source
    • The userSelected element associated with any additional drug codes provided SHALL NOT be populated
  • MedicationDispense.authorizingPrescription.identifier
    • This element SHOULD be populated with the authorizing prescription's pharmacy-assigned prescription number, if known; otherwise it should be populated with the authorizing prescription's prescriber-system-assigned order number, if known

Technical note:

A rule defined in the base MedicationDispense StructureDefinition causes an error to be produced when a valid date is present in MedicationDispense.whenPrepared and a Data Absent Reason extension is used in place of MedicationDispense.whenHandedOver. This rule (invariant mdd-1), which asserts that the whenPrepared date must precede the whenHandedOver date, interprets whenHandedOver's value as 'null' in this situation, causing the test to fail. A request has been submitted to adjust the rule to accommodate this valid use of the Data Absent Reason extension in a future FHIR release.

Usage:

Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

This structure is derived from USCoreMedicationDispenseProfile

NameFlagsCard.TypeDescription & Constraintsdoco
.. MedicationDispense 0..* USCoreMedicationDispenseProfile Dispensing a medication to a named patient
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... rx-fill-number S 0..1 positiveInt PDMP Extension - Prescription Fill Number
URL: http://hl7.org/fhir/us/pdmp/StructureDefinition/pdmp-extension-rx-fill-number
.... rx-transmission-method S 0..1 Coding PDMP Extension - Prescription Transmission Method
URL: http://hl7.org/fhir/us/pdmp/StructureDefinition/pdmp-extension-rx-transmission-method
Binding: PDMP Value Set - Prescription Transmission Method (extensible)
.... rx-mme S 0..1 decimal PDMP Extension - MME
URL: http://hl7.org/fhir/us/pdmp/StructureDefinition/pdmp-extension-mme
.... rx-lme S 0..1 decimal PDMP Extension - LME
URL: http://hl7.org/fhir/us/pdmp/StructureDefinition/pdmp-extension-lme
.... rx-method-of-payment 0..1 Coding PDMP Extension - Method of Payment
URL: http://hl7.org/fhir/us/pdmp/StructureDefinition/pdmp-extension-method-of-payment
Binding: PDMP Value Set - Method of Payment (extensible)
.... rx-opioid-treatment-code 0..1 Coding PDMP Extension - Opioid Treatment Code
URL: http://hl7.org/fhir/us/pdmp/StructureDefinition/pdmp-extension-opioid-treatment-code
Binding: PDMP Value Set - Opioid Treatment Code (required)
... identifier 0..* Identifier External identifier
.... value 0..1 string The value that is unique
... status 1..1 code (USCDI) preparation | in-progress | cancelled | on-hold | completed | entered-in-error | stopped | declined | unknown
Binding: MedicationDispense Status Codes (required): A set of codes indicating the current status of a MedicationDispense.

.... medication[x]:medicationCodeableConcept 0..1 CodeableConcept (USCDI) What medication was supplied
..... coding
...... system 0..1 uri Identity of the terminology system
...... code 0..1 code Symbol in syntax defined by the system
...... userSelected S 0..1 boolean If this coding was chosen directly by the user
..... text 0..1 string Plain text representation of the concept
... performer 1..1 BackboneElement (USCDI) Who performed event
.... actor C 1..1 Reference(US Core Practitioner Profile | PDMP Organization - Pharmacy) (USCDI) Individual who was performing
pdmp-dispense-performer: MedicationDispense SHALL include a performer actor reference or performer actor identifier
..... reference S 0..1 string Literal reference, Relative, internal or absolute URL
..... identifier S 0..1 Identifier Logical reference, when literal reference is not known
...... system S 1..1 uri The namespace for the identifier value
...... value S 1..1 string The value that is unique
..... display S 0..1 string Text alternative for the resource
... authorizingPrescription 0..1 Reference(US Core MedicationRequest Profile) (USCDI) Medication order that authorizes the dispense
.... identifier S 0..1 Identifier Logical reference, when literal reference is not known
... type 0..1 CodeableConcept (USCDI) Trial fill, partial fill, emergency fill, etc.
... quantity 1..1 Quantity (USCDI) Amount dispensed
.... value S 1..1 decimal Numerical value (with implicit precision)
.... unit S 1..1 string Unit representation
.... system S 0..1 uri System that defines coded unit form
.... code S 0..1 code Coded form of the unit
... daysSupply S 1..1 SimpleQuantity Amount of medication expressed as a timing amount
.... value S 1..1 decimal Numerical value (with implicit precision)
... whenPrepared S 1..1 dateTime When product was packaged and reviewed
... dosageInstruction 0..1 Dosage (USCDI) How the medication is to be used by the patient or administered by the caregiver

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
MedicationDispense.statusrequiredMedicationDispense Status Codes
http://hl7.org/fhir/ValueSet/medicationdispense-status
from the FHIR Standard
MedicationDispense.medication[x]extensibleMedicationClinicalDrug .
http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1010.4

Constraints

IdGradePath(s)DetailsRequirements
pdmp-dispense-performererrorMedicationDispense.performer.actorMedicationDispense SHALL include a performer actor reference or performer actor identifier
: reference.exists() or identifier.exists()
NameFlagsCard.TypeDescription & Constraintsdoco
.. MedicationDispense C 0..* USCoreMedicationDispenseProfile Dispensing a medication to a named patient
mdd-1: whenHandedOver cannot be before whenPrepared
us-core-20: whenHandedOver SHALL be present if the status is "completed"
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... rx-fill-number S 0..1 positiveInt PDMP Extension - Prescription Fill Number
URL: http://hl7.org/fhir/us/pdmp/StructureDefinition/pdmp-extension-rx-fill-number
.... rx-transmission-method S 0..1 Coding PDMP Extension - Prescription Transmission Method
URL: http://hl7.org/fhir/us/pdmp/StructureDefinition/pdmp-extension-rx-transmission-method
Binding: PDMP Value Set - Prescription Transmission Method (extensible)
.... rx-mme S 0..1 decimal PDMP Extension - MME
URL: http://hl7.org/fhir/us/pdmp/StructureDefinition/pdmp-extension-mme
.... rx-lme S 0..1 decimal PDMP Extension - LME
URL: http://hl7.org/fhir/us/pdmp/StructureDefinition/pdmp-extension-lme
.... rx-method-of-payment 0..1 Coding PDMP Extension - Method of Payment
URL: http://hl7.org/fhir/us/pdmp/StructureDefinition/pdmp-extension-method-of-payment
Binding: PDMP Value Set - Method of Payment (extensible)
.... rx-opioid-treatment-code 0..1 Coding PDMP Extension - Opioid Treatment Code
URL: http://hl7.org/fhir/us/pdmp/StructureDefinition/pdmp-extension-opioid-treatment-code
Binding: PDMP Value Set - Opioid Treatment Code (required)
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
.... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

.... value Σ 0..1 string The value that is unique
Example General: 123456
... status ?!SΣC 1..1 code (USCDI) preparation | in-progress | cancelled | on-hold | completed | entered-in-error | stopped | declined | unknown
Binding: MedicationDispense Status Codes (required): A set of codes indicating the current status of a MedicationDispense.

... Slices for medication[x] SΣ 1..1 (USCDI) What medication was supplied
Slice: Unordered, Open by type:$this
Binding: Medication Clinical Drug . (extensible): Prescribable medications

.... medicationCodeableConcept CodeableConcept
.... medicationReference Reference(US Core Medication Profile)
.... medication[x]:medicationCodeableConcept SΣ 0..1 CodeableConcept (USCDI) What medication was supplied
Binding: Medication Clinical Drug . (extensible)
..... coding Σ 0..* Coding Code defined by a terminology system
...... system Σ 0..1 uri Identity of the terminology system
...... code Σ 0..1 code Symbol in syntax defined by the system
...... userSelected SΣ 0..1 boolean If this coding was chosen directly by the user
..... text Σ 0..1 string Plain text representation of the concept
... subject SΣ 1..1 Reference(US Core Patient Profile) (USCDI) Who the dispense is for
... performer S 1..1 BackboneElement (USCDI) Who performed event
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... actor SC 1..1 Reference(US Core Practitioner Profile) (USCDI) Individual who was performing
pdmp-dispense-performer: MedicationDispense SHALL include a performer actor reference or performer actor identifier
..... reference SΣC 0..1 string Literal reference, Relative, internal or absolute URL
..... identifier SΣ 0..1 Identifier Logical reference, when literal reference is not known
...... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

...... system SΣ 1..1 uri The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
...... value SΣ 1..1 string The value that is unique
Example General: 123456
..... display SΣ 0..1 string Text alternative for the resource
... authorizingPrescription S 0..1 Reference(US Core MedicationRequest Profile) (USCDI) Medication order that authorizes the dispense
.... identifier SΣ 0..1 Identifier Logical reference, when literal reference is not known
... type S 0..1 CodeableConcept (USCDI) Trial fill, partial fill, emergency fill, etc.
Binding: ActPharmacySupplyType (extensible)
... quantity S 1..1 Quantity (USCDI) Amount dispensed
Binding: Common UCUM units (preferred)
Additional BindingsPurpose
UCUMCodes Max Binding
.... value SΣ 1..1 decimal Numerical value (with implicit precision)
.... comparator ?!Σ 0..1 code < | <= | >= | > - how to understand the value
Binding: QuantityComparator (required): How the Quantity should be understood and represented.

.... unit SΣ 1..1 string Unit representation
.... system SΣC 0..1 uri System that defines coded unit form
.... code SΣ 0..1 code Coded form of the unit
... daysSupply S 1..1 SimpleQuantity Amount of medication expressed as a timing amount
.... value SΣ 1..1 decimal Numerical value (with implicit precision)
... whenPrepared SΣ 1..1 dateTime When product was packaged and reviewed
... whenHandedOver SC 0..1 dateTime (USCDI) When product was given out or mailed
... dosageInstruction S 0..1 Dosage (USCDI) How the medication is to be used by the patient or administered by the caregiver
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... text SΣ 0..1 string (USCDI) Free text dosage instructions e.g. SIG
.... timing SΣ 0..1 Timing (USCDI) When medication should be administered
.... doseAndRate SΣ 0..* Element (USCDI) Amount of medication administered
..... dose[x] SΣ 0..1 (USCDI) Amount of medication per dose
Binding: Common UCUM units (preferred)
Additional BindingsPurpose
UCUMCodes Max Binding
...... doseQuantity Quantity

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
MedicationDispense.identifier.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
MedicationDispense.statusrequiredMedicationDispense Status Codes
http://hl7.org/fhir/ValueSet/medicationdispense-status
from the FHIR Standard
MedicationDispense.medication[x]extensibleMedicationClinicalDrug .
http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1010.4
MedicationDispense.medication[x]:medicationCodeableConceptextensibleMedicationClinicalDrug .
http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1010.4
MedicationDispense.performer.actor.identifier.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
MedicationDispense.typeextensibleActPharmacySupplyType
http://terminology.hl7.org/ValueSet/v3-ActPharmacySupplyType
MedicationDispense.quantitypreferredCommon UCUM units
Additional Bindings Purpose
UCUMCodes Max Binding
http://hl7.org/fhir/ValueSet/ucum-common
from the FHIR Standard
MedicationDispense.quantity.comparatorrequiredQuantityComparator
http://hl7.org/fhir/ValueSet/quantity-comparator|4.0.1
from the FHIR Standard
MedicationDispense.dosageInstruction.doseAndRate.dose[x]preferredCommon UCUM units
Additional Bindings Purpose
UCUMCodes Max Binding
http://hl7.org/fhir/ValueSet/ucum-common
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorMedicationDispenseIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorMedicationDispenseIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorMedicationDispenseIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorMedicationDispenseIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceMedicationDispenseA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
mdd-1errorMedicationDispensewhenHandedOver cannot be before whenPrepared
: whenHandedOver.empty() or whenPrepared.empty() or whenHandedOver >= whenPrepared
pdmp-dispense-performererrorMedicationDispense.performer.actorMedicationDispense SHALL include a performer actor reference or performer actor identifier
: reference.exists() or identifier.exists()
us-core-20errorMedicationDispensewhenHandedOver SHALL be present if the status is "completed"
: status='completed' implies whenHandedOver.exists()
NameFlagsCard.TypeDescription & Constraintsdoco
.. MedicationDispense C 0..* USCoreMedicationDispenseProfile Dispensing a medication to a named patient
mdd-1: whenHandedOver cannot be before whenPrepared
us-core-20: whenHandedOver SHALL be present if the status is "completed"
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguages Max Binding
... text 0..1 Narrative Text summary of the resource, for human interpretation
... contained 0..* Resource Contained, inline Resources
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... rx-fill-number S 0..1 positiveInt PDMP Extension - Prescription Fill Number
URL: http://hl7.org/fhir/us/pdmp/StructureDefinition/pdmp-extension-rx-fill-number
.... rx-transmission-method S 0..1 Coding PDMP Extension - Prescription Transmission Method
URL: http://hl7.org/fhir/us/pdmp/StructureDefinition/pdmp-extension-rx-transmission-method
Binding: PDMP Value Set - Prescription Transmission Method (extensible)
.... rx-mme S 0..1 decimal PDMP Extension - MME
URL: http://hl7.org/fhir/us/pdmp/StructureDefinition/pdmp-extension-mme
.... rx-lme S 0..1 decimal PDMP Extension - LME
URL: http://hl7.org/fhir/us/pdmp/StructureDefinition/pdmp-extension-lme
.... rx-method-of-payment 0..1 Coding PDMP Extension - Method of Payment
URL: http://hl7.org/fhir/us/pdmp/StructureDefinition/pdmp-extension-method-of-payment
Binding: PDMP Value Set - Method of Payment (extensible)
.... rx-opioid-treatment-code 0..1 Coding PDMP Extension - Opioid Treatment Code
URL: http://hl7.org/fhir/us/pdmp/StructureDefinition/pdmp-extension-opioid-treatment-code
Binding: PDMP Value Set - Opioid Treatment Code (required)
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier 0..* Identifier External identifier
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

.... type Σ 0..1 CodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

.... system Σ 0..1 uri The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
.... value Σ 0..1 string The value that is unique
Example General: 123456
.... period Σ 0..1 Period Time period when id is/was valid for use
.... assigner Σ 0..1 Reference(Organization) Organization that issued id (may be just text)
... partOf 0..* Reference(Procedure) Event that dispense is part of
... status ?!SΣC 1..1 code (USCDI) preparation | in-progress | cancelled | on-hold | completed | entered-in-error | stopped | declined | unknown
Binding: MedicationDispense Status Codes (required): A set of codes indicating the current status of a MedicationDispense.

... statusReason[x] 0..1 Why a dispense was not performed
Binding: MedicationDispense Status Reason Codes (example): A code describing why a dispense was not performed.

.... statusReasonCodeableConcept CodeableConcept
.... statusReasonReference Reference(DetectedIssue)
... category 0..1 CodeableConcept Type of medication dispense
Binding: MedicationDispense Category Codes (preferred): A code describing where the dispensed medication is expected to be consumed or administered.

... Slices for medication[x] SΣ 1..1 (USCDI) What medication was supplied
Slice: Unordered, Open by type:$this
Binding: Medication Clinical Drug . (extensible): Prescribable medications

.... medicationCodeableConcept CodeableConcept
.... medicationReference Reference(US Core Medication Profile)
.... medication[x]:medicationCodeableConcept SΣ 0..1 CodeableConcept (USCDI) What medication was supplied
Binding: Medication Clinical Drug . (extensible)
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... coding Σ 0..* Coding Code defined by a terminology system
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... system Σ 0..1 uri Identity of the terminology system
...... version Σ 0..1 string Version of the system - if relevant
...... code Σ 0..1 code Symbol in syntax defined by the system
...... display Σ 0..1 string Representation defined by the system
...... userSelected SΣ 0..1 boolean If this coding was chosen directly by the user
..... text Σ 0..1 string Plain text representation of the concept
... subject SΣ 1..1 Reference(US Core Patient Profile) (USCDI) Who the dispense is for
... context 0..1 Reference(Encounter | EpisodeOfCare) Encounter / Episode associated with event
... supportingInformation 0..* Reference(Resource) Information that supports the dispensing of the medication
... performer S 1..1 BackboneElement (USCDI) Who performed event
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... function 0..1 CodeableConcept Who performed the dispense and what they did
Binding: MedicationDispense Performer Function Codes (example): A code describing the role an individual played in dispensing a medication.

.... actor SC 1..1 Reference(US Core Practitioner Profile S | PDMP Organization - Pharmacy) (USCDI) Individual who was performing
pdmp-dispense-performer: MedicationDispense SHALL include a performer actor reference or performer actor identifier
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... reference SΣC 0..1 string Literal reference, Relative, internal or absolute URL
..... type Σ 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).

..... identifier SΣ 0..1 Identifier Logical reference, when literal reference is not known
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

...... type Σ 0..1 CodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

...... system SΣ 1..1 uri The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
...... value SΣ 1..1 string The value that is unique
Example General: 123456
...... period Σ 0..1 Period Time period when id is/was valid for use
...... assigner Σ 0..1 Reference(Organization) Organization that issued id (may be just text)
..... display SΣ 0..1 string Text alternative for the resource
... location 0..1 Reference(Location) Where the dispense occurred
... authorizingPrescription S 0..1 Reference(US Core MedicationRequest Profile) (USCDI) Medication order that authorizes the dispense
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... reference ΣC 0..1 string Literal reference, Relative, internal or absolute URL
.... type Σ 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).

.... identifier SΣ 0..1 Identifier Logical reference, when literal reference is not known
.... display Σ 0..1 string Text alternative for the resource
... type S 0..1 CodeableConcept (USCDI) Trial fill, partial fill, emergency fill, etc.
Binding: ActPharmacySupplyType (extensible)
... quantity S 1..1 Quantity (USCDI) Amount dispensed
Binding: Common UCUM units (preferred)
Additional BindingsPurpose
UCUMCodes Max Binding
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... value SΣ 1..1 decimal Numerical value (with implicit precision)
.... comparator ?!Σ 0..1 code < | <= | >= | > - how to understand the value
Binding: QuantityComparator (required): How the Quantity should be understood and represented.

.... unit SΣ 1..1 string Unit representation
.... system SΣC 0..1 uri System that defines coded unit form
.... code SΣ 0..1 code Coded form of the unit
... daysSupply S 1..1 SimpleQuantity Amount of medication expressed as a timing amount
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... value SΣ 1..1 decimal Numerical value (with implicit precision)
.... unit Σ 0..1 string Unit representation
.... system ΣC 0..1 uri System that defines coded unit form
.... code Σ 0..1 code Coded form of the unit
... whenPrepared SΣ 1..1 dateTime When product was packaged and reviewed
... whenHandedOver SC 0..1 dateTime (USCDI) When product was given out or mailed
... destination 0..1 Reference(Location) Where the medication was sent
... receiver 0..* Reference(Patient | Practitioner) Who collected the medication
... note 0..* Annotation Information about the dispense
... dosageInstruction S 0..1 Dosage (USCDI) How the medication is to be used by the patient or administered by the caregiver
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... sequence Σ 0..1 integer The order of the dosage instructions
.... text SΣ 0..1 string (USCDI) Free text dosage instructions e.g. SIG
.... additionalInstruction Σ 0..* CodeableConcept Supplemental instruction or warnings to the patient - e.g. "with meals", "may cause drowsiness"
Binding: SNOMEDCTAdditionalDosageInstructions (example): A coded concept identifying additional instructions such as "take with water" or "avoid operating heavy machinery".


.... patientInstruction Σ 0..1 string Patient or consumer oriented instructions
.... timing SΣ 0..1 Timing (USCDI) When medication should be administered
.... asNeeded[x] Σ 0..1 Take "as needed" (for x)
Binding: SNOMEDCTMedicationAsNeededReasonCodes (example): A coded concept identifying the precondition that should be met or evaluated prior to consuming or administering a medication dose. For example "pain", "30 minutes prior to sexual intercourse", "on flare-up" etc.

..... asNeededBoolean boolean
..... asNeededCodeableConcept CodeableConcept
.... site Σ 0..1 CodeableConcept Body site to administer to
Binding: SNOMEDCTAnatomicalStructureForAdministrationSiteCodes (example): A coded concept describing the site location the medicine enters into or onto the body.

.... route Σ 0..1 CodeableConcept How drug should enter body
Binding: SNOMEDCTRouteCodes (example): A coded concept describing the route or physiological path of administration of a therapeutic agent into or onto the body of a subject.

.... method Σ 0..1 CodeableConcept Technique for administering medication
Binding: SNOMEDCTAdministrationMethodCodes (example): A coded concept describing the technique by which the medicine is administered.

.... doseAndRate SΣ 0..* Element (USCDI) Amount of medication administered
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... type Σ 0..1 CodeableConcept The kind of dose or rate specified
Binding: DoseAndRateType (example): The kind of dose or rate specified.

..... dose[x] SΣ 0..1 (USCDI) Amount of medication per dose
Binding: Common UCUM units (preferred)
Additional BindingsPurpose
UCUMCodes Max Binding
...... doseQuantity Quantity S
...... doseRange Range
..... rate[x] Σ 0..1 Amount of medication per unit of time
...... rateRatio Ratio
...... rateRange Range
...... rateQuantity Quantity(SimpleQuantity)
.... maxDosePerPeriod Σ 0..1 Ratio Upper limit on medication per unit of time
.... maxDosePerAdministration Σ 0..1 SimpleQuantity Upper limit on medication per administration
.... maxDosePerLifetime Σ 0..1 SimpleQuantity Upper limit on medication per lifetime of the patient
... substitution 0..1 BackboneElement Whether a substitution was performed on the dispense
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... wasSubstituted 1..1 boolean Whether a substitution was or was not performed on the dispense
.... type 0..1 CodeableConcept Code signifying whether a different drug was dispensed from what was prescribed
Binding: ActSubstanceAdminSubstitutionCode (example): A coded concept describing whether a different medicinal product may be dispensed other than the product as specified exactly in the prescription.

.... reason 0..* CodeableConcept Why was substitution made
Binding: SubstanceAdminSubstitutionReason (example): A coded concept describing the reason that a different medication should (or should not) be substituted from what was prescribed.


.... responsibleParty 0..* Reference(Practitioner | PractitionerRole) Who is responsible for the substitution
... detectedIssue 0..* Reference(DetectedIssue) Clinical issue with action
... eventHistory 0..* Reference(Provenance) A list of relevant lifecycle events

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
MedicationDispense.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
MedicationDispense.identifier.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
MedicationDispense.identifier.typeextensibleIdentifier Type Codes
http://hl7.org/fhir/ValueSet/identifier-type
from the FHIR Standard
MedicationDispense.statusrequiredMedicationDispense Status Codes
http://hl7.org/fhir/ValueSet/medicationdispense-status
from the FHIR Standard
MedicationDispense.statusReason[x]exampleMedicationDispense Status Reason Codes
http://hl7.org/fhir/ValueSet/medicationdispense-status-reason
from the FHIR Standard
MedicationDispense.categorypreferredMedicationDispense Category Codes
http://hl7.org/fhir/ValueSet/medicationdispense-category
from the FHIR Standard
MedicationDispense.medication[x]extensibleMedicationClinicalDrug .
http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1010.4
MedicationDispense.medication[x]:medicationCodeableConceptextensibleMedicationClinicalDrug .
http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1010.4
MedicationDispense.performer.functionexampleMedicationDispense Performer Function Codes
http://hl7.org/fhir/ValueSet/medicationdispense-performer-function
from the FHIR Standard
MedicationDispense.performer.actor.typeextensibleResourceType
http://hl7.org/fhir/ValueSet/resource-types
from the FHIR Standard
MedicationDispense.performer.actor.identifier.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
MedicationDispense.performer.actor.identifier.typeextensibleIdentifier Type Codes
http://hl7.org/fhir/ValueSet/identifier-type
from the FHIR Standard
MedicationDispense.authorizingPrescription.typeextensibleResourceType
http://hl7.org/fhir/ValueSet/resource-types
from the FHIR Standard
MedicationDispense.typeextensibleActPharmacySupplyType
http://terminology.hl7.org/ValueSet/v3-ActPharmacySupplyType
MedicationDispense.quantitypreferredCommon UCUM units
Additional Bindings Purpose
UCUMCodes Max Binding
http://hl7.org/fhir/ValueSet/ucum-common
from the FHIR Standard
MedicationDispense.quantity.comparatorrequiredQuantityComparator
http://hl7.org/fhir/ValueSet/quantity-comparator|4.0.1
from the FHIR Standard
MedicationDispense.dosageInstruction.additionalInstructionexampleSNOMEDCTAdditionalDosageInstructions
http://hl7.org/fhir/ValueSet/additional-instruction-codes
from the FHIR Standard
MedicationDispense.dosageInstruction.asNeeded[x]exampleSNOMEDCTMedicationAsNeededReasonCodes
http://hl7.org/fhir/ValueSet/medication-as-needed-reason
from the FHIR Standard
MedicationDispense.dosageInstruction.siteexampleSNOMEDCTAnatomicalStructureForAdministrationSiteCodes
http://hl7.org/fhir/ValueSet/approach-site-codes
from the FHIR Standard
MedicationDispense.dosageInstruction.routeexampleSNOMEDCTRouteCodes
http://hl7.org/fhir/ValueSet/route-codes
from the FHIR Standard
MedicationDispense.dosageInstruction.methodexampleSNOMEDCTAdministrationMethodCodes
http://hl7.org/fhir/ValueSet/administration-method-codes
from the FHIR Standard
MedicationDispense.dosageInstruction.doseAndRate.typeexampleDoseAndRateType
http://hl7.org/fhir/ValueSet/dose-rate-type
from the FHIR Standard
MedicationDispense.dosageInstruction.doseAndRate.dose[x]preferredCommon UCUM units
Additional Bindings Purpose
UCUMCodes Max Binding
http://hl7.org/fhir/ValueSet/ucum-common
from the FHIR Standard
MedicationDispense.substitution.typeexampleActSubstanceAdminSubstitutionCode
http://terminology.hl7.org/ValueSet/v3-ActSubstanceAdminSubstitutionCode
MedicationDispense.substitution.reasonexampleSubstanceAdminSubstitutionReason
http://terminology.hl7.org/ValueSet/v3-SubstanceAdminSubstitutionReason

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorMedicationDispenseIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorMedicationDispenseIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorMedicationDispenseIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorMedicationDispenseIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceMedicationDispenseA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
mdd-1errorMedicationDispensewhenHandedOver cannot be before whenPrepared
: whenHandedOver.empty() or whenPrepared.empty() or whenHandedOver >= whenPrepared
pdmp-dispense-performererrorMedicationDispense.performer.actorMedicationDispense SHALL include a performer actor reference or performer actor identifier
: reference.exists() or identifier.exists()
us-core-20errorMedicationDispensewhenHandedOver SHALL be present if the status is "completed"
: status='completed' implies whenHandedOver.exists()

Differential View

This structure is derived from USCoreMedicationDispenseProfile

NameFlagsCard.TypeDescription & Constraintsdoco
.. MedicationDispense 0..* USCoreMedicationDispenseProfile Dispensing a medication to a named patient
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... rx-fill-number S 0..1 positiveInt PDMP Extension - Prescription Fill Number
URL: http://hl7.org/fhir/us/pdmp/StructureDefinition/pdmp-extension-rx-fill-number
.... rx-transmission-method S 0..1 Coding PDMP Extension - Prescription Transmission Method
URL: http://hl7.org/fhir/us/pdmp/StructureDefinition/pdmp-extension-rx-transmission-method
Binding: PDMP Value Set - Prescription Transmission Method (extensible)
.... rx-mme S 0..1 decimal PDMP Extension - MME
URL: http://hl7.org/fhir/us/pdmp/StructureDefinition/pdmp-extension-mme
.... rx-lme S 0..1 decimal PDMP Extension - LME
URL: http://hl7.org/fhir/us/pdmp/StructureDefinition/pdmp-extension-lme
.... rx-method-of-payment 0..1 Coding PDMP Extension - Method of Payment
URL: http://hl7.org/fhir/us/pdmp/StructureDefinition/pdmp-extension-method-of-payment
Binding: PDMP Value Set - Method of Payment (extensible)
.... rx-opioid-treatment-code 0..1 Coding PDMP Extension - Opioid Treatment Code
URL: http://hl7.org/fhir/us/pdmp/StructureDefinition/pdmp-extension-opioid-treatment-code
Binding: PDMP Value Set - Opioid Treatment Code (required)
... identifier 0..* Identifier External identifier
.... value 0..1 string The value that is unique
... status 1..1 code (USCDI) preparation | in-progress | cancelled | on-hold | completed | entered-in-error | stopped | declined | unknown
Binding: MedicationDispense Status Codes (required): A set of codes indicating the current status of a MedicationDispense.

.... medication[x]:medicationCodeableConcept 0..1 CodeableConcept (USCDI) What medication was supplied
..... coding
...... system 0..1 uri Identity of the terminology system
...... code 0..1 code Symbol in syntax defined by the system
...... userSelected S 0..1 boolean If this coding was chosen directly by the user
..... text 0..1 string Plain text representation of the concept
... performer 1..1 BackboneElement (USCDI) Who performed event
.... actor C 1..1 Reference(US Core Practitioner Profile | PDMP Organization - Pharmacy) (USCDI) Individual who was performing
pdmp-dispense-performer: MedicationDispense SHALL include a performer actor reference or performer actor identifier
..... reference S 0..1 string Literal reference, Relative, internal or absolute URL
..... identifier S 0..1 Identifier Logical reference, when literal reference is not known
...... system S 1..1 uri The namespace for the identifier value
...... value S 1..1 string The value that is unique
..... display S 0..1 string Text alternative for the resource
... authorizingPrescription 0..1 Reference(US Core MedicationRequest Profile) (USCDI) Medication order that authorizes the dispense
.... identifier S 0..1 Identifier Logical reference, when literal reference is not known
... type 0..1 CodeableConcept (USCDI) Trial fill, partial fill, emergency fill, etc.
... quantity 1..1 Quantity (USCDI) Amount dispensed
.... value S 1..1 decimal Numerical value (with implicit precision)
.... unit S 1..1 string Unit representation
.... system S 0..1 uri System that defines coded unit form
.... code S 0..1 code Coded form of the unit
... daysSupply S 1..1 SimpleQuantity Amount of medication expressed as a timing amount
.... value S 1..1 decimal Numerical value (with implicit precision)
... whenPrepared S 1..1 dateTime When product was packaged and reviewed
... dosageInstruction 0..1 Dosage (USCDI) How the medication is to be used by the patient or administered by the caregiver

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
MedicationDispense.statusrequiredMedicationDispense Status Codes
http://hl7.org/fhir/ValueSet/medicationdispense-status
from the FHIR Standard
MedicationDispense.medication[x]extensibleMedicationClinicalDrug .
http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1010.4

Constraints

IdGradePath(s)DetailsRequirements
pdmp-dispense-performererrorMedicationDispense.performer.actorMedicationDispense SHALL include a performer actor reference or performer actor identifier
: reference.exists() or identifier.exists()

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. MedicationDispense C 0..* USCoreMedicationDispenseProfile Dispensing a medication to a named patient
mdd-1: whenHandedOver cannot be before whenPrepared
us-core-20: whenHandedOver SHALL be present if the status is "completed"
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... rx-fill-number S 0..1 positiveInt PDMP Extension - Prescription Fill Number
URL: http://hl7.org/fhir/us/pdmp/StructureDefinition/pdmp-extension-rx-fill-number
.... rx-transmission-method S 0..1 Coding PDMP Extension - Prescription Transmission Method
URL: http://hl7.org/fhir/us/pdmp/StructureDefinition/pdmp-extension-rx-transmission-method
Binding: PDMP Value Set - Prescription Transmission Method (extensible)
.... rx-mme S 0..1 decimal PDMP Extension - MME
URL: http://hl7.org/fhir/us/pdmp/StructureDefinition/pdmp-extension-mme
.... rx-lme S 0..1 decimal PDMP Extension - LME
URL: http://hl7.org/fhir/us/pdmp/StructureDefinition/pdmp-extension-lme
.... rx-method-of-payment 0..1 Coding PDMP Extension - Method of Payment
URL: http://hl7.org/fhir/us/pdmp/StructureDefinition/pdmp-extension-method-of-payment
Binding: PDMP Value Set - Method of Payment (extensible)
.... rx-opioid-treatment-code 0..1 Coding PDMP Extension - Opioid Treatment Code
URL: http://hl7.org/fhir/us/pdmp/StructureDefinition/pdmp-extension-opioid-treatment-code
Binding: PDMP Value Set - Opioid Treatment Code (required)
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
.... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

.... value Σ 0..1 string The value that is unique
Example General: 123456
... status ?!SΣC 1..1 code (USCDI) preparation | in-progress | cancelled | on-hold | completed | entered-in-error | stopped | declined | unknown
Binding: MedicationDispense Status Codes (required): A set of codes indicating the current status of a MedicationDispense.

... Slices for medication[x] SΣ 1..1 (USCDI) What medication was supplied
Slice: Unordered, Open by type:$this
Binding: Medication Clinical Drug . (extensible): Prescribable medications

.... medicationCodeableConcept CodeableConcept
.... medicationReference Reference(US Core Medication Profile)
.... medication[x]:medicationCodeableConcept SΣ 0..1 CodeableConcept (USCDI) What medication was supplied
Binding: Medication Clinical Drug . (extensible)
..... coding Σ 0..* Coding Code defined by a terminology system
...... system Σ 0..1 uri Identity of the terminology system
...... code Σ 0..1 code Symbol in syntax defined by the system
...... userSelected SΣ 0..1 boolean If this coding was chosen directly by the user
..... text Σ 0..1 string Plain text representation of the concept
... subject SΣ 1..1 Reference(US Core Patient Profile) (USCDI) Who the dispense is for
... performer S 1..1 BackboneElement (USCDI) Who performed event
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... actor SC 1..1 Reference(US Core Practitioner Profile) (USCDI) Individual who was performing
pdmp-dispense-performer: MedicationDispense SHALL include a performer actor reference or performer actor identifier
..... reference SΣC 0..1 string Literal reference, Relative, internal or absolute URL
..... identifier SΣ 0..1 Identifier Logical reference, when literal reference is not known
...... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

...... system SΣ 1..1 uri The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
...... value SΣ 1..1 string The value that is unique
Example General: 123456
..... display SΣ 0..1 string Text alternative for the resource
... authorizingPrescription S 0..1 Reference(US Core MedicationRequest Profile) (USCDI) Medication order that authorizes the dispense
.... identifier SΣ 0..1 Identifier Logical reference, when literal reference is not known
... type S 0..1 CodeableConcept (USCDI) Trial fill, partial fill, emergency fill, etc.
Binding: ActPharmacySupplyType (extensible)
... quantity S 1..1 Quantity (USCDI) Amount dispensed
Binding: Common UCUM units (preferred)
Additional BindingsPurpose
UCUMCodes Max Binding
.... value SΣ 1..1 decimal Numerical value (with implicit precision)
.... comparator ?!Σ 0..1 code < | <= | >= | > - how to understand the value
Binding: QuantityComparator (required): How the Quantity should be understood and represented.

.... unit SΣ 1..1 string Unit representation
.... system SΣC 0..1 uri System that defines coded unit form
.... code SΣ 0..1 code Coded form of the unit
... daysSupply S 1..1 SimpleQuantity Amount of medication expressed as a timing amount
.... value SΣ 1..1 decimal Numerical value (with implicit precision)
... whenPrepared SΣ 1..1 dateTime When product was packaged and reviewed
... whenHandedOver SC 0..1 dateTime (USCDI) When product was given out or mailed
... dosageInstruction S 0..1 Dosage (USCDI) How the medication is to be used by the patient or administered by the caregiver
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... text SΣ 0..1 string (USCDI) Free text dosage instructions e.g. SIG
.... timing SΣ 0..1 Timing (USCDI) When medication should be administered
.... doseAndRate SΣ 0..* Element (USCDI) Amount of medication administered
..... dose[x] SΣ 0..1 (USCDI) Amount of medication per dose
Binding: Common UCUM units (preferred)
Additional BindingsPurpose
UCUMCodes Max Binding
...... doseQuantity Quantity

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
MedicationDispense.identifier.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
MedicationDispense.statusrequiredMedicationDispense Status Codes
http://hl7.org/fhir/ValueSet/medicationdispense-status
from the FHIR Standard
MedicationDispense.medication[x]extensibleMedicationClinicalDrug .
http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1010.4
MedicationDispense.medication[x]:medicationCodeableConceptextensibleMedicationClinicalDrug .
http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1010.4
MedicationDispense.performer.actor.identifier.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
MedicationDispense.typeextensibleActPharmacySupplyType
http://terminology.hl7.org/ValueSet/v3-ActPharmacySupplyType
MedicationDispense.quantitypreferredCommon UCUM units
Additional Bindings Purpose
UCUMCodes Max Binding
http://hl7.org/fhir/ValueSet/ucum-common
from the FHIR Standard
MedicationDispense.quantity.comparatorrequiredQuantityComparator
http://hl7.org/fhir/ValueSet/quantity-comparator|4.0.1
from the FHIR Standard
MedicationDispense.dosageInstruction.doseAndRate.dose[x]preferredCommon UCUM units
Additional Bindings Purpose
UCUMCodes Max Binding
http://hl7.org/fhir/ValueSet/ucum-common
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorMedicationDispenseIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorMedicationDispenseIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorMedicationDispenseIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorMedicationDispenseIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceMedicationDispenseA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
mdd-1errorMedicationDispensewhenHandedOver cannot be before whenPrepared
: whenHandedOver.empty() or whenPrepared.empty() or whenHandedOver >= whenPrepared
pdmp-dispense-performererrorMedicationDispense.performer.actorMedicationDispense SHALL include a performer actor reference or performer actor identifier
: reference.exists() or identifier.exists()
us-core-20errorMedicationDispensewhenHandedOver SHALL be present if the status is "completed"
: status='completed' implies whenHandedOver.exists()

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. MedicationDispense C 0..* USCoreMedicationDispenseProfile Dispensing a medication to a named patient
mdd-1: whenHandedOver cannot be before whenPrepared
us-core-20: whenHandedOver SHALL be present if the status is "completed"
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguages Max Binding
... text 0..1 Narrative Text summary of the resource, for human interpretation
... contained 0..* Resource Contained, inline Resources
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... rx-fill-number S 0..1 positiveInt PDMP Extension - Prescription Fill Number
URL: http://hl7.org/fhir/us/pdmp/StructureDefinition/pdmp-extension-rx-fill-number
.... rx-transmission-method S 0..1 Coding PDMP Extension - Prescription Transmission Method
URL: http://hl7.org/fhir/us/pdmp/StructureDefinition/pdmp-extension-rx-transmission-method
Binding: PDMP Value Set - Prescription Transmission Method (extensible)
.... rx-mme S 0..1 decimal PDMP Extension - MME
URL: http://hl7.org/fhir/us/pdmp/StructureDefinition/pdmp-extension-mme
.... rx-lme S 0..1 decimal PDMP Extension - LME
URL: http://hl7.org/fhir/us/pdmp/StructureDefinition/pdmp-extension-lme
.... rx-method-of-payment 0..1 Coding PDMP Extension - Method of Payment
URL: http://hl7.org/fhir/us/pdmp/StructureDefinition/pdmp-extension-method-of-payment
Binding: PDMP Value Set - Method of Payment (extensible)
.... rx-opioid-treatment-code 0..1 Coding PDMP Extension - Opioid Treatment Code
URL: http://hl7.org/fhir/us/pdmp/StructureDefinition/pdmp-extension-opioid-treatment-code
Binding: PDMP Value Set - Opioid Treatment Code (required)
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier 0..* Identifier External identifier
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

.... type Σ 0..1 CodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

.... system Σ 0..1 uri The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
.... value Σ 0..1 string The value that is unique
Example General: 123456
.... period Σ 0..1 Period Time period when id is/was valid for use
.... assigner Σ 0..1 Reference(Organization) Organization that issued id (may be just text)
... partOf 0..* Reference(Procedure) Event that dispense is part of
... status ?!SΣC 1..1 code (USCDI) preparation | in-progress | cancelled | on-hold | completed | entered-in-error | stopped | declined | unknown
Binding: MedicationDispense Status Codes (required): A set of codes indicating the current status of a MedicationDispense.

... statusReason[x] 0..1 Why a dispense was not performed
Binding: MedicationDispense Status Reason Codes (example): A code describing why a dispense was not performed.

.... statusReasonCodeableConcept CodeableConcept
.... statusReasonReference Reference(DetectedIssue)
... category 0..1 CodeableConcept Type of medication dispense
Binding: MedicationDispense Category Codes (preferred): A code describing where the dispensed medication is expected to be consumed or administered.

... Slices for medication[x] SΣ 1..1 (USCDI) What medication was supplied
Slice: Unordered, Open by type:$this
Binding: Medication Clinical Drug . (extensible): Prescribable medications

.... medicationCodeableConcept CodeableConcept
.... medicationReference Reference(US Core Medication Profile)
.... medication[x]:medicationCodeableConcept SΣ 0..1 CodeableConcept (USCDI) What medication was supplied
Binding: Medication Clinical Drug . (extensible)
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... coding Σ 0..* Coding Code defined by a terminology system
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... system Σ 0..1 uri Identity of the terminology system
...... version Σ 0..1 string Version of the system - if relevant
...... code Σ 0..1 code Symbol in syntax defined by the system
...... display Σ 0..1 string Representation defined by the system
...... userSelected SΣ 0..1 boolean If this coding was chosen directly by the user
..... text Σ 0..1 string Plain text representation of the concept
... subject SΣ 1..1 Reference(US Core Patient Profile) (USCDI) Who the dispense is for
... context 0..1 Reference(Encounter | EpisodeOfCare) Encounter / Episode associated with event
... supportingInformation 0..* Reference(Resource) Information that supports the dispensing of the medication
... performer S 1..1 BackboneElement (USCDI) Who performed event
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... function 0..1 CodeableConcept Who performed the dispense and what they did
Binding: MedicationDispense Performer Function Codes (example): A code describing the role an individual played in dispensing a medication.

.... actor SC 1..1 Reference(US Core Practitioner Profile S | PDMP Organization - Pharmacy) (USCDI) Individual who was performing
pdmp-dispense-performer: MedicationDispense SHALL include a performer actor reference or performer actor identifier
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... reference SΣC 0..1 string Literal reference, Relative, internal or absolute URL
..... type Σ 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).

..... identifier SΣ 0..1 Identifier Logical reference, when literal reference is not known
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

...... type Σ 0..1 CodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

...... system SΣ 1..1 uri The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
...... value SΣ 1..1 string The value that is unique
Example General: 123456
...... period Σ 0..1 Period Time period when id is/was valid for use
...... assigner Σ 0..1 Reference(Organization) Organization that issued id (may be just text)
..... display SΣ 0..1 string Text alternative for the resource
... location 0..1 Reference(Location) Where the dispense occurred
... authorizingPrescription S 0..1 Reference(US Core MedicationRequest Profile) (USCDI) Medication order that authorizes the dispense
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... reference ΣC 0..1 string Literal reference, Relative, internal or absolute URL
.... type Σ 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).

.... identifier SΣ 0..1 Identifier Logical reference, when literal reference is not known
.... display Σ 0..1 string Text alternative for the resource
... type S 0..1 CodeableConcept (USCDI) Trial fill, partial fill, emergency fill, etc.
Binding: ActPharmacySupplyType (extensible)
... quantity S 1..1 Quantity (USCDI) Amount dispensed
Binding: Common UCUM units (preferred)
Additional BindingsPurpose
UCUMCodes Max Binding
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... value SΣ 1..1 decimal Numerical value (with implicit precision)
.... comparator ?!Σ 0..1 code < | <= | >= | > - how to understand the value
Binding: QuantityComparator (required): How the Quantity should be understood and represented.

.... unit SΣ 1..1 string Unit representation
.... system SΣC 0..1 uri System that defines coded unit form
.... code SΣ 0..1 code Coded form of the unit
... daysSupply S 1..1 SimpleQuantity Amount of medication expressed as a timing amount
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... value SΣ 1..1 decimal Numerical value (with implicit precision)
.... unit Σ 0..1 string Unit representation
.... system ΣC 0..1 uri System that defines coded unit form
.... code Σ 0..1 code Coded form of the unit
... whenPrepared SΣ 1..1 dateTime When product was packaged and reviewed
... whenHandedOver SC 0..1 dateTime (USCDI) When product was given out or mailed
... destination 0..1 Reference(Location) Where the medication was sent
... receiver 0..* Reference(Patient | Practitioner) Who collected the medication
... note 0..* Annotation Information about the dispense
... dosageInstruction S 0..1 Dosage (USCDI) How the medication is to be used by the patient or administered by the caregiver
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
....