HL7 Europe IG Snapshot
0.0.2 - ci-build Unknown country code 'EU'

HL7 Europe IG Snapshot, published by Lithuanian Medical Library. This guide is not an authorized publication; it is the continuous build for version 0.0.2 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7LT/ig-eu-ehds/ and changes regularly. See the Directory of published versions

Resource Profile: Observation Results: laboratory (Eu Lab)

Official URL: http://hl7.eu/fhir/laboratory/StructureDefinition/Observation-resultslab-eu-lab Version: 0.2.0-ci
Standards status: Trial-use Draft as of 2026-03-29 Maturity Level: 2 Computable Name: ObservationResultsLaboratoryEu

Copyright/Legal: Used by permission of HL7 Europe, all rights reserved Creative Commons License

This profile constrains the Observation resource to represent results produced by laboratory tests or panels/studies for the HL7 Europe project. This observation may represent the result of a simple laboratory test such as hematocrit or it may group the set of results produced by a multi-test study or panel such as a complete blood count, a dynamic function test, a urine specimen study. In the latter case, the observation carries the overall conclusion of the study and or a global interpretation by the producer of the study, in the comment element; and references the atomic results of the study as "has-member" child observations.

Usages:

You can also check for usages in the FHIR IG Statistics

Formal Views of Profile Content

Description Differentials, Snapshots, and other representations.

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Observation C 0..* Observation(5.0.0) Laboratory result for a simple test or for a panel/study
Constraints: obs-6, obs-7, obs-8, eu-lab-1, eu-lab-2
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Laboratory Test Kit
Constraints: ext-1
... status ?!Σ 1..1 code Status of this observation (e.g. preliminary, final,...)
Binding: ObservationStatus (required): Codes providing the status of an observation.
... Slices for category 1..* CodeableConceptIPS(2.0.0) Classification of type of observation
Slice: Unordered, Open by pattern:$this
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.
.... category:laboratory 1..1 CodeableConcept Classification of type of observation
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.

Required Pattern: At least the following
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... coding 1..* Coding Code defined by a terminology system
Fixed Value: (Complex)
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
...... system 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/observation-category
...... version 0..1 string Version of the system - if relevant
...... code 1..1 code Symbol in syntax defined by the system
Fixed Value: laboratory
...... display 0..1 string Representation defined by the system
...... userSelected 0..1 boolean If this coding was chosen directly by the user
..... text 0..1 string Plain text representation of the concept
.... category:studyType 0..* CodeableConcept The way of grouping of the test results into clinically meaningful domains (e.g. hematology study, microbiology study, etc.)
Binding: http://hl7.eu/fhir/laboratory/ValueSet/lab-studyType-eu-lab (required)
.... category:specialty 0..* CodeableConcept The clinical domain of the laboratory performing the observation (e.g. microbiology, toxicology, chemistry)
Binding: http://hl7.eu/fhir/laboratory/ValueSet/lab-specialty-eu-lab (required)
... code ΣC 1..1 CodeableConceptIPS(2.0.0) Type of observation (code / type)
Binding: http://hl7.eu/fhir/laboratory/ValueSet/lab-obsCode-eu-lab (preferred)
... subject Σ 1..1 Reference(Patient: Animal (EU core)(0.1.0) | Patient (EU base)(0.1.0) | Group | Device | Location) Who and/or what the observation is about
.... reference ΣC 1..1 string Literal reference, Relative, internal or absolute URL
... effective[x] Σ 1..1 Clinically relevant time/time-period for observation
.... effective[x]All Types Content/Rules for all Types
..... Slices for extension Content/Rules for all slices
...... extension:data-absent-reason 0..1 code effective[x] absence reason
URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason
Binding: DataAbsentReason (required)
Constraints: ext-1
.... effectiveDateTime dateTime
.... effectivePeriod Period
... issued Σ 0..1 instant Date/Time this result was made available
... performer Σ 1..* Reference(PractitionerRole (EU base)(0.1.0) | Practitioner (EU base)(0.1.0) | Organization (EU base)(0.1.0) | CareTeam | Patient (EU base)(0.1.0) | RelatedPerson) Who is responsible for the observation
.... Slices for extension Content/Rules for all slices
..... extension:performerFunction 0..1 CodeableConcept Type of performance
URL: http://hl7.org/fhir/StructureDefinition/event-performerFunction
Binding: PerformerFunctionCodes (extensible)
Constraints: ext-1
.... reference ΣC 0..1 string Literal reference, Relative, internal or absolute URL
... Slices for value[x] ΣC 0..1 Actual result
Slice: Unordered, Open by type:$this
.... valueQuantity Quantity
.... valueCodeableConcept CodeableConcept
.... valueString string
.... valueBoolean boolean
.... valueInteger integer
.... valueRange Range
.... valueRatio Ratio
.... valueSampledData SampledData
.... valueTime time
.... valueDateTime dateTime
.... valuePeriod Period
.... valueAttachment Attachment
.... valueReference Reference(MolecularSequence)
.... value[x]:valueString ΣC 0..1 string Actual result
.... value[x]:valueRange ΣC 0..1 RangeIPS(1.1.0) Actual result
.... value[x]:valueRatio ΣC 0..1 RatioEuLab(0.0.2) Actual result
.... value[x]:valueTime ΣC 0..1 time Actual result
.... value[x]:valueDateTime ΣC 0..1 dateTime Actual result
.... value[x]:valuePeriod ΣC 0..1 Period Actual result
.... value[x]:valueQuantity ΣC 0..1 QuantityEuLab(0.0.2) Actual result
.... value[x]:valueCodeableConcept ΣC 0..1 CodeableConceptIPS(2.0.0) Actual result
Binding: Results Coded Values Laboratory - IPS . (preferred)
Additional BindingsPurpose
Results Blood Group - SNOMED CT IPS Free Set . candidate
Results Presence Absence - SNOMED CT IPS Free Set . candidate
Results Microorganism - SNOMED CT IPS Free Set . candidate
... dataAbsentReason C 0..1 CodeableConcept Provides a reason why the expected value is missing.
Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.
... interpretation 0..* CodeableConceptIPS(2.0.0) High, low, normal, etc
Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations.
... method 0..1 CodeableConceptIPS(2.0.0) How it was done
Binding: http://hl7.eu/fhir/laboratory/ValueSet/lab-technique-eu-lab (preferred)
... specimen C 0..1 Reference(Specimen: Laboratory (Eu Lab)(0.2.0-ci)) Specimen used for this observation
Constraints: obs-9
... device 0..1 Reference(Device | DeviceMetric) Measuring instrument
... hasMember Σ 0..* Reference(Observation Results: laboratory (Eu Lab)(0.2.0-ci)) Related resource that belongs to the Observation group
... component ΣC 0..* BackboneElement Laboratory result
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Constraints: ext-1
.... code ΣC 1..1 CodeableConceptIPS(2.0.0) Type of component observation (code / type)
Binding: Results Laboratory Observation - IPS . (preferred)
.... Slices for value[x] Σ 0..1 Actual component result
Slice: Unordered, Open by type:$this
..... valueQuantity Quantity
..... valueCodeableConcept CodeableConcept
..... valueString string
..... valueBoolean boolean
..... valueInteger integer
..... valueRange Range
..... valueRatio Ratio
..... valueSampledData SampledData
..... valueTime time
..... valueDateTime dateTime
..... valuePeriod Period
..... valueAttachment Attachment
..... valueReference Reference(MolecularSequence)
..... value[x]:valueString Σ 0..1 string Actual component result
..... value[x]:valueRange Σ 0..1 RangeIPS(1.1.0) Actual component result
..... value[x]:valueRatio Σ 0..1 RatioEuLab(0.0.2) Actual component result
..... value[x]:valueTime Σ 0..1 time Actual component result
..... value[x]:valueDateTime Σ 0..1 dateTime Actual component result
..... value[x]:valuePeriod Σ 0..1 Period Actual component result
..... value[x]:valueQuantity Σ 0..1 QuantityEuLab(0.0.2) Actual component result
..... value[x]:valueCodeableConcept Σ 0..1 CodeableConceptIPS(2.0.0) Actual component result
Binding: Results Coded Values Laboratory - IPS . (preferred)
Additional BindingsPurpose
Results Blood Group - SNOMED CT IPS Free Set . candidate
Results Presence Absence - SNOMED CT IPS Free Set . candidate
Results Microorganism - SNOMED CT IPS Free Set . candidate

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Observation.status Base required Observation Status 📍5.0.0 FHIR Std.
Observation.category Base preferred Observation Category Codes 📍5.0.0 FHIR Std.
Observation.category:laboratory Base preferred Observation Category Codes 📍5.0.0 FHIR Std.
Observation.category:studyType Base required http://hl7.eu/fhir/laboratory/ValueSet/lab-studyType-eu-lab Not State Unknown
Observation.category:specialty Base required http://hl7.eu/fhir/laboratory/ValueSet/lab-specialty-eu-lab Not State Unknown
Observation.code Base preferred http://hl7.eu/fhir/laboratory/ValueSet/lab-obsCode-eu-lab Not State Unknown
Observation.value[x]:valueCodeableConcept Base preferred Results Coded Values Laboratory - IPS . ⏿1.1.0 tx.hl7europe.eu
Observation.dataAbsentReason Base extensible Data Absent Reason 📍5.0.0 FHIR Std.
Observation.interpretation Base extensible Observation Interpretation Codes 📍5.0.0 FHIR Std.
Observation.method Base preferred http://hl7.eu/fhir/laboratory/ValueSet/lab-technique-eu-lab Not State Unknown
Observation.component.​code Base preferred Results Laboratory Observation - IPS . ⏿1.1.0 tx.hl7europe.eu
Observation.component.​value[x]:valueCodeableConcept Base preferred Results Coded Values Laboratory - IPS . ⏿1.1.0 tx.hl7europe.eu

