HL7 Europe Medication Prescription and Dispense
0.1.0 - ci-build 150

HL7 Europe Medication Prescription and Dispense, published by HL7 Europe. 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/hl7-eu/mpd/ and changes regularly. See the Directory of published versions

Resource Profile: MedicationRequestEuMpd - Mappings

Draft as of 2024-12-08

Mappings for the MedicationRequest-eu-mpd resource profile.

Mappings for Workflow Pattern (http://hl7.org/fhir/workflow)

MedicationRequestEuMpd
MedicationRequestRequest
   identifierRequest.identifier
   basedOnRequest.basedOn
   priorPrescriptionRequest.replaces
   groupIdentifierRequest.groupIdentifier
   statusRequest.status
   statusReasonRequest.statusReason
   intentRequest.intent
   priorityRequest.priority
   medicationRequest.code
   subjectRequest.subject
   encounterRequest.encounter
   supportingInformationRequest.supportingInfo
   authoredOnRequest.authoredOn
   requesterRequest.requester
   performerTypeRequest.performerType
   performerRequest.performer
   reasonRequest.reason
   insuranceRequest.insurance
   noteRequest.note
   eventHistoryRequest.relevantHistory

Mappings for Mapping to NCPDP SCRIPT 10.6 (http://ncpdp.org/SCRIPT10_6)

MedicationRequestEuMpd
MedicationRequestMessage/Body/NewRx
   identifierMessage/Header/PrescriberOrderNumber
   priorPrescriptionnot mapped
   statusno mapping
   categoryMessage/Body/NewRx/MedicationPrescribed/Directions or Message/Body/NewRx/MedicationPrescribed/StructuredSIG
   medicationMessage/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
   subjectMessage/Body/NewRx/Patient (need detail to link to specific patient … Patient.Identification in SCRIPT)
   encounterno mapping
   authoredOnMessage/Body/NewRx/MedicationPrescribed/WrittenDate
   reasonMessage/Body/NewRx/MedicationPrescribed/Diagnosis/Primary/Value
   noteMessage/Body/NewRx/MedicationPrescribed/Note
   dispenseRequestMessage/Body/NewRx/MedicationPrescribed/ExpirationDate
      validityPeriodMessage/Body/NewRx/MedicationPrescribed/Refills
      numberOfRepeatsAllowedMessage/Body/NewRx/MedicationPrescribed/Quantity
      quantityMessage/Body/NewRx/MedicationPrescribed/DaysSupply
      expectedSupplyDurationMessage/Body/NewRx/MedicationPrescribed/Substitutions
   substitutionspecific values within Message/Body/NewRx/MedicationPrescribed/Substitutions
      allowed[x]specific values within Message/Body/NewRx/MedicationPrescribed/Substitutions
      allowed[x] (allowedCodeableConcept)specific values within Message/Body/NewRx/MedicationPrescribed/Substitutions
      reasonnot mapped

Mappings for FiveWs Pattern Mapping (http://hl7.org/fhir/fivews)

MedicationRequestEuMpd
MedicationRequestclinical.medication
   identifierFiveWs.identifier
   statusFiveWs.status
   intentFiveWs.class
   categoryFiveWs.class
   priorityFiveWs.grade
   medicationFiveWs.what[x]
   subjectFiveWs.subject[x]
   encounterFiveWs.context
   supportingInformationFiveWs.context
   authoredOnFiveWs.recorded
   requesterFiveWs.author
   performerFiveWs.actor
   recorderFiveWs.who
   reasonFiveWs.why[x]
   dispenseRequest
      dispenserFiveWs.who

Mappings for RIM Mapping (http://hl7.org/v3)

MedicationRequestEuMpd
MedicationRequestEntity, Role, or Act,CombinedMedicationRequest
   textAct.text?
   containedN/A
   extensionN/A
   modifierExtensionN/A
   identifier.id
   basedOn.outboundRelationship[typeCode=FLFS].target[classCode=SBADM or PROC or PCPR or OBS, moodCode=RQO orPLAN or PRP]
   priorPrescription.outboundRelationship[typeCode=?RPLC or ?SUCC]/target[classCode=SBADM,moodCode=RQO]
   groupIdentifier.outboundRelationship(typeCode=COMP].target[classCode=SBADM, moodCode=INT].id
   status.statusCode
   statusReason.inboundRelationship[typeCode=SUBJ].source[classCode=CACT, moodCode=EVN].reasonCOde
   statusChangedsubjectOf Observation[code = statusChange].value = date
   intent.moodCode (nuances beyond PRP/PLAN/RQO would need to be elsewhere)
   category.inboundRelationship[typeCode=COMP].source[classCode=OBS, moodCode=EVN, code="type of medication usage"].value
   priority.priorityCode
   doNotPerformSubstanceAdministration.actionNegationInd
   medicationconsumable.administrableMedication
   subject.participation[typeCode=AUT].role
   informationSource.participation[typeCode=INF].role[classCode=PAT, or codes for Practitioner or Related Person or Practitioner Role or Organization
   encounter.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)]
   authoredOnauthor.time
   requester.participation[typeCode=AUT].role
   reported.participation[typeCode=INF].role
   performerType.participation[typeCode=PRF].role[scoper.determinerCode=KIND].code
   performer.participation[typeCode=PRF].role[scoper.determinerCode=INSTANCE]
   device.participation[typeCode=PRF].role[scoper.determinerCode=INSTANCE]
   recorder.participation[typeCode=TRANS].role[classCode=ASSIGNED].code (HealthcareProviderType)
   reasonreason.observation.reasonCode | reason.observation[code=ASSERTION].value
   courseOfTherapyTypeAct.code where classCode = LIST and moodCode = EVN
   insurance.outboundRelationship[typeCode=COVBY].target
   note.inboundRelationship[typeCode=SUBJ]/source[classCode=OBS,moodCode=EVN,code="annotation"].value
   renderedDosageInstructionSubstanceAdministration.text
   effectiveDosePeriodsubstanceAdministration.effectiveTime
   dosageInstructionsee dosageInstruction mapping
      idn/a
      extensionn/a
      modifierExtensionN/A
      sequence.text
      text.text
      additionalInstruction.text
      patientInstruction.text
      timing.effectiveTime
         idn/a
         extensionn/a
         modifierExtensionN/A
         eventQLIST<TS>
         repeatImplies PIVL or EIVL
            idn/a
            extensionn/a
            bounds[x]IVL(TS) used in a QSI
            countPIVL.count
            countMaxPIVL.count
            durationPIVL.phase
            durationMaxPIVL.phase
            durationUnitPIVL.phase.unit
            frequencyPIVL.phase
            frequencyMaxPIVL.phase
            periodPIVL.phase
            periodMaxPIVL.phase
            periodUnitPIVL.phase.unit
            dayOfWeekn/a
            timeOfDayn/a
            whenEIVL.event
            offsetEIVL.offset
         codeQSC.code
      asNeeded.outboundRelationship[typeCode=PRCN].target[classCode=OBS, moodCode=EVN, code="as needed"].value=boolean or codable concept
      asNeededFor.outboundRelationship[typeCode=PRCN].target[classCode=OBS, moodCode=EVN, code="as needed"].value=boolean or codable concept
      site.approachSiteCode
      route.routeCode
      methodSubstanceAdministration.methodCode
      doseAndRateSubstanceAdministration.doseQuantity; SubstanceAdministration.RateQuantity
         idn/a
         extensionn/a
         dose[x].doseQuantity
         dose[x] (doseQuantity)n/a,PQ, IVL<PQ>, MO, CO, depending on the values
         rate[x].rateQuantity
      maxDosePerPeriod.maxDoseQuantity
      maxDosePerAdministrationnot supported
      maxDosePerLifetimenot supported
   dispenseRequestcomponent.supplyEvent
      idn/a
      extensionn/a
      modifierExtensionN/A
      initialFillSubstanceAdministration -> ActRelationship[sequenceNumber = '1'] -> Supply
         idn/a
         extensionn/a
         modifierExtensionN/A
         quantitySupply.quantity[moodCode=RQO]
         durationSupply.effectivetime[moodCode=RQO]
      dispenseIntervalSupply.effectivetime[moodCode=RQO]
      validityPeriodeffectiveTime
      numberOfRepeatsAllowedrepeatNumber
      quantityquantity
      expectedSupplyDurationexpectedUseTime
      dispenser.outboundRelationship[typeCode=COMP].target[classCode=SPLY, moodCode=RQO] .participation[typeCode=PRF].role[scoper.determinerCode=INSTANCE]
      dispenserInstructionSupply.text
      doseAdministrationAidSupply.administerableMedication.product.asContent.container.code
   substitutionsubjectOf.substitutionPersmission
      idn/a
      extensionn/a
      modifierExtensionN/A
      allowed[x]code
      allowed[x] (allowedCodeableConcept)code
      reasonreasonCode
   eventHistory.inboundRelationship(typeCode=SUBJ].source[classCode=CACT, moodCode=EVN]

Mappings for HL7 V2 Mapping (http://hl7.org/v2)

MedicationRequestEuMpd
MedicationRequest
   identifierORC-2-Placer Order Number / ORC-3-Filler Order Number
   medicationRXE-2-Give Code / RXO-1 Requested Give Code / RXC-2 Component Code
   subjectPID-3 Patient ID List
   encounterPV1-19 Visit Number
   authoredOnRXE-32 Original Order Date/Time / ORC-9-Date Time of Transaction
   reasonORC-16 Order Control Code Reason /RXE-27 Give Indication/RXO-20-Indication / RXD-21 Indication / RXG-22 Indication / RXA-19 Indication
   dosageInstruction
      sequenceTQ1-1
      textRXO-6; RXE-21
      additionalInstructionRXO-7
      patientInstructionRXO-7
      asNeededTQ1-9
      asNeededForTQ1-9
      siteRXR-2
      routeRXR-1
      methodRXR-4
      doseAndRateTQ1-2
         typeRXO-21; RXE-23
         dose[x]RXO-2, RXE-3
         dose[x] (doseQuantity)SN (see also Range) or CQ
         rate[x]RXE22, RXE23, RXE-24
      maxDosePerPeriodRXO-23, RXE-19
   dispenseRequest
      numberOfRepeatsAllowedRXE-12 Number of Refills
      quantityRXD-4 Actual Dispense Amount / RXD-5.1 Actual Dispense Units.code / RXD-5.3 Actual Dispense Units.name of coding system
   substitution
      allowed[x]RXO-9 Allow Substitutions / RXE-9 Substitution Status
      allowed[x] (allowedCodeableConcept)RXO-9 Allow Substitutions / RXE-9 Substitution Status
      reasonRXE-9 Substition status