Medication Prescription and Dispense (MPD)
1.0.0-preview - 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 1.0.0-preview 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
This section corresponds to transaction [PHARM-7] of the IHE Technical Framework. Transaction [PHARM-7] is used by the Medication Order Consumer and the Medication Order Responder actors. The Retrieve Medication Orders [PHARM-7] transaction is used to obtain MedicationRequests for further handling - for example gettting a prescription for dispense.
The Retrieve Medication Orders [PHARM-7] transaction allows the Medication Order Consumer to query the Medication Order Responder for medication orders.
Table X:Y.Z.2-1: Actor Roles
Actor | Role |
---|---|
Medication Order Consumer | Queries existing medication orders from the Order Responder |
Medication Order Responder | Provides access to stored medication orders |
FHIR-R5 HL7 FHIR Release 5.0
Figure X:Y.Z.4-1: Retrieve Medication Orders Interactions
The Medication Order Consumer submits a query using the HTTP GET
or POST
method to the /MedicationRequest endpoint or to the /RequestGroup, with the search parameters indicated below.
Alternatively, the Medication Order Consumer can submit a query using the HTTP GET
or POST
method to the / endpoint with the _type
search parameter populated - either _type=MedicationRequest
, _type=RequestGroup
, or both - _type=MedicationRequest,RequestGroup
.
This method is invoked when needing to view or process prescriptions, for example when selecting a medication for dispense.
Search parameters that SHALL be supported:
group-or-identifier
Single search on both request.identifier or groupIdentifier - this is important to check for prescriptions where the prescription ID is known but it is not known if the prescription has one or multiple linesactivity-resource
- Search on the resources that are linked to a RequestGroup - important to allow for example _revIncludeidentifier
— Search by the identifier of the MedicationRequest.patient
— Search by the patient subject of the MedicationRequest.status
— Filter MedicationRequests by their status (e.g., active, completed).intent
— Filter by the intent of the MedicationRequest (e.g., order, plan).MedicationRequest
resource.
The semantics of the request and data elements are captured in the Submit Medication Order Data Model and the technical constraints in the Submit Medication Order profile.The Retrieve Medication Orders is a search query.
Upon receiving the MedicationRequest
, the Medication Order Responder is expected to respond with the orders if the conditions are met:
The Medication Order Responder SHALL respond with a Search Bundle
, containing the resources that correspond to the search and can be accessed (e.g. are allowed by any access control mechanisms).
The response is always expected.
The Response SHALL be a search Bundle
containing the MedicationRequests (optionally RequestGroups if that is part of the search).
The content of the MedicationRequests in the Bundle SHALL conform to the profiles defined in the MedicationOrder profile.
In case of error, the response SHALL contain an OperationOutcome
.
Upon receiving the response, the Medication Order Consumer can will store, process or initiate handling of the orders as part of the business process.