HL7 Version 2 to FHIR
1.0.0 - STU 1

HL7 Version 2 to FHIR - Downloaded Version 1.0.0 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 v2 | Condition (IF True, args) | HL7 FHIR | Comments
--- | --- | --- | ---
Sort Order | Identifier | Name | Data Type | Cardinality - Min | Cardinality - Max | Computable ANTLR | Computable FHIRPath | Narrative | FHIR Attribute | Extension | Data Type | Cardinality - Min | Cardinality - Max | Data Type Mapping | Vocabulary Mapping (IS, ID, CE, CEN, CWE) | Assignment
1 | SPM-1 | Set ID - SPM | SI | 0 | 1 |  |  |  |  |  |  |  |  |  |  |  |
2 | SPM-2 | Specimen ID | EIP | 0 | 1 |  |  |  | Identifier |  | Identifier | 0 | -1 | EIP[Identifier-PlacerAssignedIdentifier] |  |  |
2 | SPM-2 | Specimen ID | EIP | 0 | 1 |  |  |  | Identifier |  | Identifier | 0 | -1 | EIP[Identifier-FillerAssignedIdentifier] |  |  |
3 | SPM-3 | Specimen Parent IDs | EIP | 0 | -1 |  |  |  | Specimen.parent(Specimen.Specimen.identifier) |  | Identifier | 0 | -1 | EIP[Identifier-PlacerAssignedIdentifier] |  |  |
3 | SPM-3 | Specimen Parent IDs | EIP | 0 | -1 |  |  |  | Specimen.parent(Specimen.Specimen.identifier) |  | Identifier | 0 | -1 | EIP[Identifier-FillerAssignedIdentifier] |  |  |
4 | SPM-4 | Specimen Type | CWE | 1 | 1 |  |  |  | Specimen.type |  | CodeableConcept | 0 | 1 | CWE[CodeableConcept] | SpecimenType |  |
5 | SPM-5 | Specimen Type Modifier | CWE | 0 | -1 |  |  |  |  |  |  |  |  |  |  |  |
6 | SPM-6 | Specimen Additives | CWE | 0 | -1 |  |  |  | Specimen.container.additiveCodeableConcept |  | CodeableConcept | 0 | 1 | CWE[CodeableConcept] | Additive/Preservative |  |
7 | SPM-7 | Specimen Collection Method | CWE | 0 | 1 |  |  |  | Specimen.collection.method |  | CodeableConcept | 0 | 1 | CWE[CodeableConcept] | SpecimenCollectionMethod |  | This should not be populated in a message corresponding to a ServiceRequest (eg ORM)
8 | SPM-8 | Specimen Source Site | CWE | 0 | 1 |  |  |  | Specimen.collection.bodySite |  | CodeableConcept | 0 | 1 | CWE[CodeableConcept] | SpecimenSourceSite |  | This should not be populated in a message corresponding to a ServiceRequest (eg ORM)
9 | SPM-9 | Specimen Source Site Modifier | CWE | 0 | -1 |  |  |  |  | collection.extension??-bodySiteModifier | CodeableConcept | 0 | -1 | CWE[CodeableConcept] | SpecimenSourceTypeModifier |  | Note that when using SNOMED codes in SPM-8, these are covered.
10 | SPM-10 | Specimen Collection Site | CWE | 0 | 1 |  |  |  |  |  |  |  |  |  |  |  |
11 | SPM-11 | Specimen Role | CWE | 0 | -1 |  |  |  |  |  |  |  |  |  |  |  |
12 | SPM-12 | Specimen Collection Amount | CQ | 0 | 1 |  |  |  | Specimen.collection.quantity |  | SimpleQuantity | 0 | 1 | CQ[Quantity] |  |  |
13 | SPM-13 | Grouped Specimen Count | NM | 0 | 1 |  |  |  |  |  |  |  |  |  |  |  |
14 | SPM-14 | Specimen Description | ST | 0 | -1 |  |  |  | Specimen.note(Specimen.Annotation.text) |  | markdown | 1 | 1 |  |  |  |
15 | SPM-15 | Specimen Handling Code | CWE | 0 | -1 |  |  |  |  |  |  |  |  |  |  |  |
16 | SPM-16 | Specimen Risk Code | CWE | 0 | -1 |  |  |  |  |  |  |  |  |  |  |  |
17 | SPM-17 | Specimen Collection Date/Time | DR | 0 | 1 | IF SPM-17.2 VALUED |  |  | Specimen.collection.collectedPeriod |  |  |  |  | DR[Period] |  |  |
17 | SPM-17 | Specimen Collection Date/Time | DR | 0 | 1 | IF SPM-17.2 NOT VALUED |  |  | Specimen.collection.collectedDateTime |  |  |  |  | DR[dateTime] |  |  |
18 | SPM-18 | Specimen Received Date/Time | DTM | 0 | 1 |  |  |  | Specimen.receivedTime |  | dateTime | 0 | 1 |  |  |  |
19 | SPM-19 | Specimen Expiration Date/Time | DTM | 0 | 1 |  |  |  |  |  |  |  |  |  |  |  |
20 | SPM-20 | Specimen Availability | ID | 0 | 1 |  |  |  | Specimen.status |  | code | 0 | 1 |  | Yes/NoIndicator[AvailabilityStatus] |  |
21 | SPM-21 | Specimen Reject Reason | CWE | 0 | -1 |  |  |  |  |  |  |  |  |  | SpecimenRejectReason |  | This 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.
22 | SPM-22 | Specimen Quality | CWE | 0 | 1 |  |  |  |  |  |  |  |  |  |  |  |
23 | SPM-23 | Specimen Appropriateness | CWE | 0 | 1 |  |  |  |  |  |  |  |  |  |  |  |
24 | SPM-24 | Specimen Condition | CWE | 0 | -1 |  |  |  | Specimen.condition |  | CodeableConcept | 0 | -1 | CWE[CodeableConcept] | SpecimenCondition |  |
25 | SPM-25 | Specimen Current Quantity | CQ | 0 | 1 |  |  |  |  |  |  |  |  |  |  |  |
26 | SPM-26 | Number of Specimen Containers | NM | 0 | 1 |  |  |  |  |  |  |  |  |  |  |  |
27 | SPM-27 | Container Type | CWE | 0 | 1 |  |  |  | Specimen.container.type |  | CodeableConcept | 0 | 1 | CWE[CodeableConcept] | ContainerType |  |
28 | SPM-28 | Container Condition | CWE | 0 | 1 |  |  |  |  |  |  |  |  |  |  |  |
29 | SPM-29 | Specimen Child Role | CWE | 0 | 1 |  |  |  |  |  |  |  |  |  |  |  |
30 | SPM-30 | Accession ID | CX | 0 | -1 |  |  |  | Specimen.accessionIdentifier |  | Identifier | 0 | 1 | CX[Identifier] |  |  |
31 | SPM-31 | Other Specimen ID | CX | 0 | -1 |  |  |  | Identifier |  | Identifier | 0 | -1 | CX[Identifier] |  |  |
32 | SPM-32 | Shipment ID | EI | 0 | 1 |  |  |  | Identifier |  | Identifier | 0 | -1 | EI[Identifier-Extension] |  |  |
32 | SPM-32 | Shipment ID | EI | 0 | 1 |  |  |  | Specimen.identifier.type.coding.code | assign: "SHIP" | code | 0 | 1 |  |  |  |
32 | SPM-32 | Shipment ID | EI | 0 | 1 |  |  |  | Specimen.identifier.type.coding.system |  | uri | 0 | 1 |  |  |  |

