Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

FHIR Mapping

...

This is a suggestion on how to map OpenMRS DrugOrder object into FHIR TBD.

Fields which didn't match into FHIR representation are marked on red. Keyword extension means that FHIR Extension has to be used to synchronize this field.
Fields which partially match into FHIR representation are marked on orange.

...

OpenMRS Order documentation - Order Entry API.


OpenMRS class DrugOrder extends Order class.

OpenMRS class DrugOrder is mapped to FHIR's MedicationRequest.

FHIR Timing class - description

OpenMRS class

OpenMRS field

DB field

FHIR field

Details

DrugOrderfrequency : OrderFrequencydrug_order.frequency

repeat.frequency : integer,

repeat.period : decimal,

repeat.periodUnit : UnitsOfTime

frequencyPerDay = frequency / (period * periodUnit), where period=1, periodUnit=d;

if there's a period, periodUnit is required

DrugOrder

duration : String,

durationUnits : Concept

-

-

repeat.duration : decimal,

repeat.durationUnit : code

if there's a duration, durationUnit is requireddose DoubleSee table FHIR Dosage class
OpenMRS fieldclassDB OpenMRS fieldFHIR fieldDetails
DrugOrderuuid : Stringdrug_order.dosedosageInstruction : Dosageidentifier.value: String
DrugOrderdose : DoubledosageInstruction.doseQuantity.value : Double
DrugOrderdoseUnits : Conceptdrug_order.unitsdosageInstruction : DosageSee table FHIR Dosage classdosageInstruction.doseQuantity.code : StringFHIR field contains the UUID of the concept.
DrugOrderfrequency : OrderFrequencydrug_order.frequencydosageInstruction : DosageSee table FHIR Dosage classdosageInstruction.timing.id : StringFHIR field contains the UUID of the object.
DrugOrderasNeeded : Booleandrug_order.prndosageInstruction : Dosage

PRN = "As Needed",

See table FHIR Dosage class

dosageInstruction.asNeededBoolean : BooleanType


DrugOrderquantity : Doubledrug_orderdispenseRequest.quantitydispenseRequest.quantity value : SimpleQuantitySee table FHIR SimpleQuantity classDouble
DrugOrderquantityUnits : Concept-dispenseRequest.quantity.code : SimpleQuantityStringSee table FHIR SimpleQuantity classFHIR field contains the UUID of the concept.
DrugOrderdrug : Drugdrug_order.drug_inventory_idmedicationCodeableConcept : CodeableConcept-medicationReference : ReferenceMedication
DrugOrderasNeededCondition : String-dosageInstruction : DosageSee table FHIR Dosage classextension - AsNeededCondition FHIR Extension

DrugOrderdosingType: DosingInstructions-extension - DosingType FHIR Extension
DrugOrdernumRefills : Integer-extension - NumRefills FHIR Extension
DrugOrderdosingInstructions : StringorderdosageInstruction.instructionsdosageInstruction text : DosageSee table FHIR Dosage classString
DrugOrderduration : String-dosageInstruction : DosageSee table FHIR Dosage class IntegerdispenseRequest.expectedSupplyDuration.value : Integer

DrugOrderdurationUnits : Concept-dosageInstruction : DosageSee table FHIR Dosage classdispenseRequest.expectedSupplyDuration.code
FHIR field contains the UUID of the concept.
DrugOrderroute : Concept-dosageInstruction.route : Dosage
See table FHIR Dosage class
CodeableConcept

DrugOrderbrandName : String-extension - BrandName FHIR Extension
DrugOrderdispenseAsWritten : Boolean-extension - DispenseAsWritten FHIR Extension
DrugOrderdrugNonCoded : String-extension -

FHIR Dosage class - description

...

dose : Double,

doseUnits : Concept

...

drug_order.dose,

drug_order.units

...

duration : String,

durationUnits : Concept

...

-

-

...

DrugNonCoded FHIR Extension
Order
urgency :
Order.Urgency
priority
Orderpatient : Patientsubject : ReferencePatient
Orderencounter : Encountercontext : ReferenceEncounter
Orderorderer : Providerrecorder : ReferencePractitioner
OrdercareSetting: CareSettingextension - CareSetting FHIR Extension