QI-Core Implementation Guide: STU 3.2 (v3.2.0 for FHIR 3.0.1)

This page is part of the Quality Improvement Core Framework (v3.2.0: STU 3) based on FHIR R3. The current version which supercedes this version is 4.1.1. For a full list of available versions, see the Directory of published versions

D.4.1.4 StructureDefinition: qicore-medicationrequest - Mappings

Mappings for the StructureDefinition-qicore-medicationrequest Profile.

Mappings for Quality Data Model (http://www.healthit.gov/quality-data-model)

QICore-MedicationRequest
MedicationRequest"Medication, Order", "immunization, Order"
   idid (“Medication, Order”|”Immunization, Order”)
   intentMedicationOrder constrains to “order” from the intent value set (“Medication, Order”|”Immunization, Order”)
   categorysetting (“Medication, Order”)
   medication[x]code (“Medication, Order”|”Immunization, Order”)
   authoredOnauthorDatetime (“Medication, Order”|”Immunization, Order”)
   requestersource (“Medication, Order”|”Immunization, Order”)
   recorderrecorder ("Medication, Order")
   reasonCodereason (“Medication, Order”|”Immunization, Order”)
   dosageInstruction
      timingfrequency ("Medication, Order")
      routeroute (“Medication, Order”|”Immunization, Order”)
      methodmethod ("Medication, Order")
      dose[x]dosage (“Medication, Order”|”Immunization, Order”)
   dispenseRequest
      validityPeriodactiveDatetime (“Immunization, Order”)
      quantitysupply (“Medication, Order”|”Immunization, Order”)
      expectedSupplyDurationrelevantPeriod (“Medication, Order”|”Immunization, Order”)

Mappings for Argonaut-DQ-DSTU2 (http://unknown.org/Argonaut-DQ-DSTU2)

QICore-MedicationRequest
MedicationRequestMedicationOrder
   statusMedicationOrder.status
   medication[x]MedicationOrder.medication[x]
   subjectMedicationOrder.patient
   authoredOnMedicationOrder.dateWritten
   requesterNA (new element in STU3)
      agentMedicationOrder.prescriber

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

QICore-MedicationRequest
MedicationRequest..Request
   identifier…identifer
   definition…definition
   basedOn…basedOn
   groupIdentifier…groupIdentifier
   status…status
   intent…intent
   priority…priority
   medication[x]…code
   subject…subject
   context…context
   authoredOn…authoredOn
   requester…requester
      agent….agent
      onBehalfOf….onBehalfOf
   reasonCode…reasonCode
   reasonReference…reasonReference
   note…note
   dosageInstruction…occurrence[x]
   priorPrescription…replaces
   eventHistory…relevantHistory

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

QICore-MedicationRequest
MedicationRequestMessage/Body/NewRx
   identifierMessage/Header/PrescriberOrderNumber
   statusno mapping
   categoryMessage/Body/NewRx/MedicationPrescribed/Directions or Message/Body/NewRx/MedicationPrescribed/StructuredSIG
   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
   subjectMessage/Body/NewRx/Patient (need detail to link to specific patient … Patient.Identification in SCRIPT)
   contextno mapping
   authoredOnMessage/Body/NewRx/MedicationPrescribed/WrittenDate
   requester
      agentMessage/Body/NewRx/Prescriber (need detail to link to specific prescriber … Prescriber.Identification in SCRIPT)
   reasonCodeMessage/Body/NewRx/MedicationPrescribed/Diagnosis/Primary/Value
   reasonReferenceno mapping
   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
      allowedspecific values within Message/Body/NewRx/MedicationPrescribed/Substitutions
      reasonnot mapped
   priorPrescriptionnot mapped

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

QICore-MedicationRequest
MedicationRequestEntity. Role, or Act
   textAct.text?
   containedN/A
   extensionN/A
   modifierExtensionN/A
   identifier.id
   definition.outboundRelationship[typeCode=DEFN].target[classCode=unspecified]
   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
   status.statusCode
   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
   medication[x]consumable.administrableMedication
   subject.participation[typeCode=AUT].role
   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)]
   authoredOnauthor.time
   requester.participation[typeCode=AUT].role
      idn/a
      extensionn/a
      modifierExtensionN/A
      agent.player
      onBehalfOf.scoper
   recorder.participation[typeCode=TRANS].role[classCode=ASSIGNED].code (HealthcareProviderType)
   reasonCodereason.observation.reasonCode
   reasonReferencereason.observation[code=ASSERTION].value
   note.inboundRelationship[typeCode=SUBJ]/source[classCode=OBS,moodCode=EVN,code="annotation"].value
   dosageInstructionsee dosageInstruction mapping
      idn/a
      extensionn/a
      extension (doseType)
         idn/a
         extensionn/a
         urlN/A
         valueCodeableConceptN/A
      extension (infuseOver)
         idn/a
         extensionn/a
         urlN/A
         valueDurationN/A
      extension (rateIncrement)
         idn/a
         extensionn/a
         urlN/A
         valueRatioN/A
      extension (rateIncrementInterval)
         idn/a
         extensionn/a
         urlN/A
         valueDurationN/A
      extension (rateGoal)
         idn/a
         extensionn/a
         urlN/A
         valueRatioN/A
      extension (minDosePerPeriod)
         idn/a
         extensionn/a
         urlN/A
         valueRatioN/A
      extension (maxDeliveryRate)
         idn/a
         extensionn/a
         urlN/A
         valueRatioN/A
      extension (maxDeliveryVolume)
         idn/a
         extensionn/a
         urlN/A
         valueQuantityN/A
      sequence.text
      text.text
      additionalInstruction.text
      patientInstruction.text
      timing.effectiveTime
      asNeeded[x].outboundRelationship[typeCode=PRCN].target[classCode=OBS, moodCode=EVN, code="as needed"].value=boolean or codable concept
      site.approachSiteCode
      route.routeCode
      method.doseQuantity
      dose[x].doseQuantity
      maxDosePerPeriod.maxDoseQuantity
      maxDosePerAdministrationnot supported
      maxDosePerLifetimenot supported
      rate[x].rateQuantity
   dispenseRequestcomponent.supplyEvent
      idn/a
      extensionn/a
      modifierExtensionN/A
      validityPeriodeffectiveTime
      numberOfRepeatsAllowedrepeatNumber
      quantityquantity
      expectedSupplyDurationexpectedUseTime
      performer.outboundRelationship[typeCode=COMP].target[classCode=SPLY, moodCode=RQO] .participation[typeCode=PRF].role[scoper.determinerCode=INSTANCE]
   substitutionsubjectOf.substitutionPersmission
      idn/a
      extensionn/a
      modifierExtensionN/A
      allowedcode
      reasonreasonCode
   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 W5 Mapping (http://hl7.org/fhir/w5)

QICore-MedicationRequest
MedicationRequestclinical.medication
   identifierid
   statusstatus
   intentclass
   categoryclass
   prioritygrade
   medication[x]what
   subjectwho.focus
   contextcontext
   supportingInformationcontext
   authoredOnwhen.recorded
   requesterwho.author
   recorderwho
   reasonCodewhy
   reasonReferencewhy
   dispenseRequest
      performerwho

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

QICore-MedicationRequest
MedicationRequest
   identifierORC-2-Placer Order Number / ORC-3-Filler Order Number
   medication[x]RXE-2-Give Code / RXO-1-Requested Give Code / RXC-2-Component Code
   subjectPID-3-Patient ID List
   contextPV1-19-Visit Number
   authoredOnRXE-32-Original Order Date/Time / ORC-9-Date/Time of Transaction
   requester
      agentRXE-13-Ordering Provider's DEA Number / RXO-14-Ordering Provider's DEA Number / RXE-14-Pharmacist/Treatment Supplier's Verifier ID / RXO-15-Pharmacist/Treatment Supplier's Verifier ID / ORC-12-Ordering Provider / PRT-5-Participation Person: PRT-4-Participation='OP' (all but last deprecated)
   reasonCodeORC-16-Order Control Code Reason /RXE-27-Give Indication/RXO-20-Indication / RXD-21-Indication / RXG-22-Indication / RXA-19-Indication
   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
      allowedRXO-9-Allow Substitutions / RXE-9-Substitution Status
      reasonRXE-9 Substition status