HL7 Version 2 to FHIR
0.1.0 - STU1 Ballot

This page is part of the HL7 Version 2 to FHIR (v0.1.0: STU 1 Ballot 1) based on FHIR R4. . For a full list of available versions, see the Directory of published versions

ConceptMap: Segment OBX to Observation Map

This ConceptMap represents the mapping from the HL7 V2 OBX Segment to the FHIR Observation Resource. See also the FHIR Shorthand or the CSV Source.

HL7 v2Condition (IF True, args)HL7 FHIRComments
Sort OrderIdentifierNameData TypeCardinality - MinCardinality - MaxComputable ANTLRComputable FHIRPathNarrativeFHIR AttributeExtensionData TypeCardinality - MinCardinality - MaxData Type MappingAssignmentVocabulary Mapping
(IS, ID, CE, CEN, CWE)
1OBX-1Set ID – OBXSI01
2OBX-2Value TypeID01ValueType
3OBX-3Observation IdentifierCWE11Observation.codeObservation.CodeableConcept11CWE[CodeableConcept]
4OBX-4Observation Sub-IDST01If OBX does represent a component. See implementation guide where sub-id is used for additional guidanceObservation.component or Observation.partOf or Observation.hasMember or Observation.DerivedFrom
5OBX-5Observation Valuevaries0-1IF OBX-2 EQUALS "NM"Observation.valueQuantity.valueObservation.quantity01NM[Quantity]
5OBX-5Observation Valuevaries0-1IF OBX-2 IN ("ST", "FT", "TX")Any markup in ST, FT or TX data may not present properly given that valueString is a string data typeObservation.valueStringObservation.string01
5OBX-5Observation Valuevaries0-1IF OBX-2 IN ("CF", "CNE", "CWE", "CE")Observation.valueCodeableConceptObservation.CodeableConcept01CWE[CodeableConcept]
5OBX-5Observation Valuevaries0-1IF OBX-2 EQUALS "IS"Observation.valueCodeableConceptObservation.CodeableConcept01IS[CodeableConcept]
5OBX-5Observation Valuevaries0-1IF OBX-2 EQUALS "DR"Observation.valuePeriodObservation.Period01DR[Period]
5OBX-5Observation Valuevaries0-1IF OBX-2 IN ("DTM", "DT")Observation.valueDateTimeObservation.dateTime01
5OBX-5Observation Valuevaries0-1IF OBX-2 EQUALS "NR"Observation.valueRangeObservation.Range01NR[Range]
5OBX-5Observation Valuevaries0-1IF OBX-2 EQUALS "VR"Observation.valueStringObservation.string01OBX-5.1+"-"+OBX-5.2
5OBX-5Observation Valuevaries0-1IF OBX-2 EQUALS "TM"Observation.valueTimeObservation.time01
5OBX-5Observation Valuevaries0-1IF (OBX-2 EQUALS "SN" AND OBX-5.3 IN (":", "/")Observation.valueRatioObservation.Ratio01SN[Ratio]
5OBX-5Observation Valuevaries0-1IF OBX-2 EQUALS "SN" and OBX-5.3 EQUALS "-"Observation.valueRangeObservation.Range01SN[Range]
5OBX-5Observation Valuevaries0-1IF OBX-2 EQUALS "SN" and OBX-5.3 EQUALS "+"Observation.valueStringObservation.string01OBX-5.1+" "+OBX-5.2+" "+OBX-5.3+" "+OBX-5.4
5OBX-5Observation Valuevaries0-1IF OBX-2 EQUALS "SN" and OBX-5.3 NOT IN (":", "/", "-", "+")Observation.valueQuantityObservation.Quantity01SN[Quantity]
5OBX-5Observation Valuevaries0-1IF OBX-2 EQUALS "NA"Observation.valueSampledDataObservation.SampledData
5OBX-5Observation Valuevaries0-1IF OBX-2 EQUALS "ED" AND IF OBX-5.4 EQUALS "Base64"Observation.#ext-valueAttachment#Observation.Attachment01ED[Attachment]
5OBX-5Observation Valuevaries0-1IF OBX-2 EQUALS "EI"
5OBX-5Observation Valuevaries0-1IF OBX-2 EQUALS "RP"Observation.#ext-valueAttachment#Observation.Attachment01RP[Attachment]
6OBX-6UnitsCWE01IF OBX-2 EQUALS "SN" and OBX-5.3 NOT IN (":", "/", "-", "+")Observation.valueQuantityObservation.QuantityCWE[Quantity]
6OBX-6UnitsCWE01IF OBX-2 IN ("NA", "NM")Observation.valueQuantityObservation.QuantityCWE[Quantity]
6OBX-6UnitsCWE01IF OBX-2 EQUALS "SN" AND OBX-5.3 EQUALS "-"Observation.valueRange.lowObservation.SimpleQuantityCWE[Quantity]
6OBX-6UnitsCWE01IF OBX-2 EQUALS "SN" AND OBX-5.3 EQUALS "-"Observation.valueRange.highObservation.SimpleQuantityCWE[Quantity]
6OBX-6UnitsCWE01IF (OBX-2 EQUALS "SN" AND (OBX-5.3 IN (":", "/"))Observation.valueRatio.numeratorObservation.QuantityCWE[Quantity]
6OBX-6UnitsCWE01IF (OBX-2 EQUALS "SN" AND (OBX-5.3 IN (":", "/"))Observation.valueRatio.denominatorObservation.QuantityCWE[Quantity]
7OBX-7References RangeST01Observation.referenceRange.textObservation.string0-1
8OBX-8Interpretation CodesCWE0-1Observation.interpretationObservation.CodeableConcept0-1CWE[CodeableConcept]InterpretationCode
9OBX-9ProbabilityNM01
10OBX-10Nature of Abnormal TestID0-1Observation.#ext-natureOfAbnormalTest#Observation.CodeableConcept0-1CWE[CodeableConcept]NatureOfAbnormalTesting
11OBX-11Observation Result StatusID11Observation.statusObservation.code11ObservationStatus
12OBX-12Effective Date of Reference RangeDTM01
13OBX-13User Defined Access ChecksST01
14OBX-14Date/Time of the ObservationDTM01Observation.effectiveDateTimeObservation.dateTime01
15OBX-15Producer's IDCWE01Observation.#ext-producerIdentifier#Observation.CodeableConcept01CWE[CodeableConcept]
16OBX-16Responsible ObserverXCN0-1Observation.performer(Observation.PractitionerRole.practitioner(Observation.Practitioner)Reference(Observation.PractitionerRole)0-1XCN[Practitioner]
16OBX-16Responsible ObserverXCN0-1Observation.performer(Observation.PractitionerRole.code)"#assign-code-responsibleObserver#"Observation.CodeableConcept0-1
16OBX-16Responsible ObserverXCN0-1Observation.performer(Observation.PractitionerRole.system)"#assign-system-abc#"Observation.CodeableConcept0-1
17OBX-17Observation MethodCWE0-1Observation.methodObservation.CodeableConcept01CWE[CodeableConcept]
18OBX-18Equipment Instance IdentifierEI0-1Observation.device(Observation.Device.identifier)Observation.Identifier0-1EI[Identifier]
19OBX-19Date/Time of the AnalysisDTM01Observation.#ext-analysisDateTime#Observation.dateTime01
20OBX-20Observation SiteCWE0-1Observation.bodySiteObservation.CodeableConcept01CWE[CodeableConcept]
21OBX-21Observation Instance IdentifierEI01Observation.identifierObservation.Identifier0-1EI[Identifier]
21OBX-21Observation Instance IdentifierEI01Observation.identifier.type.coding.codeObservation.code01"FILL"
22OBX-22Mood CodeCNE01
23OBX-23Performing Organization NameXON01Observation.performer(Observation.Organization)Reference(Observation.Organization)0-1XON[Organization]
23OBX-23Performing Organization NameXON01IF OBX-25 VALUEDObservation.performer(Observation.PractitionerRole.organization(Observation.Organization)Reference(Observation.Organization)0-1XON[Organization]
24OBX-24Performing Organization AddressXAD01Observation.performer(Observation.Organization.address)Observation.Address0-1XAD[Address]
24OBX-24Performing Organization AddressXAD01IF OBX-25 VALUEDObservation.performer(Observation.PractitionerRole.organization(Observation.Organization.address)Observation.Address0-1XAD[Address]
25OBX-25Performing Organization Medical DirectorXCN01Observation.performer(Observation.PractitionerRole)Reference(Observation.PractitionerRole)01XCN[PractitionerRole]
25OBX-25Performing Organization Medical DirectorXCN01Observation.performer(Observation.PractitionerRole.code)"#assign-code-LabMedicalDirector#"Observation.code
26OBX-26Patient Results Release CategoryID01
27OBX-27Root CauseCWE01
28OBX-28Local Process ControlCWE0-1
29OBX-29Observation TypeID01Observation.#ext-type#Observation.code01
30OBX-30Observation Sub-TypeID01Observation.#ext-subType#Observation.code01

Formats: XML, JSON, Turtle

SegmentOBXtoObservation (http://hl7.org/fhir/uv/v2mappings/segment-obx-to-observation)

Mapping from OBX to Observation

ACTIVE (not intended for production usage). Published on 2020-08-12 by HL7 International (HL7 Orders and Observations Workgroup: http://hl7.org/Special/committ..., Keith W. Boone: kboone@ainq.com). Copyright (c) 2020, HL7 International, Inc., All Rights Reserved.

This ConceptMap represents a mapping from the HL7 V2 Segment OBX to the FHIR Observation Resource.


Source Concept DetailsRelationshipDestination Concept Details
Code from Code from Code from Code from Code from Code from Code from
OBX-3CWE[CodeableConcept]is equivalent tocode
OBX-5NM[Quantity]is equivalent tovalueQuantity.valueIF OBX-2 EQUALS "NM"
OBX-5is equivalent tovalueStringIF OBX-2 IN ("ST", "FT", "TX")Any markup in ST, FT or TX data may not present properly given that valueString is a string data type
OBX-5CWE[CodeableConcept]is equivalent tovalueCodeableConceptIF OBX-2 IN ("CF", "CNE", "CWE", "CE")
OBX-5IS[CodeableConcept]is equivalent tovalueCodeableConceptIF OBX-2 EQUALS "IS"
OBX-5DR[Period]is equivalent tovaluePeriodIF OBX-2 EQUALS "DR"
OBX-5is equivalent tovalueDateTimeIF OBX-2 IN ("DTM", "DT")
OBX-5NR[Range]is equivalent tovalueRangeIF OBX-2 EQUALS "NR"
OBX-5OBX-5.1+"-"+OBX-5.2is equivalent tovalueStringIF OBX-2 EQUALS "VR"
OBX-5is equivalent tovalueTimeIF OBX-2 EQUALS "TM"
OBX-5SN[Ratio]is equivalent tovalueRatioIF (OBX-2 EQUALS "SN" AND OBX-5.3 IN (":", "/")
OBX-5SN[Range]is equivalent tovalueRangeIF OBX-2 EQUALS "SN" and OBX-5.3 EQUALS "-"
OBX-5OBX-5.1+" "+OBX-5.2+" "+OBX-5.3+" "+OBX-5.4is equivalent tovalueStringIF OBX-2 EQUALS "SN" and OBX-5.3 EQUALS "+"
OBX-5SN[Quantity]is equivalent tovalueQuantityIF OBX-2 EQUALS "SN" and OBX-5.3 NOT IN (":", "/", "-", "+")
OBX-5is equivalent tovalueSampledDataIF OBX-2 EQUALS "NA"
OBX-6CWE[Quantity]is equivalent tovalueQuantityIF OBX-2 EQUALS "SN" and OBX-5.3 NOT IN (":", "/", "-", "+")
OBX-6CWE[Quantity]is equivalent tovalueQuantityIF OBX-2 IN ("NA", "NM")
OBX-6CWE[Quantity]is equivalent tovalueRange.lowIF OBX-2 EQUALS "SN" AND OBX-5.3 EQUALS "-"
OBX-6CWE[Quantity]is equivalent tovalueRange.highIF OBX-2 EQUALS "SN" AND OBX-5.3 EQUALS "-"
OBX-6CWE[Quantity]is equivalent tovalueRatio.numeratorIF (OBX-2 EQUALS "SN" AND (OBX-5.3 IN (":", "/"))
OBX-6CWE[Quantity]is equivalent tovalueRatio.denominatorIF (OBX-2 EQUALS "SN" AND (OBX-5.3 IN (":", "/"))
OBX-7is equivalent toreferenceRange.text
OBX-8CWE[CodeableConcept]InterpretationCodeis equivalent tointerpretation
OBX-11ObservationStatusis equivalent tostatus
OBX-14is equivalent toeffectiveDateTime
OBX-16XCN[Practitioner]is equivalent toperformer[1](PractitionerRole.practitioner(Practitioner))
OBX-16is equivalent toperformer[1](PractitionerRole.code)
OBX-16is equivalent toperformer[1](PractitionerRole.system)
OBX-17CWE[CodeableConcept]is equivalent tomethod
OBX-18EI[Identifier]is equivalent todevice(Device.identifier)
OBX-20CWE[CodeableConcept]is equivalent tobodySite
OBX-21EI[Identifier]is equivalent toidentifier
OBX-21"FILL"is equivalent toidentifier.type.coding.code
OBX-23XON[Organization]is equivalent toperformer[2](Organization)
OBX-23XON[Organization]is equivalent toperformer[3](PractitionerRole.organization(Organization))IF OBX-25 VALUED
OBX-24XAD[Address]is equivalent toperformer[2](Organization.address)
OBX-24XAD[Address]is equivalent toperformer[3](PractitionerRole.organization(Organization.address))IF OBX-25 VALUED
OBX-25XCN[PractitionerRole]is equivalent toperformer[3](PractitionerRole)
OBX-25is equivalent toperformer[3](PractitionerRole.code)

Notes: