Implementation Guide
ePA Medication Service
Version 1.3.5 - release

## Resource Profile: EPAMedicationDispense - Mappings

Active as of 2026-03-20

Mappings for the epa-medication-dispense resource profile.

#### Mappings to Structures in this Implementation Guide

No Mappings Found

#### Mappings to other Structures

No Mappings Found

#### Other Mappings

Name | Workflow Pattern | RIM Mapping | FiveWs Pattern Mapping | V3 Pharmacy Dispense RMIM | HL7 v2 Mapping
--- | --- | --- | --- | --- | ---
MedicationDispense | Event | Supply[moodCode=EVN] |  |  |
id |  |  |  |  |
meta |  |  |  |  |
id |  | n/a |  |  |
extension |  | n/a |  |  |
versionId |  |  |  |  |
lastUpdated |  |  |  |  |
source |  |  |  |  |
profile |  |  |  |  |
security |  |  |  |  |
tag |  |  |  |  |
implicitRules |  |  |  |  |
language |  |  |  |  |
text |  | Act.text? |  |  |
contained |  | N/A |  |  |
Slices for extension |  |  |  |  |
extension:rxPrescriptionProcessIdentifier |  |  |  |  |
id |  | n/a |  |  |
extension |  |  |  |  |
url |  | N/A |  |  |
value[x] |  | N/A |  |  |
id |  | n/a |  |  |
extension |  | n/a |  |  |
use |  | Role.code or implied by context |  |  | N/A
type |  | Role.code or implied by context |  |  | CX.5
id |  | n/a |  |  |
extension |  | n/a |  |  |
coding |  | union(. ./translation) |  |  | C*E.1-8 C*E.10-22
id |  | n/a |  |  |
extension |  | n/a |  |  |
system |  | ./codeSystem |  |  | C*E.3
version |  | ./codeSystemVersion |  |  | C*E.7
code |  | ./code |  |  | C*E.1
display |  | CV.displayName |  |  | C*E.2 - but note this is not well followed
userSelected |  | CD.codingRationale |  |  | Sometimes implied by being first
text |  | ./originalText[mediaType/code="text/plain"]/data |  |  | C*E.9. But note many systems use C*E.2 for this
system |  | II.root or Role.id.root |  |  | CX.4 / EI-2-4
value |  | II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root) |  |  | CX.1 / EI.1
period |  | Role.effectiveTime or implied by context |  |  | CX.7 + CX.8
assigner |  | II.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper |  |  | CX.4 / (CX.4 CX.9 CX.10)
extension:renderedDosageInstruction |  |  |  |  |
id |  | n/a |  |  |
extension |  |  |  |  |
url |  | N/A |  |  |
value[x] |  | N/A |  |  |
extension:generatedDosageInstructionsMeta |  |  |  |  |
id |  | n/a |  |  |
Slices for extension |  |  |  |  |
Slices for extension |  |  |  |  |
extension:language |  |  |  |  |
id |  | n/a |  |  |
extension |  |  |  |  |
url |  | N/A |  |  |
Slices for value[x] |  | N/A |  |  |
Slices for value[x] |  |  |  |  |
value[x]:valueCode |  | N/A |  |  |
extension:algorithmVersion |  |  |  |  |
id |  | n/a |  |  |
extension |  |  |  |  |
url |  | N/A |  |  |
Slices for value[x] |  | N/A |  |  |
Slices for value[x] |  |  |  |  |
value[x]:valueString |  | N/A |  |  |
url |  | N/A |  |  |
value[x] |  | N/A |  |  |
modifierExtension |  | N/A |  |  |
Slices for identifier | Event.identifier | .id | FiveWs.identifier | CombinedMedicationDispense.id |
identifier:RxOriginatorProcessIdentifier | Event.identifier | .id | FiveWs.identifier | CombinedMedicationDispense.id |
id |  | n/a |  |  |
extension |  | n/a |  |  |
use |  | Role.code or implied by context |  |  | N/A
type |  | Role.code or implied by context |  |  | CX.5
id |  | n/a |  |  |
extension |  | n/a |  |  |
coding |  | union(. ./translation) |  |  | C*E.1-8 C*E.10-22
id |  | n/a |  |  |
extension |  | n/a |  |  |
system |  | ./codeSystem |  |  | C*E.3
version |  | ./codeSystemVersion |  |  | C*E.7
code |  | ./code |  |  | C*E.1
display |  | CV.displayName |  |  | C*E.2 - but note this is not well followed
userSelected |  | CD.codingRationale |  |  | Sometimes implied by being first
text |  | ./originalText[mediaType/code="text/plain"]/data |  |  | C*E.9. But note many systems use C*E.2 for this
system |  | II.root or Role.id.root |  |  | CX.4 / EI-2-4
value |  | II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root) |  |  | CX.1 / EI.1
period |  | Role.effectiveTime or implied by context |  |  | CX.7 + CX.8
assigner |  | II.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper |  |  | CX.4 / (CX.4 CX.9 CX.10)
partOf | Event.partOf | .outboundRelationship[typeCode=COMP]/target[classCode=PROC moodCode=EVN] |  |  |
status | Event.status | .statusCode | FiveWs.status | CombinedMedicationDispense.SupplyEvent.statusCode |
statusReason[x] | Event.statusReason | .outboundRelationship[typeCode=RSON]/target[classCode=OBS moodCode=EVN code="not done reason"].value |  |  |
category |  | .inboundRelationship[typeCode=COMP].source[classCode=OBS moodCode=EVN code="type of medication dispense"].value |  |  |
id |  | n/a |  |  |
extension |  | n/a |  |  |
coding |  | union(. ./translation) |  |  | C*E.1-8 C*E.10-22
id |  | n/a |  |  |
extension |  | n/a |  |  |
system |  | ./codeSystem |  |  | C*E.3
version |  | ./codeSystemVersion |  |  | C*E.7
code |  | ./code |  |  | C*E.1
display |  | CV.displayName |  |  | C*E.2 - but note this is not well followed
userSelected |  | CD.codingRationale |  |  | Sometimes implied by being first
text |  | ./originalText[mediaType/code="text/plain"]/data |  |  | C*E.9. But note many systems use C*E.2 for this
medication[x] | Event.code | .participation[typeCode=PRD].role | FiveWs.what[x] | CombinedMedicationRequest.component1.AdministrationRequest.consumable | RXD-2-Dispense/Give Code
id |  | n/a |  |  |
extension |  | n/a |  |  |
reference |  | N/A |  |  |
type |  | N/A |  |  |
identifier |  | .identifier |  |  |
id |  | n/a |  |  |
extension |  | n/a |  |  |
use |  | Role.code or implied by context |  |  | N/A
type |  | Role.code or implied by context |  |  | CX.5
id |  | n/a |  |  |
extension |  | n/a |  |  |
coding |  | union(. ./translation) |  |  | C*E.1-8 C*E.10-22
id |  | n/a |  |  |
extension |  | n/a |  |  |
system |  | ./codeSystem |  |  | C*E.3
version |  | ./codeSystemVersion |  |  | C*E.7
code |  | ./code |  |  | C*E.1
display |  | CV.displayName |  |  | C*E.2 - but note this is not well followed
userSelected |  | CD.codingRationale |  |  | Sometimes implied by being first
text |  | ./originalText[mediaType/code="text/plain"]/data |  |  | C*E.9. But note many systems use C*E.2 for this
system |  | II.root or Role.id.root |  |  | CX.4 / EI-2-4
value |  | II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root) |  |  | CX.1 / EI.1
period |  | Role.effectiveTime or implied by context |  |  | CX.7 + CX.8
assigner |  | II.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper |  |  | CX.4 / (CX.4 CX.9 CX.10)
display |  | N/A |  |  |
subject | Event.subject | .participation[typeCode=SBJ].role[classCode=PAT] | FiveWs.subject |  | PID-3-Patient ID List
id |  | n/a |  |  |
extension |  | n/a |  |  |
reference |  | N/A |  |  |
type |  | N/A |  |  |
identifier |  | .identifier |  |  |
display |  | N/A |  |  |
context | Event.context | .inboundRelationship[typeCode=COMP].source[classCode=ENC moodCode=EVN code="type of encounter or episode"] |  |  |
supportingInformation |  | .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)] | FiveWs.context |  |
performer | Event.performer | .participation[typeCode=PRF] |  |  |
id |  | n/a |  |  |
extension |  | n/a |  |  |
modifierExtension |  | N/A |  |  |
function |  | participation[typeCode=PRF].functionCode |  |  |
actor | Event.performer.actor | .role |  |  |
id |  | n/a |  |  |
extension |  | n/a |  |  |
reference |  | N/A |  |  |
type |  | N/A |  |  |
identifier |  | .identifier |  |  |
id |  | n/a |  |  |
extension |  | n/a |  |  |
use |  | Role.code or implied by context |  |  | N/A
type |  | Role.code or implied by context |  |  | CX.5
id |  | n/a |  |  |
extension |  | n/a |  |  |
coding |  | union(. ./translation) |  |  | C*E.1-8 C*E.10-22
id |  | n/a |  |  |
extension |  | n/a |  |  |
system |  | ./codeSystem |  |  | C*E.3
version |  | ./codeSystemVersion |  |  | C*E.7
code |  | ./code |  |  | C*E.1
display |  | CV.displayName |  |  | C*E.2 - but note this is not well followed
userSelected |  | CD.codingRationale |  |  | Sometimes implied by being first
text |  | ./originalText[mediaType/code="text/plain"]/data |  |  | C*E.9. But note many systems use C*E.2 for this
system |  | II.root or Role.id.root |  |  | CX.4 / EI-2-4
value |  | II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root) |  |  | CX.1 / EI.1
period |  | Role.effectiveTime or implied by context |  |  | CX.7 + CX.8
assigner |  | II.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper |  |  | CX.4 / (CX.4 CX.9 CX.10)
display |  | N/A |  |  |
location |  | .participation[typeCode=LOC].role |  |  |
authorizingPrescription | Event.basedOn | .outboundRelationship[typeCode=FLFS].target[moodCode=RQO] |  | CombinedMedicationDispense.inFulfillmentOf | ORC-2 Placer Order Number
id |  | n/a |  |  |
extension |  | n/a |  |  |
reference |  | N/A |  |  |
type |  | N/A |  |  |
identifier |  | .identifier |  |  |
id |  | n/a |  |  |
extension |  | n/a |  |  |
use |  | Role.code or implied by context |  |  | N/A
type |  | Role.code or implied by context |  |  | CX.5
id |  | n/a |  |  |
extension |  | n/a |  |  |
coding |  | union(. ./translation) |  |  | C*E.1-8 C*E.10-22
id |  | n/a |  |  |
extension |  | n/a |  |  |
system |  | ./codeSystem |  |  | C*E.3
version |  | ./codeSystemVersion |  |  | C*E.7
code |  | ./code |  |  | C*E.1
display |  | CV.displayName |  |  | C*E.2 - but note this is not well followed
userSelected |  | CD.codingRationale |  |  | Sometimes implied by being first
text |  | ./originalText[mediaType/code="text/plain"]/data |  |  | C*E.9. But note many systems use C*E.2 for this
system |  | II.root or Role.id.root |  |  | CX.4 / EI-2-4
value |  | II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root) |  |  | CX.1 / EI.1
period |  | Role.effectiveTime or implied by context |  |  | CX.7 + CX.8
assigner |  | II.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper |  |  | CX.4 / (CX.4 CX.9 CX.10)
display |  | N/A |  |  |
type |  | .code |  | CombinedMedicationDispense.SupplyEvent.code | RXD-33-Dispense Type
quantity |  | .quantity |  | CombinedMedicationDispense.SupplyEvent.quantity | RXD-4-Actual Dispense Amount / RXD-5.1-Actual Dispense Units.code / RXD-5.3-Actual Dispense Units.name of coding system
daysSupply |  | effectiveUseTime |  |  | TQ1.6 Timing/Quantity Segment Service Duration. Prior to v2.5 ORC.7.3 Common Order Segment / Quantity/Timing / Duration component. This is a formatted string first character for the time unit (e.g. D=days) followed by the value. For example “D14” represents “14 days supply” From v2.5 on TQ1.6 Timing/Quantity Segment / Service Duration. This is a CQ data type (<Quantity (NM)> ^ <Units (CWE)>) thus for days supply assuming the unit of measure is “days” the numeric value is TQ1.6.1 (…|14^ For backwards compatibility ORC.7 was permitted through v2.6. Both forms (field and segment) may be present in v2.5 v2.5.1 and v2.6
whenPrepared |  | type=IVL_TS].low |  | CombinedMedicationDispense.SupplyEvent.effectiveTime | RXD-3-Date/Time Dispensed
whenHandedOver | Event.occurrence[x] | type=IVL_TS].high |  | CombinedMedicationDispense.SupplyEvent.effectiveTime | RXD-3-Date/Time Dispensed
destination |  | .participation[typeCode=DST].role |  | CombinedMedicationDispense.SupplyEvent.destination | RXD-13 Dispense-to Location; RXD-30 Dispense to Pharmacy; RXD-31 Dispense to Pharmacy Address
receiver |  | .participation[typeCode=RCV].role |  | CombinedMedicationDispense.SupplyEvent.receiver |
note | Event.note | .inboundRelationship[typeCode=SUBJ]/source[classCode=ACT moodCode=EVN] |  |  | RXD-9 Dispense Notes
dosageInstruction |  | .outboundRelationship[typeCode=COMP].target[classCode=SBADM moodCode=INT] |  |  |
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 |  |  |
asNeeded[x] |  | .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 |  | .doseQuantity |  |  | RXR-4
doseAndRate |  |  |  |  | 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
id |  | n/a |  |  |
extension |  | n/a |  |  |
value |  | PQ.value CO.value MO.value IVL.high or IVL.low depending on the value |  |  | SN.2 / CQ - N/A
comparator |  | IVL properties |  |  | SN.1 / CQ.1
unit |  | PQ.unit |  |  | (see OBX.6 etc.) / CQ.2
system |  | CO.codeSystem PQ.translation.codeSystem |  |  | (see OBX.6 etc.) / CQ.2
code |  | PQ.code MO.currency PQ.translation.code |  |  | (see OBX.6 etc.) / CQ.2
rate[x] |  | .rateQuantity |  |  | RXE22 RXE23 RXE-24
maxDosePerPeriod |  | .maxDoseQuantity |  |  | RXO-23 RXE-19
maxDosePerAdministration |  | not supported |  |  |
maxDosePerLifetime |  | not supported |  |  |
substitution |  | .outboundRelationship[typeCode=COMP].target[classCode=SUBST moodCode=EVN] |  | CombinedMedicationDispense.substitutionMade |
id |  | n/a |  |  |
extension |  | n/a |  |  |
modifierExtension |  | N/A |  |  |
wasSubstituted |  | .actionNegationInd |  |  |
type |  | .code |  | CombinedMedicationDispense.substitutionMade.code | RXO-9-Allow Substitutions / RXE-9-Substitution Status
reason |  | .reasonCode |  | CombinedMedicationDispense.substitutionMade.reasonCode |
responsibleParty |  | .participation[typeCode=PFM].role[classCode=ASSIGN] |  | CombinedMedicationDispense.substitutionMade.ResponsibleParty |
detectedIssue |  | .inboundRelationship[typeCode=SUBJ]/source[classCode=ALRT moodCode=EVN].value |  |  |
eventHistory |  | .inboundRelationship(typeCode=SUBJ].source[classCode=CACT moodCode=EVN] |  |  |
Documentation for this format