電子病歷交換單張實作指引(EMR-IG)
0.1.0 - ci-build

This page is part of the 電子病歷交換單張實作指引(EMR-IG) (v0.1.0: Releases) based on FHIR (HL7® FHIR® Standard) R4. This is the current published version in its permanent home (it will always be available at this URL). For a full list of available versions, see the Directory of published versions

Resource Profile: PMRMedicationRequest - Mappings

Draft as of 2024-08-23

Mappings for the PMRMedicationRequest resource profile.

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

PMRMedicationRequest
MedicationRequestRequest
   identifierRequest.identifier
   statusRequest.status
   intentRequest.intent
   priorityRequest.priority
   medication[x]Request.code
   medication[x] (medicationReference)Request.code
   subjectRequest.subject
   encounterRequest.context
   supportingInformationRequest.supportingInfo
   authoredOnRequest.authoredOn
   requesterRequest.requester
   performerRequest.performer
   reasonCodeRequest.reasonCode
   reasonReferenceRequest.reasonReference
   instantiatesCanonicalRequest.instantiates
   basedOnRequest.basedOn
   groupIdentifierRequest.groupIdentifier
   insuranceRequest.insurance
   noteRequest.note
   note (Note)Request.note
   note (Self-payNote)Request.note
   dosageInstructionRequest.occurrence[x]
   priorPrescriptionRequest.replaces
   eventHistoryRequest.relevantHistory

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

PMRMedicationRequest
MedicationRequestMessage/Body/NewRx
   identifierMessage/Header/PrescriberOrderNumber
   statusno mapping
   medication[x]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
   medication[x] (medicationReference)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
   subjectMessage/Body/NewRx/Patient (need detail to link to specific patient … Patient.Identification in SCRIPT)
   encounterno mapping
   authoredOnMessage/Body/NewRx/MedicationPrescribed/WrittenDate
   reasonCodeMessage/Body/NewRx/MedicationPrescribed/Diagnosis/Primary/Value
   reasonReferenceno mapping
   noteMessage/Body/NewRx/MedicationPrescribed/Note
   note (Note)Message/Body/NewRx/MedicationPrescribed/Note
   note (Self-payNote)Message/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
   priorPrescriptionnot mapped

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

