2nd DSTU Draft For Comment

This page is part of the FHIR Specification (v0.4.0: DSTU 2 Draft). 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 R3 R2

4.26 Resource Specimen - Content

This resource maintained by the Orders and Observations Work Group

Sample for analysis.

4.26.1 Scope and Usage

Any material sample:

  • taken from a biological entity, living or dead
  • taken from a physical object or the environment

Some specimens are biological and can contain one or more components including but not limited to cellular molecules, cells, tissues, organs, body fluids, embryos, and body excretory products (source: NCI Thesaurus, modified).

The specimen resource covers substances used for diagnostic and environmental testing. The focus of the specimen resource is the process for gathering, maintaining and processing the specimen as well as where the specimen originated. This is distinct from the use of Substance which is only used when these other aspects are not relevant.

4.26.2 Background and Context

The current definition of the specimen resource contains only basic information about specimen containers. It does not address the recursive nature of containers or the tracking of the location of a container within its parent container (for instance: a tube in a tray in a rack in a freezer). The frequency with which these elements are tracked may depend on the context of use; general lab; biobanking, etc. Comments from reviewers on the appropriate scope for this resource, and the need for tracking related specimen management attributes, are welcomed.

This resource is referenced by DiagnosticOrder, DiagnosticReport, Media and Observation

4.26.3 Resource Content

Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. Specimen DomainResourceSample for analysis
... identifier 0..*IdentifierExternal Identifier
... type 0..1CodeableConceptKind of material that forms the specimen
SpecimenType (Example)
... parent 0..*SpecimenParent specimen
... subject 1..1Patient | Group | Device | SubstanceWhere the specimen came from. This may be from the patient(s) or from the environment or a device
... accessionIdentifier 0..1IdentifierIdentifier assigned by the lab
... receivedTime 0..1dateTimeThe time when specimen was received for processing
... collection 0..1ElementCollection details
.... collector 0..1PractitionerWho collected the specimen
.... comment 0..*stringCollector comments
.... collected[x] Collection time
..... collectedDateTime0..1dateTime
..... collectedPeriod0..1Period
.... quantity 0..1QuantityThe quantity of specimen collected
.... method 0..1CodeableConceptTechnique used to perform collection
SpecimenCollectionMethod (Example)
.... bodySite[x] Anatomical collection site
BodySite (Example)
..... bodySiteCodeableConcept0..1CodeableConcept
..... bodySiteReference0..1BodySite
... treatment 0..*ElementTreatment and processing step details
.... description 0..1stringTextual description of procedure
.... procedure 0..1CodeableConceptIndicates the treatment or processing step applied to the specimen
SpecimenTreatmentProcedure (Example)
.... additive 0..*SubstanceMaterial used in the processing step
... container 0..*ElementDirect container of specimen (tube/slide, etc)
.... identifier 0..*IdentifierId for the container
.... description 0..1stringTextual description of the container
.... type 0..1CodeableConceptKind of container directly associated with specimen
SpecimenContainerType (Example)
.... capacity 0..1QuantityContainer volume or size
.... specimenQuantity 0..1QuantityQuantity of specimen within container
.... additive[x] Additive associated with container
SpecimenContainerAdditive (Example)
..... additiveCodeableConcept0..1CodeableConcept
..... additiveReference0..1Substance

UML Diagram

