This page is part of the US-Medication FHIR IG (v1.2.0: STU 2) based on FHIR R3. This is the current published version. For a full list of available versions, see the Directory of published versions
The MedicationDispense resource can be used to record a medication that has been dispensed for a named person/patient. For more information about the context and usage, refer to the resource page in the FHIR specification. This profile sets minimum expectations for recording, searching and fetching a patient’s MedicationAdministration resource. It identifies which core elements, extensions, vocabularies and value sets SHALL be present in the resource when using this profile.
Example Usage Scenarios:
The following are example usage scenarios:
The following data-elements are mandatory (i.e data MUST be present). These are presented below in a simple human-readable explanation. Profile specific guidance and examples are provided as well. The Formal Profile Definition below provides the formal summary, definitions, and terminology requirements.
Each MedicationDispense must have:
In addition, a system Must Support.
Profile specific implementation guidance:
The official URL for this profile is:
http://hl7.org/fhir/us/meds/StructureDefinition/medicationdispense
This profile builds on MedicationDispense.
This profile was published on Tue Mar 07 00:00:00 AEDT 2017 as a draft by Health Level Seven International Pharmacy Work Group.
Description of Profiles, Differentials, Snapshots, and how the XML and JSON presentations work.
MedicationDispense.status
which has a required binding to:
MedicationDispense.medicationCodeableConcept
or MedicationDispense.medicationReference
MedicationDispense.medicationCodeableConcept
has an extensible binding to Medication Clinical Drug (RxNorm) value set.MedicationDispense.subject
MedicationDispense.whenHandedOver
MedicationDispense.performer.actor
MedicationDispense.dosageInstruction
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
MedicationDispense | 0..* | |||
status | S | 1..1 | code | Binding: MedicationDispenseStatus (required) |
medication[x] | S | 1..1 | CodeableConcept, Reference(US Core Medication Profile) | Binding: Medication Clinical Drug (RxNorm) (extensible) |
subject | S | 1..1 | Reference(US Core Patient Profile) | |
performer | S | 0..* | BackboneElement | |
actor | S | 1..1 | Reference(http://hl7.org/fhir/us/core/StructureDefinition/us-core-pract), Reference(US Core Organization Core Profile) | |
whenHandedOver | S | 1..1 | dateTime | |
dosageInstruction | S | 0..1 | Dosage | |
Documentation for this format |
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
MedicationDispense | I | 0..* | Dispensing a medication to a named patient | |
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: Common Languages (extensible) | |
text | I | 0..1 | Narrative | Text summary of the resource, for human interpretation |
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 | External identifier | |
partOf | 0..* | Reference(Procedure) | Event that dispense is part of | |
status | ?!SΣ | 1..1 | code | preparation | in-progress | on-hold | completed | entered-in-error | stopped Binding: MedicationDispenseStatus (required) |
category | 0..1 | CodeableConcept | Type of medication dispense Binding: MedicationDispenseCategory (preferred) | |
medication[x] | SΣ | 1..1 | CodeableConcept, Reference(US Core Medication Profile) | What medication was supplied Binding: Medication Clinical Drug (RxNorm) (extensible) |
subject | SΣ | 1..1 | Reference(US Core Patient Profile) | Who the dispense is for |
context | 0..1 | Reference(Encounter), Reference(EpisodeOfCare) | Encounter / Episode associated with event | |
supportingInformation | 0..* | Reference(Resource) | Information that supports the dispensing of the medication | |
performer | SI | 0..* | BackboneElement | Who performed event |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional Content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored |
actor | S | 1..1 | Reference(http://hl7.org/fhir/us/core/StructureDefinition/us-core-pract), Reference(US Core Organization Core Profile) | Individual who was performing |
onBehalfOf | 0..1 | Reference(Organization) | Organization organization was acting for | |
authorizingPrescription | 0..* | Reference(MedicationRequest) | Medication order that authorizes the dispense | |
type | 0..1 | CodeableConcept | Trial fill, partial fill, emergency fill, etc. Binding: ActPharmacySupplyType (example) | |
quantity | 0..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 | S | 1..1 | dateTime | When product was given out |
destination | 0..1 | Reference(Location) | Where the medication was sent | |
receiver | 0..* | Reference(Patient), Reference(Practitioner) | Who collected the medication | |
note | 0..* | Annotation | Information about the dispense | |
dosageInstruction | S | 0..1 | Dosage | How the medication is to be used by the patient or administered by the caregiver |
substitution | I | 0..1 | BackboneElement | Whether a substitution was performed on the dispense |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional Content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored |
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) | |
reason | 0..* | CodeableConcept | Why was substitution made Binding: SubstanceAdminSubstitutionReason (example) | |
responsibleParty | 0..* | Reference(Practitioner) | Who is responsible for the substitution | |
detectedIssue | 0..* | Reference(DetectedIssue) | Clinical issue with action | |
notDone | 0..1 | boolean | Whether the dispense was or was not performed | |
notDoneReason[x] | 0..1 | CodeableConcept, Reference(DetectedIssue) | Why a dispense was not performed | |
eventHistory | 0..* | Reference(Provenance) | A list of releveant lifecycle events | |
Documentation for this format |
MedicationDispense.status
which has a required binding to:
MedicationDispense.medicationCodeableConcept
or MedicationDispense.medicationReference
MedicationDispense.medicationCodeableConcept
has an extensible binding to Medication Clinical Drug (RxNorm) value set.MedicationDispense.subject
MedicationDispense.whenHandedOver
MedicationDispense.performer.actor
MedicationDispense.dosageInstruction
Differential View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
MedicationDispense | 0..* | |||
status | S | 1..1 | code | Binding: MedicationDispenseStatus (required) |
medication[x] | S | 1..1 | CodeableConcept, Reference(US Core Medication Profile) | Binding: Medication Clinical Drug (RxNorm) (extensible) |
subject | S | 1..1 | Reference(US Core Patient Profile) | |
performer | S | 0..* | BackboneElement | |
actor | S | 1..1 | Reference(http://hl7.org/fhir/us/core/StructureDefinition/us-core-pract), Reference(US Core Organization Core Profile) | |
whenHandedOver | S | 1..1 | dateTime | |
dosageInstruction | S | 0..1 | Dosage | |
Documentation for this format |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
MedicationDispense | I | 0..* | Dispensing a medication to a named patient | |
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: Common Languages (extensible) | |
text | I | 0..1 | Narrative | Text summary of the resource, for human interpretation |
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 | External identifier | |
partOf | 0..* | Reference(Procedure) | Event that dispense is part of | |
status | ?!SΣ | 1..1 | code | preparation | in-progress | on-hold | completed | entered-in-error | stopped Binding: MedicationDispenseStatus (required) |
category | 0..1 | CodeableConcept | Type of medication dispense Binding: MedicationDispenseCategory (preferred) | |
medication[x] | SΣ | 1..1 | CodeableConcept, Reference(US Core Medication Profile) | What medication was supplied Binding: Medication Clinical Drug (RxNorm) (extensible) |
subject | SΣ | 1..1 | Reference(US Core Patient Profile) | Who the dispense is for |
context | 0..1 | Reference(Encounter), Reference(EpisodeOfCare) | Encounter / Episode associated with event | |
supportingInformation | 0..* | Reference(Resource) | Information that supports the dispensing of the medication | |
performer | SI | 0..* | BackboneElement | Who performed event |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional Content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored |
actor | S | 1..1 | Reference(http://hl7.org/fhir/us/core/StructureDefinition/us-core-pract), Reference(US Core Organization Core Profile) | Individual who was performing |
onBehalfOf | 0..1 | Reference(Organization) | Organization organization was acting for | |
authorizingPrescription | 0..* | Reference(MedicationRequest) | Medication order that authorizes the dispense | |
type | 0..1 | CodeableConcept | Trial fill, partial fill, emergency fill, etc. Binding: ActPharmacySupplyType (example) | |
quantity | 0..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 | S | 1..1 | dateTime | When product was given out |
destination | 0..1 | Reference(Location) | Where the medication was sent | |
receiver | 0..* | Reference(Patient), Reference(Practitioner) | Who collected the medication | |
note | 0..* | Annotation | Information about the dispense | |
dosageInstruction | S | 0..1 | Dosage | How the medication is to be used by the patient or administered by the caregiver |
substitution | I | 0..1 | BackboneElement | Whether a substitution was performed on the dispense |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional Content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored |
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) | |
reason | 0..* | CodeableConcept | Why was substitution made Binding: SubstanceAdminSubstitutionReason (example) | |
responsibleParty | 0..* | Reference(Practitioner) | Who is responsible for the substitution | |
detectedIssue | 0..* | Reference(DetectedIssue) | Clinical issue with action | |
notDone | 0..1 | boolean | Whether the dispense was or was not performed | |
notDoneReason[x] | 0..1 | CodeableConcept, Reference(DetectedIssue) | Why a dispense was not performed | |
eventHistory | 0..* | Reference(Provenance) | A list of releveant lifecycle events | |
Documentation for this format |
Downloads: StructureDefinition: (XML, JSON, CSV), Schema: XML Schematron
Below is an overview of the required search and read operations for this profile. See the Conformance requirements for the US Core Server for a complete list of supported RESTful operations and search parameters for this IG.
Summary of Argonaut Search Criteria for StructureDefinition-medicationdispense
GET /MedicationDispense?patient=[id]{&_include=MedicationDispense:medication}
Example:
Support: Mandatory for server and client to support search by patient. Mandatory for client to support the _include parameter. Optional for server to support the _include parameter.
Implementation Notes: This query searches for all MedicationDispense resources for a patient and returns a Bundle of all MedicationDispense and resources for the specified patient. The server application represents the medication using either an inline code or a contained or external reference to the Medication resource. (how to search by reference), and (how to search by _include).