This page is part of the FHIR Specification (v3.3.0: R4 Ballot 2). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B R4
Orders and Observations Work Group | Maturity Level: 0 | Trial Use | Compartments: Not linked to any defined compartments |
A kind of specimen with associated set of requirements.
SpecimenDefinition will define a kind of specimen, which can be associated with in vitro diagnostic procedures described in a catalog of orderable services. SpecimenDefinition describes the kind of specimen to be collected from the subject of these procedures as well as the requirements applying to the collection activity, the preparation of the subject for this collection. This resource also describes the associated type(s) of specimen conditioned for testing, which are the output of the specimen collection activity. A specimen conditioned for testing is described with the type(s) of container and possible additive to be used, the minimal and normal volumes of collection, the conditions of storage, transportation and handling for the specimen once collected and conditioned. This resource is a necessary building block of a sharable catalog of orderable in vitro diagnostic services. The subjects of these orderable services may be human patients, non-human living subjects or non-living materials such as water, surfaces, medical devices ... All sub-specialties of clinical and anatomic pathology latoratories are concerned, as well as all care services prone to order in vitro diagnostic services to those laboratories. A catalog of orderable services generally belongs to a specific laboratory or facility. Nonetheless, the data items used to build this catalog are of universal meaning and interest.
This resource relates to these other resources:
This resource is referenced by ActivityDefinition and EntryDefinition
Structure
UML Diagram (Legend)
XML Template
<SpecimenDefinition xmlns="http://hl7.org/fhir"> <!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension --> <identifier><!-- 0..1 Identifier Business identifier of a kind of specimen --></identifier> <typeCollected><!-- 0..1 CodeableConcept Kind of material to collect --></typeCollected> <patientPreparation value="[string]"/><!-- 0..1 Patient preparation for collection --> <timeAspect value="[string]"/><!-- 0..1 Time aspect for collection --> <collection><!-- 0..* CodeableConcept Specimen collection procedure --></collection> <specimenToLab> <!-- 0..* Specimen in container intended for testing by lab --> <isDerived value="[boolean]"/><!-- 1..1 Primary or secondary specimen --> <type><!-- 0..1 CodeableConcept Type of intended specimen --></type> <preference value="[code]"/><!-- 1..1 preferred | alternate --> <containerMaterial><!-- 0..1 CodeableConcept Container material --></containerMaterial> <containerType><!-- 0..1 CodeableConcept Kind of container associated with the kind of specimen --></containerType> <containerCap><!-- 0..1 CodeableConcept Color of container cap --></containerCap> <containerDescription value="[string]"/><!-- 0..1 Container description --> <containerCapacity><!-- 0..1 Quantity(SimpleQuantity) Container capacity --></containerCapacity> <containerMinimumVolume><!-- 0..1 Quantity(SimpleQuantity) Minimum volume --></containerMinimumVolume> <containerAdditive> <!-- 0..* Additive associated with container --> <additive[x]><!-- 1..1 CodeableConcept|Reference(Substance) Additive associated with container --></additive[x]> </containerAdditive> <containerPreparation value="[string]"/><!-- 0..1 Specimen container preparation --> <requirement value="[string]"/><!-- 0..1 Specimen requirements --> <retentionTime><!-- 0..1 Duration Specimen retention time --></retentionTime> <rejectionCriterion><!-- 0..* CodeableConcept Rejection criterion --></rejectionCriterion> <handling> <!-- 0..* Specimen handling before testing --> <conditionSet><!-- 0..1 CodeableConcept Conservation condition set --></conditionSet> <tempRange><!-- 0..1 Range Temperature range --></tempRange> <maxDuration><!-- 0..1 Duration Maximum conservation time --></maxDuration> <lightExposure value="[string]"/><!-- 0..1 Light exposure --> <instruction value="[string]"/><!-- 0..1 Conservation instruction --> </handling> </specimenToLab> </SpecimenDefinition>
JSON Template
{ "resourceType" : "SpecimenDefinition", // from Resource: id, meta, implicitRules, and language // from DomainResource: text, contained, extension, and modifierExtension "identifier" : { Identifier }, // Business identifier of a kind of specimen "typeCollected" : { CodeableConcept }, // Kind of material to collect "patientPreparation" : "<string>", // Patient preparation for collection "timeAspect" : "<string>", // Time aspect for collection "collection" : [{ CodeableConcept }], // Specimen collection procedure "specimenToLab" : [{ // Specimen in container intended for testing by lab "isDerived" : <boolean>, // R! Primary or secondary specimen "type" : { CodeableConcept }, // Type of intended specimen "preference" : "<code>", // R! preferred | alternate "containerMaterial" : { CodeableConcept }, // Container material "containerType" : { CodeableConcept }, // Kind of container associated with the kind of specimen "containerCap" : { CodeableConcept }, // Color of container cap "containerDescription" : "<string>", // Container description "containerCapacity" : { Quantity(SimpleQuantity) }, // Container capacity "containerMinimumVolume" : { Quantity(SimpleQuantity) }, // Minimum volume "containerAdditive" : [{ // Additive associated with container // additive[x]: Additive associated with container. One of these 2: "additiveCodeableConcept" : { CodeableConcept } "additiveReference" : { Reference(Substance) } }], "containerPreparation" : "<string>", // Specimen container preparation "requirement" : "<string>", // Specimen requirements "retentionTime" : { Duration }, // Specimen retention time "rejectionCriterion" : [{ CodeableConcept }], // Rejection criterion "handling" : [{ // Specimen handling before testing "conditionSet" : { CodeableConcept }, // Conservation condition set "tempRange" : { Range }, // Temperature range "maxDuration" : { Duration }, // Maximum conservation time "lightExposure" : "<string>", // Light exposure "instruction" : "<string>" // Conservation instruction }] }] }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ a fhir:SpecimenDefinition; fhir:nodeRole fhir:treeRoot; # if this is the parser root # from Resource: .id, .meta, .implicitRules, and .language # from DomainResource: .text, .contained, .extension, and .modifierExtension fhir:SpecimenDefinition.identifier [ Identifier ]; # 0..1 Business identifier of a kind of specimen fhir:SpecimenDefinition.typeCollected [ CodeableConcept ]; # 0..1 Kind of material to collect fhir:SpecimenDefinition.patientPreparation [ string ]; # 0..1 Patient preparation for collection fhir:SpecimenDefinition.timeAspect [ string ]; # 0..1 Time aspect for collection fhir:SpecimenDefinition.collection [ CodeableConcept ], ... ; # 0..* Specimen collection procedure fhir:SpecimenDefinition.specimenToLab [ # 0..* Specimen in container intended for testing by lab fhir:SpecimenDefinition.specimenToLab.isDerived [ boolean ]; # 1..1 Primary or secondary specimen fhir:SpecimenDefinition.specimenToLab.type [ CodeableConcept ]; # 0..1 Type of intended specimen fhir:SpecimenDefinition.specimenToLab.preference [ code ]; # 1..1 preferred | alternate fhir:SpecimenDefinition.specimenToLab.containerMaterial [ CodeableConcept ]; # 0..1 Container material fhir:SpecimenDefinition.specimenToLab.containerType [ CodeableConcept ]; # 0..1 Kind of container associated with the kind of specimen fhir:SpecimenDefinition.specimenToLab.containerCap [ CodeableConcept ]; # 0..1 Color of container cap fhir:SpecimenDefinition.specimenToLab.containerDescription [ string ]; # 0..1 Container description fhir:SpecimenDefinition.specimenToLab.containerCapacity [ Quantity(SimpleQuantity) ]; # 0..1 Container capacity fhir:SpecimenDefinition.specimenToLab.containerMinimumVolume [ Quantity(SimpleQuantity) ]; # 0..1 Minimum volume fhir:SpecimenDefinition.specimenToLab.containerAdditive [ # 0..* Additive associated with container # SpecimenDefinition.specimenToLab.containerAdditive.additive[x] : 1..1 Additive associated with container. One of these 2 fhir:SpecimenDefinition.specimenToLab.containerAdditive.additiveCodeableConcept [ CodeableConcept ] fhir:SpecimenDefinition.specimenToLab.containerAdditive.additiveReference [ Reference(Substance) ] ], ...; fhir:SpecimenDefinition.specimenToLab.containerPreparation [ string ]; # 0..1 Specimen container preparation fhir:SpecimenDefinition.specimenToLab.requirement [ string ]; # 0..1 Specimen requirements fhir:SpecimenDefinition.specimenToLab.retentionTime [ Duration ]; # 0..1 Specimen retention time fhir:SpecimenDefinition.specimenToLab.rejectionCriterion [ CodeableConcept ], ... ; # 0..* Rejection criterion fhir:SpecimenDefinition.specimenToLab.handling [ # 0..* Specimen handling before testing fhir:SpecimenDefinition.specimenToLab.handling.conditionSet [ CodeableConcept ]; # 0..1 Conservation condition set fhir:SpecimenDefinition.specimenToLab.handling.tempRange [ Range ]; # 0..1 Temperature range fhir:SpecimenDefinition.specimenToLab.handling.maxDuration [ Duration ]; # 0..1 Maximum conservation time fhir:SpecimenDefinition.specimenToLab.handling.lightExposure [ string ]; # 0..1 Light exposure fhir:SpecimenDefinition.specimenToLab.handling.instruction [ string ]; # 0..1 Conservation instruction ], ...; ], ...; ]
Structure
XML Template
<SpecimenDefinition xmlns="http://hl7.org/fhir"> <!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension --> <identifier><!-- 0..1 Identifier Business identifier of a kind of specimen --></identifier> <typeCollected><!-- 0..1 CodeableConcept Kind of material to collect --></typeCollected> <patientPreparation value="[string]"/><!-- 0..1 Patient preparation for collection --> <timeAspect value="[string]"/><!-- 0..1 Time aspect for collection --> <collection><!-- 0..* CodeableConcept Specimen collection procedure --></collection> <specimenToLab> <!-- 0..* Specimen in container intended for testing by lab --> <isDerived value="[boolean]"/><!-- 1..1 Primary or secondary specimen --> <type><!-- 0..1 CodeableConcept Type of intended specimen --></type> <preference value="[code]"/><!-- 1..1 preferred | alternate --> <containerMaterial><!-- 0..1 CodeableConcept Container material --></containerMaterial> <containerType><!-- 0..1 CodeableConcept Kind of container associated with the kind of specimen --></containerType> <containerCap><!-- 0..1 CodeableConcept Color of container cap --></containerCap> <containerDescription value="[string]"/><!-- 0..1 Container description --> <containerCapacity><!-- 0..1 Quantity(SimpleQuantity) Container capacity --></containerCapacity> <containerMinimumVolume><!-- 0..1 Quantity(SimpleQuantity) Minimum volume --></containerMinimumVolume> <containerAdditive> <!-- 0..* Additive associated with container --> <additive[x]><!-- 1..1 CodeableConcept|Reference(Substance) Additive associated with container --></additive[x]> </containerAdditive> <containerPreparation value="[string]"/><!-- 0..1 Specimen container preparation --> <requirement value="[string]"/><!-- 0..1 Specimen requirements --> <retentionTime><!-- 0..1 Duration Specimen retention time --></retentionTime> <rejectionCriterion><!-- 0..* CodeableConcept Rejection criterion --></rejectionCriterion> <handling> <!-- 0..* Specimen handling before testing --> <conditionSet><!-- 0..1 CodeableConcept Conservation condition set --></conditionSet> <tempRange><!-- 0..1 Range Temperature range --></tempRange> <maxDuration><!-- 0..1 Duration Maximum conservation time --></maxDuration> <lightExposure value="[string]"/><!-- 0..1 Light exposure --> <instruction value="[string]"/><!-- 0..1 Conservation instruction --> </handling> </specimenToLab> </SpecimenDefinition>
JSON Template
{ "resourceType" : "SpecimenDefinition", // from Resource: id, meta, implicitRules, and language // from DomainResource: text, contained, extension, and modifierExtension "identifier" : { Identifier }, // Business identifier of a kind of specimen "typeCollected" : { CodeableConcept }, // Kind of material to collect "patientPreparation" : "<string>", // Patient preparation for collection "timeAspect" : "<string>", // Time aspect for collection "collection" : [{ CodeableConcept }], // Specimen collection procedure "specimenToLab" : [{ // Specimen in container intended for testing by lab "isDerived" : <boolean>, // R! Primary or secondary specimen "type" : { CodeableConcept }, // Type of intended specimen "preference" : "<code>", // R! preferred | alternate "containerMaterial" : { CodeableConcept }, // Container material "containerType" : { CodeableConcept }, // Kind of container associated with the kind of specimen "containerCap" : { CodeableConcept }, // Color of container cap "containerDescription" : "<string>", // Container description "containerCapacity" : { Quantity(SimpleQuantity) }, // Container capacity "containerMinimumVolume" : { Quantity(SimpleQuantity) }, // Minimum volume "containerAdditive" : [{ // Additive associated with container // additive[x]: Additive associated with container. One of these 2: "additiveCodeableConcept" : { CodeableConcept } "additiveReference" : { Reference(Substance) } }], "containerPreparation" : "<string>", // Specimen container preparation "requirement" : "<string>", // Specimen requirements "retentionTime" : { Duration }, // Specimen retention time "rejectionCriterion" : [{ CodeableConcept }], // Rejection criterion "handling" : [{ // Specimen handling before testing "conditionSet" : { CodeableConcept }, // Conservation condition set "tempRange" : { Range }, // Temperature range "maxDuration" : { Duration }, // Maximum conservation time "lightExposure" : "<string>", // Light exposure "instruction" : "<string>" // Conservation instruction }] }] }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ a fhir:SpecimenDefinition; fhir:nodeRole fhir:treeRoot; # if this is the parser root # from Resource: .id, .meta, .implicitRules, and .language # from DomainResource: .text, .contained, .extension, and .modifierExtension fhir:SpecimenDefinition.identifier [ Identifier ]; # 0..1 Business identifier of a kind of specimen fhir:SpecimenDefinition.typeCollected [ CodeableConcept ]; # 0..1 Kind of material to collect fhir:SpecimenDefinition.patientPreparation [ string ]; # 0..1 Patient preparation for collection fhir:SpecimenDefinition.timeAspect [ string ]; # 0..1 Time aspect for collection fhir:SpecimenDefinition.collection [ CodeableConcept ], ... ; # 0..* Specimen collection procedure fhir:SpecimenDefinition.specimenToLab [ # 0..* Specimen in container intended for testing by lab fhir:SpecimenDefinition.specimenToLab.isDerived [ boolean ]; # 1..1 Primary or secondary specimen fhir:SpecimenDefinition.specimenToLab.type [ CodeableConcept ]; # 0..1 Type of intended specimen fhir:SpecimenDefinition.specimenToLab.preference [ code ]; # 1..1 preferred | alternate fhir:SpecimenDefinition.specimenToLab.containerMaterial [ CodeableConcept ]; # 0..1 Container material fhir:SpecimenDefinition.specimenToLab.containerType [ CodeableConcept ]; # 0..1 Kind of container associated with the kind of specimen fhir:SpecimenDefinition.specimenToLab.containerCap [ CodeableConcept ]; # 0..1 Color of container cap fhir:SpecimenDefinition.specimenToLab.containerDescription [ string ]; # 0..1 Container description fhir:SpecimenDefinition.specimenToLab.containerCapacity [ Quantity(SimpleQuantity) ]; # 0..1 Container capacity fhir:SpecimenDefinition.specimenToLab.containerMinimumVolume [ Quantity(SimpleQuantity) ]; # 0..1 Minimum volume fhir:SpecimenDefinition.specimenToLab.containerAdditive [ # 0..* Additive associated with container # SpecimenDefinition.specimenToLab.containerAdditive.additive[x] : 1..1 Additive associated with container. One of these 2 fhir:SpecimenDefinition.specimenToLab.containerAdditive.additiveCodeableConcept [ CodeableConcept ] fhir:SpecimenDefinition.specimenToLab.containerAdditive.additiveReference [ Reference(Substance) ] ], ...; fhir:SpecimenDefinition.specimenToLab.containerPreparation [ string ]; # 0..1 Specimen container preparation fhir:SpecimenDefinition.specimenToLab.requirement [ string ]; # 0..1 Specimen requirements fhir:SpecimenDefinition.specimenToLab.retentionTime [ Duration ]; # 0..1 Specimen retention time fhir:SpecimenDefinition.specimenToLab.rejectionCriterion [ CodeableConcept ], ... ; # 0..* Rejection criterion fhir:SpecimenDefinition.specimenToLab.handling [ # 0..* Specimen handling before testing fhir:SpecimenDefinition.specimenToLab.handling.conditionSet [ CodeableConcept ]; # 0..1 Conservation condition set fhir:SpecimenDefinition.specimenToLab.handling.tempRange [ Range ]; # 0..1 Temperature range fhir:SpecimenDefinition.specimenToLab.handling.maxDuration [ Duration ]; # 0..1 Maximum conservation time fhir:SpecimenDefinition.specimenToLab.handling.lightExposure [ string ]; # 0..1 Light exposure fhir:SpecimenDefinition.specimenToLab.handling.instruction [ string ]; # 0..1 Conservation instruction ], ...; ], ...; ]
Alternate definitions: Master Definition XML + JSON, XML Schema/Schematron + JSON Schema, ShEx (for Turtle) + see the extensions & the dependency analysis
Path | Definition | Type | Reference |
---|---|---|---|
SpecimenDefinition.typeCollected | The type of the specimen to be collected. | Example | v2 Specimen Type |
SpecimenDefinition.collection | The action to collect a type of specimen | Unknown | No details provided yet |
SpecimenDefinition.specimenToLab.type | The type of specimen conditioned in a container for lab testing | Example | v2 Specimen Type |
SpecimenDefinition.specimenToLab.preference | Degree of preference of a type of conditioned specimen | Required | SpecimenContainedPreference |
SpecimenDefinition.specimenToLab.containerType | Type of specimen container | Example | LOINC Codes for Cholesterol in Serum/Plasma |
SpecimenDefinition.specimenToLab.containerCap | Color of the container cap | Example | ContainerCap |
SpecimenDefinition.specimenToLab.containerAdditive.additive[x] | Substance added to specimen container | Example | v2 Additive/Preservative |
SpecimenDefinition.specimenToLab.rejectionCriterion | Criterion for rejection of the specimen by laboratory | Example | RejectionCriterion |
SpecimenDefinition.specimenToLab.handling.conditionSet | Set of handling instructions prior testing of the specimen | Example | HandlingConditionSet |
Search parameters for this resource. The common parameters also apply. See Searching for more information about searching in REST, messaging, and services.
Name | Type | Description | Expression | In Common |
container | token | The type of specimen conditioned in container expected by the lab | SpecimenDefinition.specimenToLab.containerType | |
identifier | token | The unique identifier associated with the specimen | SpecimenDefinition.identifier | |
type | token | The type of collected specimen | SpecimenDefinition.typeCollected |