PMRMedicationRequest
MedicationRequestEntity. Role, or Act, CombinedMedicationRequest
   textAct.text?
   containedN/A
   identifier.id
      idn/a
      extensionn/a
      useRole.code or implied by context
      typeRole.code or implied by context
      systemII.root or Role.id.root
      valueII.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)
      periodRole.effectiveTime or implied by context
      assignerII.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper
   status.statusCode
   statusReasonn/a, CD
   intent.moodCode (nuances beyond PRP/PLAN/RQO would need to be elsewhere)
   categoryn/a, CD
      idn/a
      codingn/a, CV
         idn/a
         system./codeSystem
         version./codeSystemVersion
         code./code
         displayCV.displayName
         userSelectedCD.codingRationale
      text./originalText[mediaType/code="text/plain"]/data
   priority.priorityCode
   doNotPerformSubstanceAdministration.actionNegationInd
   reported[x].participation[typeCode=INF].role
   medication[x]consumable.administrableMedication
   medication[x] (medicationReference)consumable.administrableMedication
   medication[x] (medicationCodeableConcept)n/a, CD
      idn/a
      codingn/a, CV
      coding (fda-medication-tw)n/a, CV
      coding (nhi-medication-tw)n/a, CV
      coding (rxnorm-medication-us-core)n/a, CV
      coding (atc-medication-code)n/a, CV
      coding (snomedct-medication-codes)n/a, CV
      text./originalText[mediaType/code="text/plain"]/data
   subject.participation[typeCode=AUT].role
   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
   performer.participation[typeCode=PRF].role[scoper.determinerCode=INSTANCE]
   performerTypen/a, CD
   recorder.participation[typeCode=TRANS].role[classCode=ASSIGNED].code (HealthcareProviderType)
   reasonCodereason.observation.reasonCode
   reasonReferencereason.observation[code=ASSERTION].value
   instantiatesCanonical.outboundRelationship[typeCode=DEFN].target
   instantiatesUri.outboundRelationship[typeCode=DEFN].target
   basedOn.outboundRelationship[typeCode=FLFS].target[classCode=SBADM or PROC or PCPR or OBS, moodCode=RQO orPLAN or PRP]
   groupIdentifier.outboundRelationship(typeCode=COMP].target[classCode=SBADM, moodCode=INT].id
   courseOfTherapyTypen/a, CD
   insurance.outboundRelationship[typeCode=COVBY].target
   note.inboundRelationship[typeCode=SUBJ]/source[classCode=OBS,moodCode=EVN,code="annotation"].value
   note (Note).inboundRelationship[typeCode=SUBJ]/source[classCode=OBS,moodCode=EVN,code="annotation"].value
      idn/a
      extensionn/a
      author[x]Act.participant[typeCode=AUT].role
      timeAct.effectiveTime
      textAct.text
   note (Self-payNote).inboundRelationship[typeCode=SUBJ]/source[classCode=OBS,moodCode=EVN,code="annotation"].value
      idn/a
      extensionn/a
      author[x]Act.participant[typeCode=AUT].role
      timeAct.effectiveTime
      textAct.text
   dosageInstructionsee dosageInstruction mapping
      idn/a
      sequence.text
      text.text
      additionalInstructionn/a, CD
      patientInstruction.text
      timing.effectiveTime
         idn/a
         eventQLIST<TS>
         repeatImplies PIVL or EIVL
            idn/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
         coden/a, CD
            idn/a
            codingn/a, CV
            text./originalText[mediaType/code="text/plain"]/data
      asNeeded[x].outboundRelationship[typeCode=PRCN].target[classCode=OBS, moodCode=EVN, code="as needed"].value=boolean or codable concept
      siten/a, CD
      routen/a, CD
         idn/a
         codingn/a, CV
         text./originalText[mediaType/code="text/plain"]/data
      methodn/a, CD
      doseAndRate
         idn/a
         typen/a, CD
         dose[x].doseQuantity
            idn/a
            extensionn/a
            valuePQ.value, CO.value, MO.value, IVL.high or IVL.low depending on the value
            comparatorIVL properties
            unitPQ.unit
            systemCO.codeSystem, PQ.translation.codeSystem
            codePQ.code, MO.currency, PQ.translation.code
         rate[x].rateQuantity
      maxDosePerPeriod.maxDoseQuantity
      maxDosePerAdministrationnot supported
         idn/a
         extensionn/a
         valuePQ.value, CO.value, MO.value, IVL.high or IVL.low depending on the value
         unitPQ.unit
         systemCO.codeSystem, PQ.translation.codeSystem
         codePQ.code, MO.currency, PQ.translation.code
      maxDosePerLifetimenot supported
   dispenseRequestcomponent.supplyEvent
      idn/a
      initialFillSubstanceAdministration -> ActRelationship[sequenceNumber = '1'] -> Supply
         idn/a
         quantitySupply.quantity[moodCode=RQO]
         durationSupply.effectivetime[moodCode=RQO]
      dispenseIntervalSupply.effectivetime[moodCode=RQO]
      validityPeriodeffectiveTime
      numberOfRepeatsAllowedrepeatNumber
      quantityquantity
         idn/a
         extensionn/a
         valuePQ.value, CO.value, MO.value, IVL.high or IVL.low depending on the value
         unitPQ.unit
         systemCO.codeSystem, PQ.translation.codeSystem
         codePQ.code, MO.currency, PQ.translation.code
      expectedSupplyDurationexpectedUseTime
         idn/a
         extensionn/a
         valuePQ.value, CO.value, MO.value, IVL.high or IVL.low depending on the value
         comparatorIVL properties
         unitPQ.unit
         systemCO.codeSystem, PQ.translation.codeSystem
         codePQ.code, MO.currency, PQ.translation.code
      performer.outboundRelationship[typeCode=COMP].target[classCode=SPLY, moodCode=RQO] .participation[typeCode=PRF].role[scoper.determinerCode=INSTANCE]
   substitutionsubjectOf.substitutionPersmission
      idn/a
      allowed[x]code
      reasonn/a, CD
   priorPrescription.outboundRelationship[typeCode=?RPLC or ?SUCC]/target[classCode=SBADM,moodCode=RQO]
   detectedIssue.inboundRelationship[typeCode=SUBJ]/source[classCode=ALRT,moodCode=EVN].value
   eventHistory.inboundRelationship(typeCode=SUBJ].source[classCode=CACT, moodCode=EVN]

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

PMRMedicationRequest
MedicationRequest
   identifierFiveWs.identifier
   statusFiveWs.status
   intentFiveWs.class
   priorityFiveWs.grade
   medication[x]FiveWs.what[x]
   medication[x] (medicationReference)FiveWs.what[x]
   subjectFiveWs.subject[x], FiveWs.subject
   encounterFiveWs.context
   supportingInformationFiveWs.context
   authoredOnFiveWs.recorded
   requesterFiveWs.author
   performerFiveWs.actor
   recorderFiveWs.who
   reasonCodeFiveWs.why[x]
   reasonReferenceFiveWs.why[x]
   dispenseRequest
      performerFiveWs.who

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

