HL7 Europe Hospital Discharge Report
1.0.0-alpha - qa-preview 150

HL7 Europe Hospital Discharge Report, published by HL7 Europe. This guide is not an authorized publication; it is the continuous build for version 1.0.0-alpha built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/hl7-eu/hdr/ and changes regularly. See the Directory of published versions

## Resource Profile: MedicationDispense: obligations

Official URL: http://hl7.eu/fhir/hdr/StructureDefinition/medicationDispense-obl-eu-hdr | Version: 1.0.0-alpha
Standards status: Informative | Maturity Level: 0 | Computable Name: MedicationDispenseEuHdrObligation
Copyright/Legal: Copyright HL7 Europe. Licensed under creative commons public domain (CC0 1.0).

This profile defines obligations for the MedicationDispense resource for the purpose of this guide, adapted from the MPD work.

Usages:

- This Profile is not used by any profiles in this Implementation Guide

You can also check for usages in the FHIR IG Statistics

### 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..* | MedicationDispenseEuHdr | Dispensing a medication to a named patient Constraints: mdd-1
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
status | ?!O Σ | 1..1 | code | Current state of the dispensation Binding: MedicationDispense Status Codes (required): A coded concept specifying the state of the dispense event.
Obligations | Actor
SHALL:handle | HDRConsumer
SHOULD:able-to-populate | HDRCreator
medication[x] | O Σ | 1..1 |  | What medication was supplied Binding: SNOMEDCTMedicationCodes (example): A coded concept identifying which substance or product can be dispensed.
Obligations | Actor
SHALL:handle | HDRConsumer
SHOULD:able-to-populate | HDRCreator
medicationCodeableConcept |  |  | CodeableConcept |
medicationReference |  |  | Reference(Medication (HDR)) |
subject | O Σ | 0..1 | Reference(Patient (EU core)) | Who the dispense is for
Obligations | Actor
SHALL:handle | HDRConsumer
SHALL:able-to-populate | HDRCreator
authorizingPrescription | O | 0..* | Reference(MedicationRequest (HDR)) | Medication order that authorizes the dispense
Obligations | Actor
SHALL:handle | HDRConsumer
SHOULD:able-to-populate | HDRCreator
quantity | O | 1..1 | SimpleQuantity(4.0.1) | Amount dispensed
Obligations | Actor
SHALL:handle | HDRConsumer
SHALL:able-to-populate | HDRCreator
whenHandedOver | O | 1..1 | dateTime | When product was given out
Obligations | Actor
SHALL:handle | HDRConsumer
SHOULD:able-to-populate | HDRCreator
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
MedicationDispense.status | Base | required | Medication dispense status codes | 📍4.0.1 | FHIR Std.
MedicationDispense.medication[x] | Base | example | SNOMED CT Medication Codes | 📍4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
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 MedicationDispenseEuHdr

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
MedicationDispense |  | 0..* | MedicationDispenseEuHdr | Dispensing a medication to a named patient
status | O | 1..1 | code | Current state of the dispensation
Obligations | Actor
SHALL:handle | HDRConsumer
SHOULD:able-to-populate | HDRCreator
medication[x] | O | 1..1 | CodeableConcept, Reference(Medication (HDR)) | What medication was supplied
Obligations | Actor
SHALL:handle | HDRConsumer
SHOULD:able-to-populate | HDRCreator
subject | O | 0..1 | Reference(Patient (EU core)) | Who the dispense is for
Obligations | Actor
SHALL:handle | HDRConsumer
SHALL:able-to-populate | HDRCreator
performer |  |  |  |
actor | O | 1..1 | Reference(Practitioner | PractitionerRole | Organization | Patient | Device | RelatedPerson) | Individual who was performing
Obligations | Actor
SHALL:handle | HDRConsumer
SHALL:able-to-populate | HDRCreator
authorizingPrescription | O | 0..* | Reference(MedicationRequest (HDR)) | Medication order that authorizes the dispense
Obligations | Actor
SHALL:handle | HDRConsumer
SHOULD:able-to-populate | HDRCreator
quantity | O | 1..1 | SimpleQuantity(4.0.1) | Amount dispensed
Obligations | Actor
SHALL:handle | HDRConsumer
SHALL:able-to-populate | HDRCreator
whenHandedOver | O | 1..1 | dateTime | When product was given out
Obligations | Actor
SHALL:handle | HDRConsumer
SHOULD:able-to-populate | HDRCreator
Documentation for this format

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
MedicationDispense | C | 0..* | MedicationDispenseEuHdr | 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 This profile does not constrain the narrative in regard to content, language, or traceability to data elements
contained |  | 0..* | Resource | Contained, inline Resources
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
identifier |  | 0..* | Identifier | Dispensation/dispensed item ID
partOf |  | 0..* | Reference(Procedure) | Event that dispense is part of
status | ?!O Σ | 1..1 | code | Current state of the dispensation Binding: MedicationDispense Status Codes (required): A coded concept specifying the state of the dispense event.
Obligations | Actor
SHALL:handle | HDRConsumer
SHOULD:able-to-populate | HDRCreator
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.
medication[x] | O Σ | 1..1 |  | What medication was supplied Binding: SNOMEDCTMedicationCodes (example): A coded concept identifying which substance or product can be dispensed.
Obligations | Actor
SHALL:handle | HDRConsumer
SHOULD:able-to-populate | HDRCreator
medicationCodeableConcept |  |  | CodeableConcept |
medicationReference |  |  | Reference(Medication (HDR)) |
subject | O Σ | 0..1 | Reference(Patient (EU core)) | Who the dispense is for
Obligations | Actor
SHALL:handle | HDRConsumer
SHALL:able-to-populate | HDRCreator
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 | O | 1..1 | Reference(Practitioner | PractitionerRole | Organization | Patient | Device | RelatedPerson) | Individual who was performing
Obligations | Actor
SHALL:handle | HDRConsumer
SHALL:able-to-populate | HDRCreator
location |  | 0..1 | Reference(Location) | Where the dispense occurred
authorizingPrescription | O | 0..* | Reference(MedicationRequest (HDR)) | Medication order that authorizes the dispense
Obligations | Actor
SHALL:handle | HDRConsumer
SHOULD:able-to-populate | HDRCreator
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 | O | 1..1 | SimpleQuantity(4.0.1) | Amount dispensed
Obligations | Actor
SHALL:handle | HDRConsumer
SHALL:able-to-populate | HDRCreator
daysSupply |  | 0..1 | SimpleQuantity(4.0.1) | Amount of medication expressed as a timing amount
whenPrepared | Σ | 0..1 | dateTime | When product was packaged and reviewed
whenHandedOver | O | 1..1 | dateTime | When product was given out
Obligations | Actor
SHALL:handle | HDRConsumer
SHOULD:able-to-populate | HDRCreator
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 | Status | Usage | ValueSet | Version | Source
MedicationDispense.language | Base | preferred | Common Languages | 📍4.0.1 | FHIR Std.
MedicationDispense.status | Base | required | Medication dispense status codes | 📍4.0.1 | FHIR Std.
MedicationDispense.statusReason[x] | Base | example | Medication dispense status reason codes | 📍4.0.1 | FHIR Std.
MedicationDispense.category | Base | preferred | Medication dispense category codes | 📍4.0.1 | FHIR Std.
MedicationDispense.medication[x] | Base | example | SNOMED CT Medication Codes | 📍4.0.1 | FHIR Std.
MedicationDispense.performer.​function | Base | example | Medication dispense performer function codes | 📍4.0.1 | FHIR Std.
MedicationDispense.type | Base | example | ActPharmacySupplyType | 📦3.0.0 | THO v7.1
MedicationDispense.substitution.​type | Base | example | ActSubstanceAdminSubstitutionCode | 📦3.0.0 | THO v7.1
MedicationDispense.substitution.​reason | Base | example | SubstanceAdminSubstitutionReason | 📦3.0.0 | THO v7.1

#### Constraints

Id | Grade | Path(s) | Description | Expression
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 MedicationDispenseEuHdr

Summary

Maturity: 0

Key Elements View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
MedicationDispense | C | 0..* | MedicationDispenseEuHdr | Dispensing a medication to a named patient Constraints: mdd-1
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
status | ?!O Σ | 1..1 | code | Current state of the dispensation Binding: MedicationDispense Status Codes (required): A coded concept specifying the state of the dispense event.
Obligations | Actor
SHALL:handle | HDRConsumer
SHOULD:able-to-populate | HDRCreator
medication[x] | O Σ | 1..1 |  | What medication was supplied Binding: SNOMEDCTMedicationCodes (example): A coded concept identifying which substance or product can be dispensed.
Obligations | Actor
SHALL:handle | HDRConsumer
SHOULD:able-to-populate | HDRCreator
medicationCodeableConcept |  |  | CodeableConcept |
medicationReference |  |  | Reference(Medication (HDR)) |
subject | O Σ | 0..1 | Reference(Patient (EU core)) | Who the dispense is for
Obligations | Actor
SHALL:handle | HDRConsumer
SHALL:able-to-populate | HDRCreator
authorizingPrescription | O | 0..* | Reference(MedicationRequest (HDR)) | Medication order that authorizes the dispense
Obligations | Actor
SHALL:handle | HDRConsumer
SHOULD:able-to-populate | HDRCreator
quantity | O | 1..1 | SimpleQuantity(4.0.1) | Amount dispensed
Obligations | Actor
SHALL:handle | HDRConsumer
SHALL:able-to-populate | HDRCreator
whenHandedOver | O | 1..1 | dateTime | When product was given out
Obligations | Actor
SHALL:handle | HDRConsumer
SHOULD:able-to-populate | HDRCreator
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
MedicationDispense.status | Base | required | Medication dispense status codes | 📍4.0.1 | FHIR Std.
MedicationDispense.medication[x] | Base | example | SNOMED CT Medication Codes | 📍4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
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 MedicationDispenseEuHdr

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
MedicationDispense |  | 0..* | MedicationDispenseEuHdr | Dispensing a medication to a named patient
status | O | 1..1 | code | Current state of the dispensation
Obligations | Actor
SHALL:handle | HDRConsumer
SHOULD:able-to-populate | HDRCreator
medication[x] | O | 1..1 | CodeableConcept, Reference(Medication (HDR)) | What medication was supplied
Obligations | Actor
SHALL:handle | HDRConsumer
SHOULD:able-to-populate | HDRCreator
subject | O | 0..1 | Reference(Patient (EU core)) | Who the dispense is for
Obligations | Actor
SHALL:handle | HDRConsumer
SHALL:able-to-populate | HDRCreator
performer |  |  |  |
actor | O | 1..1 | Reference(Practitioner | PractitionerRole | Organization | Patient | Device | RelatedPerson) | Individual who was performing
Obligations | Actor
SHALL:handle | HDRConsumer
SHALL:able-to-populate | HDRCreator
authorizingPrescription | O | 0..* | Reference(MedicationRequest (HDR)) | Medication order that authorizes the dispense
Obligations | Actor
SHALL:handle | HDRConsumer
SHOULD:able-to-populate | HDRCreator
quantity | O | 1..1 | SimpleQuantity(4.0.1) | Amount dispensed
Obligations | Actor
SHALL:handle | HDRConsumer
SHALL:able-to-populate | HDRCreator
whenHandedOver | O | 1..1 | dateTime | When product was given out
Obligations | Actor
SHALL:handle | HDRConsumer
SHOULD:able-to-populate | HDRCreator
Documentation for this format