Specimen (DomainResource)Id for specimenidentifier : Identifier 0..*The kind of material that forms the specimentype : CodeableConcept 0..1 « (The type of the specimen.SpecimenType) »Reference to the parent (source) specimen which is used when the specimen was either derived from or a component of a another specimenparent : Reference(Specimen) 0..*Where the specimen came from. This may be from the patient(s) or from the environment or a devicesubject : Reference(Patient|Group|Device|Substance) 1..1The identifier assigned by the lab when accessioning specimen(s). This is not necessarily the same as the specimen identifier, depending on local lab proceduresaccessionIdentifier : Identifier 0..1Time when specimen was received for processing or testingreceivedTime : dateTime 0..1CollectionPerson who collected the specimencollector : Reference(Practitioner) 0..1To communicate any details or issues encountered during the specimen collection procedurecomment : string 0..*Time when specimen was collected from subject - the physiologically relevant timecollected[x] : dateTime|Period 0..1The quantity of specimen collected; for instance the volume of a blood sample, or the physical measurement of an anatomic pathology samplequantity : Quantity 0..1A coded value specifying the technique that is used to perform the proceduremethod : CodeableConcept 0..1 « (The technique that is used to perform the procedureSpecimenCollectionMethod) »Anatomical location from which the specimen was collected (if subject is a patient). This element is not used for environmental specimensbodySite[x] : CodeableConcept|Reference(BodySite) 0..1 « (Codes describing anatomical locations. May include lateralityBodySite) »TreatmentTextual description of proceduredescription : string 0..1A coded value specifying the procedure used to process the specimenprocedure : CodeableConcept 0..1 « (Type indicating the technique used to process the specimenSpecimenTreatmentProcedure) »Material used in the processing stepadditive : Reference(Substance) 0..*ContainerId for container. There may be multiple; a manufacturer's bar code, lab assigned identifier, etc. The container ID may differ from the specimen id in some circumstancesidentifier : Identifier 0..*Textual description of the containerdescription : string 0..1The type of container associated with the specimen (e.g. slide, aliquot, etc)type : CodeableConcept 0..1 « (Type of specimen containerSpecimenContainerType) »The capacity (volume or other measure) the container may containcapacity : Quantity 0..1The quantity of specimen in the container; may be volume, dimensions, or other appropriate measurements, depending on the specimen typespecimenQuantity : Quantity 0..1Introduced substance to preserve, maintain or enhance the specimen. examples: Formalin, Citrate, EDTAadditive[x] : CodeableConcept|Reference(Substance) 0..1 « (Substance added to specimen containerSpecimenContainerAdditive) »Details concerning the specimen collectioncollection0..1Details concerning treatment and processing steps for the specimentreatment0..*The container holding the specimen. The recursive nature of containers; i.e. blood in tube in tray in rack is not addressed herecontainer0..*

XML Template

<Specimen xmlns="http://hl7.org/fhir"> doco
 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <identifier><!-- 0..* Identifier External Identifier --></identifier>
 <type><!-- 0..1 CodeableConcept Kind of material that forms the specimen --></type>
 <parent><!-- 0..* Reference(Specimen) Parent specimen --></parent>
 <subject><!-- 1..1 Reference(Patient|Group|Device|Substance) 
     Where the specimen came from. This may be from the patient(s) or from the environment or a device --></subject>
 <accessionIdentifier><!-- 0..1 Identifier Identifier assigned by the lab --></accessionIdentifier>
 <receivedTime value="[dateTime]"/><!-- 0..1 The time when specimen was received for processing -->
 <collection>  <!-- 0..1 Collection details -->
  <collector><!-- 0..1 Reference(Practitioner) Who collected the specimen --></collector>
  <comment value="[string]"/><!-- 0..* Collector comments -->
  <collected[x]><!-- 0..1 dateTime|Period Collection time --></collected[x]>
  <quantity><!-- 0..1 Quantity The quantity of specimen collected --></quantity>
  <method><!-- 0..1 CodeableConcept Technique used to perform collection --></method>
  <bodySite[x]><!-- 0..1 CodeableConcept|Reference(BodySite) Anatomical collection site --></bodySite[x]>
 </collection>
 <treatment>  <!-- 0..* Treatment and processing step details -->
  <description value="[string]"/><!-- 0..1 Textual description of procedure -->
  <procedure><!-- 0..1 CodeableConcept Indicates the treatment or processing step  applied to the specimen --></procedure>
  <additive><!-- 0..* Reference(Substance) Material used in the processing step --></additive>
 </treatment>
 <container>  <!-- 0..* Direct container of specimen (tube/slide, etc) -->
  <identifier><!-- 0..* Identifier Id for the container --></identifier>
  <description value="[string]"/><!-- 0..1 Textual description of the container -->
  <type><!-- 0..1 CodeableConcept Kind of container directly associated with specimen --></type>
  <capacity><!-- 0..1 Quantity Container volume or size --></capacity>
  <specimenQuantity><!-- 0..1 Quantity Quantity of specimen within container --></specimenQuantity>
  <additive[x]><!-- 0..1 CodeableConcept|Reference(Substance) Additive associated with container --></additive[x]>
 </container>
</Specimen>

JSON Template

