Versions Compared

Key

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

FHIR Mapping

The strategy was originally implemented by Kwateng on 06.08.2017. commit 881e70acf638df9ef8572e4ec96e19e0c5057828

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.

Fields from parent classes are

...

omitted

...

.

OpenMRS Order documentation - Order Entry API.


OpenMRS class DrugOrder

...

extends Order class.

OpenMRS class DrugOrder is mapped to FHIR's MedicationRequest.

OpenMRS
field
class
DB
OpenMRS fieldFHIR fieldDetails
BaseOpenmrsObject
DrugOrderuuid : String
id
identifier.value:
id
String
Order

DrugOrder
dateActivated
dose :
Date,
checkDate : Datestatus : codeFormula value: OpenmrsUtil.compare(dateActivated, checkDate)--intent : codeRequired in FHIR.Orderurgency : Urgencypriority : codeConstant value "ORDER"DrugOrderdrug : Drugmedication : CodeableConceptRequired in FHIR. Formula value : drug concepts codings are put into medication.Orderpatient : Patientsubject : Reference(Patient)Required in FHIR. Only patient reference is put.Orderencounter : Encountercontext : Reference(Encounter)Encounter ref is put.BaseOpenmrsDatadateCreated : DateauthoredOn : dateTimeOrderorderer : Providerrequester : BackboneElementFormula value: practitioner Reference. Reference to a practitioner is put.Orderorderer : Providerrecorder : Reference(Practitioner)Formula value: practitioner Reference. Reference to a practitioner is put.DrugOrderroute : Concept,
dosingInstructions : String,
frequency : OrderFrequency,
doseUnits : Concept,
dose : Double
dosageInstruction : Dosage

Multiple fields are mapped.

See table FHIR Dosage class.

DrugOrder

durationUnits : Concept,
duration : Integer,
quantity : Double

dispenseRequest : BackboneElementMultiple fields are mapped.

FHIR Dosage class

...

Multiple fields are mapped.

See table FHIR Timing class.

...

FHIR Timing class

...

FHIR SimpleQuantity class

OpenMRS classOpenMRS fieldDB fieldFHIR fieldDetailsDrugOrderdoseUnit.name.name : Stringunit : stringName of dose unit name is putDrugOrderdose : Doublevalue : decimalDrugmaximumDailyDose : DoublemaxDosePerAdministration : SimpleQuantity
DoubledosageInstruction.doseQuantity.value : Double
DrugOrderdoseUnits : ConceptdosageInstruction.doseQuantity.code : StringFHIR field contains the UUID of the concept.
DrugOrderfrequency : OrderFrequencydosageInstruction.timing.id : StringFHIR field contains the UUID of the object.
DrugOrderasNeeded : BooleandosageInstruction.asNeededBoolean : BooleanType


DrugOrderquantity : DoubledispenseRequest.quantity.value : Double
DrugOrderquantityUnits : ConceptdispenseRequest.quantity.code : StringFHIR field contains the UUID of the concept.
DrugOrderdrug : DrugmedicationReference : ReferenceMedication
DrugOrderasNeededCondition : Stringextension - AsNeededCondition FHIR Extension

DrugOrderdosingType: DosingInstructionsextension - DosingType FHIR Extension
DrugOrdernumRefills : Integerextension - NumRefills FHIR Extension
DrugOrderdosingInstructions : StringdosageInstruction.text : String
DrugOrderduration : IntegerdispenseRequest.expectedSupplyDuration.value : Integer

DrugOrderdurationUnits : ConceptdispenseRequest.expectedSupplyDuration.code
FHIR field contains the UUID of the concept.
DrugOrderroute : ConceptdosageInstruction.route :
CodeableConcept

DrugOrderbrandName : Stringextension - BrandName FHIR Extension
DrugOrderdispenseAsWritten : Booleanextension - DispenseAsWritten FHIR Extension
DrugOrderdrugNonCoded : Stringextension - DrugNonCoded FHIR Extension
Order
urgency :
Order.Urgency
priority
Orderpatient : Patientsubject : ReferencePatient
Orderencounter : Encountercontext : ReferenceEncounter
Orderorderer : Providerrecorder : ReferencePractitioner
OrdercareSetting: CareSettingextension - CareSetting FHIR Extension