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: Segment SPM to Specimen Map (Experimental)

Official URL: http://hl7.org/fhir/uv/v2mappings/ConceptMap/segment-spm-to-specimen Version: 1.0.0
Standards status: Informative Computable Name: SegmentSPMToSpecimen

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

This ConceptMap represents a mapping from the HL7 V2 Segment SPM to the FHIR Specimen Resource.

This ConceptMap represents the mapping from the HL7 V2 SPM Segment to the FHIR Specimen 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 MappingVocabulary Mapping
(IS, ID, CE, CEN, CWE)
Assignment
1SPM-1Set ID - SPMSI01
2SPM-2Specimen IDEIP01IdentifierIdentifier0-1EIP[Identifier-PlacerAssignedIdentifier]
2SPM-2Specimen IDEIP01IdentifierIdentifier0-1EIP[Identifier-FillerAssignedIdentifier]
3SPM-3Specimen Parent IDsEIP0-1Specimen.parent(Specimen.Specimen.identifier)Identifier0-1EIP[Identifier-PlacerAssignedIdentifier]
3SPM-3Specimen Parent IDsEIP0-1Specimen.parent(Specimen.Specimen.identifier)Identifier0-1EIP[Identifier-FillerAssignedIdentifier]
4SPM-4Specimen TypeCWE11Specimen.typeCodeableConcept01CWE[CodeableConcept]SpecimenType
5SPM-5Specimen Type ModifierCWE0-1
6SPM-6Specimen AdditivesCWE0-1Specimen.container.additiveCodeableConceptCodeableConcept01CWE[CodeableConcept]Additive/Preservative
7SPM-7Specimen Collection MethodCWE01Specimen.collection.methodCodeableConcept01CWE[CodeableConcept]SpecimenCollectionMethodThis should not be populated in a message corresponding to a ServiceRequest (eg ORM)
8SPM-8Specimen Source SiteCWE01Specimen.collection.bodySiteCodeableConcept01CWE[CodeableConcept]SpecimenSourceSiteThis should not be populated in a message corresponding to a ServiceRequest (eg ORM)
9SPM-9Specimen Source Site ModifierCWE0-1collection.extension??-bodySiteModifierCodeableConcept0-1CWE[CodeableConcept]SpecimenSourceTypeModifierNote that when using SNOMED codes in SPM-8, these are covered.
10SPM-10Specimen Collection SiteCWE01
11SPM-11Specimen RoleCWE0-1
12SPM-12Specimen Collection AmountCQ01Specimen.collection.quantitySimpleQuantity01CQ[Quantity]
13SPM-13Grouped Specimen CountNM01
14SPM-14Specimen DescriptionST0-1Specimen.note(Specimen.Annotation.text)markdown11
15SPM-15Specimen Handling CodeCWE0-1
16SPM-16Specimen Risk CodeCWE0-1
17SPM-17Specimen Collection Date/TimeDR01IF SPM-17.2 VALUEDSpecimen.collection.collectedPeriodDR[Period]
17SPM-17Specimen Collection Date/TimeDR01IF SPM-17.2 NOT VALUEDSpecimen.collection.collectedDateTimeDR[dateTime]
18SPM-18Specimen Received Date/TimeDTM01Specimen.receivedTimedateTime01
19SPM-19Specimen Expiration Date/TimeDTM01
20SPM-20Specimen AvailabilityID01Specimen.statuscode01Yes/NoIndicator[AvailabilityStatus]
21SPM-21Specimen Reject ReasonCWE0-1SpecimenRejectReasonThis should be mapped top the correct ServiceRequest.dataAbsentReason as the speciman is rejected in the context of a particular test given the specimen condition. Since the placement of the SPM in the message is not always clear as to which ORC/OBR it relates to, we cannot provide specific mapping beyond the vocabulary map.
22SPM-22Specimen QualityCWE01
23SPM-23Specimen AppropriatenessCWE01
24SPM-24Specimen ConditionCWE0-1Specimen.conditionCodeableConcept0-1CWE[CodeableConcept]SpecimenCondition
25SPM-25Specimen Current QuantityCQ01
26SPM-26Number of Specimen ContainersNM01
27SPM-27Container TypeCWE01Specimen.container.typeCodeableConcept01CWE[CodeableConcept]ContainerType
28SPM-28Container ConditionCWE01
29SPM-29Specimen Child RoleCWE01
30SPM-30Accession IDCX0-1Specimen.accessionIdentifierIdentifier01CX[Identifier]
31SPM-31Other Specimen IDCX0-1IdentifierIdentifier0-1CX[Identifier]
32SPM-32Shipment IDEI01IdentifierIdentifier0-1EI[Identifier-Extension]
32SPM-32Shipment IDEI01Specimen.identifier.type.coding.codeassign: "SHIP"code01
32SPM-32Shipment IDEI01Specimen.identifier.type.coding.systemuri01

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 ComputableANTLRCodes from
SPM-2Specimen IDis equivalent toidentifier[1]identifier[1]
SPM-2Specimen IDis equivalent toidentifier[2]identifier[2]
SPM-3Specimen Parent IDsis equivalent toparent[1](Specimen.identifier[1])parent[1](Specimen.identifier[1])
SPM-3Specimen Parent IDsis equivalent toparent[1](Specimen.identifier[2])parent[1](Specimen.identifier[2])
SPM-4Specimen Typeis equivalent totypetype
SPM-6Specimen Additivesis equivalent tocontainer.additiveCodeableConceptcontainer.additiveCodeableConcept
SPM-7Specimen Collection Methodis equivalent tocollection.methodcollection.methodThis should not be populated in a message corresponding to a ServiceRequest (eg ORM)
SPM-8Specimen Source Siteis equivalent tocollection.bodySitecollection.bodySiteThis should not be populated in a message corresponding to a ServiceRequest (eg ORM)
SPM-12Specimen Collection Amountis equivalent tocollection.quantitycollection.quantity
SPM-14Specimen Descriptionis equivalent tonote(Annotation.text)note(Annotation.text)
SPM-17Specimen Collection Date/TimeIF SPM-17.2 VALUEDis equivalent tocollection.collectedPeriodcollection.collectedPeriod
SPM-17Specimen Collection Date/TimeIF SPM-17.2 NOT VALUEDis equivalent tocollection.collectedDateTimecollection.collectedDateTime
SPM-18Specimen Received Date/Timeis equivalent toreceivedTimereceivedTime
SPM-20Specimen Availabilityis equivalent tostatusstatus
SPM-24Specimen Conditionis equivalent toconditioncondition
SPM-27Container Typeis equivalent tocontainer.typecontainer.type
SPM-30Accession IDis equivalent toaccessionIdentifieraccessionIdentifier
SPM-31Other Specimen IDis equivalent toidentifier[2]identifier[2]
SPM-32Shipment IDis equivalent toidentifier[3]identifier[3]
SPM-32Shipment IDis equivalent toidentifier[3].type.coding.codeidentifier[3].type.coding.code
SPM-32Shipment IDis equivalent toidentifier[3].type.coding.system= "http://terminology.hl7.org/CodeSystem/v2-0203"

Notes: