HL7 Version 2 to FHIR
1.0.0 - STU 1 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 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 SIU_S12 to Bundle Map (Experimental)

Official URL: http://hl7.org/fhir/uv/v2mappings/ConceptMap/message-siu-s12-to-bundle Version: 1.0.0
Standards status: Informative Computable Name: MessageSIU_S12ToBundle

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

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

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

HL7 v2Condition (IF True, args)HL7 FHIRComments
Sort OrderIdentifierSyntaxNameCardinality - MinCardinality - MaxComputable ANTLRComputable FHIRPathNarrativePrimary TargetSegment MapReferences
1SIU_S12.MSHMSHMessage Header11BundleMSH[Bundle]
1SIU_S12.MSHMSHMessage Header11MessageHeaderMSH[MessageHeader]Processing of the MSH segment results in the creation of a new MessageHeader resource
1SIU_S12.MSHMSHMessage Header11ProvenanceMSH[Provenance-Source]Provenance[1].target.reference=Bundle.id; Provenance[1].target.reference=MessageHeader[1].id.
1SIU_S12.MSHMSHMessage Header11ProvenanceMSH[Provenance-Transformation]Provenance[2].target.reference=Bundle.id
2SIU_S12.SCHSCHSchedule Activity Information11AppointmentSCH[Appointment]Appointment.participant.actor=Patient[1].id
2SIU_S12.SCHSCHSchedule Activity Information11IF SCH-26 or SCH-27 VALUEDServiceRequestSCH[ServiceRequest]Appointment[1].basedOn=ServiceRequest[1..n].id ServiceRequest[1..n].subject=Patient[1].id
2SIU_S12.SCHSCHSchedule Activity Information11ProvenanceSCH[Provenance]
3SIU_S12.NTE[ { NTE } ]Notes and Comments0-1AppointmentNTE[Appointment-Comment]Appointment.participant.actor=Patient[1].idBecause multiple NTE segments in a message all need to map to a single Appointment.comment element, the content of the NTEs will need to be concatenated together in R4
4SIU_S12.PATIENT[{--- PATIENT begin0-1
4.1SIU_S12.PATIENT.PIDPIDPatient Identification11PatientPID[Patient]Processing of the PID segment results in the creation of a new Patient resource
4.1SIU_S12.PATIENT.PIDPIDPatient Identification11AppointmentPID[Appointment]Appointment.participant.actor=Patient[1].id
4.1SIU_S12.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
4.2SIU_S12.PATIENT.PV1[ PV1 ]Patient Visit01EncounterPV1[Encounter]Encounter[1].subject.reference=Patient[1].idProcessing of the PV1 segment results in the creation of a new Encounter resource
4.2SIU_S12.PATIENT.PV1[ PV1 ]Patient Visit01IF PV1-43 VALUEDBasicPV1[Basic-EncounterHistory]Basic.extension-EncounterHistory.subject.reference=Patient[1].id
4.2SIU_S12.PATIENT.PV1[ PV1 ]Patient Visit01PatientPV1[Patient]
4.2SIU_S12.PATIENT.PV1[ PV1 ]Patient Visit01IF PV1-20 VALUECoveragePV1[Coverage]Coverage.beneficiary.reference=Patient[1].id
4.3SIU_S12.PATIENT.PV2[ PV2 ] Patient Visit - Additional Info01EncounterPV2[Encounter]Encounter.subject=Patient[1].idIncorporate PV2 content into the Encounter created from the PV1 segment.
4.4SIU_S12.PATIENT.OBX[ { OBX } ]Observation/Result0-1IF OBX-5 LST.count LESS THAN OR EQUALS 1 OR OBX-2 IS "NA"ObservationOBX[Observation]Observation.subject=Patient[1].id
4.4SIU_S12.PATIENT.OBX[ { OBX } ]Observation/Result0-1IF OBX-5 LST.count GREATER THAN 1 AND OBX-2 IS NOT "NA"ObservationOBX[Observation-Component]Observation.subject=Patient[1].idNote that when OBX-5 repeats, the standard mapping is to use Observation.component (see OBX[Observation-Component] map) rather than creating separate Observation instances. However, we are aware that some profiles and implementation guides do separate the OBX into multiple observations depending on the OBX-2 value. This is an example of a non-standard interpretation as the OBX should have been separated into multiple OBX segments to start. Please consider the local profiles and implementation guides on how to manage these variants.
4.5SIU_S12.PATIENT.DG1[ { DG1 } ]Diagnosis0-1If in context of the patientConditionDG1[Condition]Condition[1].subject.reference=Patient[1].idProcessing of the DG1 segment results in the creation of a new Condition resource
4.6SIU_S12.PATIENT}]--- PATIENT end0-1
5SIU_S12.RESOURCES{--- RESOURCES begin RGS1-1
5.1SIU_S12.RESOURCES.RGSRGSResource Group Segment 11
5.2SIU_S12.RESOURCES.SERVICE[{--- SERVICE begin AIS0-1
5.2.1SIU_S12.RESOURCES.SERVICE.AISAISAppointment Information - Service11Determine which AIS populates Appointment if there is more than one AIS.AppointmentAIS[Appointment]
5.2.1SIU_S12.RESOURCES.SERVICE.AISAISAppointment Information - Service11IF SCH-26 IS VALUED OR SCH-27 IS VALUEDServiceRequestAIS[ServiceRequest]Note that each ServiceRequest being created includes data from SCH segment. If SCH-26 and SCH-27 repeat, then the implementer needs to determine how to align this with potentially repeating AIS segments.
5.2.2SIU_S12.RESOURCES.SERVICE.NTE[ { NTE } ]Notes and Comments0-1Determine which AIS populates Appointment if there is more than one AIS.AppointmentNTE[Appointment-Comment]Appointment.participant.actor=Patient[1].idBecause multiple NTE segments in a message all need to map to a single Appointment.comment element, the content of the NTEs will need to be concatenated together in R4
5.2.3SIU_S12.RESOURCES.SERVICE}]--- SERVICE end0-1
5.3SIU_S12.RESOURCES.GENERAL_RESOURCE[{--- GENERAL_RESOURCE begin AIG0-1
5.3.1SIU_S12.RESOURCES.GENERAL_RESOURCE.AIGAIGAppointment Information - General Resource11Determine which AIG populates Appointment if there is more than one AIG.AppointmentAIG[Appointment]
5.3.2SIU_S12.RESOURCES.GENERAL_RESOURCE.NTE[ { NTE } ]Notes and Comments0-1
5.3.3SIU_S12.RESOURCES.GENERAL_RESOURCE}]--- GENERAL_RESOURCE end0-1
5.4SIU_S12.RESOURCES.LOCATION_RESOURCE[{--- LOCATION_RESOURCE begin AIL0-1
5.4.1SIU_S12.RESOURCES.LOCATION_RESOURCE.AILAILAppointment Information - Location Resource1-1Determine which AIL populates Appointment if there is more than one AIL.AppointmentAIL[Appointment]
5.4.2SIU_S12.RESOURCES.LOCATION_RESOURCE.NTE[ { NTE } ]Notes and Comments0-1
5.4.3SIU_S12.RESOURCES.LOCATION_RESOURCE}]--- LOCATION_RESOURCE end0-1
5.5SIU_S12.RESOURCES.PERSONNEL_RESOURCE[{--- PERSONNEL_RESOURCE begin AIP0-1
5.5.1SIU_S12.RESOURCES.PERSONNEL_RESOURCE.AIPAIPAppointment Information - Personnel Resource1-1AppointmentAIP[Appointment]
5.5.2SIU_S12.RESOURCES.PERSONNEL_RESOURCE.NTE[ { NTE } ]Notes and Comments0-1
5.5.3SIU_S12.RESOURCES.PERSONNEL_RESOURCE}]--- PERSONNEL_RESOURCE end0-1
5.6SIU_S12.RESOURCES}--- RESOURCES end1-1

