HL7 Europe Laboratory Report
2.0.0 - ci-build 150

HL7 Europe Laboratory Report - Downloaded Version 2.0.0 See the Directory of published versions

## Resource Profile: Observation Results: laboratory

Official URL: http://hl7.eu/fhir/laboratory/StructureDefinition/Observation-resultslab-eu-lab | Version: 2.0.0
Standards status: Trial-use | Maturity Level: 2 | Computable Name: ObservationResultsLaboratoryEu
Copyright/Legal: Copyright HL7 Europe. Licensed under creative commons public domain (CC0 1.0).

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.

This profile constrains the Observation resource to represent a laboratory in vitro diagnostic test or panel/study. In case of a panel/study, the results of the panel appear as sub-observations. In this case this top-level Observation acts as a grouper of all the observations belonging to the panel or study. The top-level observation may carry a conclusion in the value element and or a global interpretation by the producer of the study, in the comment element.

### Medical and Laboratory Test Results

#### Medical Test Results

Medical test results represent the outcomes of procedures performed to determine values of properties of the human body or of subjects related to the body (e.g., environment, substances, animals, devices etc.).

This broad category includes laboratory test results typically based on in vitro diagnostic devices that follow In Vitro Diagnostic Medical Devices Regulation (IVDR) (EU) 2017/746 and results based on measurements and diagnostic functions by medical devices according to the Medical Device Regulation (MDR) 2017/745. Additionally, the medical test results may include results from direct observation or emerging technologies for minimally invasive tests, such as biosensor monitoring or other non-invasive tests for direct measurement of the properties of saliva, sweat, or tears, as well as techniques for transcutaneous measurement of properties, regardless of whether the measurement is performed in a healthcare provider setting, such as in dedicated outpatient clinics, or at the point of care, or in patient’s home environment.

Medical test results include, but are not limited to:

- laboratory tests typically based on in vitro diagnostic devices regulated under the IVDR (EU) 2017/746;
- results from measurements performed by medical devices regulated under the MDR (EU) 2017/745, such as physiological or functional in vivo measurements;
- measurement results obtained by the imaging observation methods
- examination results from observation of the patient, body parts of the patient and/or their functions
- results generated by emerging technologies, including minimally invasive or non-invasive techniques such as biosensors and direct measurements from saliva, sweat, or tears, as well as transcutaneous measurement techniques.

#### Laboratory Test Results

Laboratory test results are a subset of medical test results and represent electronic health data produced by studies performed primarily using in vitro diagnostic methods under controlled conditions.

Laboratory test results constitute a major subset of medical test results and represent the primary focus of the specifications defined in this IG. Laboratory test results in electronic form represent results from studies performed through in vitro diagnostics such as clinical biochemistry, haematology, transfusion medicine, microbiology, immunology and related disciplines. Laboratory test results are often provided together with additional information supporting the interpretation of the results.

Laboratory test results are typically produced using in vitro diagnostic devices compliant with IVDR (EU) 2017/746. The results may originate from dedicated laboratories, point of care testing performed in healthcare settings such as doctor’s office or hospital wards, or from supervised testing performed in a non-clinical environment, including patient homes.

Laboratory test results are typically characterized by:

- controlled environmental conditions (e.g. temperature, humidity, lighting);
- standardized and validated standard operating procedures (SOPs);
- use of calibrated and maintained instruments;
- application of internal quality control (IQC) and participation in external quality assessment (EQA) / proficiency testing schemes;
- performance by trained and qualified personnel operating within defined professional roles and responsibilities.

Laboratory results are typically generated in:

- accredited clinical laboratories,
- hospital laboratory departments,
- or certified POCT environments operating under laboratory governance frameworks.

These conditions provide a high level of analytical reliability and support the use of laboratory test results for diagnostic decision-making, clinical monitoring, and secondary use such as research and population health analysis.

#### Guidance for Use

It is not easy to draw a clear line between general medical test results and laboratory test results as they are rather similar, with only minor differences in content, as shown in the logical models. Nevertheless, FHIR IG developers and implementers of the EHR systems would have to decide which type of observation to use. We propose to take into consideration the following rules:

- Use Laboratory test results when results originate from in vitro diagnostic procedures performed under laboratory governance and quality assurance frameworks.
- Use Medical test results as the broader category for results obtained across different environments and technologies.
- When representing medical including laboratory test results, ensure that the measurement context is available to support appropriate clinical interpretation.

#### Implementation note: Laboratory panels

Laboratory panels (or batteries) are predefined groups of tests that can be ordered from a laboratory using a single code from a chosen coding system. Upon receiving such an order, the laboratory expands it into its individual component tests and reports results for each test separately.

If it is necessary to preserve the relationship between the panel and its component tests, the panel should be represented as a grouping Observation. In this approach, the panel code is used as the code of the grouping Observation, and each component test is represented as a separate Observation. These individual Observations are then linked to the grouping Observation via the `hasMember` reference.

#### Implementation note: Reflex tests

Reflex tests are additional laboratory tests performed automatically based on predefined criteria, such as the result of an initial test. They are not usually ordered directly as part of the original request, but are triggered by the laboratory workflow when specific conditions are met.

When it is necessary to preserve the relationship between the initial test and the reflex test, this relationship should be represented using the triggeredBy element. The original test result is represented as one Observation, and each reflex test result is represented as a separate Observation. The reflex test Observation should reference the Observation that triggered it using triggeredBy.observation, and the appropriate trigger type should be recorded in triggeredBy.type.

This allows the result report to clearly indicate that the reflex test was performed as a consequence of another observation, while keeping each test result as a distinct Observation.

> This profile offers two options to indicate the Certified Reference Material used for the calibration (in general when the UCUM International Units are used for the results [IU]).

> - The first to be used when the Certified Reference Material is represented by a coded concept
> - The second when the Certified Reference Material is identified with an Identifier.

> Adopters are invited to give their feedback about

> 1. The most proper way to refer the Certified Reference Material, that is by using an Identifier or a CodeableConcept
> 2. If a CodeableReference should be used
> 3. If this information should be an extension of the Observation resource, or of other elements (e.g. DeviceMetric.calibration)

Usages:

- Refer to this Profile: DiagnosticReport: Laboratory Report and Observation Results: laboratory
- Examples for this Profile: Observation/4335db48-7090-45b3-a2c2-45b45f94a67c, Observation/d29b286d-b99c-410f-af4e-9455ea49d0af, Observation/obs-aerobic-culture, Observation/obs-anaerobic-culture... Show 11 more, Observation/obs-gram-stain, Observation/obs-gs-org1-quant, Observation/obs-gs-org1, Observation/obs-org-id1-growth, Observation/obs-org-id1-susc-1, Observation/obs-org-id1-susc-2, Observation/obs-org-id1-susc-3, Observation/obs-org-id1-susc-4, Observation/obs-org-id1-susc-panel, Observation/obs-org-id1 and Observation/obs-wbc

You can also check for usages in the FHIR IG Statistics

### Formal Views of Profile Content

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

- Key Elements Table
- Differential Table
- Snapshot Table
- Statistics/References
- All

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Observation | C | 0..* | MedicalTestResultEuCore | Laboratory result for a simple test or for a panel/study Constraints: obs-6, obs-7, obs-value-1, eu-lab-1, eu-lab-2
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
Slices for extension |  |  |  | Content/Rules for all slices
extension:bodyStructure |  | 0..1 | Reference(Cross-version Profile for R5.BodyStructure for use in FHIR R4(0.1.0) | BodyStructure) | R5: Observed body structure (new) URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.bodyStructure Constraints: ext-1
extension:triggeredBy |  | 0..* | (Complex) | R5: Triggering observation(s) (new) URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.triggeredBy Constraints: ext-1
Slices for extension |  | 2..* | Extension | Extension Slice: Unordered, Open by value:url Constraints: ext-1
extension:observation |  | 1..1 | Extension | Extension Constraints: ext-1
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url Constraints: ext-1
url |  | 1..1 | uri | "observation"
value[x] |  | 1..1 | Reference(Observation: Medical Test Result (EU core)) | Triggering observation
extension:type |  | 1..1 | Extension | R5: reflex | repeat | re-run (new) Constraints: ext-1
url |  | 1..1 | uri | "type"
value[x] |  | 1..1 | code | reflex | repeat | re-run Binding: R5ObservationTriggeredbytypeForR4 (0.1.0) (required): The type of TriggeredBy Observation.
extension:reason |  | 0..1 | Extension | R5: Reason that the observation was triggered (new) Constraints: ext-1
url |  | 1..1 | uri | "reason"
url |  | 1..1 | uri | "http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.triggeredBy"
extension:value-r5 |  | 0..1 | (Complex) | only for Diagrams or Pictures URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.value Constraints: ext-1
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url Constraints: ext-1
url |  | 1..1 | uri | "http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.value"
extension:supportingInfo |  | 0..* | Reference(Resource) | Other information that may be relevant to this event. URL: http://hl7.org/fhir/StructureDefinition/workflow-supportingInfo
extension:labTestKit |  | 0..* | Reference(Device) | Laboratory Test Kit URL: http://hl7.eu/fhir/laboratory/StructureDefinition/observation-deviceLabTestKit
extension:certifiedRefMaterialCodeable |  | 0..* | CodeableConcept | Certified Reference Material: CodeableConcept URL: http://hl7.eu/fhir/laboratory/StructureDefinition/observation-certifiedRefMaterialCodeable Binding: Laboratory Certified Reference Material (example)
extension:certifiedRefMaterialIdentifer |  | 0..* | Identifier | Certified Reference Material: Identifier URL: http://hl7.eu/fhir/laboratory/StructureDefinition/observation-certifiedRefMaterialIdentifer
extension:accredited |  | 0..1 | boolean | Accredited test URL: http://hl7.eu/fhir/StructureDefinition/laboratory-accredited
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
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..* | CodeableConcept | 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: Laboratory Study Types (required)
category:specialty |  | 0..* | CodeableConcept | The clinical domain of the laboratory performing the observation (e.g. microbiology, toxicology, chemistry) Binding: Laboratory Specialty (required)
code | Σ | 1..1 | CodeableConcept | Type of observation (code / type) Binding: Laboratory Code (preferred)
subject | Σ | 1..1 | Reference(Patient (EU core)) | Who and/or what the observation is about
focus | Σ | 0..* | Reference(Patient (EU core) | RelatedPerson: AnimalSpecimen | Group | Device | Location (EU core)) | What the observation is about, when it is not about the subject of record
effective[x] | Σ | 1..1 |  | Clinically relevant time/time-period for observation
effectiveDateTime |  |  | dateTime |
effectivePeriod |  |  | Period |
issued | Σ | 0..1 | instant | Date/Time this result was made available
performer | Σ | 1..* | Reference(Practitioner (EU core) | PractitionerRole (EU core) | Organization (EU core)) | 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: Performer Function Codes (extensible)
Slices for value[x] | Σ C | 0..1 |  | Actual result Slice: Unordered, Closed 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 |
value[x]:valueQuantity | Σ C | 0..1 | QuantityEuLab | Actual result
Slices for extension |  |  |  | Content/Rules for all slices
extension:uncertainty |  | 0..1 | decimal | Standard Deviation (same units as the quantity) URL: http://hl7.org/fhir/StructureDefinition/iso21090-uncertainty
comparator | ?!Σ | 0..1 | code | < | <= | >= | > - how to understand the value Binding: QuantityComparator (required): How the Quantity should be understood and represented.
value[x]:valueString | Σ C | 0..1 | string | Actual result
value[x]:valueRange | Σ C | 0..1 | RangeEuLab | Actual result
value[x]:valueRatio | Σ C | 0..1 | RatioEuLab | 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]:valueCodeableConcept | Σ C | 0..1 | CodeableConcept | Actual result Binding: Results Coded Values Laboratory/Pathology - IPS (preferred)
Additional Bindings | Purpose
Results Blood Group - SNOMED CT IPS Free Set | candidate
Laboratory Presence and Absence Findings | Preferred
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.
method |  | 0..1 | CodeableConcept | How it was done Binding: Laboratory Techniques (preferred)
specimen |  | 0..1 | Reference(Specimen: Laboratory) | Specimen used for the observation
device |  | 0..1 | Reference(Device | DeviceMetric) | Measuring instrument
hasMember | Σ | 0..* | Reference(Observation Results: laboratory) | Related resource that belongs to the Observation group
component | Σ | 0..* | BackboneElement | Laboratory result
Slices for extension |  |  |  | Content/Rules for all slices
extension:value-r5 |  | 0..1 | (Complex) | only for Diagrams or Pictures URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.value Constraints: ext-1
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url Constraints: ext-1
url |  | 1..1 | uri | "http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.value"
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
code | Σ | 1..1 | CodeableConcept | Type of component observation (code / type) Binding: Laboratory Code (preferred)
Slices for value[x] | Σ | 0..1 |  | Actual component result Slice: Unordered, Closed 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 |
value[x]:valueQuantity | Σ | 0..1 | QuantityEuLab | Actual component result
Slices for extension |  |  |  | Content/Rules for all slices
extension:uncertainty |  | 0..1 | decimal | Standard Deviation (same units as the quantity) URL: http://hl7.org/fhir/StructureDefinition/iso21090-uncertainty
comparator | ?!Σ | 0..1 | code | < | <= | >= | > - how to understand the value Binding: QuantityComparator (required): How the Quantity should be understood and represented.
value[x]:valueString | Σ | 0..1 | string | Actual component result
value[x]:valueRange | Σ | 0..1 | RangeEuLab | Actual component result
value[x]:valueRatio | Σ | 0..1 | RatioEuLab | 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]:valueCodeableConcept | Σ | 0..1 | CodeableConcept | Actual component result Binding: Results Coded Values Laboratory/Pathology - IPS (preferred)
Additional Bindings | Purpose
Results Blood Group - SNOMED CT IPS Free Set | candidate
Laboratory Presence and Absence Findings | Preferred
Results Microorganism - SNOMED CT IPS Free Set | candidate
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Observation.extension:triggeredBy.​extension:type.value[x] | Base | required | Cross-version ValueSet R5.TriggeredBytype for use in FHIR R4 | 📍0.1.0 | Extensions for Using Data Elements from FHIR R5 in FHIR R4 v0.1
Observation.status | Base | required | ObservationStatus | 📍4.0.1 | FHIR Std.
Observation.category | Base | preferred | Observation Category Codes | 📍4.0.1 | FHIR Std.
Observation.category:laboratory | Base | preferred | Observation Category Codes | 📍4.0.1 | FHIR Std.
Observation.category:studyType | Base | required | Laboratory Study Types | 📦2.0.0 | This IG
Observation.category:specialty | Base | required | Laboratory Specialty | 📦2.0.0 | This IG
Observation.code | Base | preferred | Laboratory Code | 📦2.0.0 | This IG
Observation.value[x]:valueQuantity.​comparator | Base | required | QuantityComparator | 📍4.0.1 | FHIR Std.
Observation.value[x]:valueCodeableConcept | Base | preferred | Results Coded Values Laboratory/Pathology - IPS | ⏿2.0.0 | tx.hl7europe.eu
Observation.dataAbsentReason | Base | extensible | DataAbsentReason | 📍4.0.1 | FHIR Std.
Observation.method | Base | preferred | Laboratory Techniques | 📦2.0.0 | This IG
Observation.component.​code | Base | preferred | Laboratory Code | 📦2.0.0 | This IG
Observation.component.​value[x]:valueQuantity.​comparator | Base | required | QuantityComparator | 📍4.0.1 | FHIR Std.
Observation.component.​value[x]:valueCodeableConcept | Base | preferred | Results Coded Values Laboratory/Pathology - IPS | ⏿2.0.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().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()`
dom-4 | error | 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 | **ALL** elements | 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 extension.where(url='http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.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.extension.where(url='http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.component.value').exists() or component.dataAbsentReason.exists()`
ext-1 | error | Observation.extension:bodyStructure, Observation.extension:triggeredBy, Observation.extension:triggeredBy.extension, Observation.extension:triggeredBy.extension:observation, Observation.extension:triggeredBy.extension:type, Observation.extension:triggeredBy.extension:reason, Observation.extension:value-r5, Observation.extension:supportingInfo, Observation.extension:labTestKit, Observation.extension:certifiedRefMaterialCodeable, Observation.extension:certifiedRefMaterialIdentifer, Observation.extension:accredited, Observation.modifierExtension, Observation.performer.extension:performerFunction, Observation.value[x]:valueQuantity.extension:uncertainty, Observation.component.extension:value-r5, Observation.component.modifierExtension, Observation.component.value[x]:valueQuantity.extension:uncertainty | 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.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present | `value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()`
obs-value-1 | error | Observation | The elements Observation.extension:value-r5 and Observation.value[x] SHALL not be used simultaneously. | `value.empty() or extension('http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.value').empty()`

This structure is derived from MedicalTestResultEuCore

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Observation | C | 0..* | MedicalTestResultEuCore | Laboratory result for a simple test or for a panel/study Constraints: eu-lab-1, eu-lab-2
Slices for extension |  |  |  | Content/Rules for all slices
extension:supportingInfo |  | 0..* | Reference(Resource) | Other information that may be relevant to this event. URL: http://hl7.org/fhir/StructureDefinition/workflow-supportingInfo
extension:labTestKit |  | 0..* | Reference(Device) | Laboratory Test Kit URL: http://hl7.eu/fhir/laboratory/StructureDefinition/observation-deviceLabTestKit
extension:certifiedRefMaterialCodeable |  | 0..* | CodeableConcept | Certified Reference Material: CodeableConcept URL: http://hl7.eu/fhir/laboratory/StructureDefinition/observation-certifiedRefMaterialCodeable Binding: Laboratory Certified Reference Material (example)
extension:certifiedRefMaterialIdentifer |  | 0..* | Identifier | Certified Reference Material: Identifier URL: http://hl7.eu/fhir/laboratory/StructureDefinition/observation-certifiedRefMaterialIdentifer
extension:accredited |  | 0..1 | boolean | Accredited test URL: http://hl7.eu/fhir/StructureDefinition/laboratory-accredited
status |  | 1..1 | code | Status of this observation (e.g. preliminary, final,...)
Slices for category |  | 1..* | CodeableConcept | 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: Laboratory Study Types (required)
category:specialty |  | 0..* | CodeableConcept | The clinical domain of the laboratory performing the observation (e.g. microbiology, toxicology, chemistry) Binding: Laboratory Specialty (required)
code |  | 1..1 | CodeableConcept | Type of observation (code / type) Binding: Laboratory Code (preferred)
focus |  | 0..* | Reference(Patient (EU core) | RelatedPerson: AnimalSpecimen | Group | Device | Location (EU core)) | What the observation is about, when it is not about the subject of record
issued |  | 0..1 | instant | Date/Time this result was made available
performer |  | 1..* | Reference(Practitioner (EU core) | PractitionerRole (EU core) | Organization (EU core)) | Who is responsible for the observation
Slices for value[x] |  | 0..1 | Quantity, CodeableConcept, string, boolean, integer, Range, Ratio, SampledData, time, dateTime, Period | Actual result Slice: Unordered, Closed by type:$this
value[x]:valueQuantity |  | 0..1 | QuantityEuLab | Actual result
value[x]:valueString |  | 0..1 | string | Actual result
value[x]:valueRange |  | 0..1 | RangeEuLab | Actual result
value[x]:valueRatio |  | 0..1 | RatioEuLab | 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]:valueCodeableConcept |  | 0..1 | CodeableConcept | Actual result Binding: Results Coded Values Laboratory/Pathology - IPS (preferred)
Additional Bindings | Purpose
Results Blood Group - SNOMED CT IPS Free Set | candidate
Laboratory Presence and Absence Findings | Preferred
Results Microorganism - SNOMED CT IPS Free Set | candidate
dataAbsentReason |  | 0..1 | CodeableConcept | Provides a reason why the expected value is missing.
method |  | 0..1 | CodeableConcept | How it was done Binding: Laboratory Techniques (preferred)
specimen |  | 0..1 | Reference(Specimen: Laboratory) | Specimen used for the observation
device |  | 0..1 | Reference(Device | DeviceMetric) | Measuring instrument
hasMember |  | 0..* | Reference(Observation Results: laboratory) | Related resource that belongs to the Observation group
component |  | 0..* | BackboneElement | Laboratory result
code |  | 1..1 | CodeableConcept | Type of component observation (code / type) Binding: Laboratory Code (preferred)
Slices for value[x] |  | 0..1 | Quantity, CodeableConcept, string, boolean, integer, Range, Ratio, SampledData, time, dateTime, Period | Actual component result Slice: Unordered, Closed by type:$this
value[x]:valueQuantity |  | 0..1 | QuantityEuLab | Actual component result
value[x]:valueString |  | 0..1 | string | Actual component result
value[x]:valueRange |  | 0..1 | RangeEuLab | Actual component result
value[x]:valueRatio |  | 0..1 | RatioEuLab | 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]:valueCodeableConcept |  | 0..1 | CodeableConcept | Actual component result Binding: Results Coded Values Laboratory/Pathology - IPS (preferred)
Additional Bindings | Purpose
Results Blood Group - SNOMED CT IPS Free Set | candidate
Laboratory Presence and Absence Findings | Preferred
Results Microorganism - SNOMED CT IPS Free Set | candidate
Documentation for this format

#### Terminology Bindings (Differential)

Path | Status | Usage | ValueSet | Version | Source
Observation.category:studyType | Base | required | Laboratory Study Types | 📦2.0.0 | This IG
Observation.category:specialty | Base | required | Laboratory Specialty | 📦2.0.0 | This IG
Observation.code | Base | preferred | Laboratory Code | 📦2.0.0 | This IG
Observation.value[x]:valueCodeableConcept | Base | preferred | Results Coded Values Laboratory/Pathology - IPS | ⏿2.0.0 | tx.hl7europe.eu
Observation.method | Base | preferred | Laboratory Techniques | 📦2.0.0 | This IG
Observation.component.​code | Base | preferred | Laboratory Code | 📦2.0.0 | This IG
Observation.component.​value[x]:valueCodeableConcept | Base | preferred | Results Coded Values Laboratory/Pathology - IPS | ⏿2.0.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 extension.where(url='http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.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.extension.where(url='http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.component.value').exists() or component.dataAbsentReason.exists()`

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Observation | C | 0..* | MedicalTestResultEuCore | Laboratory result for a simple test or for a panel/study Constraints: obs-6, obs-7, obs-value-1, 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 observation Binding: CommonLanguages (preferred): A human language.
Additional Bindings | Purpose
AllLanguages | Max Binding
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
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
extension:bodyStructure |  | 0..1 | Reference(Cross-version Profile for R5.BodyStructure for use in FHIR R4(0.1.0) | BodyStructure) | R5: Observed body structure (new) URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.bodyStructure Constraints: ext-1
extension:triggeredBy |  | 0..* | (Complex) | R5: Triggering observation(s) (new) URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.triggeredBy Constraints: ext-1
id |  | 0..1 | string | Unique id for inter-element referencing
Slices for extension |  | 2..* | Extension | Extension Slice: Unordered, Open by value:url Constraints: ext-1
extension:observation |  | 1..1 | Extension | Extension Constraints: ext-1
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url Constraints: ext-1
url |  | 1..1 | uri | "observation"
value[x] |  | 1..1 | Reference(Observation: Medical Test Result (EU core)) | Triggering observation
extension:type |  | 1..1 | Extension | R5: reflex | repeat | re-run (new) Constraints: ext-1
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url Constraints: ext-1
url |  | 1..1 | uri | "type"
value[x] |  | 1..1 | code | reflex | repeat | re-run Binding: R5ObservationTriggeredbytypeForR4 (0.1.0) (required): The type of TriggeredBy Observation.
extension:reason |  | 0..1 | Extension | R5: Reason that the observation was triggered (new) Constraints: ext-1
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url Constraints: ext-1
url |  | 1..1 | uri | "reason"
value[x] |  | 0..1 | string | Reason that the observation was triggered
url |  | 1..1 | uri | "http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.triggeredBy"
extension:value-r5 |  | 0..1 | (Complex) | only for Diagrams or Pictures URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.value Constraints: ext-1
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url Constraints: ext-1
url |  | 1..1 | uri | "http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.value"
value[x] |  | 0..1 | Attachment | Actual result
extension:supportingInfo |  | 0..* | Reference(Resource) | Other information that may be relevant to this event. URL: http://hl7.org/fhir/StructureDefinition/workflow-supportingInfo
extension:labTestKit |  | 0..* | Reference(Device) | Laboratory Test Kit URL: http://hl7.eu/fhir/laboratory/StructureDefinition/observation-deviceLabTestKit
extension:certifiedRefMaterialCodeable |  | 0..* | CodeableConcept | Certified Reference Material: CodeableConcept URL: http://hl7.eu/fhir/laboratory/StructureDefinition/observation-certifiedRefMaterialCodeable Binding: Laboratory Certified Reference Material (example)
extension:certifiedRefMaterialIdentifer |  | 0..* | Identifier | Certified Reference Material: Identifier URL: http://hl7.eu/fhir/laboratory/StructureDefinition/observation-certifiedRefMaterialIdentifer
extension:accredited |  | 0..1 | boolean | Accredited test URL: http://hl7.eu/fhir/StructureDefinition/laboratory-accredited
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
identifier | Σ | 0..* | Identifier | Business Identifier for observation
basedOn | Σ | 0..* | Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) | Fulfills plan, proposal or order
partOf | Σ | 0..* | Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy) | 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..* | CodeableConcept | 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: Laboratory Study Types (required)
category:specialty |  | 0..* | CodeableConcept | The clinical domain of the laboratory performing the observation (e.g. microbiology, toxicology, chemistry) Binding: Laboratory Specialty (required)
code | Σ | 1..1 | CodeableConcept | Type of observation (code / type) Binding: Laboratory Code (preferred)
subject | Σ | 1..1 | Reference(Patient (EU core)) | Who and/or what the observation is about
focus | Σ | 0..* | Reference(Patient (EU core) | RelatedPerson: AnimalSpecimen | Group | Device | Location (EU core)) | 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
effectiveDateTime |  |  | dateTime |
effectivePeriod |  |  | Period |
issued | Σ | 0..1 | instant | Date/Time this result was made available
performer | Σ | 1..* | Reference(Practitioner (EU core) | PractitionerRole (EU core) | Organization (EU core)) | Who is responsible for the observation
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
extension:performerFunction |  | 0..1 | CodeableConcept | Type of performance URL: http://hl7.org/fhir/StructureDefinition/event-performerFunction Binding: Performer Function Codes (extensible)
reference | Σ C | 0..1 | string | Literal reference, Relative, internal or absolute URL
type | Σ | 0..1 | uri | Type the reference refers to (e.g. "Patient") Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
identifier | Σ | 0..1 | Identifier | Logical reference, when literal reference is not known
display | Σ | 0..1 | string | Text alternative for the resource
Slices for value[x] | Σ C | 0..1 |  | Actual result Slice: Unordered, Closed 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 |
value[x]:valueQuantity | Σ C | 0..1 | QuantityEuLab | Actual result
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
extension:uncertainty |  | 0..1 | decimal | Standard Deviation (same units as the quantity) URL: http://hl7.org/fhir/StructureDefinition/iso21090-uncertainty
value | Σ | 0..1 | decimal | Numerical value (with implicit precision)
comparator | ?!Σ | 0..1 | code | < | <= | >= | > - how to understand the value Binding: QuantityComparator (required): How the Quantity should be understood and represented.
unit | Σ | 0..1 | string | Unit representation
system | Σ C | 0..1 | uri | System that defines coded unit form
code | Σ | 0..1 | code | Coded form of the unit
value[x]:valueString | Σ C | 0..1 | string | Actual result
value[x]:valueRange | Σ C | 0..1 | RangeEuLab | Actual result
value[x]:valueRatio | Σ C | 0..1 | RatioEuLab | 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]:valueCodeableConcept | Σ C | 0..1 | CodeableConcept | Actual result Binding: Results Coded Values Laboratory/Pathology - IPS (preferred)
Additional Bindings | Purpose
Results Blood Group - SNOMED CT IPS Free Set | candidate
Laboratory Presence and Absence Findings | Preferred
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..* | CodeableConcept | High, low, normal, etc. Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations.
note |  | 0..* | Annotation | Comments about the observation
bodySite |  | 0..1 | CodeableConcept | Observed body part Binding: SNOMEDCTBodyStructures (example): Codes describing anatomical locations. May include laterality.
method |  | 0..1 | CodeableConcept | How it was done Binding: Laboratory Techniques (preferred)
specimen |  | 0..1 | Reference(Specimen: Laboratory) | Specimen used for the observation
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
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
low | C | 0..1 | SimpleQuantity(4.0.1) | Low Range, if relevant
high | C | 0..1 | SimpleQuantity(4.0.1) | High Range, if relevant
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 |  | 0..1 | string | Text based reference range in an observation
hasMember | Σ | 0..* | Reference(Observation Results: laboratory) | Related resource that belongs to the Observation group
derivedFrom | Σ | 0..* | Reference(Observation: Medical Test Result (EU core) | ImagingStudy) | Related measurements the observation is made from
component | Σ | 0..* | BackboneElement | Laboratory result
id |  | 0..1 | string | Unique id for inter-element referencing
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
extension:value-r5 |  | 0..1 | (Complex) | only for Diagrams or Pictures URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.value Constraints: ext-1
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url Constraints: ext-1
url |  | 1..1 | uri | "http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.value"
value[x] |  | 0..1 | Attachment | Actual result
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
code | Σ | 1..1 | CodeableConcept | Type of component observation (code / type) Binding: Laboratory Code (preferred)
Slices for value[x] | Σ | 0..1 |  | Actual component result Slice: Unordered, Closed 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 |
value[x]:valueQuantity | Σ | 0..1 | QuantityEuLab | Actual component result
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
extension:uncertainty |  | 0..1 | decimal | Standard Deviation (same units as the quantity) URL: http://hl7.org/fhir/StructureDefinition/iso21090-uncertainty
value | Σ | 0..1 | decimal | Numerical value (with implicit precision)
comparator | ?!Σ | 0..1 | code | < | <= | >= | > - how to understand the value Binding: QuantityComparator (required): How the Quantity should be understood and represented.
unit | Σ | 0..1 | string | Unit representation
system | Σ C | 0..1 | uri | System that defines coded unit form
code | Σ | 0..1 | code | Coded form of the unit
value[x]:valueString | Σ | 0..1 | string | Actual component result
value[x]:valueRange | Σ | 0..1 | RangeEuLab | Actual component result
value[x]:valueRatio | Σ | 0..1 | RatioEuLab | 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]:valueCodeableConcept | Σ | 0..1 | CodeableConcept | Actual component result Binding: Results Coded Values Laboratory/Pathology - IPS (preferred)
Additional Bindings | Purpose
Results Blood Group - SNOMED CT IPS Free Set | candidate
Laboratory Presence and Absence Findings | Preferred
Results Microorganism - SNOMED CT IPS Free Set | candidate
dataAbsentReason | C | 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
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Observation.language | Base | preferred | Common Languages | 📍4.0.1 | FHIR Std.
Observation.extension:triggeredBy.​extension:type.value[x] | Base | required | Cross-version ValueSet R5.TriggeredBytype for use in FHIR R4 | 📍0.1.0 | Extensions for Using Data Elements from FHIR R5 in FHIR R4 v0.1
Observation.status | Base | required | ObservationStatus | 📍4.0.1 | FHIR Std.
Observation.category | Base | preferred | Observation Category Codes | 📍4.0.1 | FHIR Std.
Observation.category:laboratory | Base | preferred | Observation Category Codes | 📍4.0.1 | FHIR Std.
Observation.category:studyType | Base | required | Laboratory Study Types | 📦2.0.0 | This IG
Observation.category:specialty | Base | required | Laboratory Specialty | 📦2.0.0 | This IG
Observation.code | Base | preferred | Laboratory Code | 📦2.0.0 | This IG
Observation.performer.​type | Base | extensible | ResourceType | 📍4.0.1 | FHIR Std.
Observation.value[x]:valueQuantity.​comparator | Base | required | QuantityComparator | 📍4.0.1 | FHIR Std.
Observation.value[x]:valueCodeableConcept | Base | preferred | Results Coded Values Laboratory/Pathology - IPS | ⏿2.0.0 | tx.hl7europe.eu
Observation.dataAbsentReason | Base | extensible | DataAbsentReason | 📍4.0.1 | FHIR Std.
Observation.interpretation | Base | extensible | Observation Interpretation Codes | 📍4.0.1 | FHIR Std.
Observation.bodySite | Base | example | SNOMED CT Body Structures | 📍4.0.1 | FHIR Std.
Observation.method | Base | preferred | Laboratory Techniques | 📦2.0.0 | This IG
Observation.referenceRange.​type | Base | preferred | Observation Reference Range Meaning Codes | 📍4.0.1 | FHIR Std.
Observation.referenceRange.​appliesTo | Base | example | Observation Reference Range Applies To Codes | 📍4.0.1 | FHIR Std.
Observation.component.​code | Base | preferred | Laboratory Code | 📦2.0.0 | This IG
Observation.component.​value[x]:valueQuantity.​comparator | Base | required | QuantityComparator | 📍4.0.1 | FHIR Std.
Observation.component.​value[x]:valueCodeableConcept | Base | preferred | Results Coded Values Laboratory/Pathology - IPS | ⏿2.0.0 | tx.hl7europe.eu
Observation.component.​dataAbsentReason | Base | extensible | DataAbsentReason | 📍4.0.1 | FHIR Std.
Observation.component.​interpretation | Base | extensible | Observation Interpretation Codes | 📍4.0.1 | 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().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()`
dom-4 | error | 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 | **ALL** elements | 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 extension.where(url='http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.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.extension.where(url='http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.component.value').exists() or component.dataAbsentReason.exists()`
ext-1 | error | **ALL** extensions | 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.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present | `value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()`
obs-value-1 | error | Observation | The elements Observation.extension:value-r5 and Observation.value[x] SHALL not be used simultaneously. | `value.empty() or extension('http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.value').empty()`

This structure is derived from MedicalTestResultEuCore

Summary

Mandatory: 2 elements

Structures

This structure refers to these other structures:

- Patient (EU core) (http://hl7.eu/fhir/base/StructureDefinition/patient-eu-core)
- RelatedPerson: AnimalSpecimen (http://hl7.eu/fhir/laboratory/StructureDefinition/animal-specimen-eu-lab)
- Location (EU core) (http://hl7.eu/fhir/base/StructureDefinition/location-eu-core)
- Quantity (Eu Lab) (http://hl7.eu/fhir/laboratory/StructureDefinition/Quantity-eu-lab)
- Range (Eu Lab) (http://hl7.eu/fhir/laboratory/StructureDefinition/Range-eu-lab)
- Ratio (Eu Lab) (http://hl7.eu/fhir/laboratory/StructureDefinition/Ratio-eu-lab)
- Specimen: Laboratory (http://hl7.eu/fhir/laboratory/StructureDefinition/Specimen-eu-lab)
- Observation Results: laboratory (http://hl7.eu/fhir/laboratory/StructureDefinition/Observation-resultslab-eu-lab)

Extensions

This structure refers to these extensions:

- http://hl7.org/fhir/StructureDefinition/workflow-supportingInfo|5.2.0
- http://hl7.eu/fhir/laboratory/StructureDefinition/observation-deviceLabTestKit
- http://hl7.eu/fhir/laboratory/StructureDefinition/observation-certifiedRefMaterialCodeable
- http://hl7.eu/fhir/laboratory/StructureDefinition/observation-certifiedRefMaterialIdentifer
- http://hl7.eu/fhir/StructureDefinition/laboratory-accredited

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

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Observation | C | 0..* | MedicalTestResultEuCore | Laboratory result for a simple test or for a panel/study Constraints: obs-6, obs-7, obs-value-1, eu-lab-1, eu-lab-2
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
Slices for extension |  |  |  | Content/Rules for all slices
extension:bodyStructure |  | 0..1 | Reference(Cross-version Profile for R5.BodyStructure for use in FHIR R4(0.1.0) | BodyStructure) | R5: Observed body structure (new) URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.bodyStructure Constraints: ext-1
extension:triggeredBy |  | 0..* | (Complex) | R5: Triggering observation(s) (new) URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.triggeredBy Constraints: ext-1
Slices for extension |  | 2..* | Extension | Extension Slice: Unordered, Open by value:url Constraints: ext-1
extension:observation |  | 1..1 | Extension | Extension Constraints: ext-1
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url Constraints: ext-1
url |  | 1..1 | uri | "observation"
value[x] |  | 1..1 | Reference(Observation: Medical Test Result (EU core)) | Triggering observation
extension:type |  | 1..1 | Extension | R5: reflex | repeat | re-run (new) Constraints: ext-1
url |  | 1..1 | uri | "type"
value[x] |  | 1..1 | code | reflex | repeat | re-run Binding: R5ObservationTriggeredbytypeForR4 (0.1.0) (required): The type of TriggeredBy Observation.
extension:reason |  | 0..1 | Extension | R5: Reason that the observation was triggered (new) Constraints: ext-1
url |  | 1..1 | uri | "reason"
url |  | 1..1 | uri | "http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.triggeredBy"
extension:value-r5 |  | 0..1 | (Complex) | only for Diagrams or Pictures URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.value Constraints: ext-1
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url Constraints: ext-1
url |  | 1..1 | uri | "http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.value"
extension:supportingInfo |  | 0..* | Reference(Resource) | Other information that may be relevant to this event. URL: http://hl7.org/fhir/StructureDefinition/workflow-supportingInfo
extension:labTestKit |  | 0..* | Reference(Device) | Laboratory Test Kit URL: http://hl7.eu/fhir/laboratory/StructureDefinition/observation-deviceLabTestKit
extension:certifiedRefMaterialCodeable |  | 0..* | CodeableConcept | Certified Reference Material: CodeableConcept URL: http://hl7.eu/fhir/laboratory/StructureDefinition/observation-certifiedRefMaterialCodeable Binding: Laboratory Certified Reference Material (example)
extension:certifiedRefMaterialIdentifer |  | 0..* | Identifier | Certified Reference Material: Identifier URL: http://hl7.eu/fhir/laboratory/StructureDefinition/observation-certifiedRefMaterialIdentifer
extension:accredited |  | 0..1 | boolean | Accredited test URL: http://hl7.eu/fhir/StructureDefinition/laboratory-accredited
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
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..* | CodeableConcept | 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: Laboratory Study Types (required)
category:specialty |  | 0..* | CodeableConcept | The clinical domain of the laboratory performing the observation (e.g. microbiology, toxicology, chemistry) Binding: Laboratory Specialty (required)
code | Σ | 1..1 | CodeableConcept | Type of observation (code / type) Binding: Laboratory Code (preferred)
subject | Σ | 1..1 | Reference(Patient (EU core)) | Who and/or what the observation is about
focus | Σ | 0..* | Reference(Patient (EU core) | RelatedPerson: AnimalSpecimen | Group | Device | Location (EU core)) | What the observation is about, when it is not about the subject of record
effective[x] | Σ | 1..1 |  | Clinically relevant time/time-period for observation
effectiveDateTime |  |  | dateTime |
effectivePeriod |  |  | Period |
issued | Σ | 0..1 | instant | Date/Time this result was made available
performer | Σ | 1..* | Reference(Practitioner (EU core) | PractitionerRole (EU core) | Organization (EU core)) | 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: Performer Function Codes (extensible)
Slices for value[x] | Σ C | 0..1 |  | Actual result Slice: Unordered, Closed 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 |
value[x]:valueQuantity | Σ C | 0..1 | QuantityEuLab | Actual result
Slices for extension |  |  |  | Content/Rules for all slices
extension:uncertainty |  | 0..1 | decimal | Standard Deviation (same units as the quantity) URL: http://hl7.org/fhir/StructureDefinition/iso21090-uncertainty
comparator | ?!Σ | 0..1 | code | < | <= | >= | > - how to understand the value Binding: QuantityComparator (required): How the Quantity should be understood and represented.
value[x]:valueString | Σ C | 0..1 | string | Actual result
value[x]:valueRange | Σ C | 0..1 | RangeEuLab | Actual result
value[x]:valueRatio | Σ C | 0..1 | RatioEuLab | 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]:valueCodeableConcept | Σ C | 0..1 | CodeableConcept | Actual result Binding: Results Coded Values Laboratory/Pathology - IPS (preferred)
Additional Bindings | Purpose
Results Blood Group - SNOMED CT IPS Free Set | candidate
Laboratory Presence and Absence Findings | Preferred
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.
method |  | 0..1 | CodeableConcept | How it was done Binding: Laboratory Techniques (preferred)
specimen |  | 0..1 | Reference(Specimen: Laboratory) | Specimen used for the observation
device |  | 0..1 | Reference(Device | DeviceMetric) | Measuring instrument
hasMember | Σ | 0..* | Reference(Observation Results: laboratory) | Related resource that belongs to the Observation group
component | Σ | 0..* | BackboneElement | Laboratory result
Slices for extension |  |  |  | Content/Rules for all slices
extension:value-r5 |  | 0..1 | (Complex) | only for Diagrams or Pictures URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.value Constraints: ext-1
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url Constraints: ext-1
url |  | 1..1 | uri | "http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.value"
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
code | Σ | 1..1 | CodeableConcept | Type of component observation (code / type) Binding: Laboratory Code (preferred)
Slices for value[x] | Σ | 0..1 |  | Actual component result Slice: Unordered, Closed 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 |
value[x]:valueQuantity | Σ | 0..1 | QuantityEuLab | Actual component result
Slices for extension |  |  |  | Content/Rules for all slices
extension:uncertainty |  | 0..1 | decimal | Standard Deviation (same units as the quantity) URL: http://hl7.org/fhir/StructureDefinition/iso21090-uncertainty
comparator | ?!Σ | 0..1 | code | < | <= | >= | > - how to understand the value Binding: QuantityComparator (required): How the Quantity should be understood and represented.
value[x]:valueString | Σ | 0..1 | string | Actual component result
value[x]:valueRange | Σ | 0..1 | RangeEuLab | Actual component result
value[x]:valueRatio | Σ | 0..1 | RatioEuLab | 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]:valueCodeableConcept | Σ | 0..1 | CodeableConcept | Actual component result Binding: Results Coded Values Laboratory/Pathology - IPS (preferred)
Additional Bindings | Purpose
Results Blood Group - SNOMED CT IPS Free Set | candidate
Laboratory Presence and Absence Findings | Preferred
Results Microorganism - SNOMED CT IPS Free Set | candidate
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Observation.extension:triggeredBy.​extension:type.value[x] | Base | required | Cross-version ValueSet R5.TriggeredBytype for use in FHIR R4 | 📍0.1.0 | Extensions for Using Data Elements from FHIR R5 in FHIR R4 v0.1
Observation.status | Base | required | ObservationStatus | 📍4.0.1 | FHIR Std.
Observation.category | Base | preferred | Observation Category Codes | 📍4.0.1 | FHIR Std.
Observation.category:laboratory | Base | preferred | Observation Category Codes | 📍4.0.1 | FHIR Std.
Observation.category:studyType | Base | required | Laboratory Study Types | 📦2.0.0 | This IG
Observation.category:specialty | Base | required | Laboratory Specialty | 📦2.0.0 | This IG
Observation.code | Base | preferred | Laboratory Code | 📦2.0.0 | This IG
Observation.value[x]:valueQuantity.​comparator | Base | required | QuantityComparator | 📍4.0.1 | FHIR Std.
Observation.value[x]:valueCodeableConcept | Base | preferred | Results Coded Values Laboratory/Pathology - IPS | ⏿2.0.0 | tx.hl7europe.eu
Observation.dataAbsentReason | Base | extensible | DataAbsentReason | 📍4.0.1 | FHIR Std.
Observation.method | Base | preferred | Laboratory Techniques | 📦2.0.0 | This IG
Observation.component.​code | Base | preferred | Laboratory Code | 📦2.0.0 | This IG
Observation.component.​value[x]:valueQuantity.​comparator | Base | required | QuantityComparator | 📍4.0.1 | FHIR Std.
Observation.component.​value[x]:valueCodeableConcept | Base | preferred | Results Coded Values Laboratory/Pathology - IPS | ⏿2.0.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().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()`
dom-4 | error | 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 | **ALL** elements | 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 extension.where(url='http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.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.extension.where(url='http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.component.value').exists() or component.dataAbsentReason.exists()`
ext-1 | error | Observation.extension:bodyStructure, Observation.extension:triggeredBy, Observation.extension:triggeredBy.extension, Observation.extension:triggeredBy.extension:observation, Observation.extension:triggeredBy.extension:type, Observation.extension:triggeredBy.extension:reason, Observation.extension:value-r5, Observation.extension:supportingInfo, Observation.extension:labTestKit, Observation.extension:certifiedRefMaterialCodeable, Observation.extension:certifiedRefMaterialIdentifer, Observation.extension:accredited, Observation.modifierExtension, Observation.performer.extension:performerFunction, Observation.value[x]:valueQuantity.extension:uncertainty, Observation.component.extension:value-r5, Observation.component.modifierExtension, Observation.component.value[x]:valueQuantity.extension:uncertainty | 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.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present | `value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()`
obs-value-1 | error | Observation | The elements Observation.extension:value-r5 and Observation.value[x] SHALL not be used simultaneously. | `value.empty() or extension('http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.value').empty()`

Differential View

This structure is derived from MedicalTestResultEuCore

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Observation | C | 0..* | MedicalTestResultEuCore | Laboratory result for a simple test or for a panel/study Constraints: eu-lab-1, eu-lab-2
Slices for extension |  |  |  | Content/Rules for all slices
extension:supportingInfo |  | 0..* | Reference(Resource) | Other information that may be relevant to this event. URL: http://hl7.org/fhir/StructureDefinition/workflow-supportingInfo
extension:labTestKit |  | 0..* | Reference(Device) | Laboratory Test Kit URL: http://hl7.eu/fhir/laboratory/StructureDefinition/observation-deviceLabTestKit
extension:certifiedRefMaterialCodeable |  | 0..* | CodeableConcept | Certified Reference Material: CodeableConcept URL: http://hl7.eu/fhir/laboratory/StructureDefinition/observation-certifiedRefMaterialCodeable Binding: Laboratory Certified Reference Material (example)
extension:certifiedRefMaterialIdentifer |  | 0..* | Identifier | Certified Reference Material: Identifier URL: http://hl7.eu/fhir/laboratory/StructureDefinition/observation-certifiedRefMaterialIdentifer
extension:accredited |  | 0..1 | boolean | Accredited test URL: http://hl7.eu/fhir/StructureDefinition/laboratory-accredited
status |  | 1..1 | code | Status of this observation (e.g. preliminary, final,...)
Slices for category |  | 1..* | CodeableConcept | 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: Laboratory Study Types (required)
category:specialty |  | 0..* | CodeableConcept | The clinical domain of the laboratory performing the observation (e.g. microbiology, toxicology, chemistry) Binding: Laboratory Specialty (required)
code |  | 1..1 | CodeableConcept | Type of observation (code / type) Binding: Laboratory Code (preferred)
focus |  | 0..* | Reference(Patient (EU core) | RelatedPerson: AnimalSpecimen | Group | Device | Location (EU core)) | What the observation is about, when it is not about the subject of record
issued |  | 0..1 | instant | Date/Time this result was made available
performer |  | 1..* | Reference(Practitioner (EU core) | PractitionerRole (EU core) | Organization (EU core)) | Who is responsible for the observation
Slices for value[x] |  | 0..1 | Quantity, CodeableConcept, string, boolean, integer, Range, Ratio, SampledData, time, dateTime, Period | Actual result Slice: Unordered, Closed by type:$this
value[x]:valueQuantity |  | 0..1 | QuantityEuLab | Actual result
value[x]:valueString |  | 0..1 | string | Actual result
value[x]:valueRange |  | 0..1 | RangeEuLab | Actual result
value[x]:valueRatio |  | 0..1 | RatioEuLab | 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]:valueCodeableConcept |  | 0..1 | CodeableConcept | Actual result Binding: Results Coded Values Laboratory/Pathology - IPS (preferred)
Additional Bindings | Purpose
Results Blood Group - SNOMED CT IPS Free Set | candidate
Laboratory Presence and Absence Findings | Preferred
Results Microorganism - SNOMED CT IPS Free Set | candidate
dataAbsentReason |  | 0..1 | CodeableConcept | Provides a reason why the expected value is missing.
method |  | 0..1 | CodeableConcept | How it was done Binding: Laboratory Techniques (preferred)
specimen |  | 0..1 | Reference(Specimen: Laboratory) | Specimen used for the observation
device |  | 0..1 | Reference(Device | DeviceMetric) | Measuring instrument
hasMember |  | 0..* | Reference(Observation Results: laboratory) | Related resource that belongs to the Observation group
component |  | 0..* | BackboneElement | Laboratory result
code |  | 1..1 | CodeableConcept | Type of component observation (code / type) Binding: Laboratory Code (preferred)
Slices for value[x] |  | 0..1 | Quantity, CodeableConcept, string, boolean, integer, Range, Ratio, SampledData, time, dateTime, Period | Actual component result Slice: Unordered, Closed by type:$this
value[x]:valueQuantity |  | 0..1 | QuantityEuLab | Actual component result
value[x]:valueString |  | 0..1 | string | Actual component result
value[x]:valueRange |  | 0..1 | RangeEuLab | Actual component result
value[x]:valueRatio |  | 0..1 | RatioEuLab | 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]:valueCodeableConcept |  | 0..1 | CodeableConcept | Actual component result Binding: Results Coded Values Laboratory/Pathology - IPS (preferred)
Additional Bindings | Purpose
Results Blood Group - SNOMED CT IPS Free Set | candidate
Laboratory Presence and Absence Findings | Preferred
Results Microorganism - SNOMED CT IPS Free Set | candidate
Documentation for this format

#### Terminology Bindings (Differential)

Path | Status | Usage | ValueSet | Version | Source
Observation.category:studyType | Base | required | Laboratory Study Types | 📦2.0.0 | This IG
Observation.category:specialty | Base | required | Laboratory Specialty | 📦2.0.0 | This IG
Observation.code | Base | preferred | Laboratory Code | 📦2.0.0 | This IG
Observation.value[x]:valueCodeableConcept | Base | preferred | Results Coded Values Laboratory/Pathology - IPS | ⏿2.0.0 | tx.hl7europe.eu
Observation.method | Base | preferred | Laboratory Techniques | 📦2.0.0 | This IG
Observation.component.​code | Base | preferred | Laboratory Code | 📦2.0.0 | This IG
Observation.component.​value[x]:valueCodeableConcept | Base | preferred | Results Coded Values Laboratory/Pathology - IPS | ⏿2.0.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 extension.where(url='http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.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.extension.where(url='http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.component.value').exists() or component.dataAbsentReason.exists()`

Snapshot View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Observation | C | 0..* | MedicalTestResultEuCore | Laboratory result for a simple test or for a panel/study Constraints: obs-6, obs-7, obs-value-1, 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 observation Binding: CommonLanguages (preferred): A human language.
Additional Bindings | Purpose
AllLanguages | Max Binding
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
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
extension:bodyStructure |  | 0..1 | Reference(Cross-version Profile for R5.BodyStructure for use in FHIR R4(0.1.0) | BodyStructure) | R5: Observed body structure (new) URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.bodyStructure Constraints: ext-1
extension:triggeredBy |  | 0..* | (Complex) | R5: Triggering observation(s) (new) URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.triggeredBy Constraints: ext-1
id |  | 0..1 | string | Unique id for inter-element referencing
Slices for extension |  | 2..* | Extension | Extension Slice: Unordered, Open by value:url Constraints: ext-1
extension:observation |  | 1..1 | Extension | Extension Constraints: ext-1
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url Constraints: ext-1
url |  | 1..1 | uri | "observation"
value[x] |  | 1..1 | Reference(Observation: Medical Test Result (EU core)) | Triggering observation
extension:type |  | 1..1 | Extension | R5: reflex | repeat | re-run (new) Constraints: ext-1
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url Constraints: ext-1
url |  | 1..1 | uri | "type"
value[x] |  | 1..1 | code | reflex | repeat | re-run Binding: R5ObservationTriggeredbytypeForR4 (0.1.0) (required): The type of TriggeredBy Observation.
extension:reason |  | 0..1 | Extension | R5: Reason that the observation was triggered (new) Constraints: ext-1
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url Constraints: ext-1
url |  | 1..1 | uri | "reason"
value[x] |  | 0..1 | string | Reason that the observation was triggered
url |  | 1..1 | uri | "http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.triggeredBy"
extension:value-r5 |  | 0..1 | (Complex) | only for Diagrams or Pictures URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.value Constraints: ext-1
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url Constraints: ext-1
url |  | 1..1 | uri | "http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.value"
value[x] |  | 0..1 | Attachment | Actual result
extension:supportingInfo |  | 0..* | Reference(Resource) | Other information that may be relevant to this event. URL: http://hl7.org/fhir/StructureDefinition/workflow-supportingInfo
extension:labTestKit |  | 0..* | Reference(Device) | Laboratory Test Kit URL: http://hl7.eu/fhir/laboratory/StructureDefinition/observation-deviceLabTestKit
extension:certifiedRefMaterialCodeable |  | 0..* | CodeableConcept | Certified Reference Material: CodeableConcept URL: http://hl7.eu/fhir/laboratory/StructureDefinition/observation-certifiedRefMaterialCodeable Binding: Laboratory Certified Reference Material (example)
extension:certifiedRefMaterialIdentifer |  | 0..* | Identifier | Certified Reference Material: Identifier URL: http://hl7.eu/fhir/laboratory/StructureDefinition/observation-certifiedRefMaterialIdentifer
extension:accredited |  | 0..1 | boolean | Accredited test URL: http://hl7.eu/fhir/StructureDefinition/laboratory-accredited
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
identifier | Σ | 0..* | Identifier | Business Identifier for observation
basedOn | Σ | 0..* | Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) | Fulfills plan, proposal or order
partOf | Σ | 0..* | Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy) | 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..* | CodeableConcept | 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: Laboratory Study Types (required)
category:specialty |  | 0..* | CodeableConcept | The clinical domain of the laboratory performing the observation (e.g. microbiology, toxicology, chemistry) Binding: Laboratory Specialty (required)
code | Σ | 1..1 | CodeableConcept | Type of observation (code / type) Binding: Laboratory Code (preferred)
subject | Σ | 1..1 | Reference(Patient (EU core)) | Who and/or what the observation is about
focus | Σ | 0..* | Reference(Patient (EU core) | RelatedPerson: AnimalSpecimen | Group | Device | Location (EU core)) | 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
effectiveDateTime |  |  | dateTime |
effectivePeriod |  |  | Period |
issued | Σ | 0..1 | instant | Date/Time this result was made available
performer | Σ | 1..* | Reference(Practitioner (EU core) | PractitionerRole (EU core) | Organization (EU core)) | Who is responsible for the observation
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
extension:performerFunction |  | 0..1 | CodeableConcept | Type of performance URL: http://hl7.org/fhir/StructureDefinition/event-performerFunction Binding: Performer Function Codes (extensible)
reference | Σ C | 0..1 | string | Literal reference, Relative, internal or absolute URL
type | Σ | 0..1 | uri | Type the reference refers to (e.g. "Patient") Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
identifier | Σ | 0..1 | Identifier | Logical reference, when literal reference is not known
display | Σ | 0..1 | string | Text alternative for the resource
Slices for value[x] | Σ C | 0..1 |  | Actual result Slice: Unordered, Closed 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 |
value[x]:valueQuantity | Σ C | 0..1 | QuantityEuLab | Actual result
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
extension:uncertainty |  | 0..1 | decimal | Standard Deviation (same units as the quantity) URL: http://hl7.org/fhir/StructureDefinition/iso21090-uncertainty
value | Σ | 0..1 | decimal | Numerical value (with implicit precision)
comparator | ?!Σ | 0..1 | code | < | <= | >= | > - how to understand the value Binding: QuantityComparator (required): How the Quantity should be understood and represented.
unit | Σ | 0..1 | string | Unit representation
system | Σ C | 0..1 | uri | System that defines coded unit form
code | Σ | 0..1 | code | Coded form of the unit
value[x]:valueString | Σ C | 0..1 | string | Actual result
value[x]:valueRange | Σ C | 0..1 | RangeEuLab | Actual result
value[x]:valueRatio | Σ C | 0..1 | RatioEuLab | 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]:valueCodeableConcept | Σ C | 0..1 | CodeableConcept | Actual result Binding: Results Coded Values Laboratory/Pathology - IPS (preferred)
Additional Bindings | Purpose
Results Blood Group - SNOMED CT IPS Free Set | candidate
Laboratory Presence and Absence Findings | Preferred
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..* | CodeableConcept | High, low, normal, etc. Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations.
note |  | 0..* | Annotation | Comments about the observation
bodySite |  | 0..1 | CodeableConcept | Observed body part Binding: SNOMEDCTBodyStructures (example): Codes describing anatomical locations. May include laterality.
method |  | 0..1 | CodeableConcept | How it was done Binding: Laboratory Techniques (preferred)
specimen |  | 0..1 | Reference(Specimen: Laboratory) | Specimen used for the observation
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
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
low | C | 0..1 | SimpleQuantity(4.0.1) | Low Range, if relevant
high | C | 0..1 | SimpleQuantity(4.0.1) | High Range, if relevant
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 |  | 0..1 | string | Text based reference range in an observation
hasMember | Σ | 0..* | Reference(Observation Results: laboratory) | Related resource that belongs to the Observation group
derivedFrom | Σ | 0..* | Reference(Observation: Medical Test Result (EU core) | ImagingStudy) | Related measurements the observation is made from
component | Σ | 0..* | BackboneElement | Laboratory result
id |  | 0..1 | string | Unique id for inter-element referencing
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
extension:value-r5 |  | 0..1 | (Complex) | only for Diagrams or Pictures URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.value Constraints: ext-1
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url Constraints: ext-1
url |  | 1..1 | uri | "http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.value"
value[x] |  | 0..1 | Attachment | Actual result
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
code | Σ | 1..1 | CodeableConcept | Type of component observation (code / type) Binding: Laboratory Code (preferred)
Slices for value[x] | Σ | 0..1 |  | Actual component result Slice: Unordered, Closed 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 |
value[x]:valueQuantity | Σ | 0..1 | QuantityEuLab | Actual component result
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
extension:uncertainty |  | 0..1 | decimal | Standard Deviation (same units as the quantity) URL: http://hl7.org/fhir/StructureDefinition/iso21090-uncertainty
value | Σ | 0..1 | decimal | Numerical value (with implicit precision)
comparator | ?!Σ | 0..1 | code | < | <= | >= | > - how to understand the value Binding: QuantityComparator (required): How the Quantity should be understood and represented.
unit | Σ | 0..1 | string | Unit representation
system | Σ C | 0..1 | uri | System that defines coded unit form
code | Σ | 0..1 | code | Coded form of the unit
value[x]:valueString | Σ | 0..1 | string | Actual component result
value[x]:valueRange | Σ | 0..1 | RangeEuLab | Actual component result
value[x]:valueRatio | Σ | 0..1 | RatioEuLab | 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]:valueCodeableConcept | Σ | 0..1 | CodeableConcept | Actual component result Binding: Results Coded Values Laboratory/Pathology - IPS (preferred)
Additional Bindings | Purpose
Results Blood Group - SNOMED CT IPS Free Set | candidate
Laboratory Presence and Absence Findings | Preferred
Results Microorganism - SNOMED CT IPS Free Set | candidate
dataAbsentReason | C | 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
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Observation.language | Base | preferred | Common Languages | 📍4.0.1 | FHIR Std.
Observation.extension:triggeredBy.​extension:type.value[x] | Base | required | Cross-version ValueSet R5.TriggeredBytype for use in FHIR R4 | 📍0.1.0 | Extensions for Using Data Elements from FHIR R5 in FHIR R4 v0.1
Observation.status | Base | required | ObservationStatus | 📍4.0.1 | FHIR Std.
Observation.category | Base | preferred | Observation Category Codes | 📍4.0.1 | FHIR Std.
Observation.category:laboratory | Base | preferred | Observation Category Codes | 📍4.0.1 | FHIR Std.
Observation.category:studyType | Base | required | Laboratory Study Types | 📦2.0.0 | This IG
Observation.category:specialty | Base | required | Laboratory Specialty | 📦2.0.0 | This IG
Observation.code | Base | preferred | Laboratory Code | 📦2.0.0 | This IG
Observation.performer.​type | Base | extensible | ResourceType | 📍4.0.1 | FHIR Std.
Observation.value[x]:valueQuantity.​comparator | Base | required | QuantityComparator | 📍4.0.1 | FHIR Std.
Observation.value[x]:valueCodeableConcept | Base | preferred | Results Coded Values Laboratory/Pathology - IPS | ⏿2.0.0 | tx.hl7europe.eu
Observation.dataAbsentReason | Base | extensible | DataAbsentReason | 📍4.0.1 | FHIR Std.
Observation.interpretation | Base | extensible | Observation Interpretation Codes | 📍4.0.1 | FHIR Std.
Observation.bodySite | Base | example | SNOMED CT Body Structures | 📍4.0.1 | FHIR Std.
Observation.method | Base | preferred | Laboratory Techniques | 📦2.0.0 | This IG
Observation.referenceRange.​type | Base | preferred | Observation Reference Range Meaning Codes | 📍4.0.1 | FHIR Std.
Observation.referenceRange.​appliesTo | Base | example | Observation Reference Range Applies To Codes | 📍4.0.1 | FHIR Std.
Observation.component.​code | Base | preferred | Laboratory Code | 📦2.0.0 | This IG
Observation.component.​value[x]:valueQuantity.​comparator | Base | required | QuantityComparator | 📍4.0.1 | FHIR Std.
Observation.component.​value[x]:valueCodeableConcept | Base | preferred | Results Coded Values Laboratory/Pathology - IPS | ⏿2.0.0 | tx.hl7europe.eu
Observation.component.​dataAbsentReason | Base | extensible | DataAbsentReason | 📍4.0.1 | FHIR Std.
Observation.component.​interpretation | Base | extensible | Observation Interpretation Codes | 📍4.0.1 | 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().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()`
dom-4 | error | 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 | **ALL** elements | 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 extension.where(url='http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.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.extension.where(url='http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.component.value').exists() or component.dataAbsentReason.exists()`
ext-1 | error | **ALL** extensions | 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.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present | `value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()`
obs-value-1 | error | Observation | The elements Observation.extension:value-r5 and Observation.value[x] SHALL not be used simultaneously. | `value.empty() or extension('http://hl7.org/fhir/5.0/StructureDefinition/extension-Observation.value').empty()`

This structure is derived from MedicalTestResultEuCore

Summary

Mandatory: 2 elements

Structures

This structure refers to these other structures:

- Patient (EU core) (http://hl7.eu/fhir/base/StructureDefinition/patient-eu-core)
- RelatedPerson: AnimalSpecimen (http://hl7.eu/fhir/laboratory/StructureDefinition/animal-specimen-eu-lab)
- Location (EU core) (http://hl7.eu/fhir/base/StructureDefinition/location-eu-core)
- Quantity (Eu Lab) (http://hl7.eu/fhir/laboratory/StructureDefinition/Quantity-eu-lab)
- Range (Eu Lab) (http://hl7.eu/fhir/laboratory/StructureDefinition/Range-eu-lab)
- Ratio (Eu Lab) (http://hl7.eu/fhir/laboratory/StructureDefinition/Ratio-eu-lab)
- Specimen: Laboratory (http://hl7.eu/fhir/laboratory/StructureDefinition/Specimen-eu-lab)
- Observation Results: laboratory (http://hl7.eu/fhir/laboratory/StructureDefinition/Observation-resultslab-eu-lab)

Extensions

This structure refers to these extensions:

- http://hl7.org/fhir/StructureDefinition/workflow-supportingInfo|5.2.0
- http://hl7.eu/fhir/laboratory/StructureDefinition/observation-deviceLabTestKit
- http://hl7.eu/fhir/laboratory/StructureDefinition/observation-certifiedRefMaterialCodeable
- http://hl7.eu/fhir/laboratory/StructureDefinition/observation-certifiedRefMaterialIdentifer
- http://hl7.eu/fhir/StructureDefinition/laboratory-accredited

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

### Notes:

#### Notes on `valueString` vs `valueCodeableConcept.text`

If the result is purely free text without categorical meaning, `Observation.valueString` SHALL be used.

If the result is conceptually categorical (i.e. it represents a classification, interpretation, or selectable answer option), `Observation.valueCodeableConcept` SHALL be used.

If no formal coding system is available, the human-readable result SHALL be conveyed in `Observation.valueCodeableConcept.text` instead of using `valueString`.

This distinction ensures that categorical results remain semantically identifiable as coded data, even if only a textual representation is available.