## Profile Comparison between http://hl7.eu/fhir/hdr/StructureDefinition/specimen-obl-eu-hdr vs http://hl7.eu/fhir/hdr/StructureDefinition/specimen-obl-eu-hdr

Left: | Specimen: obligations (http://hl7.eu/fhir/hdr/StructureDefinition/specimen-obl-eu-hdr)
Right: | Specimen: obligations (http://hl7.eu/fhir/hdr/StructureDefinition/specimen-obl-eu-hdr)

### Messages

Error | StructureDefinition.version | Values for version differ: '0.1.0-ballot' vs '1.0.0-alpha'
Information | StructureDefinition.date | Values for date differ: '2025-06-03T12:48:49+02:00' vs '2026-02-25T12:06:10+01:00'
Error | StructureDefinition.baseDefinition | Values for baseDefinition differ: 'http://hl7.eu/fhir/laboratory/StructureDefinition/Specimen-eu-lab' vs 'http://hl7.org/fhir/StructureDefinition/Specimen'
Information | StructureDefinition.short | Values for short differ: 'Laboratory Specimen' vs 'Sample for analysis'
Information | StructureDefinition.definition | Values for definition differ: 'Laboratory specimen' vs 'A sample to be used for analysis.'
Information | Specimen.language | Example/preferred bindings differ at Specimen.language using binding from SpecimenEuObligations
Information | StructureDefinition.comment | Values for comment differ: 'If the specimen.type conveys information about the site the specimen has been collected from, then, if the bodySite is present, it shall be coherent with the type' vs '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.'
Information | Specimen.type | Example/preferred bindings differ at Specimen.type using binding from SpecimenEuObligations
Information | StructureDefinition.short | Values for short differ: 'Why the specimen was collected.' vs 'Why the specimen was collected'
Information | StructureDefinition.comment | Values for comment differ: 'If the specimen information are known when the order is created then the ServiceRequest.specimen should be used. If the ServiceRequest can be updated when the specimen is collected then the ServiceRequest.specimen or the Specimen.request could be used. Otherwise the relationship is recorded in the Specimen.request element' vs 'The request may be explicit or implied such with a ServiceRequest that requires a blood draw.'
Information | StructureDefinition.short | Values for short differ: 'Extension' vs 'Additional content defined by implementations'
Information | StructureDefinition.definition | Values for definition differ: 'An Extension' vs '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.'
Information | StructureDefinition.comment | Values for comment differ: 'If the specimen.type conveys information about the site the specimen has been collected from, then, if the bodySite if present it shall be coherent with the type' vs '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](http://hl7.org/fhir/R4/extension-bodysite.html).'
Information | Specimen.collection.bodySite | Example/preferred bindings differ at Specimen.collection.bodySite using binding from SpecimenEuObligations
Information | StructureDefinition.short | Values for short differ: 'Extension' vs 'Additional content defined by implementations'
Information | StructureDefinition.definition | Values for definition differ: 'An Extension' vs '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.'
Information | Specimen.container.type | Example/preferred bindings differ at Specimen.container.type using binding from SpecimenEuObligations
Information | Specimen.container.additive[x] | Element maximum cardinalities differ: '0' vs '1'

### Metadata

Name | Value | Comments
--- | --- | ---
abstract | false |
baseDefinition | http://hl7.eu/fhir/laboratory/StructureDefinition/Specimen-eu-lab | http://hl7.org/fhir/StructureDefinition/Specimen | Values Differ
copyright | Used by permission of HL7 Europe, all rights reserved Creative Commons License |
date | 2025-06-03T12:48:49+02:00 | 2026-02-25T12:06:10+01:00 | Values Differ
description | This profile defines obligations for Specimen in FHIR for the purpose of this guide. |
experimental |  |
fhirVersion | 4.0.1 |
jurisdiction |  |
jurisdiction[0] | http://unstats.un.org/unsd/methods/m49/m49.htm#150 |
kind | resource |
name | SpecimenEuObligations |
publisher | HL7 Europe |
purpose |  |
status | draft |
title | Specimen: obligations |
type | Specimen |
url | http://hl7.eu/fhir/hdr/StructureDefinition/specimen-obl-eu-hdr |
version | 0.1.0-ballot | 1.0.0-alpha | Values Differ

### Structure

Name | L Flags | L Card. | L Type | L Description & Constraints | R Flags | R Card. | R Type | R Description & Constraints | Comments
--- | --- | --- | --- | --- | --- | --- | --- | --- | ---
Specimen |  | 0..* | SpecimenEu | Laboratory Specimen |  | 0..* | Specimen | Sample for analysis |
id | Σ | 0..1 | id | Logical id of this artifact | Σ | 0..1 | id | Logical id of this artifact |
meta | Σ | 0..1 | Meta | Metadata about the resource | Σ | 0..1 | Meta | Metadata about the resource |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
language |  | 0..1 | code | Language of the resource content Binding: ?? (preferred): A human language.
Additional Bindings | Purpose
?? | Max Binding
|  | 0..1 | code | Language of the resource content Binding: ?? (preferred): A human language.
Additional Bindings | Purpose
?? | Max Binding
| Example/preferred bindings differ at Specimen.language using binding from SpecimenEuObligations
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements |  | 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 |
contained |  | 0..* | Resource | Contained, inline Resources |  | 0..* | Resource | Contained, inline Resources |
extension |  | 0..* | Extension | Additional content defined by implementations |  | 0..* | Extension | Additional content defined by implementations |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ?! | 0..* | Extension | Extensions that cannot be ignored |
identifier | Σ | 0..* | Identifier | External Identifier | Σ | 0..* | Identifier | External Identifier |
accessionIdentifier | Σ | 0..1 | Identifier | Identifier assigned by the lab | Σ | 0..1 | Identifier | Identifier assigned by the lab |
status | ?!Σ | 0..1 | code | available | unavailable | unsatisfactory | entered-in-error Binding: ?? (required): Codes providing the status/availability of a specimen. | ?!Σ | 0..1 | code | available | unavailable | unsatisfactory | entered-in-error Binding: ?? (required): Codes providing the status/availability of a specimen. |
type | O Σ | 0..1 | CodeableConcept | Kind of material that forms the specimen Binding: ?? (preferred)
Obligations | Actor
SHALL:handle | HDRConsumer
SHALL:able-to-populate | HDRCreator
| O Σ | 0..1 | CodeableConcept | Kind of material that forms the specimen Binding: ?? (example): The type of the specimen.
Obligations | Actor
SHALL:handle | HDRConsumer
SHALL:able-to-populate | HDRCreator
| Example/preferred bindings differ at Specimen.type using binding from SpecimenEuObligations
subject | O Σ | 0..1 | Reference(Patient: Person | Patient: Animal | Group | Device | Substance | Location) | 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
Obligations | Actor
SHALL:handle | HDRConsumer
SHALL:able-to-populate | HDRCreator
| O Σ | 0..1 | Reference(Patient | Group | Device | Substance | Location) | 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
Obligations | Actor
SHALL:handle | HDRConsumer
SHALL:able-to-populate | HDRCreator
receivedTime | Σ | 0..1 | dateTime | The time when specimen was received for processing | Σ | 0..1 | dateTime | The time when specimen was received for processing |
parent |  | 0..* | Reference(Specimen: Laboratory) | Specimen from which this specimen originated |  | 0..* | Reference(Specimen) | Specimen from which this specimen originated |
request | O | 0..* | Reference(ServiceRequest) | Why the specimen was collected.
Obligations | Actor
SHALL:handle | HDRConsumer
SHOULD:able-to-populate | HDRCreator
| O | 0..* | Reference(ServiceRequest) | Why the specimen was collected
Obligations | Actor
SHALL:handle | HDRConsumer
SHOULD:able-to-populate | HDRCreator
collection | O | 0..1 | BackboneElement | Collection details
Obligations | Actor
SHALL:handle | HDRConsumer
SHALL:able-to-populate | HDRCreator
| O | 0..1 | BackboneElement | Collection details
Obligations | Actor
SHALL:handle | HDRConsumer
SHALL:able-to-populate | HDRCreator
id |  | 0..1 | string | Unique id for inter-element referencing |  | 0..1 | string | Unique id for inter-element referencing |
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url |  | 0..* | Extension | Additional content defined by implementations |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
collector | Σ | 0..1 | Reference(Practitioner | PractitionerRole) | Who collected the specimen | Σ | 0..1 | Reference(Practitioner | PractitionerRole) | Who collected the specimen |
collected[x] | Σ | 0..1 | dateTime, Period | Collection time | Σ | 0..1 | dateTime, Period | Collection time |
duration | Σ | 0..1 | Duration | How long it took to collect specimen | Σ | 0..1 | Duration | How long it took to collect specimen |
quantity |  | 0..1 | ?? | The quantity of specimen collected |  | 0..1 | ?? | The quantity of specimen collected |
method |  | 0..1 | CodeableConcept | Technique used to perform collection Binding: ?? (example): The technique that is used to perform the procedure. |  | 0..1 | CodeableConcept | Technique used to perform collection Binding: ?? (example): The technique that is used to perform the procedure. |
bodySite | O | 0..1 | CodeableConcept | Anatomical collection site Binding: ?? (preferred)
Obligations | Actor
SHALL:handle | HDRConsumer
SHALL:able-to-populate | HDRCreator
| O | 0..1 | CodeableConcept | Anatomical collection site Binding: ?? (example): Codes describing anatomical locations. May include laterality.
Obligations | Actor
SHALL:handle | HDRConsumer
SHALL:able-to-populate | HDRCreator
| Example/preferred bindings differ at Specimen.collection.bodySite using binding from SpecimenEuObligations
fastingStatus[x] | Σ | 0..1 | CodeableConcept, Duration | Whether or how long patient abstained from food and/or drink Binding: ?? (extensible): Codes describing the fasting status of the patient. | Σ | 0..1 | CodeableConcept, Duration | Whether or how long patient abstained from food and/or drink Binding: ?? (extensible): Codes describing the fasting status of the patient. |
processing |  | 0..* | BackboneElement | Processing and processing step details |  | 0..* | BackboneElement | Processing and processing step details |
id |  | 0..1 | string | Unique id for inter-element referencing |  | 0..1 | string | Unique id for inter-element referencing |
extension |  | 0..* | Extension | Additional content defined by implementations |  | 0..* | Extension | Additional content defined by implementations |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
description |  | 0..1 | string | Textual description of procedure |  | 0..1 | string | Textual description of procedure |
procedure |  | 0..1 | CodeableConcept | Indicates the treatment step applied to the specimen Binding: ?? (example): Type indicating the technique used to process the specimen. |  | 0..1 | CodeableConcept | Indicates the treatment step applied to the specimen Binding: ?? (example): Type indicating the technique used to process the specimen. |
additive | O | 0..* | Reference(Substance | Substance: Specimen Additive Substance) | Material used in the processing step
Obligations | Actor
SHALL:handle | HDRConsumer
SHOULD:able-to-populate | HDRCreator
| O | 0..* | Reference(Substance) | Material used in the processing step
Obligations | Actor
SHALL:handle | HDRConsumer
SHOULD:able-to-populate | HDRCreator
time[x] |  | 0..1 | dateTime, Period | Date and time of specimen processing |  | 0..1 | dateTime, Period | Date and time of specimen processing |
container | O | 0..* | BackboneElement | Direct container of specimen (tube/slide, etc.)
Obligations | Actor
SHALL:handle | HDRConsumer
SHALL:able-to-populate | HDRCreator
| O | 0..* | BackboneElement | Direct container of specimen (tube/slide, etc.)
Obligations | Actor
SHALL:handle | HDRConsumer
SHALL:able-to-populate | HDRCreator
id |  | 0..1 | string | Unique id for inter-element referencing |  | 0..1 | string | Unique id for inter-element referencing |
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url |  | 0..* | Extension | Additional content defined by implementations |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
identifier | Σ | 0..* | Identifier | Id for the container | Σ | 0..* | Identifier | Id for the container |
description |  | 0..1 | string | Textual description of the container |  | 0..1 | string | Textual description of the container |
type | O | 0..1 | CodeableConcept | Kind of container directly associated with specimen Binding: ?? (preferred)
Obligations | Actor
SHALL:handle | HDRConsumer
SHALL:able-to-populate | HDRCreator
| O | 0..1 | CodeableConcept | Kind of container directly associated with specimen Binding: ?? (example): Type of specimen container.
Obligations | Actor
SHALL:handle | HDRConsumer
SHALL:able-to-populate | HDRCreator
| Example/preferred bindings differ at Specimen.container.type using binding from SpecimenEuObligations
capacity |  | 0..1 | ?? | Container volume or size |  | 0..1 | ?? | Container volume or size |
specimenQuantity |  | 0..1 | ?? | Quantity of specimen within container |  | 0..1 | ?? | Quantity of specimen within container |
additive[x] |  | 0..0 |  | Additive associated with container Binding: ?? (example): Substance added to specimen container. |  | 0..1 | CodeableConcept, Reference(Substance) | Additive associated with container Binding: ?? (example): Substance added to specimen container. | Element maximum cardinalities differ: '0' vs '1'
condition | Σ | 0..* | CodeableConcept | State of the specimen Binding: ?? (extensible): Codes describing the state of the specimen. | Σ | 0..* | CodeableConcept | State of the specimen Binding: ?? (extensible): Codes describing the state of the specimen. |
note |  | 0..* | Annotation | Comments |  | 0..* | Annotation | Comments |
Documentation for this format