Constraints

Id Grade Path(s) Description Expression
dom-2 error Observation If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Observation 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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Observation 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 Observation If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Observation A resource should have narrative for robust management text.`div`.exists()
ele-1 error Observation.implicitRules, Observation.extension, Observation.modifierExtension, Observation.status, Observation.category, Observation.category:laboratory, Observation.category:studyType, Observation.category:specialty, Observation.code, Observation.subject, Observation.subject.reference, Observation.effective[x], Observation.effective[x].extension:data-absent-reason, Observation.issued, Observation.performer, Observation.performer.extension:performerFunction, Observation.performer.reference, Observation.value[x], Observation.value[x]:valueString, Observation.value[x]:valueRange, Observation.value[x]:valueRatio, Observation.value[x]:valueTime, Observation.value[x]:valueDateTime, Observation.value[x]:valuePeriod, Observation.value[x]:valueQuantity, Observation.value[x]:valueCodeableConcept, Observation.dataAbsentReason, Observation.interpretation, Observation.method, Observation.specimen, Observation.device, Observation.hasMember, Observation.component, Observation.component.modifierExtension, Observation.component.code, Observation.component.value[x], Observation.component.value[x]:valueString, Observation.component.value[x]:valueRange, Observation.component.value[x]:valueRatio, Observation.component.value[x]:valueTime, Observation.component.value[x]:valueDateTime, Observation.component.value[x]:valuePeriod, Observation.component.value[x]:valueQuantity, Observation.component.value[x]:valueCodeableConcept All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
eu-lab-1 error Observation If observation status is other then "registered" or "cancelled", at least one of these Observation elements shall be provided: "value", "dataAbsentReason", "hasMember" or "component" (status in ('registered'|'cancelled')) or value.exists() or hasMember.exists() or component.exists() or dataAbsentReason.exists()
eu-lab-2 error Observation If observation has components and observation status is other then "registered" or "cancelled", at least one of these Observation.component elements shall be provided: "value" or "dataAbsentReason" component.exists() implies (status in ('registered'|'cancelled')) or component.value.exists() or component.dataAbsentReason.exists()
ext-1 error Observation.extension, Observation.modifierExtension, Observation.effective[x].extension:data-absent-reason, Observation.performer.extension:performerFunction, Observation.component.modifierExtension Must have either extensions or value[x], not both extension.exists() != value.exists()
obs-6 error Observation dataAbsentReason SHALL only be present if Observation.value[x] is not present dataAbsentReason.empty() or value.empty()
obs-7 error Observation If Observation.component.code is the same as Observation.code, then Observation.value SHALL NOT be present (the Observation.component.value[x] holds the value). value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()
obs-8 error Observation bodyStructure SHALL only be present if Observation.bodySite is not present bodySite.exists() implies bodyStructure.empty()
obs-9 error Observation.specimen If Observation.specimen is a reference to Group, the group can only have specimens (reference.resolve().exists() and reference.resolve() is Group) implies reference.resolve().member.entity.resolve().all($this is Specimen)

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Observation C 0..* Observation(5.0.0) Laboratory result for a simple test or for a panel/study
... extension 0..* Extension Laboratory Test Kit
... status 1..1 code Status of this observation (e.g. preliminary, final,...)
... Slices for category 1..* CodeableConceptIPS(2.0.0) Classification of type of observation
Slice: Unordered, Open by pattern:$this
.... category:laboratory 1..1 CodeableConcept Classification of type of observation
Required Pattern: At least the following
..... coding 1..* Coding Code defined by a terminology system
Fixed Value: (Complex)
...... system 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/observation-category
...... code 1..1 code Symbol in syntax defined by the system
Fixed Value: laboratory
.... category:studyType 0..* CodeableConcept The way of grouping of the test results into clinically meaningful domains (e.g. hematology study, microbiology study, etc.)
Binding: http://hl7.eu/fhir/laboratory/ValueSet/lab-studyType-eu-lab (required)
.... category:specialty 0..* CodeableConcept The clinical domain of the laboratory performing the observation (e.g. microbiology, toxicology, chemistry)
Binding: http://hl7.eu/fhir/laboratory/ValueSet/lab-specialty-eu-lab (required)
... subject 1..1 Reference(Patient: Animal (EU core)(0.1.0) | Patient (EU base)(0.1.0) | Group | Device | Location) Who and/or what the observation is about
.... reference 1..1 string Literal reference, Relative, internal or absolute URL
... effective[x] 1..1 Clinically relevant time/time-period for observation
.... effective[x]All Types Content/Rules for all Types
..... Slices for extension Content/Rules for all slices
...... extension:data-absent-reason 0..1 code effective[x] absence reason
URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason
Binding: DataAbsentReason (required)
.... effectiveDateTime dateTime
.... effectivePeriod Period
... issued 0..1 instant Date/Time this result was made available
... performer 1..* Reference(PractitionerRole (EU base)(0.1.0) | Practitioner (EU base)(0.1.0) | Organization (EU base)(0.1.0) | CareTeam | Patient (EU base)(0.1.0) | RelatedPerson) Who is responsible for the observation
.... Slices for extension Content/Rules for all slices
..... extension:performerFunction 0..* CodeableConcept Type of performance
URL: http://hl7.org/fhir/StructureDefinition/event-performerFunction
Binding: PerformerFunctionCodes (extensible)
... Slices for value[x] 0..1 Quantity, CodeableConcept, string, boolean, integer, Range, Ratio, SampledData, time, dateTime, Period, Attachment, Reference(MolecularSequence) Actual result
Slice: Unordered, Closed by type:$this
.... value[x]:valueString 0..1 string Actual result
.... value[x]:valueRange 0..1 RangeIPS(1.1.0) Actual result
.... value[x]:valueRatio 0..1 RatioEuLab(0.0.2) Actual result
.... value[x]:valueTime 0..1 time Actual result
.... value[x]:valueDateTime 0..1 dateTime Actual result
.... value[x]:valuePeriod 0..1 Period Actual result
.... value[x]:valueQuantity 0..1 QuantityEuLab(0.0.2) Actual result
.... value[x]:valueCodeableConcept 0..1 CodeableConceptIPS(2.0.0) Actual result
Binding: Results Coded Values Laboratory - IPS . (preferred)
Additional BindingsPurpose
Results Blood Group - SNOMED CT IPS Free Set . candidate
Results Presence Absence - SNOMED CT IPS Free Set . candidate
Results Microorganism - SNOMED CT IPS Free Set . candidate
... dataAbsentReason 0..1 CodeableConcept Provides a reason why the expected value is missing.
... interpretation 0..* CodeableConceptIPS(2.0.0) High, low, normal, etc
... method 0..1 CodeableConceptIPS(2.0.0) How it was done
Binding: http://hl7.eu/fhir/laboratory/ValueSet/lab-technique-eu-lab (preferred)
... specimen 0..1 Reference(Specimen: Laboratory (Eu Lab)(0.2.0-ci)) Specimen used for this observation
... device 0..1 Reference(Device | DeviceMetric) Measuring instrument
... hasMember 0..* Reference(Observation Results: laboratory (Eu Lab)(0.2.0-ci)) Related resource that belongs to the Observation group
... component 0..* BackboneElement Laboratory result
.... code 1..1 CodeableConceptIPS(2.0.0) Type of component observation (code / type)
Binding: Results Laboratory Observation - IPS . (preferred)
.... Slices for value[x] 0..1 Quantity, CodeableConcept, string, boolean, integer, Range, Ratio, SampledData, time, dateTime, Period, Attachment, Reference(MolecularSequence) Actual component result
Slice: Unordered, Closed by type:$this
..... value[x]:valueString 0..1 string Actual component result
..... value[x]:valueRange 0..1 RangeIPS(1.1.0) Actual component result
..... value[x]:valueRatio 0..1 RatioEuLab(0.0.2) Actual component result
..... value[x]:valueTime 0..1 time Actual component result
..... value[x]:valueDateTime 0..1 dateTime Actual component result
..... value[x]:valuePeriod 0..1 Period Actual component result
..... value[x]:valueQuantity 0..1 QuantityEuLab(0.0.2) Actual component result
..... value[x]:valueCodeableConcept 0..1 CodeableConceptIPS(2.0.0) Actual component result
Binding: Results Coded Values Laboratory - IPS . (preferred)
Additional BindingsPurpose
Results Blood Group - SNOMED CT IPS Free Set . candidate
Results Presence Absence - SNOMED CT IPS Free Set . candidate
Results Microorganism - SNOMED CT IPS Free Set . candidate

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
Observation.category:studyType Base required http://hl7.eu/fhir/laboratory/ValueSet/lab-studyType-eu-lab Not State Unknown
Observation.category:specialty Base required http://hl7.eu/fhir/laboratory/ValueSet/lab-specialty-eu-lab Not State Unknown
Observation.code Base preferred http://hl7.eu/fhir/laboratory/ValueSet/lab-obsCode-eu-lab Not State Unknown
Observation.value[x]:valueCodeableConcept Base preferred Results Coded Values Laboratory - IPS . ⏿1.1.0 tx.hl7europe.eu
Observation.method Base preferred http://hl7.eu/fhir/laboratory/ValueSet/lab-technique-eu-lab Not State Unknown
Observation.component.​code Base preferred Results Laboratory Observation - IPS . ⏿1.1.0 tx.hl7europe.eu
Observation.component.​value[x]:valueCodeableConcept Base preferred Results Coded Values Laboratory - IPS . ⏿1.1.0 tx.hl7europe.eu

