NCPI FHIR Implementation Guide v2
0.2.0 - ci-build
NCPI FHIR Implementation Guide v2 - Local Development build (v0.2.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions
| Official URL: https://nih-ncpi.github.io/ncpi-fhir-ig-2/StructureDefinition/ncpi-sample | Version: 0.2.0 | |||
| Draft as of 2025-12-03 | Computable Name: NCPISample | |||
FHIR Profile for NCPI Sample
The NCPI Sample profile is based on the standard resource type, Specimen and encompasses biospecimen collection, sample information, and aliquot information. Biospecimen collection information can be excluded if unavailable. However, if there is no parent sample, collection information must be included, even if the value is unknown.
The following fields from the shared data model are to be mapped into the NCPI Collected Sample as follows:
Biospecimen Collection:
| Logical Model Property | Cardinality | NCPI Sample Mapping | Usage Guidance | Notes |
| sampleGenerated | 1..1 | MISSING | Sample that was generated from this collection event | |
| participant | 1..1 | subject | The participant from whom the biospecimen was taken | |
| ageAtCollection | 0..1 | collection.collected | The age at which this biospecimen was collected. Could be expressed with a term, an age, or an age range. | |
| method | 0..1 | collection.method | The approach used to collect the biospecimen | Recommended to use LOINC |
| site | 0..1 | collection.bodySite | The location of the specimen collection | |
| spatial | 0..1 | extension[biospecimen-spatial] | Any spatial/location qualifiers | URL: https://nih-ncpi.github.io/ncpi-fhir-ig-2/StructureDefinition/biospecimen-spatial |
| laterality | 0..1 | extension[biospecimen-laterality] | Laterality information for the site | URL: https://nih-ncpi.github.io/ncpi-fhir-ig-2/StructureDefinition/biospecimen-laterality |
Sample:
| Logical Model Property | Cardinality | NCPI Sample Mapping | Usage Guidance | Notes |
| sampleId | 1..1 | identifier | Unique ID for this sample | |
| participant | 1..1 | subject | The participant from whom the biospecimen was taken | |
| parentSample | 0..* | parent | The Sample from which this Sample was derived | |
| type | 1..1 | type | The type of material of which this Sample is comprised | |
| processing | 0..* | processing | Processing that was applied to the Parent Sample or from the Biospecimen Collection that yielded this distinct sample | |
| availabilityStatus | 0..1 | status | Can this Sample be requested for further analysis? | URL: https://nih-ncpi.github.io/ncpi-fhir-ig-2/StructureDefinition/aliquot-availability |
| storageMethod | 0..1 | collection.method | The approach used to collect the biospecimen | Recommended to use Hl7VSSpecimenCondition |
| quantity | 0..1 | collection.quantity | The total quantity of the specimen |
Aliquot:
| Logical Model Property | Cardinality | NCPI Sample Mapping | Usage Guidance | Notes |
| aliquotId | 1..1 | container.identifier | Unique ID for this aliquot | |
| sample | 1..1 | MISSING | The sample of which this tube is a part. | |
| availabilityStatus | 0..1 | extension[aliquot-availability] | Can this Sample be requested for further analysis? | URL: https://nih-ncpi.github.io/ncpi-fhir-ig-2/StructureDefinition/aliquot-availability |
| volume | 0..1 | container.specimenQuantity | What is the volume of the Aliquot? | |
| concentration | 0..1 | extension[aliquot-concentration] | What is the concentration of the analyte in the Aliquot? | URL: https://nih-ncpi.github.io/ncpi-fhir-ig-2/StructureDefinition/aliquot-concentration |
Usages:
You can also check for usages in the FHIR IG Statistics
Description of Profiles, Differentials, Snapshots and how the different presentations work.
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | Specimen | Sample for analysis Constraints: collection-xor-parent |
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored |
![]() ![]() |
Σ | 0..* | Identifier | Unique ID for this sample |
![]() ![]() |
?!Σ | 0..1 | code | Can this Sample be requested for further analysis? Binding: SpecimenStatus (required): Codes providing the status/availability of a specimen. |
![]() ![]() |
Σ | 1..1 | CodeableConcept | The type of material of which this Sample is comprised Binding: hl7VS-specimenType (example): The type of the specimen. |
![]() ![]() |
Σ | 1..1 | Reference(Patient | Group | Device | Substance | Location) | The participant from whom the biospecimen was taken |
![]() ![]() |
0..* | Reference(Specimen) | The Sample from which this Sample was derived | |
![]() ![]() |
0..1 | BackboneElement | Information about how the biospecimen was collected. Collection information may be unknown, but must be included when there is no parent sample | |
![]() ![]() ![]() |
0..* | Extension | Extension Slice: Unordered, Open by value:url | |
![]() ![]() ![]() ![]() |
0..1 | code | Any spatial/location qualifiers URL: https://nih-ncpi.github.io/ncpi-fhir-ig-2/StructureDefinition/biospecimen-spatial | |
![]() ![]() ![]() ![]() |
0..1 | code | Laterality information for the site URL: https://nih-ncpi.github.io/ncpi-fhir-ig-2/StructureDefinition/biospecimen-laterality | |
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() |
Σ | 0..1 | dateTime | The age at which this biospecimen was collected. Could be expressed with a term, an age, or an age range. (for ages use http://hl7.org/fhir/StructureDefinition/cqf-relativeDateTime) |
![]() ![]() ![]() |
0..1 | SimpleQuantity(4.0.1) | The total quantity of the specimen | |
![]() ![]() ![]() |
0..1 | CodeableConcept | The approach used to collect the biospecimen (unknown if not provided) Binding: FHIRSpecimenCollectionMethod (example): The technique that is used to perform the procedure. | |
![]() ![]() ![]() |
0..1 | CodeableConcept | The location of the specimen collection Binding: SNOMEDCTBodyStructures (example): Codes describing anatomical locations. May include laterality. | |
![]() ![]() |
Σ | 0..* | CodeableConcept | How is the Sample stored, eg, Frozen or with additives Binding: hl7VS-specimenCondition (extensible): Codes describing the state of the specimen. |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| Specimen.status | Base | required | SpecimenStatus | 📍4.0.1 | FHIR Std. |
| Specimen.type | Base | example | hl7VS-specimenType | 📦2.0.0 | THO v7.0 |
| 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.condition | Base | extensible | hl7VS-specimenCondition | 📦2.0.0 | THO v7.0 |
| Id | Grade | Path(s) | Description | Expression |
| collection-xor-parent | warning | Specimen | If there is a parent sample, there should be no collection information. If there is collection information present, there should be no parent sample. |
parent.exists().not() or collection.exists().not()
|
| 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 Specimen
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | Specimen | Sample for analysis Constraints: collection-xor-parent |
![]() ![]() |
0..* | Identifier | Unique ID for this sample | |
![]() ![]() |
0..1 | code | Can this Sample be requested for further analysis? | |
![]() ![]() |
1..1 | CodeableConcept | The type of material of which this Sample is comprised | |
![]() ![]() |
1..1 | Reference(Patient | Group | Device | Substance | Location) | The participant from whom the biospecimen was taken | |
![]() ![]() |
0..* | Reference(Specimen) | The Sample from which this Sample was derived | |
![]() ![]() |
0..1 | BackboneElement | Information about how the biospecimen was collected. Collection information may be unknown, but must be included when there is no parent sample | |
![]() ![]() ![]() |
0..* | Extension | Extension Slice: Unordered, Open by value:url | |
![]() ![]() ![]() ![]() |
0..1 | code | Any spatial/location qualifiers URL: https://nih-ncpi.github.io/ncpi-fhir-ig-2/StructureDefinition/biospecimen-spatial | |
![]() ![]() ![]() ![]() |
0..1 | code | Laterality information for the site URL: https://nih-ncpi.github.io/ncpi-fhir-ig-2/StructureDefinition/biospecimen-laterality | |
![]() ![]() ![]() |
0..1 | dateTime | The age at which this biospecimen was collected. Could be expressed with a term, an age, or an age range. (for ages use http://hl7.org/fhir/StructureDefinition/cqf-relativeDateTime) | |
![]() ![]() ![]() |
0..1 | SimpleQuantity(4.0.1) | The total quantity of the specimen | |
![]() ![]() ![]() |
0..1 | CodeableConcept | The approach used to collect the biospecimen (unknown if not provided) | |
![]() ![]() ![]() |
0..1 | CodeableConcept | The location of the specimen collection | |
![]() ![]() |
||||
![]() ![]() ![]() |
1..1 | CodeableConcept | Processing that was applied to the Parent Sample or from the Biospecimen Collection that yielded this distinct sample | |
![]() ![]() |
||||
![]() ![]() ![]() |
0..* | Extension | Extension Slice: Unordered, Open by value:url | |
![]() ![]() ![]() ![]() |
0..1 | code | Can this Sample be requested for further analysis? URL: https://nih-ncpi.github.io/ncpi-fhir-ig-2/StructureDefinition/aliquot-availability | |
![]() ![]() ![]() ![]() |
0..1 | Quantity | What is the concentration of the analyte in the Aliquot? URL: https://nih-ncpi.github.io/ncpi-fhir-ig-2/StructureDefinition/aliquot-concentration | |
![]() ![]() ![]() |
0..* | Identifier | Unique ID for this aliquot | |
![]() ![]() ![]() |
0..1 | SimpleQuantity(4.0.1) | What is the volume of the Aliquot? | |
![]() ![]() |
0..* | CodeableConcept | How is the Sample stored, eg, Frozen or with additives | |
Documentation for this format | ||||
| Id | Grade | Path(s) | Description | Expression |
| collection-xor-parent | warning | Specimen | If there is a parent sample, there should be no collection information. If there is collection information present, there should be no parent sample. |
parent.exists().not() or collection.exists().not()
|
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() | ||||
|---|---|---|---|---|---|---|---|---|
![]() |
C | 0..* | Specimen | Sample for analysis Constraints: collection-xor-parent | ||||
![]() ![]() |
Σ | 0..1 | id | Logical id of this artifact | ||||
![]() ![]() |
Σ | 0..1 | Meta | Metadata about the resource | ||||
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
![]() ![]() |
0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
![]() ![]() |
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 | |||||
![]() ![]() |
0..* | Resource | Contained, inline Resources | |||||
![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored | ||||
![]() ![]() |
Σ | 0..* | Identifier | Unique ID for this sample | ||||
![]() ![]() |
Σ | 0..1 | Identifier | Identifier assigned by the lab | ||||
![]() ![]() |
?!Σ | 0..1 | code | Can this Sample be requested for further analysis? Binding: SpecimenStatus (required): Codes providing the status/availability of a specimen. | ||||
![]() ![]() |
Σ | 1..1 | CodeableConcept | The type of material of which this Sample is comprised Binding: hl7VS-specimenType (example): The type of the specimen. | ||||
![]() ![]() |
Σ | 1..1 | Reference(Patient | Group | Device | Substance | Location) | The participant from whom the biospecimen was taken | ||||
![]() ![]() |
Σ | 0..1 | dateTime | The time when specimen was received for processing | ||||
![]() ![]() |
0..* | Reference(Specimen) | The Sample from which this Sample was derived | |||||
![]() ![]() |
0..* | Reference(ServiceRequest) | Why the specimen was collected | |||||
![]() ![]() |
0..1 | BackboneElement | Information about how the biospecimen was collected. Collection information may be unknown, but must be included when there is no parent sample | |||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Extension Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() |
0..1 | code | Any spatial/location qualifiers URL: https://nih-ncpi.github.io/ncpi-fhir-ig-2/StructureDefinition/biospecimen-spatial | |||||
![]() ![]() ![]() ![]() |
0..1 | code | Laterality information for the site URL: https://nih-ncpi.github.io/ncpi-fhir-ig-2/StructureDefinition/biospecimen-laterality | |||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() |
Σ | 0..1 | Reference(Practitioner | PractitionerRole) | Who collected the specimen | ||||
![]() ![]() ![]() |
Σ | 0..1 | dateTime | The age at which this biospecimen was collected. Could be expressed with a term, an age, or an age range. (for ages use http://hl7.org/fhir/StructureDefinition/cqf-relativeDateTime) | ||||
![]() ![]() ![]() |
Σ | 0..1 | Duration | How long it took to collect specimen | ||||
![]() ![]() ![]() |
0..1 | SimpleQuantity(4.0.1) | The total quantity of the specimen | |||||
![]() ![]() ![]() |
0..1 | CodeableConcept | The approach used to collect the biospecimen (unknown if not provided) Binding: FHIRSpecimenCollectionMethod (example): The technique that is used to perform the procedure. | |||||
![]() ![]() ![]() |
0..1 | CodeableConcept | The location of the specimen collection Binding: SNOMEDCTBodyStructures (example): Codes describing anatomical locations. May include laterality. | |||||
![]() ![]() ![]() |
Σ | 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. | |||||
![]() ![]() ![]() ![]() |
CodeableConcept | |||||||
![]() ![]() ![]() ![]() |
Duration | |||||||
![]() ![]() |
0..* | BackboneElement | Processing and processing step details | |||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() |
0..1 | string | Textual description of procedure | |||||
![]() ![]() ![]() |
1..1 | CodeableConcept | Processing that was applied to the Parent Sample or from the Biospecimen Collection that yielded this distinct sample Binding: SpecimenProcessingProcedure (example): Type indicating the technique used to process the specimen. | |||||
![]() ![]() ![]() |
0..* | Reference(Substance) | Material used in the processing step | |||||
![]() ![]() ![]() |
0..1 | Date and time of specimen processing | ||||||
![]() ![]() ![]() ![]() |
dateTime | |||||||
![]() ![]() ![]() ![]() |
Period | |||||||
![]() ![]() |
0..* | BackboneElement | Direct container of specimen (tube/slide, etc.) | |||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Extension Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() |
0..1 | code | Can this Sample be requested for further analysis? URL: https://nih-ncpi.github.io/ncpi-fhir-ig-2/StructureDefinition/aliquot-availability | |||||
![]() ![]() ![]() ![]() |
0..1 | Quantity | What is the concentration of the analyte in the Aliquot? URL: https://nih-ncpi.github.io/ncpi-fhir-ig-2/StructureDefinition/aliquot-concentration | |||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() |
Σ | 0..* | Identifier | Unique ID for this aliquot | ||||
![]() ![]() ![]() |
0..1 | string | Textual description of the container | |||||
![]() ![]() ![]() |
0..1 | CodeableConcept | Kind of container directly associated with specimen Binding: SpecimenContainerType (example): Type of specimen container. | |||||
![]() ![]() ![]() |
0..1 | SimpleQuantity(4.0.1) | Container volume or size | |||||
![]() ![]() ![]() |
0..1 | SimpleQuantity(4.0.1) | What is the volume of the Aliquot? | |||||
![]() ![]() ![]() |
0..1 | Additive associated with container Binding: hl7VS-additivePreservative (example): Substance added to specimen container. | ||||||
![]() ![]() ![]() ![]() |
CodeableConcept | |||||||
![]() ![]() ![]() ![]() |
Reference(Substance) | |||||||
![]() ![]() |
Σ | 0..* | CodeableConcept | How is the Sample stored, eg, Frozen or with additives Binding: hl7VS-specimenCondition (extensible): Codes describing the state of the specimen. | ||||
![]() ![]() |
0..* | Annotation | Comments | |||||
Documentation for this format | ||||||||
| 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 | example | hl7VS-specimenType | 📦2.0.0 | THO v7.0 |
| 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 | 📦2.0.0 | THO v7.0 |
| 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 | 📦2.0.0 | THO v7.0 |
| Specimen.condition | Base | extensible | hl7VS-specimenCondition | 📦2.0.0 | THO v7.0 |
| Id | Grade | Path(s) | Description | Expression |
| collection-xor-parent | warning | Specimen | If there is a parent sample, there should be no collection information. If there is collection information present, there should be no parent sample. |
parent.exists().not() or collection.exists().not()
|
| 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 Specimen
Summary
Mandatory: 2 elements(1 nested mandatory element)
Extensions
This structure refers to these extensions:
Key Elements View
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | Specimen | Sample for analysis Constraints: collection-xor-parent |
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored |
![]() ![]() |
Σ | 0..* | Identifier | Unique ID for this sample |
![]() ![]() |
?!Σ | 0..1 | code | Can this Sample be requested for further analysis? Binding: SpecimenStatus (required): Codes providing the status/availability of a specimen. |
![]() ![]() |
Σ | 1..1 | CodeableConcept | The type of material of which this Sample is comprised Binding: hl7VS-specimenType (example): The type of the specimen. |
![]() ![]() |
Σ | 1..1 | Reference(Patient | Group | Device | Substance | Location) | The participant from whom the biospecimen was taken |
![]() ![]() |
0..* | Reference(Specimen) | The Sample from which this Sample was derived | |
![]() ![]() |
0..1 | BackboneElement | Information about how the biospecimen was collected. Collection information may be unknown, but must be included when there is no parent sample | |
![]() ![]() ![]() |
0..* | Extension | Extension Slice: Unordered, Open by value:url | |
![]() ![]() ![]() ![]() |
0..1 | code | Any spatial/location qualifiers URL: https://nih-ncpi.github.io/ncpi-fhir-ig-2/StructureDefinition/biospecimen-spatial | |
![]() ![]() ![]() ![]() |
0..1 | code | Laterality information for the site URL: https://nih-ncpi.github.io/ncpi-fhir-ig-2/StructureDefinition/biospecimen-laterality | |
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() |
Σ | 0..1 | dateTime | The age at which this biospecimen was collected. Could be expressed with a term, an age, or an age range. (for ages use http://hl7.org/fhir/StructureDefinition/cqf-relativeDateTime) |
![]() ![]() ![]() |
0..1 | SimpleQuantity(4.0.1) | The total quantity of the specimen | |
![]() ![]() ![]() |
0..1 | CodeableConcept | The approach used to collect the biospecimen (unknown if not provided) Binding: FHIRSpecimenCollectionMethod (example): The technique that is used to perform the procedure. | |
![]() ![]() ![]() |
0..1 | CodeableConcept | The location of the specimen collection Binding: SNOMEDCTBodyStructures (example): Codes describing anatomical locations. May include laterality. | |
![]() ![]() |
Σ | 0..* | CodeableConcept | How is the Sample stored, eg, Frozen or with additives Binding: hl7VS-specimenCondition (extensible): Codes describing the state of the specimen. |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| Specimen.status | Base | required | SpecimenStatus | 📍4.0.1 | FHIR Std. |
| Specimen.type | Base | example | hl7VS-specimenType | 📦2.0.0 | THO v7.0 |
| 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.condition | Base | extensible | hl7VS-specimenCondition | 📦2.0.0 | THO v7.0 |
| Id | Grade | Path(s) | Description | Expression |
| collection-xor-parent | warning | Specimen | If there is a parent sample, there should be no collection information. If there is collection information present, there should be no parent sample. |
parent.exists().not() or collection.exists().not()
|
| 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 Specimen
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | Specimen | Sample for analysis Constraints: collection-xor-parent |
![]() ![]() |
0..* | Identifier | Unique ID for this sample | |
![]() ![]() |
0..1 | code | Can this Sample be requested for further analysis? | |
![]() ![]() |
1..1 | CodeableConcept | The type of material of which this Sample is comprised | |
![]() ![]() |
1..1 | Reference(Patient | Group | Device | Substance | Location) | The participant from whom the biospecimen was taken | |
![]() ![]() |
0..* | Reference(Specimen) | The Sample from which this Sample was derived | |
![]() ![]() |
0..1 | BackboneElement | Information about how the biospecimen was collected. Collection information may be unknown, but must be included when there is no parent sample | |
![]() ![]() ![]() |
0..* | Extension | Extension Slice: Unordered, Open by value:url | |
![]() ![]() ![]() ![]() |
0..1 | code | Any spatial/location qualifiers URL: https://nih-ncpi.github.io/ncpi-fhir-ig-2/StructureDefinition/biospecimen-spatial | |
![]() ![]() ![]() ![]() |
0..1 | code | Laterality information for the site URL: https://nih-ncpi.github.io/ncpi-fhir-ig-2/StructureDefinition/biospecimen-laterality | |
![]() ![]() ![]() |
0..1 | dateTime | The age at which this biospecimen was collected. Could be expressed with a term, an age, or an age range. (for ages use http://hl7.org/fhir/StructureDefinition/cqf-relativeDateTime) | |
![]() ![]() ![]() |
0..1 | SimpleQuantity(4.0.1) | The total quantity of the specimen | |
![]() ![]() ![]() |
0..1 | CodeableConcept | The approach used to collect the biospecimen (unknown if not provided) | |
![]() ![]() ![]() |
0..1 | CodeableConcept | The location of the specimen collection | |
![]() ![]() |
||||
![]() ![]() ![]() |
1..1 | CodeableConcept | Processing that was applied to the Parent Sample or from the Biospecimen Collection that yielded this distinct sample | |
![]() ![]() |
||||
![]() ![]() ![]() |
0..* | Extension | Extension Slice: Unordered, Open by value:url | |
![]() ![]() ![]() ![]() |
0..1 | code | Can this Sample be requested for further analysis? URL: https://nih-ncpi.github.io/ncpi-fhir-ig-2/StructureDefinition/aliquot-availability | |
![]() ![]() ![]() ![]() |
0..1 | Quantity | What is the concentration of the analyte in the Aliquot? URL: https://nih-ncpi.github.io/ncpi-fhir-ig-2/StructureDefinition/aliquot-concentration | |
![]() ![]() ![]() |
0..* | Identifier | Unique ID for this aliquot | |
![]() ![]() ![]() |
0..1 | SimpleQuantity(4.0.1) | What is the volume of the Aliquot? | |
![]() ![]() |
0..* | CodeableConcept | How is the Sample stored, eg, Frozen or with additives | |
Documentation for this format | ||||
| Id | Grade | Path(s) | Description | Expression |
| collection-xor-parent | warning | Specimen | If there is a parent sample, there should be no collection information. If there is collection information present, there should be no parent sample. |
parent.exists().not() or collection.exists().not()
|
Snapshot View
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() | ||||
|---|---|---|---|---|---|---|---|---|
![]() |
C | 0..* | Specimen | Sample for analysis Constraints: collection-xor-parent | ||||
![]() ![]() |
Σ | 0..1 | id | Logical id of this artifact | ||||
![]() ![]() |
Σ | 0..1 | Meta | Metadata about the resource | ||||
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
![]() ![]() |
0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
![]() ![]() |
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 | |||||
![]() ![]() |
0..* | Resource | Contained, inline Resources | |||||
![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored | ||||
![]() ![]() |
Σ | 0..* | Identifier | Unique ID for this sample | ||||
![]() ![]() |
Σ | 0..1 | Identifier | Identifier assigned by the lab | ||||
![]() ![]() |
?!Σ | 0..1 | code | Can this Sample be requested for further analysis? Binding: SpecimenStatus (required): Codes providing the status/availability of a specimen. | ||||
![]() ![]() |
Σ | 1..1 | CodeableConcept | The type of material of which this Sample is comprised Binding: hl7VS-specimenType (example): The type of the specimen. | ||||
![]() ![]() |
Σ | 1..1 | Reference(Patient | Group | Device | Substance | Location) | The participant from whom the biospecimen was taken | ||||
![]() ![]() |
Σ | 0..1 | dateTime | The time when specimen was received for processing | ||||
![]() ![]() |
0..* | Reference(Specimen) | The Sample from which this Sample was derived | |||||
![]() ![]() |
0..* | Reference(ServiceRequest) | Why the specimen was collected | |||||
![]() ![]() |
0..1 | BackboneElement | Information about how the biospecimen was collected. Collection information may be unknown, but must be included when there is no parent sample | |||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Extension Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() |
0..1 | code | Any spatial/location qualifiers URL: https://nih-ncpi.github.io/ncpi-fhir-ig-2/StructureDefinition/biospecimen-spatial | |||||
![]() ![]() ![]() ![]() |
0..1 | code | Laterality information for the site URL: https://nih-ncpi.github.io/ncpi-fhir-ig-2/StructureDefinition/biospecimen-laterality | |||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() |
Σ | 0..1 | Reference(Practitioner | PractitionerRole) | Who collected the specimen | ||||
![]() ![]() ![]() |
Σ | 0..1 | dateTime | The age at which this biospecimen was collected. Could be expressed with a term, an age, or an age range. (for ages use http://hl7.org/fhir/StructureDefinition/cqf-relativeDateTime) | ||||
![]() ![]() ![]() |
Σ | 0..1 | Duration | How long it took to collect specimen | ||||
![]() ![]() ![]() |
0..1 | SimpleQuantity(4.0.1) | The total quantity of the specimen | |||||
![]() ![]() ![]() |
0..1 | CodeableConcept | The approach used to collect the biospecimen (unknown if not provided) Binding: FHIRSpecimenCollectionMethod (example): The technique that is used to perform the procedure. | |||||
![]() ![]() ![]() |
0..1 | CodeableConcept | The location of the specimen collection Binding: SNOMEDCTBodyStructures (example): Codes describing anatomical locations. May include laterality. | |||||
![]() ![]() ![]() |
Σ | 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. | |||||
![]() ![]() ![]() ![]() |
CodeableConcept | |||||||
![]() ![]() ![]() ![]() |
Duration | |||||||
![]() ![]() |
0..* | BackboneElement | Processing and processing step details | |||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() |
0..1 | string | Textual description of procedure | |||||
![]() ![]() ![]() |
1..1 | CodeableConcept | Processing that was applied to the Parent Sample or from the Biospecimen Collection that yielded this distinct sample Binding: SpecimenProcessingProcedure (example): Type indicating the technique used to process the specimen. | |||||
![]() ![]() ![]() |
0..* | Reference(Substance) | Material used in the processing step | |||||
![]() ![]() ![]() |
0..1 | Date and time of specimen processing | ||||||
![]() ![]() ![]() ![]() |
dateTime | |||||||
![]() ![]() ![]() ![]() |
Period | |||||||
![]() ![]() |
0..* | BackboneElement | Direct container of specimen (tube/slide, etc.) | |||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Extension Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() |
0..1 | code | Can this Sample be requested for further analysis? URL: https://nih-ncpi.github.io/ncpi-fhir-ig-2/StructureDefinition/aliquot-availability | |||||
![]() ![]() ![]() ![]() |
0..1 | Quantity | What is the concentration of the analyte in the Aliquot? URL: https://nih-ncpi.github.io/ncpi-fhir-ig-2/StructureDefinition/aliquot-concentration | |||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() |
Σ | 0..* | Identifier | Unique ID for this aliquot | ||||
![]() ![]() ![]() |
0..1 | string | Textual description of the container | |||||
![]() ![]() ![]() |
0..1 | CodeableConcept | Kind of container directly associated with specimen Binding: SpecimenContainerType (example): Type of specimen container. | |||||
![]() ![]() ![]() |
0..1 | SimpleQuantity(4.0.1) | Container volume or size | |||||
![]() ![]() ![]() |
0..1 | SimpleQuantity(4.0.1) | What is the volume of the Aliquot? | |||||
![]() ![]() ![]() |
0..1 | Additive associated with container Binding: hl7VS-additivePreservative (example): Substance added to specimen container. | ||||||
![]() ![]() ![]() ![]() |
CodeableConcept | |||||||
![]() ![]() ![]() ![]() |
Reference(Substance) | |||||||
![]() ![]() |
Σ | 0..* | CodeableConcept | How is the Sample stored, eg, Frozen or with additives Binding: hl7VS-specimenCondition (extensible): Codes describing the state of the specimen. | ||||
![]() ![]() |
0..* | Annotation | Comments | |||||
Documentation for this format | ||||||||
| 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 | example | hl7VS-specimenType | 📦2.0.0 | THO v7.0 |
| 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 | 📦2.0.0 | THO v7.0 |
| 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 | 📦2.0.0 | THO v7.0 |
| Specimen.condition | Base | extensible | hl7VS-specimenCondition | 📦2.0.0 | THO v7.0 |
| Id | Grade | Path(s) | Description | Expression |
| collection-xor-parent | warning | Specimen | If there is a parent sample, there should be no collection information. If there is collection information present, there should be no parent sample. |
parent.exists().not() or collection.exists().not()
|
| 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 Specimen
Summary
Mandatory: 2 elements(1 nested mandatory element)
Extensions
This structure refers to these extensions:
Other representations of profile: CSV, Excel, Schematron