haau3 FHIR Implementation Guide (HFIG)
1.0.0 - ci-build United States of America flag

haau3 FHIR Implementation Guide (HFIG) - Local Development build (v1.0.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Resource Profile: haau3 Specimen

Official URL: https://haau3.com/fhir/StructureDefinition/haau3-specimen Version: 1.0.0
Draft as of 2026-10-14 Computable Name: Haau3Specimen

A sample collected from a care recipient that a test was performed on. Where the source system did not state what kind of sample it was, the record says the value is unknown rather than carrying an invented one.

Usages:

You can also check for usages in the FHIR IG Statistics

Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Specimen 0..* USCoreSpecimenProfile(6.1.0) Sample for analysis
Specimen.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
Specimen.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
Specimen.identifier This element must be supported. This element is included in summaries. 1..* Identifier External Identifier
Specimen.status This element is a modifier element. This element is included in summaries. 0..1 code available | unavailable | unsatisfactory | entered-in-error
Binding: SpecimenStatus (required): Codes providing the status/availability of a specimen.
Specimen.type This element must be supported. This element is included in summaries. 1..1 CodeableConcept (USCDI) Kind of material that forms the specimen
Binding: Specimen type (extensible)
Specimen.subject This element must be supported. This element is included in summaries. 0..1 Reference(US Core Patient Profile) (USCDI) The patient where the specimen came from.

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Specimen.status Base required SpecimenStatus 📍4.0.1 FHIR Std.
Specimen.type Base extensible Specimen type 📦20221102 VSAC v0.11

Constraints

Id Grade Path(s) Description Expression
dom-2 error Specimen If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Specimen If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Specimen If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error Specimen If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Specimen A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()

This structure is derived from USCoreSpecimenProfile

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Specimen 0..* USCoreSpecimenProfile(6.1.0) Sample for analysis
Specimen.identifier This element must be supported. 1..* Identifier External Identifier

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraints    Filter: doco
Specimen 0..* USCoreSpecimenProfile(6.1.0) Sample for analysis
Specimen.id This element is included in summaries. 0..1 id Logical id of this artifact
Specimen.meta This element is included in summaries. 0..1 Meta Metadata about the resource
Specimen.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
Specimen.language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.
Additional BindingsPurpose
AllLanguages Max Binding
Specimen.text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
Specimen.contained 0..* Resource Contained, inline Resources
Specimen.extension 0..* Extension Additional content defined by implementations
Specimen.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
Specimen.identifier This element must be supported. This element is included in summaries. 1..* Identifier External Identifier
Specimen.accessionIdentifier This element is included in summaries. 0..1 Identifier Identifier assigned by the lab
Specimen.status This element is a modifier element. This element is included in summaries. 0..1 code available | unavailable | unsatisfactory | entered-in-error
Binding: SpecimenStatus (required): Codes providing the status/availability of a specimen.
Specimen.type This element must be supported. This element is included in summaries. 1..1 CodeableConcept (USCDI) Kind of material that forms the specimen
Binding: Specimen type (extensible)
Specimen.subject This element must be supported. This element is included in summaries. 0..1 Reference(US Core Patient Profile) (USCDI) The patient where the specimen came from.
Specimen.receivedTime This element is included in summaries. 0..1 dateTime The time when specimen was received for processing
Specimen.parent 0..* Reference(Specimen) Specimen from which this specimen originated
Specimen.request 0..* Reference(ServiceRequest) Why the specimen was collected
Specimen.collection 0..1 BackboneElement Collection details
Specimen.collection.id 0..1 string Unique id for inter-element referencing
Specimen.collection.extension 0..* Extension Additional content defined by implementations
Specimen.collection.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Specimen.collection.collector This element is included in summaries. 0..1 Reference(Practitioner | PractitionerRole) Who collected the specimen
Specimen.collection.collected[x] This element is included in summaries. 0..1 Collection time
Specimen.collection.collected[x].collectedDateTime dateTime
Specimen.collection.collected[x].collectedPeriod Period
Specimen.collection.duration This element is included in summaries. 0..1 Duration How long it took to collect specimen
Specimen.collection.quantity C 0..1 SimpleQuantity The quantity of specimen collected
Constraints: sqty-1
Specimen.collection.method 0..1 CodeableConcept Technique used to perform collection
Binding: FHIRSpecimenCollectionMethod (example): The technique that is used to perform the procedure.
Specimen.collection.bodySite 0..1 CodeableConcept Anatomical collection site
Binding: SNOMEDCTBodyStructures (example): Codes describing anatomical locations. May include laterality.
Specimen.collection.fastingStatus[x] This element is included in summaries. 0..1 Whether or how long patient abstained from food and/or drink
Binding: hl7VS-relevantClincialInformation (extensible): Codes describing the fasting status of the patient.
Specimen.collection.fastingStatus[x].fastingStatusCodeableConcept CodeableConcept
Specimen.collection.fastingStatus[x].fastingStatusDuration Duration
Specimen.processing 0..* BackboneElement Processing and processing step details
Specimen.processing.id 0..1 string Unique id for inter-element referencing
Specimen.processing.extension 0..* Extension Additional content defined by implementations
Specimen.processing.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Specimen.processing.description 0..1 string Textual description of procedure
Specimen.processing.procedure 0..1 CodeableConcept Indicates the treatment step applied to the specimen
Binding: SpecimenProcessingProcedure (example): Type indicating the technique used to process the specimen.
Specimen.processing.additive 0..* Reference(Substance) Material used in the processing step
Specimen.processing.time[x] 0..1 Date and time of specimen processing
Specimen.processing.time[x].timeDateTime dateTime
Specimen.processing.time[x].timePeriod Period
Specimen.container 0..* BackboneElement Direct container of specimen (tube/slide, etc.)
Specimen.container.id 0..1 string Unique id for inter-element referencing
Specimen.container.extension 0..* Extension Additional content defined by implementations
Specimen.container.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Specimen.container.identifier This element is included in summaries. 0..* Identifier Id for the container
Specimen.container.description 0..1 string Textual description of the container
Specimen.container.type 0..1 CodeableConcept Kind of container directly associated with specimen
Binding: SpecimenContainerType (example): Type of specimen container.
Specimen.container.capacity C 0..1 SimpleQuantity Container volume or size
Constraints: sqty-1
Specimen.container.specimenQuantity C 0..1 SimpleQuantity Quantity of specimen within container
Constraints: sqty-1
Specimen.container.additive[x] 0..1 Additive associated with container
Binding: hl7VS-additivePreservative (example): Substance added to specimen container.
Specimen.container.additive[x].additiveCodeableConcept CodeableConcept
Specimen.container.additive[x].additiveReference Reference(Substance)
Specimen.condition This element is included in summaries. 0..* CodeableConcept State of the specimen
Binding: hl7VS-specimenCondition (extensible): Codes describing the state of the specimen.
Specimen.note 0..* Annotation Comments

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Specimen.language Base preferred Common Languages 📦4.0.1 FHIR Std.
Specimen.status Base required SpecimenStatus 📍4.0.1 FHIR Std.
Specimen.type Base extensible Specimen type 📦20221102 VSAC v0.11
Specimen.collection.​method Base example FHIR Specimen Collection Method 📦4.0.1 FHIR Std.
Specimen.collection.​bodySite Base example SNOMED CT Body Structures 📦4.0.1 FHIR Std.
Specimen.collection.​fastingStatus[x] Base extensible hl7VS-relevantClincialInformation 📦3.0.0 THO v7.4
Specimen.processing.​procedure Base example Specimen processing procedure 📦4.0.1 FHIR Std.
Specimen.container.type Base example Specimen Container Type 📦4.0.1 FHIR Std.
Specimen.container.additive[x] Base example hl7VS-additivePreservative 📦3.0.0 THO v7.4
Specimen.condition Base extensible hl7VS-specimenCondition 📦3.0.0 THO v7.4

Constraints

Id Grade Path(s) Description Expression
dom-2 error Specimen If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Specimen If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Specimen If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error Specimen If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Specimen A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
sqty-1 error Specimen.collection.quantity, Specimen.container.capacity, Specimen.container.specimenQuantity The comparator is not used on a SimpleQuantity comparator.empty()

This structure is derived from USCoreSpecimenProfile

Summary

Mandatory: 1 element
Must-Support: 1 element

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Specimen 0..* USCoreSpecimenProfile(6.1.0) Sample for analysis
Specimen.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
Specimen.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
Specimen.identifier This element must be supported. This element is included in summaries. 1..* Identifier External Identifier
Specimen.status This element is a modifier element. This element is included in summaries. 0..1 code available | unavailable | unsatisfactory | entered-in-error
Binding: SpecimenStatus (required): Codes providing the status/availability of a specimen.
Specimen.type This element must be supported. This element is included in summaries. 1..1 CodeableConcept (USCDI) Kind of material that forms the specimen
Binding: Specimen type (extensible)
Specimen.subject This element must be supported. This element is included in summaries. 0..1 Reference(US Core Patient Profile) (USCDI) The patient where the specimen came from.

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Specimen.status Base required SpecimenStatus 📍4.0.1 FHIR Std.
Specimen.type Base extensible Specimen type 📦20221102 VSAC v0.11

Constraints

Id Grade Path(s) Description Expression
dom-2 error Specimen If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Specimen If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Specimen If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error Specimen If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Specimen A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()

Differential View

This structure is derived from USCoreSpecimenProfile

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Specimen 0..* USCoreSpecimenProfile(6.1.0) Sample for analysis
Specimen.identifier This element must be supported. 1..* Identifier External Identifier

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Specimen 0..* USCoreSpecimenProfile(6.1.0) Sample for analysis
Specimen.id This element is included in summaries. 0..1 id Logical id of this artifact
Specimen.meta This element is included in summaries. 0..1 Meta Metadata about the resource
Specimen.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
Specimen.language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.
Additional BindingsPurpose
AllLanguages Max Binding
Specimen.text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
Specimen.contained 0..* Resource Contained, inline Resources
Specimen.extension 0..* Extension Additional content defined by implementations
Specimen.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
Specimen.identifier This element must be supported. This element is included in summaries. 1..* Identifier External Identifier
Specimen.accessionIdentifier This element is included in summaries. 0..1 Identifier Identifier assigned by the lab
Specimen.status This element is a modifier element. This element is included in summaries. 0..1 code available | unavailable | unsatisfactory | entered-in-error
Binding: SpecimenStatus (required): Codes providing the status/availability of a specimen.
Specimen.type This element must be supported. This element is included in summaries. 1..1 CodeableConcept (USCDI) Kind of material that forms the specimen
Binding: Specimen type (extensible)
Specimen.subject This element must be supported. This element is included in summaries. 0..1 Reference(US Core Patient Profile) (USCDI) The patient where the specimen came from.
Specimen.receivedTime This element is included in summaries. 0..1 dateTime The time when specimen was received for processing
Specimen.parent 0..* Reference(Specimen) Specimen from which this specimen originated
Specimen.request 0..* Reference(ServiceRequest) Why the specimen was collected
Specimen.collection 0..1 BackboneElement Collection details
Specimen.collection.id 0..1 string Unique id for inter-element referencing
Specimen.collection.extension 0..* Extension Additional content defined by implementations
Specimen.collection.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Specimen.collection.collector This element is included in summaries. 0..1 Reference(Practitioner | PractitionerRole) Who collected the specimen
Specimen.collection.collected[x] This element is included in summaries. 0..1 Collection time
Specimen.collection.collected[x].collectedDateTime dateTime
Specimen.collection.collected[x].collectedPeriod Period
Specimen.collection.duration This element is included in summaries. 0..1 Duration How long it took to collect specimen
Specimen.collection.quantity C 0..1 SimpleQuantity The quantity of specimen collected
Constraints: sqty-1
Specimen.collection.method 0..1 CodeableConcept Technique used to perform collection
Binding: FHIRSpecimenCollectionMethod (example): The technique that is used to perform the procedure.
Specimen.collection.bodySite 0..1 CodeableConcept Anatomical collection site
Binding: SNOMEDCTBodyStructures (example): Codes describing anatomical locations. May include laterality.
Specimen.collection.fastingStatus[x] This element is included in summaries. 0..1 Whether or how long patient abstained from food and/or drink
Binding: hl7VS-relevantClincialInformation (extensible): Codes describing the fasting status of the patient.
Specimen.collection.fastingStatus[x].fastingStatusCodeableConcept CodeableConcept
Specimen.collection.fastingStatus[x].fastingStatusDuration Duration
Specimen.processing 0..* BackboneElement Processing and processing step details
Specimen.processing.id 0..1 string Unique id for inter-element referencing
Specimen.processing.extension 0..* Extension Additional content defined by implementations
Specimen.processing.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Specimen.processing.description 0..1 string Textual description of procedure
Specimen.processing.procedure 0..1 CodeableConcept Indicates the treatment step applied to the specimen
Binding: SpecimenProcessingProcedure (example): Type indicating the technique used to process the specimen.
Specimen.processing.additive 0..* Reference(Substance) Material used in the processing step
Specimen.processing.time[x] 0..1 Date and time of specimen processing
Specimen.processing.time[x].timeDateTime dateTime
Specimen.processing.time[x].timePeriod Period
Specimen.container 0..* BackboneElement Direct container of specimen (tube/slide, etc.)
Specimen.container.id 0..1 string Unique id for inter-element referencing
Specimen.container.extension 0..* Extension Additional content defined by implementations
Specimen.container.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Specimen.container.identifier This element is included in summaries. 0..* Identifier Id for the container
Specimen.container.description 0..1 string Textual description of the container
Specimen.container.type 0..1 CodeableConcept Kind of container directly associated with specimen
Binding: SpecimenContainerType (example): Type of specimen container.
Specimen.container.capacity C 0..1 SimpleQuantity Container volume or size
Constraints: sqty-1
Specimen.container.specimenQuantity C 0..1 SimpleQuantity Quantity of specimen within container
Constraints: sqty-1
Specimen.container.additive[x] 0..1 Additive associated with container
Binding: hl7VS-additivePreservative (example): Substance added to specimen container.
Specimen.container.additive[x].additiveCodeableConcept CodeableConcept
Specimen.container.additive[x].additiveReference Reference(Substance)
Specimen.condition This element is included in summaries. 0..* CodeableConcept State of the specimen
Binding: hl7VS-specimenCondition (extensible): Codes describing the state of the specimen.
Specimen.note 0..* Annotation Comments

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Specimen.language Base preferred Common Languages 📦4.0.1 FHIR Std.
Specimen.status Base required SpecimenStatus 📍4.0.1 FHIR Std.
Specimen.type Base extensible Specimen type 📦20221102 VSAC v0.11
Specimen.collection.​method Base example FHIR Specimen Collection Method 📦4.0.1 FHIR Std.
Specimen.collection.​bodySite Base example SNOMED CT Body Structures 📦4.0.1 FHIR Std.
Specimen.collection.​fastingStatus[x] Base extensible hl7VS-relevantClincialInformation 📦3.0.0 THO v7.4
Specimen.processing.​procedure Base example Specimen processing procedure 📦4.0.1 FHIR Std.
Specimen.container.type Base example Specimen Container Type 📦4.0.1 FHIR Std.
Specimen.container.additive[x] Base example hl7VS-additivePreservative 📦3.0.0 THO v7.4
Specimen.condition Base extensible hl7VS-specimenCondition 📦3.0.0 THO v7.4

Constraints

Id Grade Path(s) Description Expression
dom-2 error Specimen If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Specimen If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Specimen If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error Specimen If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Specimen A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
sqty-1 error Specimen.collection.quantity, Specimen.container.capacity, Specimen.container.specimenQuantity The comparator is not used on a SimpleQuantity comparator.empty()

This structure is derived from USCoreSpecimenProfile

Summary

Mandatory: 1 element
Must-Support: 1 element

 

Other representations of profile: CSV, Excel, Schematron