Snapshot View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
MedicationDispense | C | 0..* | MedicationDispenseEuHdr | 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 This profile does not constrain the narrative in regard to content, language, or traceability to data elements
contained |  | 0..* | Resource | Contained, inline Resources
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
identifier |  | 0..* | Identifier | Dispensation/dispensed item ID
partOf |  | 0..* | Reference(Procedure) | Event that dispense is part of
status | ?!O Σ | 1..1 | code | Current state of the dispensation Binding: MedicationDispense Status Codes (required): A coded concept specifying the state of the dispense event.
Obligations | Actor
SHALL:handle | HDRConsumer
SHOULD:able-to-populate | HDRCreator
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.
medication[x] | O Σ | 1..1 |  | What medication was supplied Binding: SNOMEDCTMedicationCodes (example): A coded concept identifying which substance or product can be dispensed.
Obligations | Actor
SHALL:handle | HDRConsumer
SHOULD:able-to-populate | HDRCreator
medicationCodeableConcept |  |  | CodeableConcept |
medicationReference |  |  | Reference(Medication (HDR)) |
subject | O Σ | 0..1 | Reference(Patient (EU core)) | Who the dispense is for
Obligations | Actor
SHALL:handle | HDRConsumer
SHALL:able-to-populate | HDRCreator
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 | O | 1..1 | Reference(Practitioner | PractitionerRole | Organization | Patient | Device | RelatedPerson) | Individual who was performing
Obligations | Actor
SHALL:handle | HDRConsumer
SHALL:able-to-populate | HDRCreator
location |  | 0..1 | Reference(Location) | Where the dispense occurred
authorizingPrescription | O | 0..* | Reference(MedicationRequest (HDR)) | Medication order that authorizes the dispense
Obligations | Actor
SHALL:handle | HDRConsumer
SHOULD:able-to-populate | HDRCreator
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 | O | 1..1 | SimpleQuantity(4.0.1) | Amount dispensed
Obligations | Actor
SHALL:handle | HDRConsumer
SHALL:able-to-populate | HDRCreator
daysSupply |  | 0..1 | SimpleQuantity(4.0.1) | Amount of medication expressed as a timing amount
whenPrepared | Σ | 0..1 | dateTime | When product was packaged and reviewed
whenHandedOver | O | 1..1 | dateTime | When product was given out
Obligations | Actor
SHALL:handle | HDRConsumer
SHOULD:able-to-populate | HDRCreator
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 | Status | Usage | ValueSet | Version | Source
MedicationDispense.language | Base | preferred | Common Languages | 📍4.0.1 | FHIR Std.
MedicationDispense.status | Base | required | Medication dispense status codes | 📍4.0.1 | FHIR Std.
MedicationDispense.statusReason[x] | Base | example | Medication dispense status reason codes | 📍4.0.1 | FHIR Std.
MedicationDispense.category | Base | preferred | Medication dispense category codes | 📍4.0.1 | FHIR Std.
MedicationDispense.medication[x] | Base | example | SNOMED CT Medication Codes | 📍4.0.1 | FHIR Std.
MedicationDispense.performer.​function | Base | example | Medication dispense performer function codes | 📍4.0.1 | FHIR Std.
MedicationDispense.type | Base | example | ActPharmacySupplyType | 📦3.0.0 | THO v7.1
MedicationDispense.substitution.​type | Base | example | ActSubstanceAdminSubstitutionCode | 📦3.0.0 | THO v7.1
MedicationDispense.substitution.​reason | Base | example | SubstanceAdminSubstitutionReason | 📦3.0.0 | THO v7.1

#### Constraints

Id | Grade | Path(s) | Description | Expression
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 MedicationDispenseEuHdr

Summary

Maturity: 0

Other representations of profile: CSV, Excel, Schematron