Notice
- Important: This guidance is under active development by NHS England and content may be added or updated on a regular basis.
- This Implementation Guide is currently in Draft and SHOULD NOT be used for development or active implementation without express direction from the NHS England Genomics Unit.
Genomics-Specimen
Used to capture information on Samples which will undergo or have undergone processing for genomic testing.
Within FHIR R4, there is no way to capture location against a sample to aid tracking, one of the key requirements of the Genomic Medicine Service. Investigation of a possible solution through backporting the container.location element within R5 is currently being investigated. Until this backport is adopted by UK Core, the location of samples, including interactions to manage and track samples, will be performed through changes to Task resources generated on submission of a ServiceRequest.
A diagram illustrating the links between resources is provided below (Duo Scenario)
Note: links from ServiceRequest.supportingInfo to samples collected after submission are pending further investigation
Profile url | FHIR Module | Normative Status |
---|---|---|
https://fhir.hl7.org.uk/StructureDefinition/UKCore-Specimen | UKCore | trial-use |
UKCoreSpecimen (Specimen) | I | Specimen | |
id | Σ | 0..1 | string |
meta | Σ | 0..1 | Meta |
implicitRules | Σ ?! | 0..1 | uri |
language | 0..1 | codeBinding | |
text | 0..1 | Narrative | |
contained | 0..* | Resource | |
extension | I | 0..* | Extension |
sampleCategory | I | 0..1 | Extension(CodeableConcept) |
modifierExtension | ?! I | 0..* | Extension |
identifier | Σ | 0..* | Identifier |
accessionIdentifier | Σ | 0..1 | Identifier |
status | S Σ ?! | 0..1 | codeBinding |
type | S Σ | 0..1 | CodeableConceptBinding |
subject | S Σ I | 0..1 | Reference(Patient | Group | Device | Substance | Location) |
receivedTime | S Σ | 0..1 | dateTime |
parent | I | 0..* | Reference(Specimen) |
request | I | 0..* | Reference(ServiceRequest) |
collection | 0..1 | BackboneElement | |
id | 0..1 | string | |
extension | I | 0..* | Extension |
specialHandling | I | 0..* | Extension(CodeableConcept) |
modifierExtension | Σ ?! I | 0..* | Extension |
collector | Σ I | 0..1 | Reference(Practitioner | PractitionerRole) |
id | 0..1 | string | |
extension | I | 0..* | Extension |
collectionCollectorR5 | I | 0..1 | Extension(Reference(Patient | RelatedPerson)) |
id | 0..1 | string | |
extension | I | 0..* | Extension |
url | 1..1 | uriFixed Value | |
value[x] | 1..1 | ||
valueReference | Reference(Patient | RelatedPerson) | ||
reference | Σ I | 0..1 | string |
type | Σ | 0..1 | uriBinding |
identifier | Σ | 0..1 | Identifier |
display | Σ | 0..1 | string |
collected[x] | Σ | 0..1 | |
collectedDateTime | dateTime | ||
collectedPeriod | Period | ||
duration | Σ I | 0..1 | Duration |
quantity | I | 0..1 | SimpleQuantity |
method | 0..1 | CodeableConcept | |
bodySite | 0..1 | CodeableConceptBinding | |
id | 0..1 | string | |
extension | I | 0..* | Extension |
bodySiteReference | I | 0..1 | Extension(Reference(BodyStructure)) |
id | 0..1 | string | |
extension | I | 0..* | Extension |
url | 1..1 | uriFixed Value | |
value[x] | 1..1 | ||
valueReference | Reference(BodyStructure) | ||
coding | Σ | 0..* | Coding |
text | Σ | 0..1 | string |
fastingStatus[x] | Σ | 0..1 | Binding |
fastingStatusCodeableConcept | CodeableConcept | ||
fastingStatusDuration | Duration | ||
processing | 0..* | BackboneElement | |
id | 0..1 | string | |
extension | I | 0..* | Extension |
modifierExtension | Σ ?! I | 0..* | Extension |
description | 0..1 | string | |
procedure | 0..1 | CodeableConcept | |
additive | I | 0..* | Reference(Substance) |
time[x] | 0..1 | ||
timeDateTime | dateTime | ||
timePeriod | Period | ||
container | 0..* | BackboneElement | |
id | 0..1 | string | |
extension | I | 0..* | Extension |
deviceR5 | I | 0..1 | Extension(Reference(UKCoreDevice)) |
locationR5 | I | 0..1 | Extension(Reference(UKCoreLocation)) |
modifierExtension | Σ ?! I | 0..* | Extension |
identifier | Σ | 0..* | Identifier |
description | 0..1 | string | |
type | 0..1 | CodeableConceptBinding | |
capacity | I | 0..1 | SimpleQuantity |
specimenQuantity | I | 0..1 | SimpleQuantity |
additive[x] | 0..1 | ||
additiveCodeableConcept | CodeableConcept | ||
additiveReference | Reference(Substance) | ||
condition | Σ | 0..* | CodeableConceptBinding |
note | 0..* | Annotation |
Differential from Specimen
UKCoreSpecimen (Specimen) | I | Specimen | |
id | Σ | 0..1 | string |
meta | Σ | 0..1 | Meta |
implicitRules | Σ ?! | 0..1 | uri |
language | 0..1 | codeBinding | |
text | 0..1 | Narrative | |
contained | 0..* | Resource | |
extension | I | 0..* | Extension |
sampleCategory | I | 0..1 | Extension(CodeableConcept) |
modifierExtension | ?! I | 0..* | Extension |
identifier | Σ | 0..* | Identifier |
accessionIdentifier | Σ | 0..1 | Identifier |
status | S Σ ?! | 0..1 | codeBinding |
type | S Σ | 0..1 | CodeableConceptBinding |
subject | S Σ I | 0..1 | Reference(Patient | Group | Device | Substance | Location) |
receivedTime | S Σ | 0..1 | dateTime |
parent | I | 0..* | Reference(Specimen) |
request | I | 0..* | Reference(ServiceRequest) |
collection | 0..1 | BackboneElement | |
id | 0..1 | string | |
extension | I | 0..* | Extension |
specialHandling | I | 0..* | Extension(CodeableConcept) |
modifierExtension | Σ ?! I | 0..* | Extension |
collector | Σ I | 0..1 | Reference(Practitioner | PractitionerRole) |
id | 0..1 | string | |
extension | I | 0..* | Extension |
collectionCollectorR5 | I | 0..1 | Extension(Reference(Patient | RelatedPerson)) |
id | 0..1 | string | |
extension | I | 0..* | Extension |
url | 1..1 | uriFixed Value | |
value[x] | 1..1 | ||
valueReference | Reference(Patient | RelatedPerson) | ||
reference | Σ I | 0..1 | string |
type | Σ | 0..1 | uriBinding |
identifier | Σ | 0..1 | Identifier |
display | Σ | 0..1 | string |
collected[x] | Σ | 0..1 | |
collectedDateTime | dateTime | ||
collectedPeriod | Period | ||
duration | Σ I | 0..1 | Duration |
quantity | I | 0..1 | SimpleQuantity |
method | 0..1 | CodeableConcept | |
bodySite | 0..1 | CodeableConceptBinding | |
id | 0..1 | string | |
extension | I | 0..* | Extension |
bodySiteReference | I | 0..1 | Extension(Reference(BodyStructure)) |
id | 0..1 | string | |
extension | I | 0..* | Extension |
url | 1..1 | uriFixed Value | |
value[x] | 1..1 | ||
valueReference | Reference(BodyStructure) | ||
coding | Σ | 0..* | Coding |
text | Σ | 0..1 | string |
fastingStatus[x] | Σ | 0..1 | Binding |
fastingStatusCodeableConcept | CodeableConcept | ||
fastingStatusDuration | Duration | ||
processing | 0..* | BackboneElement | |
id | 0..1 | string | |
extension | I | 0..* | Extension |
modifierExtension | Σ ?! I | 0..* | Extension |
description | 0..1 | string | |
procedure | 0..1 | CodeableConcept | |
additive | I | 0..* | Reference(Substance) |
time[x] | 0..1 | ||
timeDateTime | dateTime | ||
timePeriod | Period | ||
container | 0..* | BackboneElement | |
id | 0..1 | string | |
extension | I | 0..* | Extension |
deviceR5 | I | 0..1 | Extension(Reference(UKCoreDevice)) |
locationR5 | I | 0..1 | Extension(Reference(UKCoreLocation)) |
modifierExtension | Σ ?! I | 0..* | Extension |
identifier | Σ | 0..* | Identifier |
description | 0..1 | string | |
type | 0..1 | CodeableConceptBinding | |
capacity | I | 0..1 | SimpleQuantity |
specimenQuantity | I | 0..1 | SimpleQuantity |
additive[x] | 0..1 | ||
additiveCodeableConcept | CodeableConcept | ||
additiveReference | Reference(Substance) | ||
condition | Σ | 0..* | CodeableConceptBinding |
note | 0..* | Annotation |
Specimen | |
Definition | A sample to be used for analysis. |
Cardinality | 0...* |
Invariants |
|
Mappings |
|
Specimen.id | |
Definition | The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes. |
Cardinality | 0...1 |
Type | string |
Summary | True |
Comments | The only time that a resource does not have an id is when it is being submitted to the server using a create operation. |
Specimen.meta | |
Definition | The metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource. |
Cardinality | 0...1 |
Type | Meta |
Summary | True |
Invariants |
|
Mappings |
|
Specimen.implicitRules | |
Definition | A reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc. |
Cardinality | 0...1 |
Type | uri |
Modifier | True |
Summary | True |
Comments | Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc. |
Invariants |
|
Mappings |
|
Specimen.language | |
Definition | The base language in which the resource is written. |
Cardinality | 0...1 |
Type | code |
Binding | A human language. |
Comments | Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute). |
Invariants |
|
Mappings |
|
Specimen.text | |
Definition | A human-readable narrative that contains a summary of the resource and can be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it "clinically safe" for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety. |
Cardinality | 0...1 |
Type | Narrative |
Alias | narrative, html, xhtml, display |
Comments | Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a "text blob" or where text is additionally entered raw or narrated and encoded information is added later. |
Invariants |
|
Mappings |
|
Specimen.contained | |
Definition | These resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope. |
Cardinality | 0...* |
Type | Resource |
Alias | inline resources, anonymous resources, contained resources |
Comments | This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels. |
Mappings |
|
Specimen.extension | |
Definition | May be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. |
Cardinality | 0...* |
Type | Extension |
Alias | extensions, user content |
Comments | There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. |
Slicing | Unordered, Open, by url(Value) |
Invariants |
|
Mappings |
|
Specimen.extension:sampleCategory | |
Definition | This extension allows the recording of the category of a sample for use within Genomics, whether it is a tumour or germline sample. |
Cardinality | 0...1 |
Type | Extension(CodeableConcept) |
Alias | extensions, user content |
Comments | There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. |
Invariants |
|
Mappings |
|
Specimen.modifierExtension | |
Definition | May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself). |
Cardinality | 0...* |
Type | Extension |
Modifier | True |
Alias | extensions, user content |
Requirements | Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions. |
Comments | There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. |
Slicing | Unordered, Open, by url(Value) |
Invariants |
|
Mappings |
|
Specimen.identifier | |
Definition | Id for specimen. |
Cardinality | 0...* |
Type | Identifier |
Summary | True |
Invariants |
|
Mappings |
|
Specimen.accessionIdentifier | |
Definition | The identifier assigned by the lab when accessioning specimen(s). This is not necessarily the same as the specimen identifier, depending on local lab procedures. |
Cardinality | 0...1 |
Type | Identifier |
Summary | True |
Invariants |
|
Mappings |
|
Specimen.status | |
Definition | The availability of the specimen. |
Cardinality | 0...1 |
Type | code |
Binding | Codes providing the status/availability of a specimen. |
Must Support | True |
Modifier | True |
Summary | True |
Comments | This element is labeled as a modifier because the status contains codes that mark the resource as not currently valid. |
Invariants |
|
Mappings |
|
Specimen.type | |
Definition | The kind of material that forms the specimen. |
Cardinality | 0...1 |
Type | CodeableConcept |
Binding | A code from the SNOMED CT UK Clinical Terminology coding system |
Must Support | True |
Summary | True |
Comments | The type can change the way that a specimen is handled and drives what kind of analyses can properly be performed on the specimen. It is frequently used in diagnostic work flow decision making systems. |
Invariants |
|
Mappings |
|
Specimen.subject | |
Definition | Where the specimen came from. This may be from patient(s), from a location (e.g., the source of an environmental sample), or a sampling of a substance or a device. |
Cardinality | 0...1 |
Type | Reference(Patient | Group | Device | Substance | Location) |
Must Support | True |
Summary | True |
Requirements | Must know the subject context. |
Comments | References SHALL be a reference to an actual FHIR resource, and SHALL be resolveable (allowing for access control, temporary unavailability, etc.). Resolution can be either by retrieval from the URL, or, where applicable by resource type, by treating an absolute reference as a canonical URL and looking it up in a local registry/repository. |
Invariants |
|
Mappings |
|
Specimen.receivedTime | |
Definition | Time when specimen was received for processing or testing. |
Cardinality | 0...1 |
Type | dateTime |
Must Support | True |
Summary | True |
Invariants |
|
Mappings |
|
Specimen.parent | |
Definition | Reference to the parent (source) specimen which is used when the specimen was either derived from or a component of another specimen. |
Cardinality | 0...* |
Type | Reference(Specimen) |
Comments | The parent specimen could be the source from which the current specimen is derived by some processing step (e.g. an aliquot or isolate or extracted nucleic acids from clinical samples) or one of many specimens that were combined to create a pooled sample. |
Invariants |
|
Mappings |
|
Specimen.request | |
Definition | Details concerning a service request that required a specimen to be collected. |
Cardinality | 0...* |
Type | Reference(ServiceRequest) |
Comments | The request may be explicit or implied such with a ServiceRequest that requires a blood draw. |
Invariants |
|
Mappings |
|
Specimen.collection | |
Definition | Details concerning the specimen collection. |
Cardinality | 0...1 |
Type | BackboneElement |
Invariants |
|
Mappings |
|
Specimen.collection.id | |
Definition | Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. |
Cardinality | 0...1 |
Type | string |
Mappings |
|
Specimen.collection.extension | |
Definition | May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. |
Cardinality | 0...* |
Type | Extension |
Alias | extensions, user content |
Comments | There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. |
Slicing | Unordered, Open, by url(Value) |
Invariants |
|
Mappings |
|
Specimen.collection.extension:specialHandling | |
Definition | Special handling during the collection, transport, or storage of the specimen. |
Cardinality | 0...* |
Type | Extension(CodeableConcept) |
Alias | extensions, user content |
Comments | There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. |
Invariants |
|
Mappings |
|
Specimen.collection.modifierExtension | |
Definition | May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself). |
Cardinality | 0...* |
Type | Extension |
Modifier | True |
Summary | True |
Alias | extensions, user content, modifiers |
Requirements | Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions. |
Comments | There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. |
Invariants |
|
Mappings |
|
Specimen.collection.collector | |
Definition | Person who collected the specimen. |
Cardinality | 0...1 |
Type | Reference(Practitioner | PractitionerRole) |
Summary | True |
Comments | References SHALL be a reference to an actual FHIR resource, and SHALL be resolveable (allowing for access control, temporary unavailability, etc.). Resolution can be either by retrieval from the URL, or, where applicable by resource type, by treating an absolute reference as a canonical URL and looking it up in a local registry/repository. |
Invariants |
|
Mappings |
|
Specimen.collection.collector.id | |
Definition | Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. |
Cardinality | 0...1 |
Type | string |
Mappings |
|
Specimen.collection.collector.extension | |
Definition | May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. |
Cardinality | 0...* |
Type | Extension |
Alias | extensions, user content |
Comments | There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. |
Slicing | Unordered, Open, by url(Value) |
Invariants |
|
Mappings |
|
Specimen.collection.collector.extension:collectionCollectorR5 | |
Definition | Person who collected the specimen. This is an R5 backport |
Cardinality | 0...1 |
Type | Extension(Reference(Patient | RelatedPerson)) |
Alias | extensions, user content |
Comments | There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. |
Invariants |
|
Mappings |
|
Specimen.collection.collector.extension:collectionCollectorR5.id | |
Definition | Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. |
Cardinality | 0...1 |
Type | string |
Mappings |
|
Specimen.collection.collector.extension:collectionCollectorR5.extension | |
Definition | May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. |
Cardinality | 0...* |
Type | Extension |
Alias | extensions, user content |
Comments | There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. |
Slicing | Unordered, Open, by url(Value) |
Invariants |
|
Mappings |
|
Specimen.collection.collector.extension:collectionCollectorR5.url | |
Definition | Source of the definition for the extension code - a logical name or a URL. |
Cardinality | 1...1 |
Type | uri |
Comments | The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension. |
Fixed Value | http://hl7.org/fhir/5.0/StructureDefinition/extension-Specimen.collection.collector |
Mappings |
|
Specimen.collection.collector.extension:collectionCollectorR5.value[x] | |
Definition | Value of extension - must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). |
Cardinality | 1...1 |
Type | Reference(Patient | RelatedPerson) |
Invariants |
|
Mappings |
|
Specimen.collection.collector.reference | |
Definition | A reference to a location at which the other resource is found. The reference may be a relative reference, in which case it is relative to the service base URL, or an absolute URL that resolves to the location where the resource is found. The reference may be version specific or not. If the reference is not to a FHIR RESTful server, then it should be assumed to be version specific. Internal fragment references (start with '#') refer to contained resources. |
Cardinality | 0...1 |
Type | string |
Summary | True |
Comments | Using absolute URLs provides a stable scalable approach suitable for a cloud/web context, while using relative/logical references provides a flexible approach suitable for use when trading across closed eco-system boundaries. Absolute URLs do not need to point to a FHIR RESTful server, though this is the preferred approach. If the URL conforms to the structure "/[type]/[id]" then it should be assumed that the reference is to a FHIR RESTful server. |
Invariants |
|
Mappings |
|
Specimen.collection.collector.type | |
Definition | The expected type of the target of the reference. If both Reference.type and Reference.reference are populated and Reference.reference is a FHIR URL, both SHALL be consistent. The type is the Canonical URL of Resource Definition that is the type this reference refers to. References are URLs that are relative to http://hl7.org/fhir/StructureDefinition/ e.g. "Patient" is a reference to http://hl7.org/fhir/StructureDefinition/Patient. Absolute URLs are only allowed for logical models (and can only be used in references in logical models, not resources). |
Cardinality | 0...1 |
Type | uri |
Binding | Aa resource (or, for logical models, the URI of the logical model). |
Summary | True |
Comments | This element is used to indicate the type of the target of the reference. This may be used which ever of the other elements are populated (or not). In some cases, the type of the target may be determined by inspection of the reference (e.g. a RESTful URL) or by resolving the target of the reference; if both the type and a reference is provided, the reference SHALL resolve to a resource of the same type as that specified. |
Invariants |
|
Mappings |
|
Specimen.collection.collector.identifier | |
Definition | An identifier for the target resource. This is used when there is no way to reference the other resource directly, either because the entity it represents is not available through a FHIR server, or because there is no way for the author of the resource to convert a known identifier to an actual location. There is no requirement that a Reference.identifier point to something that is actually exposed as a FHIR instance, but it SHALL point to a business concept that would be expected to be exposed as a FHIR instance, and that instance would need to be of a FHIR resource type allowed by the reference. |
Cardinality | 0...1 |
Type | Identifier |
Summary | True |
Comments | When an identifier is provided in place of a reference, any system processing the reference will only be able to resolve the identifier to a reference if it understands the business context in which the identifier is used. Sometimes this is global (e.g. a national identifier) but often it is not. For this reason, none of the useful mechanisms described for working with references (e.g. chaining, includes) are possible, nor should servers be expected to be able resolve the reference. Servers may accept an identifier based reference untouched, resolve it, and/or reject it - see CapabilityStatement.rest.resource.referencePolicy. When both an identifier and a literal reference are provided, the literal reference is preferred. Applications processing the resource are allowed - but not required - to check that the identifier matches the literal reference Applications converting a logical reference to a literal reference may choose to leave the logical reference present, or remove it. Reference is intended to point to a structure that can potentially be expressed as a FHIR resource, though there is no need for it to exist as an actual FHIR resource instance - except in as much as an application wishes to actual find the target of the reference. The content referred to be the identifier must meet the logical constraints implied by any limitations on what resource types are permitted for the reference. For example, it would not be legitimate to send the identifier for a drug prescription if the type were Reference(Observation|DiagnosticReport). One of the use-cases for Reference.identifier is the situation where no FHIR representation exists (where the type is Reference (Any). |
Invariants |
|
Mappings |
|
Specimen.collection.collector.display | |
Definition | Plain text narrative that identifies the resource in addition to the resource reference. |
Cardinality | 0...1 |
Type | string |
Summary | True |
Comments | This is generally not the same as the Resource.text of the referenced resource. The purpose is to identify what's being referenced, not to fully describe it. |
Invariants |
|
Mappings |
|
Specimen.collection.collected[x] | |
Definition | Time when specimen was collected from subject - the physiologically relevant time. |
Cardinality | 0...1 |
Type | dateTime |
Summary | True |
Invariants |
|
Mappings |
|
Specimen.collection.duration | |
Definition | The span of time over which the collection of a specimen occurred. |
Cardinality | 0...1 |
Type | Duration |
Summary | True |
Comments | The context of use may frequently define what kind of quantity this is and therefore what kind of units can be used. The context of use may also restrict the values for the comparator. |
Invariants |
|
Mappings |
|
Specimen.collection.quantity | |
Definition | The quantity of specimen collected; for instance the volume of a blood sample, or the physical measurement of an anatomic pathology sample. |
Cardinality | 0...1 |
Type | SimpleQuantity |
Comments | The context of use may frequently define what kind of quantity this is and therefore what kind of units can be used. The context of use may also restrict the values for the comparator. |
Invariants |
|
Mappings |
|
Specimen.collection.method | |
Definition | A coded value specifying the technique that is used to perform the procedure. |
Cardinality | 0...1 |
Type | CodeableConcept |
Binding | The technique that is used to perform the procedure. |
Comments | Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination. |
Invariants |
|
Mappings |
|
Specimen.collection.bodySite | |
Definition | Anatomical location from which the specimen was collected (if subject is a patient). This is the target site. This element is not used for environmental specimens. |
Cardinality | 0...1 |
Type | CodeableConcept |
Binding | Codes describing anatomical locations. May include laterality. |
Comments | If the use case requires BodySite to be handled as a separate resource instead of an inline coded element (e.g. to identify and track separately) then use the standard extension bodySite. |
Invariants |
|
Mappings |
|
Specimen.collection.bodySite.id | |
Definition | Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. |
Cardinality | 0...1 |
Type | string |
Mappings |
|
Specimen.collection.bodySite.extension | |
Definition | May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. |
Cardinality | 0...* |
Type | Extension |
Alias | extensions, user content |
Comments | There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. |
Slicing | Unordered, Open, by url(Value) |
Invariants |
|
Mappings |
|
Specimen.collection.bodySite.extension:bodySiteReference | |
Definition | An extension to replicate the changes within R5 altering the data type of Specimen.collection.bodySite from CodeableConcept to CodeableReference (bodyStructure). |
Cardinality | 0...1 |
Type | Extension(Reference(BodyStructure)) |
Alias | extensions, user content |
Comments | There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. |
Invariants |
|
Mappings |
|
Specimen.collection.bodySite.extension:bodySiteReference.id | |
Definition | Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. |
Cardinality | 0...1 |
Type | string |
Mappings |
|
Specimen.collection.bodySite.extension:bodySiteReference.extension | |
Definition | May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. |
Cardinality | 0...* |
Type | Extension |
Alias | extensions, user content |
Comments | There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. |
Slicing | Unordered, Open, by url(Value) |
Invariants |
|
Mappings |
|
Specimen.collection.bodySite.extension:bodySiteReference.url | |
Definition | Source of the definition for the extension code - a logical name or a URL. |
Cardinality | 1...1 |
Type | uri |
Comments | The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension. |
Fixed Value | https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-BodySiteReference |
Mappings |
|
Specimen.collection.bodySite.extension:bodySiteReference.value[x] | |
Definition | Value of extension - must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). |
Cardinality | 1...1 |
Type | Reference(BodyStructure) |
Invariants |
|
Mappings |
|
Specimen.collection.bodySite.coding | |
Definition | A reference to a code defined by a terminology system. |
Cardinality | 0...* |
Type | Coding |
Summary | True |
Requirements | Allows for alternative encodings within a code system, and translations to other code systems. |
Comments | Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true. |
Invariants |
|
Mappings |
|
Specimen.collection.bodySite.text | |
Definition | A human language representation of the concept as seen/selected/uttered by the user who entered the data and/or which represents the intended meaning of the user. |
Cardinality | 0...1 |
Type | string |
Summary | True |
Requirements | The codes from the terminologies do not always capture the correct meaning with all the nuances of the human using them, or sometimes there is no appropriate code at all. In these cases, the text is used to capture the full meaning of the source. |
Comments | Very often the text is the same as a displayName of one of the codings. |
Invariants |
|
Mappings |
|
Specimen.collection.fastingStatus[x] | |
Definition | Abstinence or reduction from some or all food, drink, or both, for a period of time prior to sample collection. |
Cardinality | 0...1 |
Type | CodeableConcept |
Binding | Codes describing the fasting status of the patient. |
Summary | True |
Requirements | Many diagnostic tests require fasting to facilitate accurate interpretation. |
Comments | Representing fasting status using this element is preferred to representing it with an observation using a 'pre-coordinated code' such as LOINC 2005-7 (Calcium [Moles/time] in 2 hour Urine --12 hours fasting), or using a component observation |
Invariants |
|
Mappings |
|
Specimen.processing | |
Definition | Details concerning processing and processing steps for the specimen. |
Cardinality | 0...* |
Type | BackboneElement |
Invariants |
|
Mappings |
|
Specimen.processing.id | |
Definition | Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. |
Cardinality | 0...1 |
Type | string |
Mappings |
|
Specimen.processing.extension | |
Definition | May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. |
Cardinality | 0...* |
Type | Extension |
Alias | extensions, user content |
Comments | There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. |
Slicing | Unordered, Open, by url(Value) |
Invariants |
|
Mappings |
|
Specimen.processing.modifierExtension | |
Definition | May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself). |
Cardinality | 0...* |
Type | Extension |
Modifier | True |
Summary | True |
Alias | extensions, user content, modifiers |
Requirements | Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions. |
Comments | There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. |
Invariants |
|
Mappings |
|
Specimen.processing.description | |
Definition | Textual description of procedure. |
Cardinality | 0...1 |
Type | string |
Comments | Note that FHIR strings SHALL NOT exceed 1MB in size |
Invariants |
|
Mappings |
|
Specimen.processing.procedure | |
Definition | A coded value specifying the procedure used to process the specimen. |
Cardinality | 0...1 |
Type | CodeableConcept |
Binding | Type indicating the technique used to process the specimen. |
Comments | Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination. |
Invariants |
|
Mappings |
|
Specimen.processing.additive | |
Definition | Material used in the processing step. |
Cardinality | 0...* |
Type | Reference(Substance) |
Comments | References SHALL be a reference to an actual FHIR resource, and SHALL be resolveable (allowing for access control, temporary unavailability, etc.). Resolution can be either by retrieval from the URL, or, where applicable by resource type, by treating an absolute reference as a canonical URL and looking it up in a local registry/repository. |
Invariants |
|
Mappings |
|
Specimen.processing.time[x] | |
Definition | A record of the time or period when the specimen processing occurred. For example the time of sample fixation or the period of time the sample was in formalin. |
Cardinality | 0...1 |
Type | dateTime |
Invariants |
|
Mappings |
|
Specimen.container | |
Definition | The container holding the specimen. The recursive nature of containers; i.e. blood in tube in tray in rack is not addressed here. |
Cardinality | 0...* |
Type | BackboneElement |
Invariants |
|
Mappings |
|
Specimen.container.id | |
Definition | Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. |
Cardinality | 0...1 |
Type | string |
Mappings |
|
Specimen.container.extension | |
Definition | May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. |
Cardinality | 0...* |
Type | Extension |
Alias | extensions, user content |
Comments | There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. |
Slicing | Unordered, Open, by url(Value) |
Invariants |
|
Mappings |
|
Specimen.container.extension:deviceR5 | |
Definition | The device resource for the the container holding the specimen. If the container is in a holder then the referenced device will point to a parent device. |
Cardinality | 0...1 |
Type | Extension(Reference(UKCoreDevice)) |
Alias | extensions, user content |
Comments | There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. |
Invariants |
|
Mappings |
|
Specimen.container.extension:locationR5 | |
Definition | The location of the container holding the specimen. |
Cardinality | 0...1 |
Type | Extension(Reference(UKCoreLocation)) |
Alias | extensions, user content |
Comments | There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. |
Invariants |
|
Mappings |
|
Specimen.container.modifierExtension | |
Definition | May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself). |
Cardinality | 0...* |
Type | Extension |
Modifier | True |
Summary | True |
Alias | extensions, user content, modifiers |
Requirements | Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions. |
Comments | There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. |
Invariants |
|
Mappings |
|
Specimen.container.identifier | |
Definition | Id 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 circumstances. |
Cardinality | 0...* |
Type | Identifier |
Summary | True |
Invariants |
|
Mappings |
|
Specimen.container.description | |
Definition | Textual description of the container. |
Cardinality | 0...1 |
Type | string |
Comments | Note that FHIR strings SHALL NOT exceed 1MB in size |
Invariants |
|
Mappings |
|
Specimen.container.type | |
Definition | The type of container associated with the specimen (e.g. slide, aliquot, etc.). |
Cardinality | 0...1 |
Type | CodeableConcept |
Binding | Type of specimen container. |
Comments | Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination. |
Invariants |
|
Mappings |
|
Specimen.container.capacity | |
Definition | The capacity (volume or other measure) the container may contain. |
Cardinality | 0...1 |
Type | SimpleQuantity |
Comments | The context of use may frequently define what kind of quantity this is and therefore what kind of units can be used. The context of use may also restrict the values for the comparator. |
Invariants |
|
Mappings |
|
Specimen.container.specimenQuantity | |
Definition | The quantity of specimen in the container; may be volume, dimensions, or other appropriate measurements, depending on the specimen type. |
Cardinality | 0...1 |
Type | SimpleQuantity |
Comments | The context of use may frequently define what kind of quantity this is and therefore what kind of units can be used. The context of use may also restrict the values for the comparator. |
Invariants |
|
Mappings |
|
Specimen.container.additive[x] | |
Definition | Introduced substance to preserve, maintain or enhance the specimen. Examples: Formalin, Citrate, EDTA. |
Cardinality | 0...1 |
Type | CodeableConcept |
Binding | Substance added to specimen container. |
Invariants |
|
Mappings |
|
Specimen.condition | |
Definition | A mode or state of being that describes the nature of the specimen. |
Cardinality | 0...* |
Type | CodeableConcept |
Binding | Codes describing the state of the specimen. |
Summary | True |
Requirements | The specimen condition can be used to assess its quality or appropriateness for a specific test. |
Comments | Specimen condition is an observation made about the specimen. It's a point-in-time assessment. It can be used to assess its quality or appropriateness for a specific test. |
Invariants |
|
Mappings |
|
Specimen.note | |
Definition | To communicate any details or issues about the specimen or during the specimen collection. (for example: broken vial, sent with patient, frozen). |
Cardinality | 0...* |
Type | Annotation |
Comments | For systems that do not have structured annotations, they can simply communicate a single annotation with no author or time. This element may need to be included in narrative because of the potential for modifying information. Annotations SHOULD NOT be used to communicate "modifying" information that could be computable. (This is a SHOULD because enforcing user behavior is nearly impossible). |
Invariants |
|
Mappings |
|
FHIR | MDS | HL7v2 |
---|---|---|
Specimen | Sample/Biopsy inc germline, Extracted Specimen | SPM |
Specimen.subject | Fetus - Is sample for fetal or unregistered neonate, Raw specimen/biopsy - Family member provided by | PID segment attached to SPM |
Specimen.collection.quantity | PLCM activity - Sample volume, Raw specimen/biopsy - Volume | SPM-12 |
Specimen.type | PLCM activity - Sample category code | SPM-4 |
Specimen.identifier.assigner | Raw specimen/biopsy - Id assigning authority ODS code (many), Raw specimen/biopsy - Is assigning authority a histopathology laboratory (many), Extracted specimen - Id assigning authority ODS code (many) | SPM-2.1.2 |
Specimen.identifier.value | Raw specimen/biopsy - Id (many), Extracted specimen - Id (many) | SPM-2 |
Specimen.container.identifier | Raw specimen/biopsy - Sample well identifier | SAC-3 |
Specimen.note | Raw specimen/biopsy - Location details (will use backported R5 container.location once released), Extracted specimen - Location details, Raw specimen/biopsy - Sample to follow reason, Raw specimen/biopsy - Additional specimen/biopsy information, Extracted specimen - Additional specimen information | SAC-15, NTE segment attached to ORC, OBX segments attached to SPM |
Specimen.extension:sampleCategory | Raw specimen/biopsy - WGS specimen type category | SPM-5 |
Specimen.type | Raw specimen/biopsy - Type, Raw specimen/biopsy - Blood component, Extracted specimen - Type | SPM-4 |
Specimen.condition | Raw specimen/biopsy - State | SPM-24 |
Specimen.processing | Raw specimen/biopsy - Sample preparation (submitted to GLH) | Combination of SPM-6/SPM-24 or NTE segments if other processing |
Specimen.collection.collectedDateTime | Raw specimen/biopsy - Obtained date | SPM-17 |
Specimen.receivedTime | Raw specimen/biopsy - Received date | SPM-18 |
Specimen.collection.extension:specimen-specialHandling.valueCoding.code | Raw specimen/biopsy - High risk reason, Raw specimen/biopsy - Option for products of conception | SPM-16.2, SPM-15 |
Specimen.collection.bodySite | Raw specimen/biopsy - Biopsy site | SPM-8/SPM-9 |
Specimen.status | Raw specimen/biopsy - Sample to follow | N/A implied through absence of SPM segment in test order |
Specimen.condition | Extracted specimen - State | SPM-24 |
Specimen.processing.timeDateTime | Extracted specimen - Extracted date | OBR-7 attached to processing procedure in SAC-30 |
Constraint Profiles
Profiles indicating preferred element cardinality for use in Genomics, not to be used for validation
name | profile |
---|---|
NHSDigital_Specimen_Genomics | https://fhir.nhs.uk/StructureDefinition/NHSDigital-Specimen-Genomics |
Additional Guidance
- extension:sampleCategory
- identifier
- status
- type
- subject
- receivedTime
- parent
- request
- collection
- processing
- container
- condition
extension:sampleCategory
Allows the categorisation of a sample into either tumour or germline. Additional terms may be added upon review though the valueCodeableConcept.text field MAY be used as a free text representation if needed.
"extension": [ { "url": "https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-SampleCategory", "valueCodeableConcept": { "coding": [ { "system": "https://fhir.hl7.org.uk/CodeSystem/UKCore-SampleCategory", "code": "germline", "display": "Germline" } ] } } ]
identifier
Multiple identifiers MAY be assigned to a sample as it travels between labs. Each lab SHOULD append their local identifier to the identifier array if needed, ensuring either the system or assigner, is able to disambiguate any identifiers from possibly overlapping numbers from other organizations. Assigner is preferred in this case (see identifier example on the Genomics-Patient page for further guidance)
Note: accessionIdentifier is unused by the Genomic Medicine Service to facilitate movement of samples across organizational boundaries.
"identifier": [ { "system": "https://fhir.add.nhs.uk/Id/specimenId", "value": "RGT03135" } ],
status
If a Specimen has not been collected, the status SHOULD be marked as 'unavailable'. If the quality of the Specimen is such that it cannot be processed, the status SHOULD be 'unsatisfactory' (this is equivalent to a QC status of Failed). If the Specimen passes quality control, the status SHOULD be set as 'available
"status": "unsatisfactory",
type
The sample type, SNOMED CT preferred. Used to differentiate between raw and extracted (DNA) samples.
ConceptMaps for the allowed values for primary (raw) and final (extracted DNA) samples upon release of MDSv1.04, to aid identification of whether a sample is primary vs. final
"type": { "coding": [ { "system": "http://snomed.info/sct", "code": "445295009", "display": "Blood specimen with EDTA" } ] },
subject
SHALL be provided. This SHOULD be a reference to the Patient resource or the identifier, NHS number, for the patient.
Samples collected from a Fetus SHOULD reference a Patient resource for the Fetus. This should then be linked to relevant maternal/paternal resources through the RelatedPerson resource. Further information can be found on the Fetus Management clinical scenario. It is not envisaged that samples would need to be linked to more than one person e.g. both fetus and mother, though this assumption will be tested within the Alpha phase of the Genomic Medicine Service.
"subject": { "reference": "Patient/Patient-MeirLieberman-Example", "identifier": { "system": "https://fhir.nhs.uk/Id/nhs-number", "value": "9449307873" } },
receivedTime
SHOULD be updated upon receipt at a destination lab
"receivedTime": "2023-09-18T18:30:00Z"
parent
If a sample has been split into multiple parts, such as DNA being extracted from a primary sample, each SHOULD be represented using an additional Specimen resource, referencing the parent sample through the parent element.
The central Order Management broker will only create Tasks for Specimen resources which do not have a parent element, i.e. primary samples. If required, clients can create Tasks for processing of derivative samples manually.
"parent": [ { "reference": "Specimen/Specimen-BloodEDTA-Example" } ],
request
SHALL be provided. This SHOULD be a reference to the request which initiated collection of the sample. SHALL NOT be updated if the sample is used for another test e.g. for re-analysis. In the case that a Specimen needs to be processed as part of a new request, e.g. using a sample in storage,the ServiceRequest SHALL reference the pre-existing sample via ServiceRequest.specimen.
"request": [ { "reference": "ServiceRequest/ServiceRequest-NonWGSTestOrderForm-Example" } ]
collection
Additional information which can be collected about the circumstances under which as sample was collected, if relevant. This include extensions for specialHandling of the sample, e.g. due to high risk of infection, as well as an extension to bodySite to extend the coding to a BodyStructure reference, for more detailed collection of structural information e.g. where tumour morphology and topography need to be collected.
Where the collector is an Organization, or where the individual is not known, ODS codes MAY be used as identifiers in place of SDS-User-IDs. However, if referencing a resource, the PractitionerRole resource SHOULD still be referenced. In this case the PractitionerRole.identifier
and PractitionerRole.practitioner
reference would not be filled, leaving only the reference to an Organization from PractitionerRole.organization
.
Note on quanitities
The Specimen.collection.quantity is the amount of the sample collected at collection time. This quantity does not change as the sample is processed.
The Specimen.container.specimenQuantity is the amount of sample remaining in a container, this is equivalent to GEL 1001 banked volume. This value should be updated as the specimen is used.
If a specimen is split, additional specimen resources SHOULD be created (referencing the parent specimen), with individual container.specimenQuantity values.
"collection": { "collector": { "identifier": { "system": "https://fhir.nhs.uk/Id/sds-user-id", "value": "999999" } }, "collectedDateTime": "2022-07-11T09:00:00Z", "quantity": { "system": "http://unitsofmeasure.org", "code": "mL", "value": 2.5 }, "method": { "coding": [ { "system": "http://snomed.info/sct", "code": "129300006", "display": "Puncture - action" } ] }, "bodySite": { "coding": [ { "system": "http://snomed.info/sct", "code": "14975008", "display": "Forearm structure (body structure)" } ] } },
processing
SHOULD be updated if processing occurs on the sample which affects later use, e.g. additives added
"processing": [ { "description": "Acidify to pH < 3.0 with 6 N HCl.", "procedure": { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/v2-0373", "code": "ACID" } ] }, "additive": [ { "display": "6 N HCl" } ], "timeDateTime": "2015-08-18T08:10:00Z" } ],
container
The UK Core STU3 version of Specimen backports the R5 changes to the container BackboneElement to support capturing of storage location for a sample (through container.location
) and recursive capture of device identifiers (e.g. tube, well, rack, freezer through container.device
).
Additional examples/guidance will be provided within this IG once use of the fields has been appropriately tested.
Sample tracking information SHOULD be added to Tasks acting on Specimen resources, e.g. Tasks marked SamplePreparation or SampleProcessing, on either the output or input elements. This information MAY include consignment number, destination, date sent etc.
"container": [ { "extension": [ { "url": "http://hl7.org/fhir/5.0/StructureDefinition/extension-Specimen.container.location", "valueReference": { "reference": "Location/Location-NTGLHFridge-Example" } } ] } ]
condition
Used to record the condition of a specimen. Within Genomics, SHOULD be used to record the fixed/frozen state, using the UK Core bound ValueSet.
"condition": [ { "coding": [ { "system": "https://fhir.hl7.org.uk/CodeSystem/UKCore-BiopsyState", "code": "fresh-frozen", "display": "Fresh Frozen" } ] } ]