{doco
  "resourceType" : "Specimen",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "identifier" : [{ Identifier }], // External Identifier
  "type" : { CodeableConcept }, // Kind of material that forms the specimen
  "parent" : [{ Reference(Specimen) }], // Parent specimen
  "subject" : { Reference(Patient|Group|Device|Substance) }, // R! 
     Where the specimen came from. This may be from the patient(s) or from the environment or a device
  "accessionIdentifier" : { Identifier }, // Identifier assigned by the lab
  "receivedTime" : "<dateTime>", // The time when specimen was received for processing
  "collection" : { // Collection details
    "collector" : { Reference(Practitioner) }, // Who collected the specimen
    "comment" : ["<string>"], // Collector comments
    // collected[x]: Collection time. One of these 2:
    "collectedDateTime" : "<dateTime>",
    "collectedPeriod" : { Period },
    "quantity" : { Quantity }, // The quantity of specimen collected
    "method" : { CodeableConcept }, // Technique used to perform collection
    // bodySite[x]: Anatomical collection site. One of these 2:
    "bodySiteCodeableConcept" : { CodeableConcept }
    "bodySiteReference" : { Reference(BodySite) }
  },
  "treatment" : [{ // Treatment and processing step details
    "description" : "<string>", // Textual description of procedure
    "procedure" : { CodeableConcept }, // Indicates the treatment or processing step  applied to the specimen
    "additive" : [{ Reference(Substance) }] // Material used in the processing step
  }],
  "container" : [{ // Direct container of specimen (tube/slide, etc)
    "identifier" : [{ Identifier }], // Id for the container
    "description" : "<string>", // Textual description of the container
    "type" : { CodeableConcept }, // Kind of container directly associated with specimen
    "capacity" : { Quantity }, // Container volume or size
    "specimenQuantity" : { Quantity }, // Quantity of specimen within container
    // additive[x]: Additive associated with container. One of these 2:
    "additiveCodeableConcept" : { CodeableConcept }
    "additiveReference" : { Reference(Substance) }
  }]
}

Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. Specimen DomainResourceSample for analysis
... identifier 0..*IdentifierExternal Identifier
... type 0..1CodeableConceptKind of material that forms the specimen
SpecimenType (Example)
... parent 0..*SpecimenParent specimen
... subject 1..1Patient | Group | Device | SubstanceWhere the specimen came from. This may be from the patient(s) or from the environment or a device
... accessionIdentifier 0..1IdentifierIdentifier assigned by the lab
... receivedTime 0..1dateTimeThe time when specimen was received for processing
... collection 0..1ElementCollection details
.... collector 0..1PractitionerWho collected the specimen
.... comment 0..*stringCollector comments
.... collected[x] Collection time
..... collectedDateTime0..1dateTime
..... collectedPeriod0..1Period
.... quantity 0..1QuantityThe quantity of specimen collected
.... method 0..1CodeableConceptTechnique used to perform collection
SpecimenCollectionMethod (Example)
.... bodySite[x] Anatomical collection site
BodySite (Example)
..... bodySiteCodeableConcept0..1CodeableConcept
..... bodySiteReference0..1BodySite
... treatment 0..*ElementTreatment and processing step details
.... description 0..1stringTextual description of procedure
.... procedure 0..1CodeableConceptIndicates the treatment or processing step applied to the specimen
SpecimenTreatmentProcedure (Example)
.... additive 0..*SubstanceMaterial used in the processing step
... container 0..*ElementDirect container of specimen (tube/slide, etc)
.... identifier 0..*IdentifierId for the container
.... description 0..1stringTextual description of the container
.... type 0..1CodeableConceptKind of container directly associated with specimen
SpecimenContainerType (Example)
.... capacity 0..1QuantityContainer volume or size
.... specimenQuantity 0..1QuantityQuantity of specimen within container
.... additive[x] Additive associated with container
SpecimenContainerAdditive (Example)
..... additiveCodeableConcept0..1CodeableConcept
..... additiveReference0..1Substance

UML Diagram

Specimen (DomainResource)Id for specimenidentifier : Identifier 0..*The kind of material that forms the specimentype : CodeableConcept 0..1 « (The type of the specimen.SpecimenType) »Reference to the parent (source) specimen which is used when the specimen was either derived from or a component of a another specimenparent : Reference(Specimen) 0..*Where the specimen came from. This may be from the patient(s) or from the environment or a devicesubject : Reference(Patient|Group|Device|Substance) 1..1The identifier assigned by the lab when accessioning specimen(s). This is not necessarily the same as the specimen identifier, depending on local lab proceduresaccessionIdentifier : Identifier 0..1Time when specimen was received for processing or testingreceivedTime : dateTime 0..1CollectionPerson who collected the specimencollector : Reference(Practitioner) 0..1To communicate any details or issues encountered during the specimen collection procedurecomment : string 0..*Time when specimen was collected from subject - the physiologically relevant timecollected[x] : dateTime|Period 0..1The quantity of specimen collected; for instance the volume of a blood sample, or the physical measurement of an anatomic pathology samplequantity : Quantity 0..1A coded value specifying the technique that is used to perform the proceduremethod : CodeableConcept 0..1 « (The technique that is used to perform the procedureSpecimenCollectionMethod) »Anatomical location from which the specimen was collected (if subject is a patient). This element is not used for environmental specimensbodySite[x] : CodeableConcept|Reference(BodySite) 0..1 « (Codes describing anatomical locations. May include lateralityBodySite) »TreatmentTextual description of proceduredescription : string 0..1A coded value specifying the procedure used to process the specimenprocedure : CodeableConcept 0..1 « (Type indicating the technique used to process the specimenSpecimenTreatmentProcedure) »Material used in the processing stepadditive : Reference(Substance) 0..*ContainerId for container. There may be multiple; a manufacturer's bar code, lab assigned identifier, etc. The container ID may differ from the specimen id in some circumstancesidentifier : Identifier 0..*Textual description of the containerdescription : string 0..1The type of container associated with the specimen (e.g. slide, aliquot, etc)type : CodeableConcept 0..1 « (Type of specimen containerSpecimenContainerType) »The capacity (volume or other measure) the container may containcapacity : Quantity 0..1The quantity of specimen in the container; may be volume, dimensions, or other appropriate measurements, depending on the specimen typespecimenQuantity : Quantity 0..1Introduced substance to preserve, maintain or enhance the specimen. examples: Formalin, Citrate, EDTAadditive[x] : CodeableConcept|Reference(Substance) 0..1 « (Substance added to specimen containerSpecimenContainerAdditive) »Details concerning the specimen collectioncollection0..1Details concerning treatment and processing steps for the specimentreatment0..*The container holding the specimen. The recursive nature of containers; i.e. blood in tube in tray in rack is not addressed herecontainer0..*

XML Template

<Specimen xmlns="http://hl7.org/fhir"> doco
 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <identifier><!-- 0..* Identifier External Identifier --></identifier>
 <type><!-- 0..1 CodeableConcept Kind of material that forms the specimen --></type>
 <parent><!-- 0..* Reference(Specimen) Parent specimen --></parent>
 <subject><!-- 1..1 Reference(Patient|Group|Device|Substance) 
     Where the specimen came from. This may be from the patient(s) or from the environment or a device --></subject>
 <accessionIdentifier><!-- 0..1 Identifier Identifier assigned by the lab --></accessionIdentifier>
 <receivedTime value="[dateTime]"/><!-- 0..1 The time when specimen was received for processing -->
 <collection>  <!-- 0..1 Collection details -->
  <collector><!-- 0..1 Reference(Practitioner) Who collected the specimen --></collector>
  <comment value="[string]"/><!-- 0..* Collector comments -->
  <collected[x]><!-- 0..1 dateTime|Period Collection time --></collected[x]>
  <quantity><!-- 0..1 Quantity The quantity of specimen collected --></quantity>
  <method><!-- 0..1 CodeableConcept Technique used to perform collection --></method>
  <bodySite[x]><!-- 0..1 CodeableConcept|Reference(BodySite) Anatomical collection site --></bodySite[x]>
 </collection>
 <treatment>  <!-- 0..* Treatment and processing step details -->
  <description value="[string]"/><!-- 0..1 Textual description of procedure -->
  <procedure><!-- 0..1 CodeableConcept Indicates the treatment or processing step  applied to the specimen --></procedure>
  <additive><!-- 0..* Reference(Substance) Material used in the processing step --></additive>
 </treatment>
 <container>  <!-- 0..* Direct container of specimen (tube/slide, etc) -->
  <identifier><!-- 0..* Identifier Id for the container --></identifier>
  <description value="[string]"/><!-- 0..1 Textual description of the container -->
  <type><!-- 0..1 CodeableConcept Kind of container directly associated with specimen --></type>
  <capacity><!-- 0..1 Quantity Container volume or size --></capacity>
  <specimenQuantity><!-- 0..1 Quantity Quantity of specimen within container --></specimenQuantity>
  <additive[x]><!-- 0..1 CodeableConcept|Reference(Substance) Additive associated with container --></additive[x]>
 </container>
