This page is part of the FHIR Specification (v4.0.1: R4 - Mixed Normative and STU) in it's permanent home (it will always be available at this URL). 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 | Security Category: Anonymous | 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, etc. All sub-specialties of clinical and anatomic pathology laboratories 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 CatalogEntry
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><!-- 0..* CodeableConcept Patient preparation for collection --></patientPreparation> <timeAspect value="[string]"/><!-- 0..1 Time aspect for collection --> <collection><!-- 0..* CodeableConcept Specimen collection procedure --></collection> <typeTested> <!-- 0..* Specimen in container intended for testing by lab --> <isDerived value="[boolean]"/><!-- 0..1 Primary or secondary specimen --> <type><!-- 0..1 CodeableConcept Type of intended specimen --></type> <preference value="[code]"/><!-- 1..1 preferred | alternate --> <container> <!-- 0..1 The specimen's container --> <material><!-- 0..1 CodeableConcept Container material --></material> <type><!-- 0..1 CodeableConcept Kind of container associated with the kind of specimen --></type> <cap><!-- 0..1 CodeableConcept Color of container cap --></cap> <description value="[string]"/><!-- 0..1 Container description --> <capacity><!-- 0..1 Quantity(SimpleQuantity) Container capacity --></capacity> <minimumVolume[x]><!-- 0..1 Quantity(SimpleQuantity)|string Minimum volume --></minimumVolume[x]> <additive> <!-- 0..* Additive associated with container --> <additive[x]><!-- 1..1 CodeableConcept|Reference(Substance) Additive associated with container --></additive[x]> </additive> <preparation value="[string]"/><!-- 0..1 Specimen container preparation --> </container> <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 --> <temperatureQualifier><!-- 0..1 CodeableConcept Temperature qualifier --></temperatureQualifier> <temperatureRange><!-- 0..1 Range Temperature range --></temperatureRange> <maxDuration><!-- 0..1 Duration Maximum preservation time --></maxDuration> <instruction value="[string]"/><!-- 0..1 Preservation instruction --> </handling> </typeTested> </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" : [{ CodeableConcept }], // Patient preparation for collection "timeAspect" : "<string>", // Time aspect for collection "collection" : [{ CodeableConcept }], // Specimen collection procedure "typeTested" : [{ // Specimen in container intended for testing by lab "isDerived" : <boolean>, // Primary or secondary specimen "type" : { CodeableConcept }, // Type of intended specimen "preference" : "<code>", // R! preferred | alternate "container" : { // The specimen's container "material" : { CodeableConcept }, // Container material "type" : { CodeableConcept }, // Kind of container associated with the kind of specimen "cap" : { CodeableConcept }, // Color of container cap "description" : "<string>", // Container description "capacity" : { Quantity(SimpleQuantity) }, // Container capacity // minimumVolume[x]: Minimum volume. One of these 2: "minimumVolumeQuantity" : { Quantity(SimpleQuantity) }, "minimumVolumeString" : "<string>", "additive" : [{ // Additive associated with container // additive[x]: Additive associated with container. One of these 2: "additiveCodeableConcept" : { CodeableConcept } "additiveReference" : { Reference(Substance) } }], "preparation" : "<string>" // Specimen container preparation }, "requirement" : "<string>", // Specimen requirements "retentionTime" : { Duration }, // Specimen retention time "rejectionCriterion" : [{ CodeableConcept }], // Rejection criterion "handling" : [{ // Specimen handling before testing "temperatureQualifier" : { CodeableConcept }, // Temperature qualifier "temperatureRange" : { Range }, // Temperature range "maxDuration" : { Duration }, // Maximum preservation time "instruction" : "<string>" // Preservation 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 [ CodeableConcept ], ... ; # 0..* Patient preparation for collection fhir:SpecimenDefinition.timeAspect [ string ]; # 0..1 Time aspect for collection fhir:SpecimenDefinition.collection [ CodeableConcept ], ... ; # 0..* Specimen collection procedure fhir:SpecimenDefinition.typeTested [ # 0..* Specimen in container intended for testing by lab fhir:SpecimenDefinition.typeTested.isDerived [ boolean ]; # 0..1 Primary or secondary specimen fhir:SpecimenDefinition.typeTested.type [ CodeableConcept ]; # 0..1 Type of intended specimen fhir:SpecimenDefinition.typeTested.preference [ code ]; # 1..1 preferred | alternate fhir:SpecimenDefinition.typeTested.container [ # 0..1 The specimen's container fhir:SpecimenDefinition.typeTested.container.material [ CodeableConcept ]; # 0..1 Container material fhir:SpecimenDefinition.typeTested.container.type [ CodeableConcept ]; # 0..1 Kind of container associated with the kind of specimen fhir:SpecimenDefinition.typeTested.container.cap [ CodeableConcept ]; # 0..1 Color of container cap fhir:SpecimenDefinition.typeTested.container.description [ string ]; # 0..1 Container description fhir:SpecimenDefinition.typeTested.container.capacity [ Quantity(SimpleQuantity) ]; # 0..1 Container capacity # SpecimenDefinition.typeTested.container.minimumVolume[x] : 0..1 Minimum volume. One of these 2 fhir:SpecimenDefinition.typeTested.container.minimumVolumeSimpleQuantity [ Quantity(SimpleQuantity) ] fhir:SpecimenDefinition.typeTested.container.minimumVolumeString [ string ] fhir:SpecimenDefinition.typeTested.container.additive [ # 0..* Additive associated with container # SpecimenDefinition.typeTested.container.additive.additive[x] : 1..1 Additive associated with container. One of these 2 fhir:SpecimenDefinition.typeTested.container.additive.additiveCodeableConcept [ CodeableConcept ] fhir:SpecimenDefinition.typeTested.container.additive.additiveReference [ Reference(Substance) ] ], ...; fhir:SpecimenDefinition.typeTested.container.preparation [ string ]; # 0..1 Specimen container preparation ]; fhir:SpecimenDefinition.typeTested.requirement [ string ]; # 0..1 Specimen requirements fhir:SpecimenDefinition.typeTested.retentionTime [ Duration ]; # 0..1 Specimen retention time fhir:SpecimenDefinition.typeTested.rejectionCriterion [ CodeableConcept ], ... ; # 0..* Rejection criterion fhir:SpecimenDefinition.typeTested.handling [ # 0..* Specimen handling before testing fhir:SpecimenDefinition.typeTested.handling.temperatureQualifier [ CodeableConcept ]; # 0..1 Temperature qualifier fhir:SpecimenDefinition.typeTested.handling.temperatureRange [ Range ]; # 0..1 Temperature range fhir:SpecimenDefinition.typeTested.handling.maxDuration [ Duration ]; # 0..1 Maximum preservation time fhir:SpecimenDefinition.typeTested.handling.instruction [ string ]; # 0..1 Preservation instruction ], ...; ], ...; ]
Changes since R3
This resource did not exist in Release 2
This analysis is available as XML or JSON.
See R3 <--> R4 Conversion Maps (status = Not Mapped)
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><!-- 0..* CodeableConcept Patient preparation for collection --></patientPreparation> <timeAspect value="[string]"/><!-- 0..1 Time aspect for collection --> <collection><!-- 0..* CodeableConcept Specimen collection procedure --></collection> <typeTested> <!-- 0..* Specimen in container intended for testing by lab --> <isDerived value="[boolean]"/><!-- 0..1 Primary or secondary specimen --> <type><!-- 0..1 CodeableConcept Type of intended specimen --></type> <preference value="[code]"/><!-- 1..1 preferred | alternate --> <container> <!-- 0..1 The specimen's container --> <material><!-- 0..1 CodeableConcept Container material --></material> <type><!-- 0..1 CodeableConcept Kind of container associated with the kind of specimen --></type> <cap><!-- 0..1 CodeableConcept Color of container cap --></cap> <description value="[string]"/><!-- 0..1 Container description --> <capacity><!-- 0..1 Quantity(SimpleQuantity) Container capacity --></capacity> <minimumVolume[x]><!-- 0..1 Quantity(SimpleQuantity)|string Minimum volume --></minimumVolume[x]> <additive> <!-- 0..* Additive associated with container --> <additive[x]><!-- 1..1 CodeableConcept|Reference(Substance) Additive associated with container --></additive[x]> </additive> <preparation value="[string]"/><!-- 0..1 Specimen container preparation --> </container> <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 --> <temperatureQualifier><!-- 0..1 CodeableConcept Temperature qualifier --></temperatureQualifier> <temperatureRange><!-- 0..1 Range Temperature range --></temperatureRange> <maxDuration><!-- 0..1 Duration Maximum preservation time --></maxDuration> <instruction value="[string]"/><!-- 0..1 Preservation instruction --> </handling> </typeTested> </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" : [{ CodeableConcept }], // Patient preparation for collection "timeAspect" : "<string>", // Time aspect for collection "collection" : [{ CodeableConcept }], // Specimen collection procedure "typeTested" : [{ // Specimen in container intended for testing by lab "isDerived" : <boolean>, // Primary or secondary specimen "type" : { CodeableConcept }, // Type of intended specimen "preference" : "<code>", // R! preferred | alternate "container" : { // The specimen's container "material" : { CodeableConcept }, // Container material "type" : { CodeableConcept }, // Kind of container associated with the kind of specimen "cap" : { CodeableConcept }, // Color of container cap "description" : "<string>", // Container description "capacity" : { Quantity(SimpleQuantity) }, // Container capacity // minimumVolume[x]: Minimum volume. One of these 2: "minimumVolumeQuantity" : { Quantity(SimpleQuantity) }, "minimumVolumeString" : "<string>", "additive" : [{ // Additive associated with container // additive[x]: Additive associated with container. One of these 2: "additiveCodeableConcept" : { CodeableConcept } "additiveReference" : { Reference(Substance) } }], "preparation" : "<string>" // Specimen container preparation }, "requirement" : "<string>", // Specimen requirements "retentionTime" : { Duration }, // Specimen retention time "rejectionCriterion" : [{ CodeableConcept }], // Rejection criterion "handling" : [{ // Specimen handling before testing "temperatureQualifier" : { CodeableConcept }, // Temperature qualifier "temperatureRange" : { Range }, // Temperature range "maxDuration" : { Duration }, // Maximum preservation time "instruction" : "<string>" // Preservation 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 [ CodeableConcept ], ... ; # 0..* Patient preparation for collection fhir:SpecimenDefinition.timeAspect [ string ]; # 0..1 Time aspect for collection fhir:SpecimenDefinition.collection [ CodeableConcept ], ... ; # 0..* Specimen collection procedure fhir:SpecimenDefinition.typeTested [ # 0..* Specimen in container intended for testing by lab fhir:SpecimenDefinition.typeTested.isDerived [ boolean ]; # 0..1 Primary or secondary specimen fhir:SpecimenDefinition.typeTested.type [ CodeableConcept ]; # 0..1 Type of intended specimen fhir:SpecimenDefinition.typeTested.preference [ code ]; # 1..1 preferred | alternate fhir:SpecimenDefinition.typeTested.container [ # 0..1 The specimen's container fhir:SpecimenDefinition.typeTested.container.material [ CodeableConcept ]; # 0..1 Container material fhir:SpecimenDefinition.typeTested.container.type [ CodeableConcept ]; # 0..1 Kind of container associated with the kind of specimen fhir:SpecimenDefinition.typeTested.container.cap [ CodeableConcept ]; # 0..1 Color of container cap fhir:SpecimenDefinition.typeTested.container.description [ string ]; # 0..1 Container description fhir:SpecimenDefinition.typeTested.container.capacity [ Quantity(SimpleQuantity) ]; # 0..1 Container capacity # SpecimenDefinition.typeTested.container.minimumVolume[x] : 0..1 Minimum volume. One of these 2 fhir:SpecimenDefinition.typeTested.container.minimumVolumeSimpleQuantity [ Quantity(SimpleQuantity) ] fhir:SpecimenDefinition.typeTested.container.minimumVolumeString [ string ] fhir:SpecimenDefinition.typeTested.container.additive [ # 0..* Additive associated with container # SpecimenDefinition.typeTested.container.additive.additive[x] : 1..1 Additive associated with container. One of these 2 fhir:SpecimenDefinition.typeTested.container.additive.additiveCodeableConcept [ CodeableConcept ] fhir:SpecimenDefinition.typeTested.container.additive.additiveReference [ Reference(Substance) ] ], ...; fhir:SpecimenDefinition.typeTested.container.preparation [ string ]; # 0..1 Specimen container preparation ]; fhir:SpecimenDefinition.typeTested.requirement [ string ]; # 0..1 Specimen requirements fhir:SpecimenDefinition.typeTested.retentionTime [ Duration ]; # 0..1 Specimen retention time fhir:SpecimenDefinition.typeTested.rejectionCriterion [ CodeableConcept ], ... ; # 0..* Rejection criterion fhir:SpecimenDefinition.typeTested.handling [ # 0..* Specimen handling before testing fhir:SpecimenDefinition.typeTested.handling.temperatureQualifier [ CodeableConcept ]; # 0..1 Temperature qualifier fhir:SpecimenDefinition.typeTested.handling.temperatureRange [ Range ]; # 0..1 Temperature range fhir:SpecimenDefinition.typeTested.handling.maxDuration [ Duration ]; # 0..1 Maximum preservation time fhir:SpecimenDefinition.typeTested.handling.instruction [ string ]; # 0..1 Preservation instruction ], ...; ], ...; ]
Changes since Release 3
This resource did not exist in Release 2
This analysis is available as XML or JSON.
See R3 <--> R4 Conversion Maps (status = Not Mapped)
See the Profiles & Extensions and the 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.0487 |
SpecimenDefinition.patientPreparation | Checks on the patient prior specimen collection. | Example | PreparePatient |
SpecimenDefinition.collection | The action to collect a type of specimen. | Example | SpecimenCollection |
SpecimenDefinition.typeTested.type | The type of specimen conditioned in a container for lab testing. | Example | v2.0487 |
SpecimenDefinition.typeTested.preference | Degree of preference of a type of conditioned specimen. | Required | SpecimenContainedPreference |
SpecimenDefinition.typeTested.container.material | Types of material for specimen containers. | Example | ContainerMaterials |
SpecimenDefinition.typeTested.container.type | Type of specimen container. | Example | SpecimenContainerType |
SpecimenDefinition.typeTested.container.cap | Color of the container cap. | Example | ContainerCap |
SpecimenDefinition.typeTested.container.additive.additive[x] | Substance added to specimen container. | Example | v2.0371 |
SpecimenDefinition.typeTested.rejectionCriterion | Criterion for rejection of the specimen by laboratory. | Example | RejectionCriterion |
SpecimenDefinition.typeTested.handling.temperatureQualifier | 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.typeTested.container.type | |
identifier | token | The unique identifier associated with the specimen | SpecimenDefinition.identifier | |
type | token | The type of collected specimen | SpecimenDefinition.typeCollected |