Mapping from (not specified) to (not specified)


Group 1 Mapping from unspecified code system to unspecified code system

Source Concept DetailsRelationshipTarget Concept DetailsComment
Codes from NarrativeConditionComputableANTLRCodes from
SIU_S12.MSHMessage Headeris equivalent toBundleBundle
SIU_S12.MSHMessage Headeris equivalent toMessageHeader[1]MessageHeader[1]Processing of the MSH segment results in the creation of a new MessageHeader resource
SIU_S12.MSHMessage Headeris equivalent toProvenance[1]Provenance[1].
SIU_S12.MSHMessage Headeris equivalent toProvenance[2]Provenance[2]
SIU_S12.SCHSchedule Activity Informationis equivalent toAppointment[1]Appointment[1]
SIU_S12.SCHSchedule Activity InformationIF SCH-26 or SCH-27 VALUEDis equivalent toServiceRequest[1..n]ServiceRequest[1..n]
SIU_S12.SCHSchedule Activity Informationis equivalent toProvenance[3]Provenance[3]
SIU_S12.NTENotes and Commentsis equivalent toAppointment[1]Appointment[1]Because multiple NTE segments in a message all need to map to a single Appointment.comment element, the content of the NTEs will need to be concatenated together in R4
SIU_S12.PATIENT.PIDPatient Identificationis equivalent toPatient[1]Patient[1]Processing of the PID segment results in the creation of a new Patient resource
SIU_S12.PATIENT.PIDPatient Identificationis equivalent toAppointment[1]Appointment[1]
SIU_S12.PATIENT.PIDPatient IdentificationOne 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 VALUEDis equivalent toProvenance[4]Provenance[4]
SIU_S12.PATIENT.PV1Patient Visitis equivalent toEncounter[1]Encounter[1]Processing of the PV1 segment results in the creation of a new Encounter resource
SIU_S12.PATIENT.PV1Patient VisitIF PV1-43 VALUEDis equivalent toBasicBasic
SIU_S12.PATIENT.PV1Patient Visitis equivalent toPatient[1]Patient[1]
SIU_S12.PATIENT.PV1Patient VisitIF PV1-20 VALUEis equivalent toCoverage[1]Coverage[1]
SIU_S12.PATIENT.PV2Patient Visit - Additional Infois equivalent toEncounter[1]Encounter[1]Incorporate PV2 content into the Encounter created from the PV1 segment.
SIU_S12.PATIENT.OBXObservation/ResultIF OBX-5 LST.count LESS THAN OR EQUALS 1 OR OBX-2 IS "NA"is equivalent toObservation[1]Observation[1]
SIU_S12.PATIENT.OBXObservation/ResultIF OBX-5 LST.count GREATER THAN 1 AND OBX-2 IS NOT "NA"is equivalent toObservation[1]Observation[1]Note that when OBX-5 repeats, the standard mapping is to use Observation.component (see OBX[Observation-Component] map) rather than creating separate Observation instances. However, we are aware that some profiles and implementation guides do separate the OBX into multiple observations depending on the OBX-2 value. This is an example of a non-standard interpretation as the OBX should have been separated into multiple OBX segments to start. Please consider the local profiles and implementation guides on how to manage these variants.
SIU_S12.PATIENT.DG1DiagnosisIf in context of the patientis equivalent toCondition[1]Condition[1]Processing of the DG1 segment results in the creation of a new Condition resource
SIU_S12.RESOURCES.SERVICE.AISAppointment Information - ServiceDetermine which AIS populates Appointment if there is more than one AIS.is equivalent toAppointment[1]Appointment[1]
SIU_S12.RESOURCES.SERVICE.AISAppointment Information - ServiceIF SCH-26 IS VALUED OR SCH-27 IS VALUEDis equivalent toServiceRequest[n]ServiceRequest[n]Note that each ServiceRequest being created includes data from SCH segment. If SCH-26 and SCH-27 repeat, then the implementer needs to determine how to align this with potentially repeating AIS segments.\
SIU_S12.RESOURCES.SERVICE.NTENotes and CommentsDetermine which AIS populates Appointment if there is more than one AIS.is equivalent toAppointment[1]Appointment[1]Because multiple NTE segments in a message all need to map to a single Appointment.comment element, the content of the NTEs will need to be concatenated together in R4
SIU_S12.RESOURCES.GENERAL_RESOURCE.AIGAppointment Information - General ResourceDetermine which AIG populates Appointment if there is more than one AIG.is equivalent toAppointment[1]Appointment[1]
SIU_S12.RESOURCES.LOCATION_RESOURCE.AILAppointment Information - Location ResourceDetermine which AIL populates Appointment if there is more than one AIL.is equivalent toAppointment[1]Appointment[1]
SIU_S12.RESOURCES.PERSONNEL_RESOURCE.AIPAppointment Information - Personnel Resourceis equivalent toAppointment[1]Appointment[1]

Notes: