HL7 Version 2 to FHIR
1.0.0-ballot - ballot International flag

HL7 Version 2 to FHIR, published by HL7 International / Orders and Observations. This guide is not an authorized publication; it is the continuous build for version 1.0.0-ballot built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/v2-to-fhir/ and changes regularly. See the Directory of published versions

ConceptMap: Message OML_O21 to Bundle Map (Experimental)

Official URL: http://hl7.org/fhir/uv/v2mappings/message-oml-o21-to-bundle Version: 1.0.0-ballot
Active as of 2024-03-22 Computable Name: MessageOML_O21ToBundle

Copyright/Legal: Copyright (c) 2020, HL7 International, Inc., All Rights Reserved.

This ConceptMap represents a mapping from the HL7 V2 Message OML_O21 to the FHIR Message Bundle.

This ConceptMap represents the mapping from the HL7 V2 OML_O21 Message to the FHIR Message Bundle. See also the FHIR Shorthand or the CSV Source.

</thead> </table>
HL7 v2Condition (IF True, args)HL7 FHIRComments
Sort OrderIdentifierSyntaxNameCardinality - MinCardinality - MaxComputable ANTLRComputable FHIRPathNarrativePrimary TargetSegment MapReferences
1OML_O21.MSHMSHMessage Header11BundleMSH[Bundle]
1OML_O21.MSHMSHMessage Header11MessageHeaderMSH[MessageHeader]Processing of the MSH segment results in the creation of a new MessageHeader resource
1OML_O21.MSHMSHMessage Header11If there is a source in MSH-4, or known based on the configuration.ProvenanceMSH[Provenance-Source]Provenance[1].target.reference=Bundle.id; Provenance[1].target.reference=MessageHeader[1].idIf the FHIR transformation does not yield a FHIR message, but only a set of resource (APIs, repository, etc.) than one should consider attaching this Provenance resource instance to the relevant FHIR resources generated.
1OML_O21.MSHMSHMessage Header11ProvenanceMSH[Provenance-Transformation]Provenance[2].target.reference=Bundle.idIf the FHIR transformation does not yield a FHIR Bunlde, but only a set of resource (APIs, repository, etc.) than one should consider attaching this Provenance resource instance to the relevant FHIR resources generated.
2OML_O21.SFT[{SFT}]Software0-1If the software does represent not the original source systemProvenance.entity.what(Device)SFT[Device]Provenance[1].entity.what.reference=Device.id Provenance[1].entity.role="derivation"
2OML_O21.SFT[{SFT}]Software0-1If the software represents the original source systemProvenance.entity.what(Device)SFT[Device]Provenance[1].entity.what.reference=Device.id Provenance[1].entity.role="source"
3OML_O21.UAC[ UAC ]User Authentication Credential01
4OML_O21.NTE[{NTE}]Notes and Comments (for Header)0-1
5OML_O21.PATIENT[--- PATIENT begin01
5.1OML_O21.PATIENT.PIDPIDPatient Identification11PatientPID[Patient]Processing of the PID segment results in the creation of a new Patient resource
5.1OML_O21.PATIENT.PIDPIDPatient Identification11IF PID-33 AND PID-34 VALUEDOne may drop PID-33 from the condition if PID-34 Last Update Facility is still sufficient without a date.ProvenancePID[Provenance-Patient]Provenance.target.reference=Patient[1].id
5.2OML_O21.PATIENT.PD1[PD1]Additional Demographics01PatientPD1[Patient]Incorporate PD1 content into the Patient created from the PID segment.
5.3OML_O21.PATIENT.PRT[{PRT}]Participation (for Patient)0-1IF PRT-4.1 EQUALS "PP" AND PRT-4.3 EQUALS "HL70443"(element("4.1")="PP")and(element("4.3")="HL70443")PractitionerRolePRT[PractitionerRole]Patient[1].generalPractitioner.reference=PractitionerRole[1].idIncorporate PRT content into the Patient created from the PID segment when the PRT contains practitioner related data.
5.3OML_O21.PATIENT.PRT[{PRT}]Participation (for Patient)0-1IF PRT-4.1 NOT EQUALS "PP" OR PRT-4.3 NOT EQUALS "HL70443"(element("4.1"!)="PP")or(element("4.3")!="HL70443")RelatedPersonPRT[RelatedPerson]RelatedPerson[1].patient.reference=Patient[1].id
5.4OML_O21.PATIENT.NTE[{NTE}]Notes and Comments (for Patient ID)0-1
5.6OML_O21.PATIENT.NK1[{NK1}]Next of Kin/Associated Parties0-1The FHIR location will depend on the nature of the data being exchanged and how the systems use next of kin dataRelatedPersonNK1[RelatedPerson]RelatedPerson[2].patient.reference=Patient[1].idTypically, each NK1 will be translated to either a new RelatedPerson resource or added as a new occurrence of Patient.contact, but it's possible to insert the NK1 data into both structures.
5.6OML_O21.PATIENT.NK1[{NK1}]Next of Kin/Associated Parties0-1The FHIR location will depend on the nature of the data being exchanged and how the systems use next of kin dataPatientNK1[Patient]Typically, each NK1 will be translated to either a new RelatedPerson resource or added as a new occurrence of Patient.contact, but it's possible to insert the NK1 data into both structures.
5.7OML_O21.PATIENT.ARV[{ARV}]Access Restrictions0-1
5.8OML_O21.PATIENT.PATIENT_VISIT[--- PATIENT_VISIT begin01
5.8.1OML_O21.PATIENT.PATIENT_VISIT.PV1PV1Patient Visit11EncounterPV1[Encounter]Encounter.subject=Patient[PID]Processing of the PV1 segment results in the creation of a new Encounter resource
5.8.1OML_O21.PATIENT.PATIENT_VISIT.PV1PV1Patient Visit11PatientPV1[Patient]
5.8.2OML_O21.PATIENT.PATIENT_VISIT.PV2[ PV2 ]Patient Visit- Additional Info01EncounterPV2[Encounter]Incorporate PV2 content into the Encounter created from the PV1 segment.
5.8.3OML_O21.PATIENT.PATIENT_VISIT.PRT[{PRT}]Participation (for Patient Visit)0-1PractitionerRolePRT[PractitionerRole]Encounter[1].participant.individual.reference=PractitionerRole[2].idIncorporate PRT content into the Encounter created from the PV1 segment.
5.8.4/OML_O21.PATIENT.PATIENT_VISIT]--- PATIENT_VISIT end
5.9OML_O21.PATIENT.INSURANCE[{--- INSURANCE begin0-1
5.9.1OML_O21.PATIENT.INSURANCE.IN1IN1Insurance11CoverageIN1[Coverage]Coverage.subscriber=Patient[PID]Processing of the IN1 segment results in the creation of a new Coverage resource
5.9.2OML_O21.PATIENT.INSURANCE.IN2[ IN2 ]Insurance Additional Information01
5.9.3OML_O21.PATIENT.INSURANCE.IN3[ IN3 ]Insurance Additional Information, Certification01CoverageIN3[CareTeam]
5.9/OML_O21.PATIENT.INSURANCE}]--- INSURANCE end
5.10OML_O21.PATIENT.GT1[ GT1 ]Guarantor01
5.11OML_O21.PATIENT.AL1[{AL1}]Allergy Information0-1AllergyIntoleranceAL1[AllergyIntolerance]AllergyIntolerance.patient=Patient[PID]Processing of the AL1 segment results in the creation of a new AllergyIntolerance resource
5.12/OML_O21.PATIENT]--- PATIENT end
6OML_O21.ORDER{--- ORDER begin1-1
6.1OML_O21.ORDER.ORCORCCommon Order11ServiceRequestORC[ServiceRequest]ServiceRequest.subject=Patient[PID]Processing of each ORC segment results in the creation of a new ServiceRequest resource
6.1OML_O21.ORDER.ORCORCCommon Order11ProvenanceORC[Provenance]Provenance.target=ServiceRequest[ORC]Using Provenance is the preferred way, but a local implementation may decide to add extensions to the main resource. As the use and guidance of Provenance matures we wil revisit this later.
6.2OML_O21.ORDER.PRT[{PRT}]Participation (for Common Order)0-1IF PRT-4.1 EQUALS "OP" AND PRT-4.3 EQUALS "HL70443"(element("4.1")="OP")and(element("4.3")="HL70443")PractitionerRolePRT[PractitionerRole]ServiceRequest[1].requester.reference=PractitionerRole[3].id
6.3OML_O21.ORDER.TIMING[{--- TIMING begin0-1
6.3.1OML_O21.ORDER.TIMING.TQ1TQ1Timing/Quantity11ServiceRequestTQ1[ServiceRequest]
6.3.2OML_O21.ORDER.TIMING.TQ2[{TQ2}]Timing/Quantity Order Sequence0-1
6.3.3/OML_O21.ORDER.TIMING}]--- TIMING end
6.4OML_O21.ORDER.OBSERVATION_REQUEST[--- OBSERVATION_REQUEST begin01
6.4.1OML_O21.ORDER.OBSERVATION_REQUEST.OBROBRObservation Request11ServiceRequestOBR[ServiceRequest]Incorporate OBR content into the ServiceRequest created from the ORC segment in the same segment group.
6.4.1OML_O21.ORDER.OBSERVATION_REQUEST.OBROBRObservation Request11SpecimenOBR[Specimen]
6.4.2OML_O21.ORDER.OBSERVATION_REQUEST.TCD[ TCD ]Test Code Details01
6.4.3OML_O21.ORDER.OBSERVATION_REQUEST.NTE[{NTE}]Notes and Comments (for Detail)0-1ServiceRequestNTE[ServiceRequest]
6.4.4OML_O21.ORDER.OBSERVATION_REQUEST.PRT[{PRT}]Participation (for Observation Request)0-1IF PRT-4.1 EQUALS "SC" AND PRT-4.3 EQUALS "HL70443"(element("4.1")="SC")and(element("4.3")="HL70443")PractitionerRolePRT[PractitionerRole]ServiceRequest[1].specimen[1](Specimen.collection.collector.reference)=PractitionerRole[4].id
6.4.4OML_O21.ORDER.OBSERVATION_REQUEST.PRT[{PRT}]Participation (for Observation Request)0-1IF PRT-4.1 EQUALS "OP" AND PRT-4.3 EQUALS "HL70443"(element("4.1")="OP")and(element("4.3")="HL70443")PractitionerRolePRT[PractitionerRole]ServiceRequest[1].requester.reference=PractitionerRole[3].id
6.4.5OML_O21.ORDER.OBSERVATION_REQUEST.CTD[ CTD ]Contact Data01
6.4.6OML_O21.ORDER.OBSERVATION_REQUEST.DG1[{DG1}]Diagnosis0-1ConditionDG1[Condition]ServiceRequest[1].reasonReference.reference=Condition[1].id; Condition[1].subject.reference=Patient[1].idProcessing of the DG1 segment results in the creation of a new Condition resource which is referenced in the ServiceRequest created by the ORC segment
6.4.7OML_O21.ORDER.OBSERVATION_REQUEST.OBSERVATION[{--- OBSERVATION begin0-1
6.4.7.1OML_O21.ORDER.OBSERVATION_REQUEST.OBSERVATION.OBXOBXObservation/Result11IF OBX-5 LST.count GREATER THAN 1ObservationOBX[Observation]ServiceRequest[1].supportingInfo.reference=Observation[1].id; Observation[1].subject.id=Patient[1].id
6.4.7.1OML_O21.ORDER.OBSERVATION_REQUEST.OBSERVATION.OBXOBXObservation/Result11IF OBX-5 LST.count LESS THAN OR EQUALS 1ObservationOBX[Observation-Component]ServiceRequest[1].supportingInfo.reference=Observation[1].id; Observation[1].subject.id=Patient[1].id
6.4.7.2OML_O21.ORDER.OBSERVATION_REQUEST.OBSERVATION.PRT[{PRT}]Participation (for OBX)0-1IF PRT-10 VALUEDDevicePRT[Device]Observation[2].device.reference=Device.id
6.4.7.2OML_O21.ORDER.OBSERVATION_REQUEST.OBSERVATION.PRT[{PRT}]Participation (for OBX)0-1IF PRT-9 VALUED OR IF PRT-14 VALUEDObservationPRT[Observation-Location]Incorporate PRT content into the Observation created from the OBX segment in the same segment group when it represents observation location information.
6.4.7.2OML_O21.ORDER.OBSERVATION_REQUEST.OBSERVATION.PRT[{PRT}]Participation (for OBX)0-1IF PRT-5 VALUEDPractitionerRolePRT[PractitionerRole]Observation[2].performer.reference=PractitionerRole[7].idIncorporate PRT content into the Observation created from the OBX segment in the same segment group when it represents observation practitioner information.
6.4.7.3OML_O21.ORDER.OBSERVATION_REQUEST.OBSERVATION.TCD[ TCD ]Test Code Detail01
6.4.7.4OML_O21.ORDER.OBSERVATION_REQUEST.OBSERVATION.NTE[{NTE}]Notes and Comments (for Results)0-1ObservationNTE[Observation]
6.4.7.5/OML_O21.ORDER.OBSERVATION_REQUEST.OBSERVATION}]--- OBSERVATION end
6.4.8OML_O21.ORDER.OBSERVATION_REQUEST.SPECIMEN[{--- SPECIMEN begin0-1
6.4.8.1OML_O21.ORDER.OBSERVATION_REQUEST.SPECIMEN.SPMSPMSpecimen11SpecimenSPM[Specimen]ServiceRequest[1].specimen.reference=Specimen[SPM].id
6.4.8.1OML_O21.ORDER.OBSERVATION_REQUEST.SPECIMEN.SPMSPMSpecimen11IF SPM-21 VALUEDServiceRequest[1].specimen.#ext-rejectReason#=SPM-21This provides a reject reason for the specimen in context of the specific test as the specimen may still be usable for other tests.
6.4.8.2OML_O21.ORDER.OBSERVATION_REQUEST.SPECIMEN.SPECIMEN_OBSERVATION[{--- SPECIMEN_OBSERVATION begin0-1
6.4.8.2.1OML_O21.ORDER.OBSERVATION_REQUEST.SPECIMEN.SPECIMEN_OBSERVATION.OBXOBXObservation/Result related to specimen11
6.4.8.2.2OML_O21.ORDER.OBSERVATION_REQUEST.SPECIMEN.SPECIMEN_OBSERVATION.PRT[{PRT}]Participation (for Specimen Observation)0-1
6.4.8.2.3/OML_O21.ORDER.OBSERVATION_REQUEST.SPECIMEN.SPECIMEN_OBSERVATION}]--- SPECIMEN_OBSERVATION end
6.4.8.3OML_O21.ORDER.OBSERVATION_REQUEST.SPECIMEN.CONTAINER[{--- CONTAINER begin0-1
6.4.8.3.1OML_O21.ORDER.OBSERVATION_REQUEST.SPECIMEN.CONTAINER.SACSACSpecimen Container11
6.4.8.3.2OML_O21.ORDER.OBSERVATION_REQUEST.SPECIMEN.CONTAINER.CONTAINER_OBSERVATION[{--- CONTAINER_OBSERVATION begin0-1
6.4.8.3.2.1OML_O21.ORDER.OBSERVATION_REQUEST.SPECIMEN.CONTAINER.CONTAINER_OBSERVATION.OBXOBXObservation/Result related to container11
6.4.8.3.2.2OML_O21.ORDER.OBSERVATION_REQUEST.SPECIMEN.CONTAINER.CONTAINER_OBSERVATION.PRT[{PRT}]Participation (for Container Observation)0-1
6.4.8.3.2.3/OML_O21.ORDER.OBSERVATION_REQUEST.SPECIMEN.CONTAINER.CONTAINER_OBSERVATION}]--- CONTAINER_OBSERVATION end
6.4.8.3.3/OML_O21.ORDER.OBSERVATION_REQUEST.SPECIMEN.CONTAINER}]--- CONTAINER end
6.4.8.4/OML_O21.ORDER.OBSERVATION_REQUEST.SPECIMEN}]--- SPECIMEN end
6.4.9OML_O21.ORDER.OBSERVATION_REQUEST.SGH[SGH]Segment Group Header
6.4.10OML_O21.ORDER.OBSERVATION_REQUEST.PRIOR_RESULT[{--- PRIOR_RESULT begin
6.4.10.1OML_O21.ORDER.OBSERVATION_REQUEST.PRIOR_RESULT.PATIENT_PRIOR[--- PATIENT_PRIOR begin
6.4.10.1.2OML_O21.ORDER.OBSERVATION_REQUEST.PRIOR_RESULT.PATIENT_PRIOR.PIDPIDPatient Identification– previous result
6.4.10.1.3OML_O21.ORDER.OBSERVATION_REQUEST.PRIOR_RESULT.PATIENT_PRIOR.PD1[PD1]Additional Demographics – previous result
6.4.10.1.4OML_O21.ORDER.OBSERVATION_REQUEST.PRIOR_RESULT.PATIENT_PRIOR.PRT[{PRT}]Participation (for Patient Prior)
6.4.10.1.5OML_O21.ORDER.OBSERVATION_REQUEST.PRIOR_RESULT.PATIENT_PRIOR.ARV[{ARV}]Access Restrictions
6.4.10.1.6/OML_O21.ORDER.OBSERVATION_REQUEST.PRIOR_RESULT.PATIENT_PRIOR]--- PATIENT_PRIOR end
6.4.10.2OML_O21.ORDER.OBSERVATION_REQUEST.PRIOR_RESULT.RESULT_VISIT_PRIOR[--- PATIENT_VISIT_PRIOR begin
6.4.10.2.1OML_O21.ORDER.OBSERVATION_REQUEST.PRIOR_RESULT.RESULT_VISIT_PRIOR.PV1PV1Patient Visit– previous result
6.4.10.2.2OML_O21.ORDER.OBSERVATION_REQUEST.PRIOR_RESULT.RESULT_VISIT_PRIOR.PV2[ PV2 ]Patient Visit Add. Info – previous result
6.4.10.2.3OML_O21.ORDER.OBSERVATION_REQUEST.PRIOR_RESULT.RESULT_VISIT_PRIOR.PRT[{PRT}]Participation (for Patient Visit Prior)
6.4.10.2.4/OML_O21.ORDER.OBSERVATION_REQUEST.PRIOR_RESULT.RESULT_VISIT_PRIOR]--- PATIENT_VISIT_PRIOR end
6.4.10.3/OML_O21.ORDER.OBSERVATION_REQUEST.PRIOR_RESULT.AL1[{AL1}]Allergy Information- previous result
6.4.10.4OML_O21.ORDER.OBSERVATION_REQUEST.PRIOR_RESULT.ORDER_PRIOR{--- ORDER_PRIOR begin
6.4.10.4.1OML_O21.ORDER.OBSERVATION_REQUEST.PRIOR_RESULT.ORDER_PRIOR.ORCORCCommon Order- previous result
6.4.10.4.2OML_O21.ORDER.OBSERVATION_REQUEST.PRIOR_RESULT.ORDER_PRIOR.PRT[{PRT}]Participation
6.4.10.4.3OML_O21.ORDER.OBSERVATION_REQUEST.PRIOR_RESULT.ORDER_PRIOR.OBROBROrder Detail- previous result
6.4.10.4.4OML_O21.ORDER.OBSERVATION_REQUEST.PRIOR_RESULT.ORDER_PRIOR.NTE[{NTE}]Notes and Comments- previous result
6.4.10.4.5OML_O21.ORDER.OBSERVATION_REQUEST.PRIOR_RESULT.ORDER_PRIOR.PRT[{PRT}]Participation (for Order Prior)
6.4.10.4.6OML_O21.ORDER.OBSERVATION_REQUEST.PRIOR_RESULT.ORDER_PRIOR.TIMING_PRIOR[{--- TIMING_PRIOR begin
6.4.10.4.6.1OML_O21.ORDER.OBSERVATION_REQUEST.PRIOR_RESULT.ORDER_PRIOR.TIMING_PRIOR.TQ1TQ1Timing/Quantity
6.4.10.4.6.2OML_O21.ORDER.OBSERVATION_REQUEST.PRIOR_RESULT.ORDER_PRIOR.TIMING_PRIOR.TQ2[{TQ2}]Timing/Quantity Order Sequence
6.4.10.4.6.3/OML_O21.ORDER.OBSERVATION_REQUEST.PRIOR_RESULT.ORDER_PRIOR.TIMING_PRIOR}]--- TIMING_PRIOR end
6.4.10.4.7OML_O21.ORDER.OBSERVATION_REQUEST.PRIOR_RESULT.ORDER_PRIOR.OBSERVATION_PRIOR{--- OBSERVATION_PRIOR begin
6.4.10.4.7.1OML_O21.ORDER.OBSERVATION_REQUEST.PRIOR_RESULT.ORDER_PRIOR.OBSERVATION_PRIOR.OBXOBXObservation/Result- previous result
6.4.10.4.7.2OML_O21.ORDER.OBSERVATION_REQUEST.PRIOR_RESULT.ORDER_PRIOR.OBSERVATION_PRIOR.PRT[{PRT}]Participation (for Observation Prior)
6.4.10.4.7.3OML_O21.ORDER.OBSERVATION_REQUEST.PRIOR_RESULT.ORDER_PRIOR.OBSERVATION_PRIOR.NTE[{NTE}]Notes and Comments- previous result
6.4.10.4.7.4/OML_O21.ORDER.OBSERVATION_REQUEST.PRIOR_RESULT.ORDER_PRIOR.OBSERVATION_PRIOR}--- OBSERVATION_PRIOR end
6.4.10.4.8/OML_O21.ORDER.OBSERVATION_REQUEST.PRIOR_RESULT.ORDER_PRIOR}--- ORDER_PRIOR end
6.4.10.5/OML_O21.ORDER.OBSERVATION_REQUEST.PRIOR_RESULT}]--- PRIOR_RESULT end
6.4.11OML_O21.ORDER.OBSERVATION_REQUEST.SGT[SGT]Segment Group Trailer
6.4.12/OML_O21.ORDER.OBSERVATION_REQUEST]--- OBSERVATION_REQUEST end
6.5OML_O21.ORDER.FT1[{FT1}]Financial Transaction
6.6OML_O21.ORDER.CTI[{CTI}]Clinical Trial Identification
6.7OML_O21.ORDER.BLG[ BLG ]Billing Segment
6.8/OML_O21.ORDER}--- ORDER end