PMRMedicationRequest
MedicationRequest
   identifierORC-2-Placer Order Number / ORC-3-Filler Order Number
      useN/A
      typeCX.5
      systemCX.4 / EI-2-4
      valueCX.1 / EI.1
      periodCX.7 + CX.8
      assignerCX.4 / (CX.4,CX.9,CX.10)
   statusReasonCE/CNE/CWE
   categoryCE/CNE/CWE
      codingCE/CNE/CWE subset one of the sets of component 1-3 or 4-6
         systemC*E.3
         versionC*E.7
         codeC*E.1
         displayC*E.2 - but note this is not well followed
         userSelectedSometimes implied by being first
      textC*E.9. But note many systems use C*E.2 for this
   medication[x]RXE-2-Give Code / RXO-1-Requested Give Code / RXC-2-Component Code
   medication[x] (medicationReference)RXE-2-Give Code / RXO-1-Requested Give Code / RXC-2-Component Code
   medication[x] (medicationCodeableConcept)CE/CNE/CWE
      codingCE/CNE/CWE subset one of the sets of component 1-3 or 4-6
      coding (fda-medication-tw)CE/CNE/CWE subset one of the sets of component 1-3 or 4-6
      coding (nhi-medication-tw)CE/CNE/CWE subset one of the sets of component 1-3 or 4-6
      coding (rxnorm-medication-us-core)CE/CNE/CWE subset one of the sets of component 1-3 or 4-6
      coding (atc-medication-code)CE/CNE/CWE subset one of the sets of component 1-3 or 4-6
      coding (snomedct-medication-codes)CE/CNE/CWE subset one of the sets of component 1-3 or 4-6
      textC*E.9. But note many systems use C*E.2 for this
   subjectPID-3-Patient ID List
   encounterPV1-19-Visit Number
   authoredOnRXE-32-Original Order Date/Time / ORC-9-Date/Time of Transaction
   performerTypeCE/CNE/CWE
   reasonCodeORC-16-Order Control Code Reason /RXE-27-Give Indication/RXO-20-Indication / RXD-21-Indication / RXG-22-Indication / RXA-19-Indication
   courseOfTherapyTypeCE/CNE/CWE
   note
   note (Note)
      author[x]N/A
      timeN/A
      textN/A
   note (Self-payNote)
      author[x]N/A
      timeN/A
      textN/A
   dosageInstruction
      sequenceTQ1-1
      textRXO-6; RXE-21
      additionalInstructionCE/CNE/CWE
      patientInstructionRXO-7
      timing
         codeCE/CNE/CWE
            codingCE/CNE/CWE subset one of the sets of component 1-3 or 4-6
            textC*E.9. But note many systems use C*E.2 for this
      asNeeded[x]TQ1-9
      siteCE/CNE/CWE
      routeCE/CNE/CWE
         codingCE/CNE/CWE subset one of the sets of component 1-3 or 4-6
         textC*E.9. But note many systems use C*E.2 for this
      methodCE/CNE/CWE
      doseAndRateTQ1-2
         typeCE/CNE/CWE
         dose[x]RXO-2, RXE-3
            valueSN.2 / CQ - N/A
            comparatorSN.1 / CQ.1
            unit(see OBX.6 etc.) / CQ.2
            system(see OBX.6 etc.) / CQ.2
            code(see OBX.6 etc.) / CQ.2
         rate[x]RXE22, RXE23, RXE-24
      maxDosePerPeriodRXO-23, RXE-19
      maxDosePerAdministration
         valueSN.2 / CQ - N/A
         unit(see OBX.6 etc.) / CQ.2
         system(see OBX.6 etc.) / CQ.2
         code(see OBX.6 etc.) / CQ.2
   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
         valueSN.2 / CQ - N/A
         unit(see OBX.6 etc.) / CQ.2
         system(see OBX.6 etc.) / CQ.2
         code(see OBX.6 etc.) / CQ.2
      expectedSupplyDuration
         valueSN.2 / CQ - N/A
         comparatorSN.1 / CQ.1
         unit(see OBX.6 etc.) / CQ.2
         system(see OBX.6 etc.) / CQ.2
         code(see OBX.6 etc.) / CQ.2
   substitution
      allowed[x]RXO-9-Allow Substitutions / RXE-9-Substitution Status
      reasonCE/CNE/CWE