HL7 Europe Medication Prescription and Dispense
0.1.0-ballot - ballot 150

Publication Build: This will be filled in by the publication tooling

## Resource Profile: MedicationDispense: MPD

Official URL: http://hl7.eu/fhir/mpd/StructureDefinition/MedicationDispense-eu-mpd | Version: 0.1.0-ballot
Draft as of 2025-06-04 | Computable Name: MedicationDispenseEuMpd
Copyright/Legal: Used by permission of HL7 Europe, all rights reserved Creative Commons License

This profile defines how to represent the supply and the associated administration instructions in HL7 FHIR for the purpose of this guide.

Usages:

- Examples for this Profile: MedicationDispense/300D-dispense-for-2-requests, MedicationDispense/400D-dispense-1, MedicationDispense/400D-dispense-2 and MedicationDispense/400E-refused-dispense

### Formal Views of Profile Content

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

- Key Elements Table
- Differential Table
- Snapshot Table
- Statistics/References
- All

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
MedicationDispense | C | 0..* | MedicationDispense | Dispensing a medication to a named patient Constraints: mdd-1
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
extension:renderedDosageInstruction |  | 0..1 | markdown | Full representation of the dosage instructions URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
status | ?!Σ | 1..1 | code | preparation | in-progress | cancelled | on-hold | completed | entered-in-error | stopped | declined | unknown Binding: MedicationDispense Status Codes (required): A coded concept specifying the state of the dispense event.
Slices for medication[x] | Σ | 1..1 |  | What medication was supplied Slice: Unordered, Closed by type:$this Binding: SNOMEDCTMedicationCodes (example): A coded concept identifying which substance or product can be dispensed.
medicationCodeableConcept |  |  | CodeableConcept |
medicationReference |  |  | Reference(Medication) |
medication[x]:medicationReference | Σ | 0..1 | Reference(Medication: MPD) | What medication was supplied
medication[x]:medicationCodeableConcept | Σ | 0..1 | CodeableConcept | What medication was supplied Binding: SNOMEDCTMedicationCodes (example): A coded concept identifying which substance or product can be dispensed.
Slices for extension |  |  |  | Content/Rules for all slices
extension:medication-absent-reason |  | 0..1 | code | Reason for not providing the medication. URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason Binding: DataAbsentReason (required)
authorizingPrescription |  | 0..* | Reference(MedicationRequest: MPD) | Medication order that authorizes the dispense
quantity |  | 1..1 | SimpleQuantity | Amount dispensed
whenHandedOver |  | 1..1 | dateTime | When product was given out
Documentation for this format

#### Terminology Bindings

Path | Conformance | ValueSet | URI
MedicationDispense.status | required | MedicationDispense Status Codes `http://hl7.org/fhir/ValueSet/medicationdispense-status|4.0.1` From the FHIR Standard
MedicationDispense.medication[x] | example | SNOMEDCTMedicationCodes `http://hl7.org/fhir/ValueSet/medication-codes` From the FHIR Standard
MedicationDispense.medication[x]:medicationCodeableConcept | example | SNOMEDCTMedicationCodes `http://hl7.org/fhir/ValueSet/medication-codes` From the FHIR Standard

#### Constraints

Id | Grade | Path(s) | Details | Requirements
dom-2 | error | MedicationDispense | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() |
dom-3 | error | MedicationDispense | If 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-4 | error | MedicationDispense | If 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-5 | error | MedicationDispense | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() |
dom-6 | best practice | MedicationDispense | A resource should have narrative for robust management : text.`div`.exists() |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
mdd-1 | error | MedicationDispense | whenHandedOver cannot be before whenPrepared : whenHandedOver.empty() or whenPrepared.empty() or whenHandedOver >= whenPrepared |

This structure is derived from MedicationDispense

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
MedicationDispense |  | 0..* | MedicationDispense | Dispensing a medication to a named patient
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
extension:renderedDosageInstruction |  | 0..1 | markdown | Full representation of the dosage instructions URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction
Slices for medication[x] |  | 1..1 | CodeableConcept, Reference(Medication) | What medication was supplied Slice: Unordered, Open by type:$this
medication[x]:medicationReference |  | 0..1 | Reference(Medication: MPD) | What medication was supplied
medication[x]:medicationCodeableConcept |  | 0..1 | CodeableConcept | What medication was supplied
Slices for extension |  |  |  | Content/Rules for all slices
extension:medication-absent-reason |  | 0..1 | code | Reason for not providing the medication. URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason Binding: DataAbsentReason (required)
authorizingPrescription |  | 0..* | Reference(MedicationRequest: MPD) | Medication order that authorizes the dispense
quantity |  | 1..1 | SimpleQuantity | Amount dispensed
whenHandedOver |  | 1..1 | dateTime | When product was given out
Documentation for this format

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
MedicationDispense | C | 0..* | MedicationDispense | Dispensing a medication to a named patient Constraints: mdd-1
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 Bindings | Purpose
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
extension:renderedDosageInstruction |  | 0..1 | markdown | Full representation of the dosage instructions URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
identifier |  | 0..* | Identifier | External identifier
partOf |  | 0..* | Reference(Procedure) | Event that dispense is part of
status | ?!Σ | 1..1 | code | preparation | in-progress | cancelled | on-hold | completed | entered-in-error | stopped | declined | unknown Binding: MedicationDispense Status Codes (required): A coded concept specifying the state of the dispense event.
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] | Σ | 1..1 |  | What medication was supplied Slice: Unordered, Closed by type:$this Binding: SNOMEDCTMedicationCodes (example): A coded concept identifying which substance or product can be dispensed.
medicationCodeableConcept |  |  | CodeableConcept |
medicationReference |  |  | Reference(Medication) |
medication[x]:medicationReference | Σ | 0..1 | Reference(Medication: MPD) | What medication was supplied
medication[x]:medicationCodeableConcept | Σ | 0..1 | CodeableConcept | What medication was supplied Binding: SNOMEDCTMedicationCodes (example): A coded concept identifying which substance or product can be dispensed.
id |  | 0..1 | string | Unique id for inter-element referencing
Slices for extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
extension:medication-absent-reason |  | 0..1 | code | Reason for not providing the medication. URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason Binding: DataAbsentReason (required)
coding | Σ | 0..* | Coding | Code defined by a terminology system
text | Σ | 0..1 | string | Plain text representation of the concept
subject | Σ | 0..1 | Reference(Patient | Group) | 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 |  | 0..* | BackboneElement | 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 |  | 1..1 | Reference(Practitioner | PractitionerRole | Organization | Patient | Device | RelatedPerson) | Individual who was performing
location |  | 0..1 | Reference(Location) | Where the dispense occurred
authorizingPrescription |  | 0..* | Reference(MedicationRequest: MPD) | Medication order that authorizes the dispense
type |  | 0..1 | CodeableConcept | Trial fill, partial fill, emergency fill, etc. Binding: ActPharmacySupplyType (example): Indicates the type of dispensing event that is performed. For example, Trial Fill, Completion of Trial, Partial Fill, Emergency Fill, Samples, etc.
quantity |  | 1..1 | SimpleQuantity | Amount dispensed
daysSupply |  | 0..1 | SimpleQuantity | Amount of medication expressed as a timing amount
whenPrepared | Σ | 0..1 | dateTime | When product was packaged and reviewed
whenHandedOver |  | 1..1 | dateTime | When product was given out
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 |  | 0..* | Dosage | How the medication is to be used by the patient or administered by the caregiver
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
Documentation for this format

#### Terminology Bindings

Path | Conformance | ValueSet | URI
MedicationDispense.language | preferred | CommonLanguages `http://hl7.org/fhir/ValueSet/languages` From the FHIR Standard
Additional Bindings | Purpose
AllLanguages | Max Binding
MedicationDispense.status | required | MedicationDispense Status Codes `http://hl7.org/fhir/ValueSet/medicationdispense-status|4.0.1` From the FHIR Standard
MedicationDispense.statusReason[x] | example | MedicationDispense Status Reason Codes `http://hl7.org/fhir/ValueSet/medicationdispense-status-reason` From the FHIR Standard
MedicationDispense.category | preferred | MedicationDispense Category Codes `http://hl7.org/fhir/ValueSet/medicationdispense-category` From the FHIR Standard
MedicationDispense.medication[x] | example | SNOMEDCTMedicationCodes `http://hl7.org/fhir/ValueSet/medication-codes` From the FHIR Standard
MedicationDispense.medication[x]:medicationCodeableConcept | example | SNOMEDCTMedicationCodes `http://hl7.org/fhir/ValueSet/medication-codes` From the FHIR Standard
MedicationDispense.performer.function | example | MedicationDispense Performer Function Codes `http://hl7.org/fhir/ValueSet/medicationdispense-performer-function` From the FHIR Standard
MedicationDispense.type | example | ActPharmacySupplyType `http://terminology.hl7.org/ValueSet/v3-ActPharmacySupplyType`
MedicationDispense.substitution.type | example | ActSubstanceAdminSubstitutionCode `http://terminology.hl7.org/ValueSet/v3-ActSubstanceAdminSubstitutionCode`
MedicationDispense.substitution.reason | example | SubstanceAdminSubstitutionReason `http://terminology.hl7.org/ValueSet/v3-SubstanceAdminSubstitutionReason`

#### Constraints

Id | Grade | Path(s) | Details | Requirements
dom-2 | error | MedicationDispense | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() |
dom-3 | error | MedicationDispense | If 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-4 | error | MedicationDispense | If 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-5 | error | MedicationDispense | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() |
dom-6 | best practice | MedicationDispense | A resource should have narrative for robust management : text.`div`.exists() |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
mdd-1 | error | MedicationDispense | whenHandedOver cannot be before whenPrepared : whenHandedOver.empty() or whenPrepared.empty() or whenHandedOver >= whenPrepared |

This structure is derived from MedicationDispense

Summary

Mandatory: 2 elements

Structures

This structure refers to these other structures:

- Medication: MPD (http://hl7.eu/fhir/mpd/StructureDefinition/Medication-eu-mpd)
- MedicationRequest: MPD (http://hl7.eu/fhir/mpd/StructureDefinition/MedicationRequest-eu-mpd)

Extensions

This structure refers to these extensions:

- http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction
- http://hl7.org/fhir/StructureDefinition/data-absent-reason

Slices

This structure defines the following Slices:

- The element 1 is sliced based on the value of MedicationDispense.medication[x]

Key Elements View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
MedicationDispense | C | 0..* | MedicationDispense | Dispensing a medication to a named patient Constraints: mdd-1
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
extension:renderedDosageInstruction |  | 0..1 | markdown | Full representation of the dosage instructions URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
status | ?!Σ | 1..1 | code | preparation | in-progress | cancelled | on-hold | completed | entered-in-error | stopped | declined | unknown Binding: MedicationDispense Status Codes (required): A coded concept specifying the state of the dispense event.
Slices for medication[x] | Σ | 1..1 |  | What medication was supplied Slice: Unordered, Closed by type:$this Binding: SNOMEDCTMedicationCodes (example): A coded concept identifying which substance or product can be dispensed.
medicationCodeableConcept |  |  | CodeableConcept |
medicationReference |  |  | Reference(Medication) |
medication[x]:medicationReference | Σ | 0..1 | Reference(Medication: MPD) | What medication was supplied
medication[x]:medicationCodeableConcept | Σ | 0..1 | CodeableConcept | What medication was supplied Binding: SNOMEDCTMedicationCodes (example): A coded concept identifying which substance or product can be dispensed.
Slices for extension |  |  |  | Content/Rules for all slices
extension:medication-absent-reason |  | 0..1 | code | Reason for not providing the medication. URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason Binding: DataAbsentReason (required)
authorizingPrescription |  | 0..* | Reference(MedicationRequest: MPD) | Medication order that authorizes the dispense
quantity |  | 1..1 | SimpleQuantity | Amount dispensed
whenHandedOver |  | 1..1 | dateTime | When product was given out
Documentation for this format

#### Terminology Bindings

Path | Conformance | ValueSet | URI
MedicationDispense.status | required | MedicationDispense Status Codes `http://hl7.org/fhir/ValueSet/medicationdispense-status|4.0.1` From the FHIR Standard
MedicationDispense.medication[x] | example | SNOMEDCTMedicationCodes `http://hl7.org/fhir/ValueSet/medication-codes` From the FHIR Standard
MedicationDispense.medication[x]:medicationCodeableConcept | example | SNOMEDCTMedicationCodes `http://hl7.org/fhir/ValueSet/medication-codes` From the FHIR Standard

#### Constraints

Id | Grade | Path(s) | Details | Requirements
dom-2 | error | MedicationDispense | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() |
dom-3 | error | MedicationDispense | If 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-4 | error | MedicationDispense | If 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-5 | error | MedicationDispense | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() |
dom-6 | best practice | MedicationDispense | A resource should have narrative for robust management : text.`div`.exists() |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
mdd-1 | error | MedicationDispense | whenHandedOver cannot be before whenPrepared : whenHandedOver.empty() or whenPrepared.empty() or whenHandedOver >= whenPrepared |

Differential View

This structure is derived from MedicationDispense

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
MedicationDispense |  | 0..* | MedicationDispense | Dispensing a medication to a named patient
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
extension:renderedDosageInstruction |  | 0..1 | markdown | Full representation of the dosage instructions URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction
Slices for medication[x] |  | 1..1 | CodeableConcept, Reference(Medication) | What medication was supplied Slice: Unordered, Open by type:$this
medication[x]:medicationReference |  | 0..1 | Reference(Medication: MPD) | What medication was supplied
medication[x]:medicationCodeableConcept |  | 0..1 | CodeableConcept | What medication was supplied
Slices for extension |  |  |  | Content/Rules for all slices
extension:medication-absent-reason |  | 0..1 | code | Reason for not providing the medication. URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason Binding: DataAbsentReason (required)
authorizingPrescription |  | 0..* | Reference(MedicationRequest: MPD) | Medication order that authorizes the dispense
quantity |  | 1..1 | SimpleQuantity | Amount dispensed
whenHandedOver |  | 1..1 | dateTime | When product was given out
Documentation for this format

Snapshot View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
MedicationDispense | C | 0..* | MedicationDispense | Dispensing a medication to a named patient Constraints: mdd-1
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 Bindings | Purpose
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
extension:renderedDosageInstruction |  | 0..1 | markdown | Full representation of the dosage instructions URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
identifier |  | 0..* | Identifier | External identifier
partOf |  | 0..* | Reference(Procedure) | Event that dispense is part of
status | ?!Σ | 1..1 | code | preparation | in-progress | cancelled | on-hold | completed | entered-in-error | stopped | declined | unknown Binding: MedicationDispense Status Codes (required): A coded concept specifying the state of the dispense event.
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] | Σ | 1..1 |  | What medication was supplied Slice: Unordered, Closed by type:$this Binding: SNOMEDCTMedicationCodes (example): A coded concept identifying which substance or product can be dispensed.
medicationCodeableConcept |  |  | CodeableConcept |
medicationReference |  |  | Reference(Medication) |
medication[x]:medicationReference | Σ | 0..1 | Reference(Medication: MPD) | What medication was supplied
medication[x]:medicationCodeableConcept | Σ | 0..1 | CodeableConcept | What medication was supplied Binding: SNOMEDCTMedicationCodes (example): A coded concept identifying which substance or product can be dispensed.
id |  | 0..1 | string | Unique id for inter-element referencing
Slices for extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
extension:medication-absent-reason |  | 0..1 | code | Reason for not providing the medication. URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason Binding: DataAbsentReason (required)
coding | Σ | 0..* | Coding | Code defined by a terminology system
text | Σ | 0..1 | string | Plain text representation of the concept
subject | Σ | 0..1 | Reference(Patient | Group) | 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 |  | 0..* | BackboneElement | 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 |  | 1..1 | Reference(Practitioner | PractitionerRole | Organization | Patient | Device | RelatedPerson) | Individual who was performing
location |  | 0..1 | Reference(Location) | Where the dispense occurred
authorizingPrescription |  | 0..* | Reference(MedicationRequest: MPD) | Medication order that authorizes the dispense
type |  | 0..1 | CodeableConcept | Trial fill, partial fill, emergency fill, etc. Binding: ActPharmacySupplyType (example): Indicates the type of dispensing event that is performed. For example, Trial Fill, Completion of Trial, Partial Fill, Emergency Fill, Samples, etc.
quantity |  | 1..1 | SimpleQuantity | Amount dispensed
daysSupply |  | 0..1 | SimpleQuantity | Amount of medication expressed as a timing amount
whenPrepared | Σ | 0..1 | dateTime | When product was packaged and reviewed
whenHandedOver |  | 1..1 | dateTime | When product was given out
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 |  | 0..* | Dosage | How the medication is to be used by the patient or administered by the caregiver
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
Documentation for this format

#### Terminology Bindings

Path | Conformance | ValueSet | URI
MedicationDispense.language | preferred | CommonLanguages `http://hl7.org/fhir/ValueSet/languages` From the FHIR Standard
Additional Bindings | Purpose
AllLanguages | Max Binding
MedicationDispense.status | required | MedicationDispense Status Codes `http://hl7.org/fhir/ValueSet/medicationdispense-status|4.0.1` From the FHIR Standard
MedicationDispense.statusReason[x] | example | MedicationDispense Status Reason Codes `http://hl7.org/fhir/ValueSet/medicationdispense-status-reason` From the FHIR Standard
MedicationDispense.category | preferred | MedicationDispense Category Codes `http://hl7.org/fhir/ValueSet/medicationdispense-category` From the FHIR Standard
MedicationDispense.medication[x] | example | SNOMEDCTMedicationCodes `http://hl7.org/fhir/ValueSet/medication-codes` From the FHIR Standard
MedicationDispense.medication[x]:medicationCodeableConcept | example | SNOMEDCTMedicationCodes `http://hl7.org/fhir/ValueSet/medication-codes` From the FHIR Standard
MedicationDispense.performer.function | example | MedicationDispense Performer Function Codes `http://hl7.org/fhir/ValueSet/medicationdispense-performer-function` From the FHIR Standard
MedicationDispense.type | example | ActPharmacySupplyType `http://terminology.hl7.org/ValueSet/v3-ActPharmacySupplyType`
MedicationDispense.substitution.type | example | ActSubstanceAdminSubstitutionCode `http://terminology.hl7.org/ValueSet/v3-ActSubstanceAdminSubstitutionCode`
MedicationDispense.substitution.reason | example | SubstanceAdminSubstitutionReason `http://terminology.hl7.org/ValueSet/v3-SubstanceAdminSubstitutionReason`

#### Constraints

Id | Grade | Path(s) | Details | Requirements
dom-2 | error | MedicationDispense | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() |
dom-3 | error | MedicationDispense | If 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-4 | error | MedicationDispense | If 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-5 | error | MedicationDispense | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() |
dom-6 | best practice | MedicationDispense | A resource should have narrative for robust management : text.`div`.exists() |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
mdd-1 | error | MedicationDispense | whenHandedOver cannot be before whenPrepared : whenHandedOver.empty() or whenPrepared.empty() or whenHandedOver >= whenPrepared |

This structure is derived from MedicationDispense

Summary

Mandatory: 2 elements

Structures

This structure refers to these other structures:

- Medication: MPD (http://hl7.eu/fhir/mpd/StructureDefinition/Medication-eu-mpd)
- MedicationRequest: MPD (http://hl7.eu/fhir/mpd/StructureDefinition/MedicationRequest-eu-mpd)

Extensions

This structure refers to these extensions:

- http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationDispense.renderedDosageInstruction
- http://hl7.org/fhir/StructureDefinition/data-absent-reason

Slices

This structure defines the following Slices:

- The element 1 is sliced based on the value of MedicationDispense.medication[x]

Other representations of profile: CSV, Excel, Schematron