Mapping from (not specified) to (not specified)

Group 1 Mapping from `unspecified code system` to `unspecified code system`

Source Concept Details | Relationship | Target Concept Details | Comment
Codes from | ComputableANTLR |  | Codes from |
SPM-2 | Specimen ID |  | is equivalent to | identifier[1] | identifier[1] |
SPM-2 | Specimen ID |  | is equivalent to | identifier[2] | identifier[2] |
SPM-3 | Specimen Parent IDs |  | is equivalent to | parent[1](Specimen.identifier[1]) | parent[1](Specimen.identifier[1]) |
SPM-3 | Specimen Parent IDs |  | is equivalent to | parent[1](Specimen.identifier[2]) | parent[1](Specimen.identifier[2]) |
SPM-4 | Specimen Type |  | is equivalent to | type | type |
SPM-6 | Specimen Additives |  | is equivalent to | container.additiveCodeableConcept | container.additiveCodeableConcept |
SPM-7 | Specimen Collection Method |  | is equivalent to | collection.method | collection.method | This should not be populated in a message corresponding to a ServiceRequest (eg ORM)
SPM-8 | Specimen Source Site |  | is equivalent to | collection.bodySite | collection.bodySite | This should not be populated in a message corresponding to a ServiceRequest (eg ORM)
SPM-12 | Specimen Collection Amount |  | is equivalent to | collection.quantity | collection.quantity |
SPM-14 | Specimen Description |  | is equivalent to | note(Annotation.text) | note(Annotation.text) |
SPM-17 | Specimen Collection Date/Time | IF SPM-17.2 VALUED | is equivalent to | collection.collectedPeriod | collection.collectedPeriod |
SPM-17 | Specimen Collection Date/Time | IF SPM-17.2 NOT VALUED | is equivalent to | collection.collectedDateTime | collection.collectedDateTime |
SPM-18 | Specimen Received Date/Time |  | is equivalent to | receivedTime | receivedTime |
SPM-20 | Specimen Availability |  | is equivalent to | status | status |
SPM-24 | Specimen Condition |  | is equivalent to | condition | condition |
SPM-27 | Container Type |  | is equivalent to | container.type | container.type |
SPM-30 | Accession ID |  | is equivalent to | accessionIdentifier | accessionIdentifier |
SPM-31 | Other Specimen ID |  | is equivalent to | identifier[2] | identifier[2] |
SPM-32 | Shipment ID |  | is equivalent to | identifier[3] | identifier[3] |
SPM-32 | Shipment ID |  | is equivalent to | identifier[3].type.coding.code | identifier[3].type.coding.code |
SPM-32 | Shipment ID |  | is equivalent to | identifier[3].type.coding.system | = "http://terminology.hl7.org/CodeSystem/v2-0203" |

### Notes: