HL7 FHIR Implementation Guide: DK Core
3.1.0 - release Denmark flag

This page is part of the HL7 FHIR Implementation Guide: DK Core (v3.1.0: Release) based on FHIR (HL7® FHIR® Standard) R4. This is the current published version in its permanent home (it will always be available at this URL). For a full list of available versions, see the Directory of published versions

Resource Profile: Danish Core Basic Observation Profile

Official URL: http://hl7.dk/fhir/core/StructureDefinition/dk-core-basic-observation Version: 3.1.0
Active as of 2024-01-08 Computable Name: DkCoreBasicObservation

HL7 Denmark core profile for basic observations, which is a profiling of DkCoreObservation.

Scope and usage

The Danish Core Basic Observation profile is intended to represent basis observations performed on a subject. The purpose of this profile is to ensure a common structure of frequently measured and shared observations. A basic observation is, in a Danish context, a measurable and often used value. This can be observations such as vital signs and basic observations like height and weight.

The profile is a further profiling of DkCoreObservation and in most cases it complies to HL7’s Vital Signs profile. Since there is an expansion of one code to each of the LOINC ValueSet and the UCUM ValueSet, it means when using these codes, the instance will not be compliant.

Codes

It is required to include a LOINC code at Observation.code. The LOINC ValueSet used in the HL7’s Vital Signs profile is expanded with the code 59408-5 "Oxygen saturation in Arterial blood by Pulse oximetry" because it is an often used, measurable parameter in Denmark.

Further, Dk Core NPU Basic Observation, Dk Core IEEE Basic Observation, and Dk Core SNOMED CT Basic Observation ValueSets are added to the given slices, and codes from these ValueSets are optional to include.

An overall guidance of using the ValueSets follows the guidance of DkCoreObservation and is further specified here:

  • NPU codes can be used when communicating observations from the laboratory area. NPU also covers codes concerning basic observations. For this reason, NPU is included.
  • IEEE codes can be used, if the original observation of the device is represented with IEEE codes.
  • SNOMED CT codes are accepted in Denmark. They can be included as a reference terminology, where it is used in addition to the original coding. SNOMED CT codes can also be used in areas where NPU does not cover.

The codes in the three ValueSets are selected to best represent the codes included in the LOINC ValueSet. The following describes the possible use of additional codes:

  • No meaningful code: Not all LOINC codes are represented in ValueSets, as no meaningful codes exists in the terminology. An example is that the 8478-0 Mean blood pressure does not exists in the NPUBasicObservation ValueSet.
  • One meaningful code: When one meaningful code is included from the ValueSet, as the code best represents the LOINC code. An example is the 150022 MDC_PRESS_BLD_NONINV_DIA from the IEEE ValueSet which represents 8462-4 Diastolic blood pressure the best.
  • Multiple meaningful codes: Multiple codes in a ValueSet may be used to represent a code from the LOINC ValueSet, which may be relevant to express a higher level of granularity. An example is multiple codes representing systolic blood pressure in the SNOMED CT ValueSet depending on the circumstances of the measurement, which all represents 8480-6 Systolic blood pressure.

If a measurement is documented in a system or device e.g. with a SNOMED CT or IEEE code, but no LOINC code. The system must map the SNOMED CT or IEEE code to the LOINC code before exchanging it. Otherwise, it will not accommodate the requirements of the DkCoreBasicObservation profile, since a LOINC code is required.

Units

The UCUM ValueSet used in HL7’s Vital Signs profile is extended in the Dk Core UCUM Basic Units ValueSet to include a code for fraction {fraction} fraction. In the NPU ValueSet, this unit is used for the code NPU27280 Hb(Fe; O2-bind.;aB)—Oxygen(O2); sat.(Pulse oximetry) = ?, why it is included. However, using the fraction unit is not compliant with HL7’s Vital Signs profile, here the unit % percent is used for the LOINC code "2708-6 "Oxygen saturation in Arterial blood". The example John’s oxygen saturation measurement (Observation) illustrates how this can be handled by deriving the instance with the NPU code from an instance with a LOINC and IEEE code.

The Dk Core UCUM Basic Units ValueSet is added to the elements Observation.valueQuantity and Observation.component.valueQuantity.

Examples

The table below includes instances of the DkCoreBasicObservation used to represent observations used to evaluate the patient based on different procedures used in Denmark.

Note: The current FHIR validator (per Nowember 2023) validates Observation instances with LOINC-codes from the international Vital Signs profile against the requirements in this profile. This have influenced instances in DkCore by 1) removal of the LOINC-code "2708-6 "Oxygen saturation in Arterial blood" in John’s oxygen saturation measurement (Observation) which means it cannot be an instance of DkCoreBasicObservation but has to obey from DkCoreObservation, and 2) addition of effective timestamps in ObservationOxySatBasicObservationOrg and ObservationRespiratoryBasicObservation.

Example Description
Glasgow Coma Scale (GCS) This example includes the relevant observations related to Glasgow Coma Scale. This scale is used to assess the level of consciousness in people with brain damage.
TOKS (Danish: Tidlig opsporing af kritisk sygdom) TOKS is a scoring system used to determine if a patient is in a critical state at an early state. The example includes basic observations, such as heartrate, temperature and more, as well as a Glasgow Coma Scale.
TOBS (Danish: Tidlig opsporing af begyndende sygdom) TOBS is a scoring system used to determine if a citizen is in the early state of illnesses. The example includes basic observations, such as heartrate, temperature, TOBS score and more, as well as a reference to the performer of the observations.
Vital signs panel An example of observations included in a vital signs panel. From the element Observation.hasMember, the panel observations are referenced.
John’s oxygen saturation measurement (Observation) This example suggests a way to handle the oxygen saturation case, where the original measurement was reported in ‘%’ by a device or typed in manually, and then ‘translated’ to the NPU system, which requires the value to be unitless.

Usage:

Formal Views of Profile Content

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

This structure is derived from DkCoreObservation

NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation 0..*DkCoreObservationMeasurements and simple assertions
... category 1..1CodeableConceptClassification of type of observation
Required Pattern: At least the following
.... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
..... system1..1uriIdentity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/observation-category
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: vital-signs
... code
.... coding 1..*CodingCode defined by a terminology system
.... coding:LOINC 1..1CodingLOINC code for the observation
Binding: DK Core LOINC Basic Observations (extensible)
.... coding:SNOMEDCT 0..1CodingSNOMED CT code for the observation
Binding: Dk Core SNOMED CT Basic Observation (extensible)
.... coding:NPU 0..1CodingNPU code for the observation. NPU codes are administred by the Danish Health Data Authority.
Binding: Dk Core NPU Basic Observation (extensible)
.... coding:IEEE 0..1CodingIEEE code for the observation
Binding: Dk Core IEEE Basic Observation (extensible)
... value[x]:valueQuantity 0..1QuantityActual result
.... system 0..1uriSystem that defines coded unit form
Binding: Dk Core UCUM Basic Units (extensible)
.... value[x]:valueQuantity 0..1QuantityActual component result
..... system 0..1uriSystem that defines coded unit form
Binding: Dk Core UCUM Basic Units (extensible)

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSet
Observation.code.coding:LOINCextensibleLoincBasicObservation
Observation.code.coding:SNOMEDCTextensibleSCTBasicObservation
Observation.code.coding:NPUextensibleNPUBasicObservation
Observation.code.coding:IEEEextensibleIEEEBasicObservation
Observation.value[x]:valueQuantity.systemextensibleUCUMBasicUnits
Observation.component.value[x]:valueQuantity.systemextensibleUCUMBasicUnits

 

Other representations of profile: CSV, Excel, Schematron