Constraints

Id Grade Path(s) Description Expression
eu-lab-1 error Observation If observation status is other then "registered" or "cancelled", at least one of these Observation elements shall be provided: "value", "dataAbsentReason", "hasMember" or "component" (status in ('registered'|'cancelled')) or value.exists() or hasMember.exists() or component.exists() or dataAbsentReason.exists()
eu-lab-2 error Observation If observation has components and observation status is other then "registered" or "cancelled", at least one of these Observation.component elements shall be provided: "value" or "dataAbsentReason" component.exists() implies (status in ('registered'|'cancelled')) or component.value.exists() or component.dataAbsentReason.exists()
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Observation C 0..* Observation(5.0.0) Laboratory result for a simple test or for a panel/study
Constraints: obs-6, obs-7, obs-8, eu-lab-1, eu-lab-2
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... language 0..1 code Language of the resource content
Binding: AllLanguages (required): IETF language tag for a human language
Additional BindingsPurpose
CommonLanguages Starter
... 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
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Laboratory Test Kit
Constraints: ext-1
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
Constraints: ext-1
... identifier Σ 0..* Identifier Business Identifier for observation
... instantiates[x] Σ 0..1 canonical(ObservationDefinition), Reference(ObservationDefinition) Instantiates FHIR ObservationDefinition
... basedOn Σ 0..* Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) Fulfills plan, proposal or order
... triggeredBy 0..* BackboneElement Triggering observation(s)
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Constraints: ext-1
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Constraints: ext-1
.... observation Σ 1..1 Reference(Observation) Triggering observation
.... type Σ 1..1 code reflex | repeat | re-run
Binding: TriggeredBytype (required): The type of TriggeredBy Observation.
.... reason 0..1 string Reason that the observation was triggered
... partOf Σ 0..* Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy | GenomicStudy) Part of referenced event
... status ?!Σ 1..1 code Status of this observation (e.g. preliminary, final,...)
Binding: ObservationStatus (required): Codes providing the status of an observation.
... Slices for category 1..* CodeableConceptIPS(2.0.0) Classification of type of observation
Slice: Unordered, Open by pattern:$this
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.
.... category:laboratory 1..1 CodeableConcept Classification of type of observation
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.

Required Pattern: At least the following
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... coding 1..* Coding Code defined by a terminology system
Fixed Value: (Complex)
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
...... system 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/observation-category
...... version 0..1 string Version of the system - if relevant
...... code 1..1 code Symbol in syntax defined by the system
Fixed Value: laboratory
...... display 0..1 string Representation defined by the system
...... userSelected 0..1 boolean If this coding was chosen directly by the user
..... text 0..1 string Plain text representation of the concept
.... category:studyType 0..* CodeableConcept The way of grouping of the test results into clinically meaningful domains (e.g. hematology study, microbiology study, etc.)
Binding: http://hl7.eu/fhir/laboratory/ValueSet/lab-studyType-eu-lab (required)
.... category:specialty 0..* CodeableConcept The clinical domain of the laboratory performing the observation (e.g. microbiology, toxicology, chemistry)
Binding: http://hl7.eu/fhir/laboratory/ValueSet/lab-specialty-eu-lab (required)
... code ΣC 1..1 CodeableConceptIPS(2.0.0) Type of observation (code / type)
Binding: http://hl7.eu/fhir/laboratory/ValueSet/lab-obsCode-eu-lab (preferred)
... subject Σ 1..1 Reference(Patient: Animal (EU core)(0.1.0) | Patient (EU base)(0.1.0) | Group | Device | Location) Who and/or what the observation is about
.... id 0..1 id Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Constraints: ext-1
.... reference ΣC 1..1 string Literal reference, Relative, internal or absolute URL
.... type Σ 0..1 uri Type the reference refers to (e.g. "Patient") - must be a resource in resources
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
.... identifier ΣC 0..1 Identifier Logical reference, when literal reference is not known
.... display ΣC 0..1 string Text alternative for the resource
... focus Σ 0..* Reference(Resource) What the observation is about, when it is not about the subject of record
... encounter Σ 0..1 Reference(Encounter) Healthcare event during which this observation is made
... effective[x] Σ 1..1 Clinically relevant time/time-period for observation
.... effective[x]All Types Content/Rules for all Types
..... id 0..1 string Unique id for inter-element referencing
..... Slices for extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Constraints: ext-1
...... extension:data-absent-reason 0..1 code effective[x] absence reason
URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason
Binding: DataAbsentReason (required)
Constraints: ext-1
.... effectiveDateTime dateTime
.... effectivePeriod Period
... issued Σ 0..1 instant Date/Time this result was made available
... performer Σ 1..* Reference(PractitionerRole (EU base)(0.1.0) | Practitioner (EU base)(0.1.0) | Organization (EU base)(0.1.0) | CareTeam | Patient (EU base)(0.1.0) | RelatedPerson) Who is responsible for the observation
.... id 0..1 id Unique id for inter-element referencing
.... Slices for extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Constraints: ext-1
..... extension:performerFunction 0..1 CodeableConcept Type of performance
URL: http://hl7.org/fhir/StructureDefinition/event-performerFunction
Binding: PerformerFunctionCodes (extensible)
Constraints: ext-1
.... reference ΣC 0..1 string Literal reference, Relative, internal or absolute URL
.... type Σ 0..1 uri Type the reference refers to (e.g. "Patient") - must be a resource in resources
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
.... identifier ΣC 0..1 Identifier Logical reference, when literal reference is not known
.... display ΣC 0..1 string Text alternative for the resource
... Slices for value[x] ΣC 0..1 Actual result
Slice: Unordered, Open by type:$this
.... valueQuantity Quantity
.... valueCodeableConcept CodeableConcept
.... valueString string
.... valueBoolean boolean
.... valueInteger integer
.... valueRange Range
.... valueRatio Ratio
.... valueSampledData SampledData
.... valueTime time
.... valueDateTime dateTime
.... valuePeriod Period
.... valueAttachment Attachment
.... valueReference Reference(MolecularSequence)
.... value[x]:valueString ΣC 0..1 string Actual result
.... value[x]:valueRange ΣC 0..1 RangeIPS(1.1.0) Actual result
.... value[x]:valueRatio ΣC 0..1 RatioEuLab(0.0.2) Actual result
.... value[x]:valueTime ΣC 0..1 time Actual result
.... value[x]:valueDateTime ΣC 0..1 dateTime Actual result
.... value[x]:valuePeriod ΣC 0..1 Period Actual result
.... value[x]:valueQuantity ΣC 0..1 QuantityEuLab(0.0.2) Actual result
.... value[x]:valueCodeableConcept ΣC 0..1 CodeableConceptIPS(2.0.0) Actual result
Binding: Results Coded Values Laboratory - IPS . (preferred)
Additional BindingsPurpose
Results Blood Group - SNOMED CT IPS Free Set . candidate
Results Presence Absence - SNOMED CT IPS Free Set . candidate
Results Microorganism - SNOMED CT IPS Free Set . candidate
... dataAbsentReason C 0..1 CodeableConcept Provides a reason why the expected value is missing.
Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.
... interpretation 0..* CodeableConceptIPS(2.0.0) High, low, normal, etc
Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations.
... note 0..* Annotation Comments about the observation
... bodySite C 0..1 CodeableConcept Observed body part
Binding: SNOMEDCTBodyStructures (example): SNOMED CT Body site concepts
... bodyStructure C 0..1 Reference(BodyStructure) Observed body structure
... method 0..1 CodeableConceptIPS(2.0.0) How it was done
Binding: http://hl7.eu/fhir/laboratory/ValueSet/lab-technique-eu-lab (preferred)
... specimen C 0..1 Reference(Specimen: Laboratory (Eu Lab)(0.2.0-ci)) Specimen used for this observation
Constraints: obs-9
... device 0..1 Reference(Device | DeviceMetric) Measuring instrument
... referenceRange C 0..* BackboneElement Provides guide for interpretation
Constraints: obs-3
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Constraints: ext-1
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Constraints: ext-1
.... low C 0..1 SimpleQuantity(5.0.0) Low Range, if relevant
.... high C 0..1 SimpleQuantity(5.0.0) High Range, if relevant
.... normalValue 0..1 CodeableConcept Normal value, if relevant
Binding: ObservationReferenceRangeNormalValueCodes (extensible): Codes identifying the normal value of the observation.
.... type 0..1 CodeableConcept Reference range qualifier
Binding: ObservationReferenceRangeMeaningCodes (preferred): Code for the meaning of a reference range.
.... appliesTo 0..* CodeableConcept Reference range population
Binding: ObservationReferenceRangeAppliesToCodes (example): Codes identifying the population the reference range applies to.
.... age 0..1 Range Applicable age range, if relevant
.... text C 0..1 markdown Text based reference range in an observation
... hasMember Σ 0..* Reference(Observation Results: laboratory (Eu Lab)(0.2.0-ci)) Related resource that belongs to the Observation group
... derivedFrom Σ 0..* Reference(DocumentReference | ImagingStudy | ImagingSelection | QuestionnaireResponse | Observation | MolecularSequence | GenomicStudy) Related resource from which the observation is made
... component ΣC 0..* BackboneElement Laboratory result
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Constraints: ext-1
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Constraints: ext-1
.... code ΣC 1..1 CodeableConceptIPS(2.0.0) Type of component observation (code / type)
Binding: Results Laboratory Observation - IPS . (preferred)
.... Slices for value[x] Σ 0..1 Actual component result
Slice: Unordered, Open by type:$this
..... valueQuantity Quantity
..... valueCodeableConcept CodeableConcept
..... valueString string
..... valueBoolean boolean
..... valueInteger integer
..... valueRange Range
..... valueRatio Ratio
..... valueSampledData SampledData
..... valueTime time
..... valueDateTime dateTime
..... valuePeriod Period
..... valueAttachment Attachment
..... valueReference Reference(MolecularSequence)
..... value[x]:valueString Σ 0..1 string Actual component result
..... value[x]:valueRange Σ 0..1 RangeIPS(1.1.0) Actual component result
..... value[x]:valueRatio Σ 0..1 RatioEuLab(0.0.2) Actual component result
..... value[x]:valueTime Σ 0..1 time Actual component result
..... value[x]:valueDateTime Σ 0..1 dateTime Actual component result
..... value[x]:valuePeriod Σ 0..1 Period Actual component result
..... value[x]:valueQuantity Σ 0..1 QuantityEuLab(0.0.2) Actual component result
..... value[x]:valueCodeableConcept Σ 0..1 CodeableConceptIPS(2.0.0) Actual component result
Binding: Results Coded Values Laboratory - IPS . (preferred)
Additional BindingsPurpose
Results Blood Group - SNOMED CT IPS Free Set . candidate
Results Presence Absence - SNOMED CT IPS Free Set . candidate
Results Microorganism - SNOMED CT IPS Free Set . candidate
.... dataAbsentReason 0..1 CodeableConcept Why the component result is missing
Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.
.... interpretation 0..* CodeableConcept High, low, normal, etc
Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations.
.... referenceRange 0..* See referenceRange (Observation) Provides guide for interpretation of component result

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Observation.language Base required All Languages 📍5.0.0 FHIR Std.
Observation.triggeredBy.​type Base required triggered Bytype 📍5.0.0 FHIR Std.
Observation.status Base required Observation Status 📍5.0.0 FHIR Std.
Observation.category Base preferred Observation Category Codes 📍5.0.0 FHIR Std.
Observation.category:laboratory Base preferred Observation Category Codes 📍5.0.0 FHIR Std.
Observation.category:studyType Base required http://hl7.eu/fhir/laboratory/ValueSet/lab-studyType-eu-lab Not State Unknown
Observation.category:specialty Base required http://hl7.eu/fhir/laboratory/ValueSet/lab-specialty-eu-lab Not State Unknown
Observation.code Base preferred http://hl7.eu/fhir/laboratory/ValueSet/lab-obsCode-eu-lab Not State Unknown
Observation.subject.​type Base extensible Resource Types 📍5.0.0 FHIR Std.
Observation.performer.​type Base extensible Resource Types 📍5.0.0 FHIR Std.
Observation.value[x]:valueCodeableConcept Base preferred Results Coded Values Laboratory - IPS . ⏿1.1.0 tx.hl7europe.eu
Observation.dataAbsentReason Base extensible Data Absent Reason 📍5.0.0 FHIR Std.
Observation.interpretation Base extensible Observation Interpretation Codes 📍5.0.0 FHIR Std.
Observation.bodySite Base example SNOMED CT Body Structures 📍5.0.0 FHIR Std.
Observation.method Base preferred http://hl7.eu/fhir/laboratory/ValueSet/lab-technique-eu-lab Not State Unknown
Observation.referenceRange.​normalValue Base extensible Observation Reference Range Normal Value Codes 📍5.0.0 FHIR Std.
Observation.referenceRange.​type Base preferred Observation Reference Range Meaning Codes 📍5.0.0 FHIR Std.
Observation.referenceRange.​appliesTo Base example Observation Reference Range Applies To Codes 📍5.0.0 FHIR Std.
Observation.component.​code Base preferred Results Laboratory Observation - IPS . ⏿1.1.0 tx.hl7europe.eu
Observation.component.​value[x]:valueCodeableConcept Base preferred Results Coded Values Laboratory - IPS . ⏿1.1.0 tx.hl7europe.eu
Observation.component.​dataAbsentReason Base extensible Data Absent Reason 📍5.0.0 FHIR Std.
Observation.component.​interpretation Base extensible Observation Interpretation Codes 📍5.0.0 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error Observation If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Observation 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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Observation 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 Observation If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Observation A resource should have narrative for robust management text.`div`.exists()
ele-1 error Observation.meta, Observation.implicitRules, Observation.language, Observation.text, Observation.extension, Observation.modifierExtension, Observation.identifier, Observation.instantiates[x], Observation.basedOn, Observation.triggeredBy, Observation.triggeredBy.extension, Observation.triggeredBy.modifierExtension, Observation.triggeredBy.observation, Observation.triggeredBy.type, Observation.triggeredBy.reason, Observation.partOf, Observation.status, Observation.category, Observation.category:laboratory, Observation.category:studyType, Observation.category:specialty, Observation.code, Observation.subject, Observation.subject.extension, Observation.subject.reference, Observation.subject.type, Observation.subject.identifier, Observation.subject.display, Observation.focus, Observation.encounter, Observation.effective[x], Observation.effective[x].extension, Observation.effective[x].extension:data-absent-reason, Observation.issued, Observation.performer, Observation.performer.extension, Observation.performer.extension:performerFunction, Observation.performer.reference, Observation.performer.type, Observation.performer.identifier, Observation.performer.display, Observation.value[x], Observation.value[x]:valueString, Observation.value[x]:valueRange, Observation.value[x]:valueRatio, Observation.value[x]:valueTime, Observation.value[x]:valueDateTime, Observation.value[x]:valuePeriod, Observation.value[x]:valueQuantity, Observation.value[x]:valueCodeableConcept, Observation.dataAbsentReason, Observation.interpretation, Observation.note, Observation.bodySite, Observation.bodyStructure, Observation.method, Observation.specimen, Observation.device, Observation.referenceRange, Observation.referenceRange.extension, Observation.referenceRange.modifierExtension, Observation.referenceRange.low, Observation.referenceRange.high, Observation.referenceRange.normalValue, Observation.referenceRange.type, Observation.referenceRange.appliesTo, Observation.referenceRange.age, Observation.referenceRange.text, Observation.hasMember, Observation.derivedFrom, Observation.component, Observation.component.extension, Observation.component.modifierExtension, Observation.component.code, Observation.component.value[x], Observation.component.value[x]:valueString, Observation.component.value[x]:valueRange, Observation.component.value[x]:valueRatio, Observation.component.value[x]:valueTime, Observation.component.value[x]:valueDateTime, Observation.component.value[x]:valuePeriod, Observation.component.value[x]:valueQuantity, Observation.component.value[x]:valueCodeableConcept, Observation.component.dataAbsentReason, Observation.component.interpretation, Observation.component.referenceRange All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
eu-lab-1 error Observation If observation status is other then "registered" or "cancelled", at least one of these Observation elements shall be provided: "value", "dataAbsentReason", "hasMember" or "component" (status in ('registered'|'cancelled')) or value.exists() or hasMember.exists() or component.exists() or dataAbsentReason.exists()
eu-lab-2 error Observation If observation has components and observation status is other then "registered" or "cancelled", at least one of these Observation.component elements shall be provided: "value" or "dataAbsentReason" component.exists() implies (status in ('registered'|'cancelled')) or component.value.exists() or component.dataAbsentReason.exists()
ext-1 error Observation.extension, Observation.modifierExtension, Observation.triggeredBy.extension, Observation.triggeredBy.modifierExtension, Observation.subject.extension, Observation.effective[x].extension, Observation.effective[x].extension:data-absent-reason, Observation.performer.extension, Observation.performer.extension:performerFunction, Observation.referenceRange.extension, Observation.referenceRange.modifierExtension, Observation.component.extension, Observation.component.modifierExtension Must have either extensions or value[x], not both extension.exists() != value.exists()
obs-3 error Observation.referenceRange Must have at least a low or a high or text low.exists() or high.exists() or text.exists()
obs-6 error Observation dataAbsentReason SHALL only be present if Observation.value[x] is not present dataAbsentReason.empty() or value.empty()
obs-7 error Observation If Observation.component.code is the same as Observation.code, then Observation.value SHALL NOT be present (the Observation.component.value[x] holds the value). value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()
obs-8 error Observation bodyStructure SHALL only be present if Observation.bodySite is not present bodySite.exists() implies bodyStructure.empty()
obs-9 error Observation.specimen If Observation.specimen is a reference to Group, the group can only have specimens (reference.resolve().exists() and reference.resolve() is Group) implies reference.resolve().member.entity.resolve().all($this is Specimen)

Summary

Mandatory: 6 elements

Structures

This structure refers to these other structures:

Extensions

This structure refers to these extensions:

Slices

This structure defines the following Slices:

  • The element 1 is sliced based on the value of Observation.category
  • The element 1 is sliced based on the value of Observation.value[x] (Closed)
  • The element 1 is sliced based on the value of Observation.component.value[x] (Closed)

Maturity: 2

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Observation C 0..* Observation(5.0.0) Laboratory result for a simple test or for a panel/study
Constraints: obs-6, obs-7, obs-8, eu-lab-1, eu-lab-2
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Laboratory Test Kit
Constraints: ext-1
... status ?!Σ 1..1 code Status of this observation (e.g. preliminary, final,...)
Binding: ObservationStatus (required): Codes providing the status of an observation.
... Slices for category 1..* CodeableConceptIPS(2.0.0) Classification of type of observation
Slice: Unordered, Open by pattern:$this
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.
.... category:laboratory 1..1 CodeableConcept Classification of type of observation
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.

Required Pattern: At least the following
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... coding 1..* Coding Code defined by a terminology system
Fixed Value: (Complex)
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
...... system 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/observation-category
...... version 0..1 string Version of the system - if relevant
...... code 1..1 code Symbol in syntax defined by the system
Fixed Value: laboratory
...... display 0..1 string Representation defined by the system
...... userSelected 0..1 boolean If this coding was chosen directly by the user
..... text 0..1 string Plain text representation of the concept
.... category:studyType 0..* CodeableConcept The way of grouping of the test results into clinically meaningful domains (e.g. hematology study, microbiology study, etc.)
Binding: http://hl7.eu/fhir/laboratory/ValueSet/lab-studyType-eu-lab (required)
.... category:specialty 0..* CodeableConcept The clinical domain of the laboratory performing the observation (e.g. microbiology, toxicology, chemistry)
Binding: http://hl7.eu/fhir/laboratory/ValueSet/lab-specialty-eu-lab (required)
... code ΣC 1..1 CodeableConceptIPS(2.0.0) Type of observation (code / type)
Binding: http://hl7.eu/fhir/laboratory/ValueSet/lab-obsCode-eu-lab (preferred)
... subject Σ 1..1 Reference(Patient: Animal (EU core)(0.1.0) | Patient (EU base)(0.1.0) | Group | Device | Location) Who and/or what the observation is about
.... reference ΣC 1..1 string Literal reference, Relative, internal or absolute URL
... effective[x] Σ 1..1 Clinically relevant time/time-period for observation
.... effective[x]All Types Content/Rules for all Types
..... Slices for extension Content/Rules for all slices
...... extension:data-absent-reason 0..1 code effective[x] absence reason
URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason
Binding: DataAbsentReason (required)
Constraints: ext-1
.... effectiveDateTime dateTime
.... effectivePeriod Period
... issued Σ 0..1 instant Date/Time this result was made available
... performer Σ 1..* Reference(PractitionerRole (EU base)(0.1.0) | Practitioner (EU base)(0.1.0) | Organization (EU base)(0.1.0) | CareTeam | Patient (EU base)(0.1.0) | RelatedPerson) Who is responsible for the observation
.... Slices for extension Content/Rules for all slices
..... extension:performerFunction 0..1 CodeableConcept Type of performance
URL: http://hl7.org/fhir/StructureDefinition/event-performerFunction
Binding: PerformerFunctionCodes (extensible)
Constraints: ext-1
.... reference ΣC 0..1 string Literal reference, Relative, internal or absolute URL
... Slices for value[x] ΣC 0..1 Actual result
Slice: Unordered, Open by type:$this
.... valueQuantity Quantity
.... valueCodeableConcept CodeableConcept
.... valueString string
.... valueBoolean boolean
.... valueInteger integer
.... valueRange Range
.... valueRatio Ratio
.... valueSampledData SampledData
.... valueTime time
.... valueDateTime dateTime
.... valuePeriod Period
.... valueAttachment Attachment
.... valueReference Reference(MolecularSequence)
.... value[x]:valueString ΣC 0..1 string Actual result
.... value[x]:valueRange ΣC 0..1 RangeIPS(1.1.0) Actual result
.... value[x]:valueRatio ΣC 0..1 RatioEuLab(0.0.2) Actual result
.... value[x]:valueTime ΣC 0..1 time Actual result
.... value[x]:valueDateTime ΣC 0..1 dateTime Actual result
.... value[x]:valuePeriod ΣC 0..1 Period Actual result
.... value[x]:valueQuantity ΣC 0..1 QuantityEuLab(0.0.2) Actual result
.... value[x]:valueCodeableConcept ΣC 0..1 CodeableConceptIPS(2.0.0) Actual result
Binding: Results Coded Values Laboratory - IPS . (preferred)
Additional BindingsPurpose
Results Blood Group - SNOMED CT IPS Free Set . candidate
Results Presence Absence - SNOMED CT IPS Free Set . candidate
Results Microorganism - SNOMED CT IPS Free Set . candidate
... dataAbsentReason C 0..1 CodeableConcept Provides a reason why the expected value is missing.
Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.
... interpretation 0..* CodeableConceptIPS(2.0.0) High, low, normal, etc
Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations.
... method 0..1 CodeableConceptIPS(2.0.0) How it was done
Binding: http://hl7.eu/fhir/laboratory/ValueSet/lab-technique-eu-lab (preferred)
... specimen C 0..1 Reference(Specimen: Laboratory (Eu Lab)(0.2.0-ci)) Specimen used for this observation
Constraints: obs-9
... device 0..1 Reference(Device | DeviceMetric) Measuring instrument
... hasMember Σ 0..* Reference(Observation Results: laboratory (Eu Lab)(0.2.0-ci)) Related resource that belongs to the Observation group
... component ΣC 0..* BackboneElement Laboratory result
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Constraints: ext-1
.... code ΣC 1..1 CodeableConceptIPS(2.0.0) Type of component observation (code / type)
Binding: Results Laboratory Observation - IPS . (preferred)
.... Slices for value[x] Σ 0..1 Actual component result
Slice: Unordered, Open by type:$this
..... valueQuantity Quantity
..... valueCodeableConcept CodeableConcept
..... valueString string
..... valueBoolean boolean
..... valueInteger integer
..... valueRange Range
..... valueRatio Ratio
..... valueSampledData SampledData
..... valueTime time
..... valueDateTime dateTime
..... valuePeriod Period
..... valueAttachment Attachment
..... valueReference Reference(MolecularSequence)
..... value[x]:valueString Σ 0..1 string Actual component result
..... value[x]:valueRange Σ 0..1 RangeIPS(1.1.0) Actual component result
..... value[x]:valueRatio Σ 0..1 RatioEuLab(0.0.2) Actual component result
..... value[x]:valueTime Σ 0..1 time Actual component result
..... value[x]:valueDateTime Σ 0..1 dateTime Actual component result
..... value[x]:valuePeriod Σ 0..1 Period Actual component result
..... value[x]:valueQuantity Σ 0..1 QuantityEuLab(0.0.2) Actual component result
..... value[x]:valueCodeableConcept Σ 0..1 CodeableConceptIPS(2.0.0) Actual component result
Binding: Results Coded Values Laboratory - IPS . (preferred)
Additional BindingsPurpose
Results Blood Group - SNOMED CT IPS Free Set . candidate
Results Presence Absence - SNOMED CT IPS Free Set . candidate
Results Microorganism - SNOMED CT IPS Free Set . candidate

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Observation.status Base required Observation Status 📍5.0.0 FHIR Std.
Observation.category Base preferred Observation Category Codes 📍5.0.0 FHIR Std.
Observation.category:laboratory Base preferred Observation Category Codes 📍5.0.0 FHIR Std.
Observation.category:studyType Base required http://hl7.eu/fhir/laboratory/ValueSet/lab-studyType-eu-lab Not State Unknown
Observation.category:specialty Base required http://hl7.eu/fhir/laboratory/ValueSet/lab-specialty-eu-lab Not State Unknown
Observation.code Base preferred http://hl7.eu/fhir/laboratory/ValueSet/lab-obsCode-eu-lab Not State Unknown
Observation.value[x]:valueCodeableConcept Base preferred Results Coded Values Laboratory - IPS . ⏿1.1.0 tx.hl7europe.eu
Observation.dataAbsentReason Base extensible Data Absent Reason 📍5.0.0 FHIR Std.
Observation.interpretation Base extensible Observation Interpretation Codes 📍5.0.0 FHIR Std.
Observation.method Base preferred http://hl7.eu/fhir/laboratory/ValueSet/lab-technique-eu-lab Not State Unknown
Observation.component.​code Base preferred Results Laboratory Observation - IPS . ⏿1.1.0 tx.hl7europe.eu
Observation.component.​value[x]:valueCodeableConcept Base preferred Results Coded Values Laboratory - IPS . ⏿1.1.0 tx.hl7europe.eu

Constraints

Id Grade Path(s) Description Expression
dom-2 error Observation If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Observation 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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Observation 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 Observation If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Observation A resource should have narrative for robust management text.`div`.exists()
ele-1 error Observation.implicitRules, Observation.extension, Observation.modifierExtension, Observation.status, Observation.category, Observation.category:laboratory, Observation.category:studyType, Observation.category:specialty, Observation.code, Observation.subject, Observation.subject.reference, Observation.effective[x], Observation.effective[x].extension:data-absent-reason, Observation.issued, Observation.performer, Observation.performer.extension:performerFunction, Observation.performer.reference, Observation.value[x], Observation.value[x]:valueString, Observation.value[x]:valueRange, Observation.value[x]:valueRatio, Observation.value[x]:valueTime, Observation.value[x]:valueDateTime, Observation.value[x]:valuePeriod, Observation.value[x]:valueQuantity, Observation.value[x]:valueCodeableConcept, Observation.dataAbsentReason, Observation.interpretation, Observation.method, Observation.specimen, Observation.device, Observation.hasMember, Observation.component, Observation.component.modifierExtension, Observation.component.code, Observation.component.value[x], Observation.component.value[x]:valueString, Observation.component.value[x]:valueRange, Observation.component.value[x]:valueRatio, Observation.component.value[x]:valueTime, Observation.component.value[x]:valueDateTime, Observation.component.value[x]:valuePeriod, Observation.component.value[x]:valueQuantity, Observation.component.value[x]:valueCodeableConcept All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
eu-lab-1 error Observation If observation status is other then "registered" or "cancelled", at least one of these Observation elements shall be provided: "value", "dataAbsentReason", "hasMember" or "component" (status in ('registered'|'cancelled')) or value.exists() or hasMember.exists() or component.exists() or dataAbsentReason.exists()
eu-lab-2 error Observation If observation has components and observation status is other then "registered" or "cancelled", at least one of these Observation.component elements shall be provided: "value" or "dataAbsentReason" component.exists() implies (status in ('registered'|'cancelled')) or component.value.exists() or component.dataAbsentReason.exists()
ext-1 error Observation.extension, Observation.modifierExtension, Observation.effective[x].extension:data-absent-reason, Observation.performer.extension:performerFunction, Observation.component.modifierExtension Must have either extensions or value[x], not both extension.exists() != value.exists()
obs-6 error Observation dataAbsentReason SHALL only be present if Observation.value[x] is not present dataAbsentReason.empty() or value.empty()
obs-7 error Observation If Observation.component.code is the same as Observation.code, then Observation.value SHALL NOT be present (the Observation.component.value[x] holds the value). value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()
obs-8 error Observation bodyStructure SHALL only be present if Observation.bodySite is not present bodySite.exists() implies bodyStructure.empty()
obs-9 error Observation.specimen If Observation.specimen is a reference to Group, the group can only have specimens (reference.resolve().exists() and reference.resolve() is Group) implies reference.resolve().member.entity.resolve().all($this is Specimen)

Differential View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Observation C 0..* Observation(5.0.0) Laboratory result for a simple test or for a panel/study
... extension 0..* Extension Laboratory Test Kit
... status 1..1 code Status of this observation (e.g. preliminary, final,...)
... Slices for category 1..* CodeableConceptIPS(2.0.0) Classification of type of observation
Slice: Unordered, Open by pattern:$this
.... category:laboratory 1..1 CodeableConcept Classification of type of observation
Required Pattern: At least the following
..... coding 1..* Coding Code defined by a terminology system
Fixed Value: (Complex)
...... system 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/observation-category
...... code 1..1 code Symbol in syntax defined by the system
Fixed Value: laboratory
.... category:studyType 0..* CodeableConcept The way of grouping of the test results into clinically meaningful domains (e.g. hematology study, microbiology study, etc.)
Binding: http://hl7.eu/fhir/laboratory/ValueSet/lab-studyType-eu-lab (required)
.... category:specialty 0..* CodeableConcept The clinical domain of the laboratory performing the observation (e.g. microbiology, toxicology, chemistry)
Binding: http://hl7.eu/fhir/laboratory/ValueSet/lab-specialty-eu-lab (required)
... subject 1..1 Reference(Patient: Animal (EU core)(0.1.0) | Patient (EU base)(0.1.0) | Group | Device | Location) Who and/or what the observation is about
.... reference 1..1 string Literal reference, Relative, internal or absolute URL
... effective[x] 1..1 Clinically relevant time/time-period for observation
.... effective[x]All Types Content/Rules for all Types
..... Slices for extension Content/Rules for all slices
...... extension:data-absent-reason 0..1 code effective[x] absence reason
URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason
Binding: DataAbsentReason (required)
.... effectiveDateTime dateTime
.... effectivePeriod Period
... issued 0..1 instant Date/Time this result was made available
... performer 1..* Reference(PractitionerRole (EU base)(0.1.0) | Practitioner (EU base)(0.1.0) | Organization (EU base)(0.1.0) | CareTeam | Patient (EU base)(0.1.0) | RelatedPerson) Who is responsible for the observation
.... Slices for extension Content/Rules for all slices
..... extension:performerFunction 0..* CodeableConcept Type of performance
URL: http://hl7.org/fhir/StructureDefinition/event-performerFunction
Binding: PerformerFunctionCodes (extensible)
... Slices for value[x] 0..1 Quantity, CodeableConcept, string, boolean, integer, Range, Ratio, SampledData, time, dateTime, Period, Attachment, Reference(MolecularSequence) Actual result
Slice: Unordered, Closed by type:$this
.... value[x]:valueString 0..1 string Actual result
.... value[x]:valueRange 0..1 RangeIPS(1.1.0) Actual result
.... value[x]:valueRatio 0..1 RatioEuLab(0.0.2) Actual result
.... value[x]:valueTime 0..1 time Actual result
.... value[x]:valueDateTime 0..1 dateTime Actual result
.... value[x]:valuePeriod 0..1 Period Actual result
.... value[x]:valueQuantity 0..1 QuantityEuLab(0.0.2) Actual result
.... value[x]:valueCodeableConcept 0..1 CodeableConceptIPS(2.0.0) Actual result
Binding: Results Coded Values Laboratory - IPS . (preferred)
Additional BindingsPurpose
Results Blood Group - SNOMED CT IPS Free Set . candidate
Results Presence Absence - SNOMED CT IPS Free Set . candidate
Results Microorganism - SNOMED CT IPS Free Set . candidate
... dataAbsentReason 0..1 CodeableConcept Provides a reason why the expected value is missing.
... interpretation 0..* CodeableConceptIPS(2.0.0) High, low, normal, etc
... method 0..1 CodeableConceptIPS(2.0.0) How it was done
Binding: http://hl7.eu/fhir/laboratory/ValueSet/lab-technique-eu-lab (preferred)
... specimen 0..1 Reference(Specimen: Laboratory (Eu Lab)(0.2.0-ci)) Specimen used for this observation
... device 0..1 Reference(Device | DeviceMetric) Measuring instrument
... hasMember 0..* Reference(Observation Results: laboratory (Eu Lab)(0.2.0-ci)) Related resource that belongs to the Observation group
... component 0..* BackboneElement Laboratory result
.... code 1..1 CodeableConceptIPS(2.0.0) Type of component observation (code / type)
Binding: Results Laboratory Observation - IPS . (preferred)
.... Slices for value[x] 0..1 Quantity, CodeableConcept, string, boolean, integer, Range, Ratio, SampledData, time, dateTime, Period, Attachment, Reference(MolecularSequence) Actual component result
Slice: Unordered, Closed by type:$this
..... value[x]:valueString 0..1 string Actual component result
..... value[x]:valueRange 0..1 RangeIPS(1.1.0) Actual component result
..... value[x]:valueRatio 0..1 RatioEuLab(0.0.2) Actual component result
..... value[x]:valueTime 0..1 time Actual component result
..... value[x]:valueDateTime 0..1 dateTime Actual component result
..... value[x]:valuePeriod 0..1 Period Actual component result
..... value[x]:valueQuantity 0..1 QuantityEuLab(0.0.2) Actual component result
..... value[x]:valueCodeableConcept 0..1 CodeableConceptIPS(2.0.0) Actual component result
Binding: Results Coded Values Laboratory - IPS . (preferred)
Additional BindingsPurpose
Results Blood Group - SNOMED CT IPS Free Set . candidate
Results Presence Absence - SNOMED CT IPS Free Set . candidate
Results Microorganism - SNOMED CT IPS Free Set . candidate

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
Observation.category:studyType Base required http://hl7.eu/fhir/laboratory/ValueSet/lab-studyType-eu-lab Not State Unknown
Observation.category:specialty Base required http://hl7.eu/fhir/laboratory/ValueSet/lab-specialty-eu-lab Not State Unknown
Observation.code Base preferred http://hl7.eu/fhir/laboratory/ValueSet/lab-obsCode-eu-lab Not State Unknown
Observation.value[x]:valueCodeableConcept Base preferred Results Coded Values Laboratory - IPS . ⏿1.1.0 tx.hl7europe.eu
Observation.method Base preferred http://hl7.eu/fhir/laboratory/ValueSet/lab-technique-eu-lab Not State Unknown
Observation.component.​code Base preferred Results Laboratory Observation - IPS . ⏿1.1.0 tx.hl7europe.eu
Observation.component.​value[x]:valueCodeableConcept Base preferred Results Coded Values Laboratory - IPS . ⏿1.1.0 tx.hl7europe.eu

Constraints

Id Grade Path(s) Description Expression
eu-lab-1 error Observation If observation status is other then "registered" or "cancelled", at least one of these Observation elements shall be provided: "value", "dataAbsentReason", "hasMember" or "component" (status in ('registered'|'cancelled')) or value.exists() or hasMember.exists() or component.exists() or dataAbsentReason.exists()
eu-lab-2 error Observation If observation has components and observation status is other then "registered" or "cancelled", at least one of these Observation.component elements shall be provided: "value" or "dataAbsentReason" component.exists() implies (status in ('registered'|'cancelled')) or component.value.exists() or component.dataAbsentReason.exists()

Snapshot ViewView

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Observation C 0..* Observation(5.0.0) Laboratory result for a simple test or for a panel/study
Constraints: obs-6, obs-7, obs-8, eu-lab-1, eu-lab-2
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... language 0..1 code Language of the resource content
Binding: AllLanguages (required): IETF language tag for a human language
Additional BindingsPurpose
CommonLanguages Starter
... 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
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Laboratory Test Kit
Constraints: ext-1
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
Constraints: ext-1
... identifier Σ 0..* Identifier Business Identifier for observation
... instantiates[x] Σ 0..1 canonical(ObservationDefinition), Reference(ObservationDefinition) Instantiates FHIR ObservationDefinition
... basedOn Σ 0..* Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) Fulfills plan, proposal or order
... triggeredBy 0..* BackboneElement Triggering observation(s)
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Constraints: ext-1
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Constraints: ext-1
.... observation Σ 1..1 Reference(Observation) Triggering observation
.... type Σ 1..1 code reflex | repeat | re-run
Binding: TriggeredBytype (required): The type of TriggeredBy Observation.
.... reason 0..1 string Reason that the observation was triggered
... partOf Σ 0..* Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy | GenomicStudy) Part of referenced event
... status ?!Σ 1..1 code Status of this observation (e.g. preliminary, final,...)
Binding: ObservationStatus (required): Codes providing the status of an observation.
... Slices for category 1..* CodeableConceptIPS(2.0.0) Classification of type of observation
Slice: Unordered, Open by pattern:$this
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.
.... category:laboratory 1..1 CodeableConcept Classification of type of observation
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.

