Medication Prescription and Dispense (MPD)
0.1.0 - ci-build
Medication Prescription and Dispense (MPD), published by Integrating the Healthcare Enterprise (IHE). This guide is not an authorized publication; it is the continuous build for version 0.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/IHE/pharm-mpd/tree/master and changes regularly. See the Directory of published versions
In some jurisdictions, a prescription is modeled as having only one line - one prescription means one medication. In other countries or models, a prescription is a group of medication lines. This is normally legally established, and it is important to support both these cases.
The IHE MPD profile provides a common model that supports both these cases. This allows different types of implementations to use IHE, and allows for interoperability between these different systems, understanding the data needs and assumptions.
The model describes the medication prescription and dispensing processes. It supports the two common scenarios:
This diagram shows the two models side by side, and their correspondence:
Medication Product: Denotes a specific medication product.
Prescription: Represents an overall prescription. In single-line prescriptions, this entity is not used.
Prescription Line: Detailed line item within a prescription.
Dispense: The dispensation of a medication, always tied to a Prescription Line.
The two approaches are made compatible by using the same objects and relationships, and by putting the group as an identifier.
Systems processing prescriptions that uses a different approach can safely process data:
A Dispensation is always related to an individual Prescription Line.
Coordinating the execution of requests is done using the Task resource, as defined in the Clinical Order Workflows Implementation Guide.
In some cases, dispenses for multiple prescription lines must be done in one single place or occasion. This drives the need for Task.focus to support multiple requests (one request for each prescription line).
While prior to R6, Task.focus
has cardinality 0..1, implementers can use a built-in extension mechanism that "imports" an element as an extension. In this case, the task.focus element is imported as an additional extension on Task, thus allowing task.focus to effectively point to several requests.
Profile: GroupCoordinationTask
Parent: Task
* extension contains http://hl7.org/fhir/4.0/StructureDefinition/extension-Task.focus named focus 0..* MS