Mapping from OML_O21 to Bundle

ACTIVE (not intended for production usage). Published on 2024-03-22 by HL7 International / Orders and Observations (HL7 Orders and Observations Workgroup: http://www.hl7.org/Special/com..., Keith W. Boone: kboone@ainq.com, Rob Hausam: rrhausam@gmail.com). Copyright (c) 2020, HL7 International, Inc., All Rights Reserved.

This ConceptMap represents a mapping from the HL7 V2 Message OML_O21 to the FHIR Message Bundle.


Group 1 Mapping from unspecified code system to unspecified code system

Source Concept DetailsRelationshipTarget Concept DetailsCommentProperties
Codes from segmentmapreferencesCodes from narrativeantlrfhirpath
OML_O21.MSHMessage HeaderMSH[Bundle]is equivalent toBundleBundle
OML_O21.MSHMessage HeaderMSH[MessageHeader]is equivalent toMessageHeader[1]MessageHeader[1]Processing of the MSH segment results in the creation of a new MessageHeader resource
OML_O21.MSHMessage HeaderMSH[Provenance-Source]Provenance[1].target.reference=Bundle.id; Provenance[1].target.reference=MessageHeader[1].idis equivalent toProvenance[1]Provenance[1]If there is a source in MSH-4, or known based on the configuration.If the FHIR transformation does not yield a FHIR message, but only a set of resource (APIs, repository, etc.) than one should consider attaching this Provenance resource instance to the relevant FHIR resources generated.
OML_O21.MSHMessage HeaderMSH[Provenance-Transformation]Provenance[2].target.reference=Bundle.idis equivalent toProvenance[2]Provenance[2]If the FHIR transformation does not yield a FHIR Bunlde, but only a set of resource (APIs, repository, etc.) than one should consider attaching this Provenance resource instance to the relevant FHIR resources generated.
OML_O21.SFTSoftwareSFT[Device]Provenance[1].entity.what.reference=Device.id Provenance[1].entity.role="derivation"\is equivalent toProvenance[1].entity.what(Device)Provenance[1].entity.what(Device)If the software does represent not the original source system
OML_O21.SFTSoftwareSFT[Device]Provenance[1].entity.what.reference=Device.id Provenance[1].entity.role="source"\is equivalent toProvenance[1].entity.what(Device)Provenance[1].entity.what(Device)If the software represents the original source system
OML_O21.PATIENT.PIDPatient IdentificationPID[Patient]is equivalent toPatient[1]Patient[1]Processing of the PID segment results in the creation of a new Patient resource
OML_O21.PATIENT.PIDPatient IdentificationPID[Provenance-Patient]Provenance.target.reference=Patient[1].idis equivalent toProvenance[4]Provenance[4]One may drop PID-33 from the condition if PID-34 Last Update Facility is still sufficient without a date.IF PID-33 AND PID-34 VALUED
OML_O21.PATIENT.PD1Additional DemographicsPD1[Patient]is equivalent toPatient[1]Patient[1]Incorporate PD1 content into the Patient created from the PID segment.
OML_O21.PATIENT.PRTParticipation (for Patient)PRT[PractitionerRole]Patient[1].generalPractitioner.reference=PractitionerRole[1].idis equivalent toPractitionerRole[1]PractitionerRole[1]IF PRT-4.1 EQUALS "PP" AND PRT-4.3 EQUALS "HL70443"(element("4.1")="PP")and(element("4.3")="HL70443")Incorporate PRT content into the Patient created from the PID segment when the PRT contains practitioner related data.
OML_O21.PATIENT.PRTParticipation (for Patient)PRT[RelatedPerson]RelatedPerson[1].patient.reference=Patient[1].idis equivalent toRelatedPerson[1]RelatedPerson[1]IF PRT-4.1 NOT EQUALS "PP" OR PRT-4.3 NOT EQUALS "HL70443"(element("4.1"!)="PP")or(element("4.3")!="HL70443")
OML_O21.PATIENT.NK1Next of Kin/Associated PartiesNK1[RelatedPerson]RelatedPerson[2].patient.reference=Patient[1].idis equivalent toRelatedPerson[2]RelatedPerson[2]The FHIR location will depend on the nature of the data being exchanged and how the systems use next of kin dataTypically, each NK1 will be translated to either a new RelatedPerson resource or added as a new occurrence of Patient.contact, but it's possible to insert the NK1 data into both structures.
OML_O21.PATIENT.NK1Next of Kin/Associated PartiesNK1[Patient]is equivalent toPatient[1]Patient[1]The FHIR location will depend on the nature of the data being exchanged and how the systems use next of kin dataTypically, each NK1 will be translated to either a new RelatedPerson resource or added as a new occurrence of Patient.contact, but it's possible to insert the NK1 data into both structures.
OML_O21.PATIENT.PATIENT_VISIT.PV1Patient VisitPV1[Encounter]Encounter.subject=Patient[PID]is equivalent toEncounter[1]Encounter[1]Processing of the PV1 segment results in the creation of a new Encounter resource
OML_O21.PATIENT.PATIENT_VISIT.PV1Patient VisitPV1[Patient]is equivalent toPatient[1]Patient[1]
OML_O21.PATIENT.PATIENT_VISIT.PV2Patient Visit- Additional InfoPV2[Encounter]is equivalent toEncounter[1]Encounter[1]Incorporate PV2 content into the Encounter created from the PV1 segment.
OML_O21.PATIENT.PATIENT_VISIT.PRTParticipation (for Patient Visit)PRT[PractitionerRole]Encounter[1].participant.individual.reference=PractitionerRole[2].idis equivalent toPractitionerRole[2]PractitionerRole[2]Incorporate PRT content into the Encounter created from the PV1 segment.
OML_O21.PATIENT.INSURANCE.IN1InsuranceIN1[Coverage]Coverage.subscriber=Patient[PID]is equivalent toCoverage[1]Coverage[1]Processing of the IN1 segment results in the creation of a new Coverage resource
OML_O21.PATIENT.INSURANCE.IN3Insurance Additional Information, CertificationIN3[CareTeam]is equivalent toCoverage[1]Coverage[1]
OML_O21.PATIENT.AL1Allergy InformationAL1[AllergyIntolerance]AllergyIntolerance.patient=Patient[PID]is equivalent toAllergyIntoleranceAllergyIntoleranceProcessing of the AL1 segment results in the creation of a new AllergyIntolerance resource
OML_O21.ORDER.ORCCommon OrderORC[ServiceRequest]ServiceRequest.subject=Patient[PID]is equivalent toServiceRequest[1]ServiceRequest[1]Processing of each ORC segment results in the creation of a new ServiceRequest resource
OML_O21.ORDER.ORCCommon OrderORC[Provenance]Provenance.target=ServiceRequest[ORC]is equivalent toProvenance[3]Provenance[3]Using Provenance is the preferred way, but a local implementation may decide to add extensions to the main resource. As the use and guidance of Provenance matures we wil revisit this later.
OML_O21.ORDER.PRTParticipation (for Common Order)PRT[PractitionerRole]ServiceRequest[1].requester.reference=PractitionerRole[3].idis equivalent toPractitionerRole[3]PractitionerRole[3]IF PRT-4.1 EQUALS "OP" AND PRT-4.3 EQUALS "HL70443"(element("4.1")="OP")and(element("4.3")="HL70443")
OML_O21.ORDER.TIMING.TQ1Timing/QuantityTQ1[ServiceRequest]is equivalent toServiceRequest[1]ServiceRequest[1]
OML_O21.ORDER.OBSERVATION_REQUEST.OBRObservation RequestOBR[ServiceRequest]is equivalent toServiceRequest[1]ServiceRequest[1]Incorporate OBR content into the ServiceRequest created from the ORC segment in the same segment group.
OML_O21.ORDER.OBSERVATION_REQUEST.OBRObservation RequestOBR[Specimen]is equivalent toSpecimen[each]Specimen[each]
OML_O21.ORDER.OBSERVATION_REQUEST.NTENotes and Comments (for Detail)NTE[ServiceRequest]is equivalent toServiceRequest[1]ServiceRequest[1]
OML_O21.ORDER.OBSERVATION_REQUEST.PRTParticipation (for Observation Request)PRT[PractitionerRole]ServiceRequest[1].specimen[1](Specimen.collection.collector.reference)=PractitionerRole[4].idis equivalent toPractitionerRole[4]PractitionerRole[4]IF PRT-4.1 EQUALS "SC" AND PRT-4.3 EQUALS "HL70443"(element("4.1")="SC")and(element("4.3")="HL70443")
OML_O21.ORDER.OBSERVATION_REQUEST.PRTParticipation (for Observation Request)PRT[PractitionerRole]ServiceRequest[1].requester.reference=PractitionerRole[3].idis equivalent toPractitionerRole[3]PractitionerRole[3]IF PRT-4.1 EQUALS "OP" AND PRT-4.3 EQUALS "HL70443"(element("4.1")="OP")and(element("4.3")="HL70443")
OML_O21.ORDER.OBSERVATION_REQUEST.DG1DiagnosisDG1[Condition]ServiceRequest[1].reasonReference.reference=Condition[1].id; Condition[1].subject.reference=Patient[1].idis equivalent toCondition[1]Condition[1]Processing of the DG1 segment results in the creation of a new Condition resource which is referenced in the ServiceRequest created by the ORC segment
OML_O21.ORDER.OBSERVATION_REQUEST.OBSERVATION.OBXObservation/ResultOBX[Observation]ServiceRequest[1].supportingInfo.reference=Observation[1].id; Observation[1].subject.id=Patient[1].idis equivalent toObservation[1]Observation[1]IF OBX-5 LST.count GREATER THAN 1
OML_O21.ORDER.OBSERVATION_REQUEST.OBSERVATION.OBXObservation/ResultOBX[Observation-Component]ServiceRequest[1].supportingInfo.reference=Observation[1].id; Observation[1].subject.id=Patient[1].idis equivalent toObservation[1]Observation[1]IF OBX-5 LST.count LESS THAN OR EQUALS 1
OML_O21.ORDER.OBSERVATION_REQUEST.OBSERVATION.PRTParticipation (for OBX)PRT[Device]Observation[2].device.reference=Device.idis equivalent toDevice[1]Device[1]IF PRT-10 VALUED
OML_O21.ORDER.OBSERVATION_REQUEST.OBSERVATION.PRTParticipation (for OBX)PRT[Observation-Location]is equivalent toObservation[1]Observation[1]IF PRT-9 VALUED OR IF PRT-14 VALUEDIncorporate PRT content into the Observation created from the OBX segment in the same segment group when it represents observation location information.
OML_O21.ORDER.OBSERVATION_REQUEST.OBSERVATION.PRTParticipation (for OBX)PRT[PractitionerRole]Observation[2].performer.reference=PractitionerRole[7].idis equivalent toPractitionerRole[7]PractitionerRole[7]IF PRT-5 VALUEDIncorporate PRT content into the Observation created from the OBX segment in the same segment group when it represents observation practitioner information.
OML_O21.ORDER.OBSERVATION_REQUEST.OBSERVATION.NTENotes and Comments (for Results)NTE[Observation]is equivalent toObservation[1]Observation[1]
OML_O21.ORDER.OBSERVATION_REQUEST.SPECIMEN.SPMSpecimenSPM[Specimen]ServiceRequest[1].specimen.reference=Specimen[SPM].idis equivalent toSpecimenSpecimen

Notes: