Medication Prescription and Dispense (MPD)
1.0.0-comment-3 - ballot

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-comment-3 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/115/merge and changes regularly. See the Directory of published versions

## Resource Profile: IHEMedicationOrder - Mappings

Active as of 2026-04-23

Mappings for the IHEMedicationOrder resource profile.

#### Mappings to Structures in this Implementation Guide

No Mappings Found

#### Mappings to other Structures

No Mappings Found

#### Other Mappings

Name | Workflow Pattern | Mapping to NCPDP SCRIPT 10.6 | FiveWs Pattern Mapping | RIM Mapping | HL7 V2 Mapping
--- | --- | --- | --- | --- | ---
MedicationRequest | Request | Message/Body/NewRx | clinical.medication | Entity Role or Act CombinedMedicationRequest |
id |  |  |  |  |
meta |  |  |  |  |
implicitRules |  |  |  |  |
language |  |  |  |  |
text |  |  |  | Act.text? |
contained |  |  |  | N/A |
Slices for extension |  |  |  |  |
extension:offLabel |  |  |  |  |
modifierExtension |  |  |  | N/A |
identifier | Request.identifier | Message/Header/PrescriberOrderNumber | FiveWs.identifier | .id | ORC-2-Placer Order Number / ORC-3-Filler Order Number
basedOn | Request.basedOn |  |  | .outboundRelationship[typeCode=FLFS].target[classCode=SBADM or PROC or PCPR or OBS moodCode=RQO orPLAN or PRP] |
priorPrescription | Request.replaces | not mapped |  | .outboundRelationship[typeCode=?RPLC or ?SUCC]/target[classCode=SBADM moodCode=RQO] |
groupIdentifier | Request.groupIdentifier |  |  | .outboundRelationship(typeCode=COMP].target[classCode=SBADM moodCode=INT].id |
status | Request.status | no mapping | FiveWs.status | .statusCode |
statusReason | Request.statusReason |  |  | .inboundRelationship[typeCode=SUBJ].source[classCode=CACT moodCode=EVN].reasonCOde |
statusChanged |  |  |  | subjectOf Observation[code = statusChange].value = date |
intent | Request.intent |  | FiveWs.class | .moodCode (nuances beyond PRP/PLAN/RQO would need to be elsewhere) |
category |  | Message/Body/NewRx/MedicationPrescribed/Directions or Message/Body/NewRx/MedicationPrescribed/StructuredSIG | FiveWs.class | .inboundRelationship[typeCode=COMP].source[classCode=OBS moodCode=EVN code="type of medication usage"].value |
priority | Request.priority |  | FiveWs.grade | .priorityCode |
doNotPerform |  |  |  | SubstanceAdministration.actionNegationInd |
medication | Request.code | Message/Body/NewRx/MedicationPrescribed Medication.code.coding.code = Message/Body/NewRx/MedicationPrescribed/DrugCoded/ProductCode Medication.code.coding.system = Message/Body/NewRx/MedicationPrescribed/DrugCoded/ProductCodeQualifier Medication.code.coding.display = Message/Body/NewRx/MedicationPrescribed/DrugDescription | FiveWs.what[x] | consumable.administrableMedication | RXE-2-Give Code / RXO-1 Requested Give Code / RXC-2 Component Code
subject | Request.subject | Message/Body/NewRx/Patient (need detail to link to specific patient … Patient.Identification in SCRIPT) | FiveWs.subject[x] | .participation[typeCode=AUT].role | PID-3 Patient ID List
informationSource |  |  |  | .participation[typeCode=INF].role[classCode=PAT or codes for Practitioner or Related Person or Practitioner Role or Organization |
encounter | Request.encounter | no mapping | FiveWs.context | .inboundRelationship[typeCode=COMP].source[classCode=ENC moodCode=EVN code="type of encounter or episode"] | PV1-19 Visit Number
supportingInformation | Request.supportingInfo |  | FiveWs.context | .outboundRelationship[typeCode=PERT].target[A_SupportingClinicalStatement CMET minimal with many different choices of classCodes(ORG ENC PROC SPLY SBADM OBS) and each of the act class codes draws from one or more of the following moodCodes (EVN DEF INT PRMS RQO PRP APT ARQ GOL)] |
authoredOn | Request.authoredOn | Message/Body/NewRx/MedicationPrescribed/WrittenDate | FiveWs.recorded | author.time | RXE-32 Original Order Date/Time / ORC-9-Date Time of Transaction
requester | Request.requester |  | FiveWs.author | .participation[typeCode=AUT].role |
reported |  |  |  | .participation[typeCode=INF].role |
performerType | Request.performerType |  |  | .participation[typeCode=PRF].role[scoper.determinerCode=KIND].code |
performer | Request.performer |  | FiveWs.actor | .participation[typeCode=PRF].role[scoper.determinerCode=INSTANCE] |
device |  |  |  | .participation[typeCode=PRF].role[scoper.determinerCode=INSTANCE] |
recorder |  |  | FiveWs.who | .participation[typeCode=TRANS].role[classCode=ASSIGNED].code (HealthcareProviderType) |
reason | Request.reason | Message/Body/NewRx/MedicationPrescribed/Diagnosis/Primary/Value | FiveWs.why[x] | reason.observation.reasonCode | reason.observation[code=ASSERTION].value | ORC-16 Order Control Code Reason /RXE-27 Give Indication/RXO-20-Indication / RXD-21 Indication / RXG-22 Indication / RXA-19 Indication
courseOfTherapyType |  |  |  | Act.code where classCode = LIST and moodCode = EVN |
insurance | Request.insurance |  |  | .outboundRelationship[typeCode=COVBY].target |
note | Request.note | Message/Body/NewRx/MedicationPrescribed/Note |  | .inboundRelationship[typeCode=SUBJ]/source[classCode=OBS moodCode=EVN code="annotation"].value |
renderedDosageInstruction |  |  |  | SubstanceAdministration.text |
effectiveDosePeriod |  |  |  | substanceAdministration.effectiveTime |
dosageInstruction |  |  |  | see dosageInstruction mapping |
id |  |  |  | n/a |
extension |  |  |  | n/a |
modifierExtension |  |  |  | N/A |
sequence |  |  |  | .text | TQ1-1
text |  |  |  | .text | RXO-6; RXE-21
additionalInstruction |  |  |  | .text | RXO-7
patientInstruction |  |  |  | .text | RXO-7
timing |  |  |  | .effectiveTime |
id |  |  |  | n/a |
extension |  |  |  | n/a |
modifierExtension |  |  |  | N/A |
event |  |  |  | QLIST<TS> |
repeat |  |  |  | Implies PIVL or EIVL |
id |  |  |  | n/a |
extension |  |  |  | n/a |
bounds[x] |  |  |  | IVL(TS) used in a QSI |
count |  |  |  | PIVL.count |
countMax |  |  |  | PIVL.count |
duration |  |  |  | PIVL.phase |
durationMax |  |  |  | PIVL.phase |
durationUnit |  |  |  | PIVL.phase.unit |
frequency |  |  |  | PIVL.phase |
frequencyMax |  |  |  | PIVL.phase |
period |  |  |  | PIVL.phase |
periodMax |  |  |  | PIVL.phase |
periodUnit |  |  |  | PIVL.phase.unit |
dayOfWeek |  |  |  | n/a |
timeOfDay |  |  |  | n/a |
when |  |  |  | EIVL.event |
offset |  |  |  | EIVL.offset |
code |  |  |  | QSC.code |
asNeeded |  |  |  | .outboundRelationship[typeCode=PRCN].target[classCode=OBS moodCode=EVN code="as needed"].value=boolean or codable concept | TQ1-9
asNeededFor |  |  |  | .outboundRelationship[typeCode=PRCN].target[classCode=OBS moodCode=EVN code="as needed"].value=boolean or codable concept | TQ1-9
site |  |  |  | .approachSiteCode | RXR-2
route |  |  |  | .routeCode | RXR-1
method |  |  |  | SubstanceAdministration.methodCode | RXR-4
doseAndRate |  |  |  | SubstanceAdministration.doseQuantity; SubstanceAdministration.RateQuantity | TQ1-2
id |  |  |  | n/a |
extension |  |  |  | n/a |
type |  |  |  |  | RXO-21; RXE-23
Slices for dose[x] |  |  |  | .doseQuantity | RXO-2 RXE-3
dose[x]:doseQuantity |  |  |  | .doseQuantity | RXO-2 RXE-3
rate[x] |  |  |  | .rateQuantity | RXE22 RXE23 RXE-24
maxDosePerPeriod |  |  |  | .maxDoseQuantity | RXO-23 RXE-19
maxDosePerAdministration |  |  |  | not supported |
maxDosePerLifetime |  |  |  | not supported |
dispenseRequest |  | Message/Body/NewRx/MedicationPrescribed/ExpirationDate |  | component.supplyEvent |
id |  |  |  | n/a |
Slices for extension |  |  |  |  |
extension:prescribedQuantity |  |  |  |  |
modifierExtension |  |  |  | N/A |
initialFill |  |  |  | SubstanceAdministration -> ActRelationship[sequenceNumber = '1'] -> Supply |
id |  |  |  | n/a |
extension |  |  |  | n/a |
modifierExtension |  |  |  | N/A |
quantity |  |  |  | Supply.quantity[moodCode=RQO] |
duration |  |  |  | Supply.effectivetime[moodCode=RQO] |
dispenseInterval |  |  |  | Supply.effectivetime[moodCode=RQO] |
validityPeriod |  | Message/Body/NewRx/MedicationPrescribed/Refills |  | effectiveTime |
numberOfRepeatsAllowed |  | Message/Body/NewRx/MedicationPrescribed/Quantity |  | repeatNumber | RXE-12 Number of Refills
quantity |  | Message/Body/NewRx/MedicationPrescribed/DaysSupply |  | quantity | RXD-4 Actual Dispense Amount / RXD-5.1 Actual Dispense Units.code / RXD-5.3 Actual Dispense Units.name of coding system
expectedSupplyDuration |  | Message/Body/NewRx/MedicationPrescribed/Substitutions |  | expectedUseTime |
dispenser |  |  | FiveWs.who | .outboundRelationship[typeCode=COMP].target[classCode=SPLY moodCode=RQO] .participation[typeCode=PRF].role[scoper.determinerCode=INSTANCE] |
dispenserInstruction |  |  |  | Supply.text |
doseAdministrationAid |  |  |  | Supply.administerableMedication.product.asContent.container.code |
substitution |  | specific values within Message/Body/NewRx/MedicationPrescribed/Substitutions |  | subjectOf.substitutionPersmission |
id |  |  |  | n/a |
extension |  |  |  | n/a |
modifierExtension |  |  |  | N/A |
allowed[x] |  | specific values within Message/Body/NewRx/MedicationPrescribed/Substitutions |  | code | RXO-9 Allow Substitutions / RXE-9 Substitution Status
reason |  | not mapped |  | reasonCode | RXE-9 Substition status
eventHistory | Request.relevantHistory |  |  | .inboundRelationship(typeCode=SUBJ].source[classCode=CACT moodCode=EVN] |
Documentation for this format