Required Pattern: At least the following
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... coding 1..* Coding Code defined by a terminology system
Fixed Value: (Complex)
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
...... system 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/observation-category
...... version 0..1 string Version of the system - if relevant
...... code 1..1 code Symbol in syntax defined by the system
Fixed Value: laboratory
...... display 0..1 string Representation defined by the system
...... userSelected 0..1 boolean If this coding was chosen directly by the user
..... text 0..1 string Plain text representation of the concept
.... category:studyType 0..* CodeableConcept The way of grouping of the test results into clinically meaningful domains (e.g. hematology study, microbiology study, etc.)
Binding: http://hl7.eu/fhir/laboratory/ValueSet/lab-studyType-eu-lab (required)
.... category:specialty 0..* CodeableConcept The clinical domain of the laboratory performing the observation (e.g. microbiology, toxicology, chemistry)
Binding: http://hl7.eu/fhir/laboratory/ValueSet/lab-specialty-eu-lab (required)
... code ΣC 1..1 CodeableConceptIPS(2.0.0) Type of observation (code / type)
Binding: http://hl7.eu/fhir/laboratory/ValueSet/lab-obsCode-eu-lab (preferred)
... subject Σ 1..1 Reference(Patient: Animal (EU core)(0.1.0) | Patient (EU base)(0.1.0) | Group | Device | Location) Who and/or what the observation is about
.... id 0..1 id Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Constraints: ext-1
.... reference ΣC 1..1 string Literal reference, Relative, internal or absolute URL
.... type Σ 0..1 uri Type the reference refers to (e.g. "Patient") - must be a resource in resources
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
.... identifier ΣC 0..1 Identifier Logical reference, when literal reference is not known
.... display ΣC 0..1 string Text alternative for the resource
... focus Σ 0..* Reference(Resource) What the observation is about, when it is not about the subject of record
... encounter Σ 0..1 Reference(Encounter) Healthcare event during which this observation is made
... effective[x] Σ 1..1 Clinically relevant time/time-period for observation
.... effective[x]All Types Content/Rules for all Types
..... id 0..1 string Unique id for inter-element referencing
..... Slices for extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Constraints: ext-1
...... extension:data-absent-reason 0..1 code effective[x] absence reason
URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason
Binding: DataAbsentReason (required)
Constraints: ext-1
.... effectiveDateTime dateTime
.... effectivePeriod Period
... issued Σ 0..1 instant Date/Time this result was made available
... performer Σ 1..* Reference(PractitionerRole (EU base)(0.1.0) | Practitioner (EU base)(0.1.0) | Organization (EU base)(0.1.0) | CareTeam | Patient (EU base)(0.1.0) | RelatedPerson) Who is responsible for the observation
.... id 0..1 id Unique id for inter-element referencing
.... Slices for extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Constraints: ext-1
..... extension:performerFunction 0..1 CodeableConcept Type of performance
URL: http://hl7.org/fhir/StructureDefinition/event-performerFunction
Binding: PerformerFunctionCodes (extensible)
Constraints: ext-1
.... reference ΣC 0..1 string Literal reference, Relative, internal or absolute URL
.... type Σ 0..1 uri Type the reference refers to (e.g. "Patient") - must be a resource in resources
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
.... identifier ΣC 0..1 Identifier Logical reference, when literal reference is not known
.... display ΣC 0..1 string Text alternative for the resource
... Slices for value[x] ΣC 0..1 Actual result
Slice: Unordered, Open by type:$this
.... valueQuantity Quantity
.... valueCodeableConcept CodeableConcept
.... valueString string
.... valueBoolean boolean
.... valueInteger integer
.... valueRange Range
.... valueRatio Ratio
.... valueSampledData SampledData
.... valueTime time
.... valueDateTime dateTime
.... valuePeriod Period
.... valueAttachment Attachment
.... valueReference Reference(MolecularSequence)
.... value[x]:valueString ΣC 0..1 string Actual result
.... value[x]:valueRange ΣC 0..1 RangeIPS(1.1.0) Actual result
.... value[x]:valueRatio ΣC 0..1 RatioEuLab(0.0.2) Actual result
.... value[x]:valueTime ΣC 0..1 time Actual result
.... value[x]:valueDateTime ΣC 0..1 dateTime Actual result
.... value[x]:valuePeriod ΣC 0..1 Period Actual result
.... value[x]:valueQuantity ΣC 0..1 QuantityEuLab(0.0.2) Actual result
.... value[x]:valueCodeableConcept ΣC 0..1 CodeableConceptIPS(2.0.0) Actual result
Binding: Results Coded Values Laboratory - IPS . (preferred)
Additional BindingsPurpose
Results Blood Group - SNOMED CT IPS Free Set . candidate
Results Presence Absence - SNOMED CT IPS Free Set . candidate
Results Microorganism - SNOMED CT IPS Free Set . candidate
... dataAbsentReason C 0..1 CodeableConcept Provides a reason why the expected value is missing.
Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.
... interpretation 0..* CodeableConceptIPS(2.0.0) High, low, normal, etc
Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations.
... note 0..* Annotation Comments about the observation
... bodySite C 0..1 CodeableConcept Observed body part
Binding: SNOMEDCTBodyStructures (example): SNOMED CT Body site concepts
... bodyStructure C 0..1 Reference(BodyStructure) Observed body structure
... method 0..1 CodeableConceptIPS(2.0.0) How it was done
Binding: http://hl7.eu/fhir/laboratory/ValueSet/lab-technique-eu-lab (preferred)
... specimen C 0..1 Reference(Specimen: Laboratory (Eu Lab)(0.2.0-ci)) Specimen used for this observation
Constraints: obs-9
... device 0..1 Reference(Device | DeviceMetric) Measuring instrument
... referenceRange C 0..* BackboneElement Provides guide for interpretation
Constraints: obs-3
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Constraints: ext-1
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Constraints: ext-1
.... low C 0..1 SimpleQuantity(5.0.0) Low Range, if relevant
.... high C 0..1 SimpleQuantity(5.0.0) High Range, if relevant
.... normalValue 0..1 CodeableConcept Normal value, if relevant
Binding: ObservationReferenceRangeNormalValueCodes (extensible): Codes identifying the normal value of the observation.
.... type 0..1 CodeableConcept Reference range qualifier
Binding: ObservationReferenceRangeMeaningCodes (preferred): Code for the meaning of a reference range.
.... appliesTo 0..* CodeableConcept Reference range population
Binding: ObservationReferenceRangeAppliesToCodes (example): Codes identifying the population the reference range applies to.
.... age 0..1 Range Applicable age range, if relevant
.... text C 0..1 markdown Text based reference range in an observation
... hasMember Σ 0..* Reference(Observation Results: laboratory (Eu Lab)(0.2.0-ci)) Related resource that belongs to the Observation group
... derivedFrom Σ 0..* Reference(DocumentReference | ImagingStudy | ImagingSelection | QuestionnaireResponse | Observation | MolecularSequence | GenomicStudy) Related resource from which the observation is made
... component ΣC 0..* BackboneElement Laboratory result
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Constraints: ext-1
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Constraints: ext-1
.... code ΣC 1..1 CodeableConceptIPS(2.0.0) Type of component observation (code / type)
Binding: Results Laboratory Observation - IPS . (preferred)
.... Slices for value[x] Σ 0..1 Actual component result
Slice: Unordered, Open by type:$this
..... valueQuantity Quantity
..... valueCodeableConcept CodeableConcept
..... valueString string
..... valueBoolean boolean
..... valueInteger integer
..... valueRange Range
..... valueRatio Ratio
..... valueSampledData SampledData
..... valueTime time
..... valueDateTime dateTime
..... valuePeriod Period
..... valueAttachment Attachment
..... valueReference Reference(MolecularSequence)
..... value[x]:valueString Σ 0..1 string Actual component result
..... value[x]:valueRange Σ 0..1 RangeIPS(1.1.0) Actual component result
..... value[x]:valueRatio Σ 0..1 RatioEuLab(0.0.2) Actual component result
..... value[x]:valueTime Σ 0..1 time Actual component result
..... value[x]:valueDateTime Σ 0..1 dateTime Actual component result
..... value[x]:valuePeriod Σ 0..1 Period Actual component result
..... value[x]:valueQuantity Σ 0..1 QuantityEuLab(0.0.2) Actual component result
..... value[x]:valueCodeableConcept Σ 0..1 CodeableConceptIPS(2.0.0) Actual component result
Binding: Results Coded Values Laboratory - IPS . (preferred)
Additional BindingsPurpose
Results Blood Group - SNOMED CT IPS Free Set . candidate
Results Presence Absence - SNOMED CT IPS Free Set . candidate
Results Microorganism - SNOMED CT IPS Free Set . candidate
.... dataAbsentReason 0..1 CodeableConcept Why the component result is missing
Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.
.... interpretation 0..* CodeableConcept High, low, normal, etc
Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations.
.... referenceRange 0..* See referenceRange (Observation) Provides guide for interpretation of component result

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Observation.language Base required All Languages 📍5.0.0 FHIR Std.
Observation.triggeredBy.​type Base required triggered Bytype 📍5.0.0 FHIR Std.
Observation.status Base required Observation Status 📍5.0.0 FHIR Std.
Observation.category Base preferred Observation Category Codes 📍5.0.0 FHIR Std.
Observation.category:laboratory Base preferred Observation Category Codes 📍5.0.0 FHIR Std.
Observation.category:studyType Base required http://hl7.eu/fhir/laboratory/ValueSet/lab-studyType-eu-lab Not State Unknown
Observation.category:specialty Base required http://hl7.eu/fhir/laboratory/ValueSet/lab-specialty-eu-lab Not State Unknown
Observation.code Base preferred http://hl7.eu/fhir/laboratory/ValueSet/lab-obsCode-eu-lab Not State Unknown
Observation.subject.​type Base extensible Resource Types 📍5.0.0 FHIR Std.
Observation.performer.​type Base extensible Resource Types 📍5.0.0 FHIR Std.
Observation.value[x]:valueCodeableConcept Base preferred Results Coded Values Laboratory - IPS . ⏿1.1.0 tx.hl7europe.eu
Observation.dataAbsentReason Base extensible Data Absent Reason 📍5.0.0 FHIR Std.
Observation.interpretation Base extensible Observation Interpretation Codes 📍5.0.0 FHIR Std.
Observation.bodySite Base example SNOMED CT Body Structures 📍5.0.0 FHIR Std.
Observation.method Base preferred http://hl7.eu/fhir/laboratory/ValueSet/lab-technique-eu-lab Not State Unknown
Observation.referenceRange.​normalValue Base extensible Observation Reference Range Normal Value Codes 📍5.0.0 FHIR Std.
Observation.referenceRange.​type Base preferred Observation Reference Range Meaning Codes 📍5.0.0 FHIR Std.
Observation.referenceRange.​appliesTo Base example Observation Reference Range Applies To Codes 📍5.0.0 FHIR Std.
Observation.component.​code Base preferred Results Laboratory Observation - IPS . ⏿1.1.0 tx.hl7europe.eu
Observation.component.​value[x]:valueCodeableConcept Base preferred Results Coded Values Laboratory - IPS . ⏿1.1.0 tx.hl7europe.eu
Observation.component.​dataAbsentReason Base extensible Data Absent Reason 📍5.0.0 FHIR Std.
Observation.component.​interpretation Base extensible Observation Interpretation Codes 📍5.0.0 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error Observation If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Observation 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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Observation 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 Observation If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Observation A resource should have narrative for robust management text.`div`.exists()
ele-1 error Observation.meta, Observation.implicitRules, Observation.language, Observation.text, Observation.extension, Observation.modifierExtension, Observation.identifier, Observation.instantiates[x], Observation.basedOn, Observation.triggeredBy, Observation.triggeredBy.extension, Observation.triggeredBy.modifierExtension, Observation.triggeredBy.observation, Observation.triggeredBy.type, Observation.triggeredBy.reason, Observation.partOf, Observation.status, Observation.category, Observation.category:laboratory, Observation.category:studyType, Observation.category:specialty, Observation.code, Observation.subject, Observation.subject.extension, Observation.subject.reference, Observation.subject.type, Observation.subject.identifier, Observation.subject.display, Observation.focus, Observation.encounter, Observation.effective[x], Observation.effective[x].extension, Observation.effective[x].extension:data-absent-reason, Observation.issued, Observation.performer, Observation.performer.extension, Observation.performer.extension:performerFunction, Observation.performer.reference, Observation.performer.type, Observation.performer.identifier, Observation.performer.display, Observation.value[x], Observation.value[x]:valueString, Observation.value[x]:valueRange, Observation.value[x]:valueRatio, Observation.value[x]:valueTime, Observation.value[x]:valueDateTime, Observation.value[x]:valuePeriod, Observation.value[x]:valueQuantity, Observation.value[x]:valueCodeableConcept, Observation.dataAbsentReason, Observation.interpretation, Observation.note, Observation.bodySite, Observation.bodyStructure, Observation.method, Observation.specimen, Observation.device, Observation.referenceRange, Observation.referenceRange.extension, Observation.referenceRange.modifierExtension, Observation.referenceRange.low, Observation.referenceRange.high, Observation.referenceRange.normalValue, Observation.referenceRange.type, Observation.referenceRange.appliesTo, Observation.referenceRange.age, Observation.referenceRange.text, Observation.hasMember, Observation.derivedFrom, Observation.component, Observation.component.extension, Observation.component.modifierExtension, Observation.component.code, Observation.component.value[x], Observation.component.value[x]:valueString, Observation.component.value[x]:valueRange, Observation.component.value[x]:valueRatio, Observation.component.value[x]:valueTime, Observation.component.value[x]:valueDateTime, Observation.component.value[x]:valuePeriod, Observation.component.value[x]:valueQuantity, Observation.component.value[x]:valueCodeableConcept, Observation.component.dataAbsentReason, Observation.component.interpretation, Observation.component.referenceRange All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
eu-lab-1 error Observation If observation status is other then "registered" or "cancelled", at least one of these Observation elements shall be provided: "value", "dataAbsentReason", "hasMember" or "component" (status in ('registered'|'cancelled')) or value.exists() or hasMember.exists() or component.exists() or dataAbsentReason.exists()
eu-lab-2 error Observation If observation has components and observation status is other then "registered" or "cancelled", at least one of these Observation.component elements shall be provided: "value" or "dataAbsentReason" component.exists() implies (status in ('registered'|'cancelled')) or component.value.exists() or component.dataAbsentReason.exists()
ext-1 error Observation.extension, Observation.modifierExtension, Observation.triggeredBy.extension, Observation.triggeredBy.modifierExtension, Observation.subject.extension, Observation.effective[x].extension, Observation.effective[x].extension:data-absent-reason, Observation.performer.extension, Observation.performer.extension:performerFunction, Observation.referenceRange.extension, Observation.referenceRange.modifierExtension, Observation.component.extension, Observation.component.modifierExtension Must have either extensions or value[x], not both extension.exists() != value.exists()
obs-3 error Observation.referenceRange Must have at least a low or a high or text low.exists() or high.exists() or text.exists()
obs-6 error Observation dataAbsentReason SHALL only be present if Observation.value[x] is not present dataAbsentReason.empty() or value.empty()
obs-7 error Observation If Observation.component.code is the same as Observation.code, then Observation.value SHALL NOT be present (the Observation.component.value[x] holds the value). value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()
obs-8 error Observation bodyStructure SHALL only be present if Observation.bodySite is not present bodySite.exists() implies bodyStructure.empty()
obs-9 error Observation.specimen If Observation.specimen is a reference to Group, the group can only have specimens (reference.resolve().exists() and reference.resolve() is Group) implies reference.resolve().member.entity.resolve().all($this is Specimen)

Summary

Mandatory: 6 elements

Structures

This structure refers to these other structures:

Extensions

This structure refers to these extensions:

Slices

This structure defines the following Slices:

  • The element 1 is sliced based on the value of Observation.category
  • The element 1 is sliced based on the value of Observation.value[x] (Closed)
  • The element 1 is sliced based on the value of Observation.component.value[x] (Closed)

Maturity: 2

 

Other representations of profile: CSV, Excel, Schematron