</Specimen>

JSON Template

{doco
  "resourceType" : "Specimen",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "identifier" : [{ Identifier }], // External Identifier
  "type" : { CodeableConcept }, // Kind of material that forms the specimen
  "parent" : [{ Reference(Specimen) }], // Parent specimen
  "subject" : { Reference(Patient|Group|Device|Substance) }, // R! 
     Where the specimen came from. This may be from the patient(s) or from the environment or a device
  "accessionIdentifier" : { Identifier }, // Identifier assigned by the lab
  "receivedTime" : "<dateTime>", // The time when specimen was received for processing
  "collection" : { // Collection details
    "collector" : { Reference(Practitioner) }, // Who collected the specimen
    "comment" : ["<string>"], // Collector comments
    // collected[x]: Collection time. One of these 2:
    "collectedDateTime" : "<dateTime>",
    "collectedPeriod" : { Period },
    "quantity" : { Quantity }, // The quantity of specimen collected
    "method" : { CodeableConcept }, // Technique used to perform collection
    // bodySite[x]: Anatomical collection site. One of these 2:
    "bodySiteCodeableConcept" : { CodeableConcept }
    "bodySiteReference" : { Reference(BodySite) }
  },
  "treatment" : [{ // Treatment and processing step details
    "description" : "<string>", // Textual description of procedure
    "procedure" : { CodeableConcept }, // Indicates the treatment or processing step  applied to the specimen
    "additive" : [{ Reference(Substance) }] // Material used in the processing step
  }],
  "container" : [{ // Direct container of specimen (tube/slide, etc)
    "identifier" : [{ Identifier }], // Id for the container
    "description" : "<string>", // Textual description of the container
    "type" : { CodeableConcept }, // Kind of container directly associated with specimen
    "capacity" : { Quantity }, // Container volume or size
    "specimenQuantity" : { Quantity }, // Quantity of specimen within container
    // additive[x]: Additive associated with container. One of these 2:
    "additiveCodeableConcept" : { CodeableConcept }
    "additiveReference" : { Reference(Substance) }
  }]
}

 

Alternate definitions: Schema/Schematron, Resource Profile (XML, JSON), Questionnaire

4.26.3.1 Terminology Bindings

PathDefinitionTypeReference
Specimen.type The type of the specimen.Examplehttp://hl7.org/fhir/v2/vs/0487
Specimen.collection.method The technique that is used to perform the procedureExamplehttp://hl7.org/fhir/vs/specimen-collection-method
Specimen.collection.bodySite[x] Codes describing anatomical locations. May include lateralityExamplehttp://hl7.org/fhir/vs/body-site
Specimen.treatment.procedure Type indicating the technique used to process the specimenExamplehttp://hl7.org/fhir/vs/specimen-treatment-procedure
Specimen.container.type Type of specimen containerExamplehttp://hl7.org/fhir/vs/specimen-container-type
Specimen.container.additive[x] Substance added to specimen containerExamplehttp://hl7.org/fhir/v2/vs/0371

4.26.4 Search Parameters

Search parameters for this resource. The common parameters also apply. See Searching for more information about searching in REST, messaging, and services.

NameTypeDescriptionPaths
accessiontokenThe accession number associated with the specimenSpecimen.accessionIdentifier
collecteddateThe date the specimen was collectedSpecimen.collection.collected[x]
collectorreferenceWho collected the specimenSpecimen.collection.collector
(Practitioner)
containertokenThe kind of specimen containerSpecimen.container.type
containeridtokenThe unique identifier associated with the specimen containerSpecimen.container.identifier
identifiertokenThe unique identifier associated with the specimenSpecimen.identifier
parentreferenceThe parent of the specimenSpecimen.parent
(Specimen)
patientreferenceThe patient the specimen comes fromSpecimen.subject
(Patient)
sitetokenThe source or body site from where the specimen cameSpecimen.collection.bodySite[x]
subjectreferenceThe subject of the specimenSpecimen.subject
(Device, Patient, Substance, Group)
typetokenThe specimen typeSpecimen.type