Technical Implementation Guidance

Terminology

The profiles contain SNOMED CT and Loinc codes when a CodableConcept was required.

Mappings

Workflow
Workflow was mapped to Workflow Pattern (http://hl7.org/fhir/workflow).

v2
v2 was mapped to HL7 v2 Mapping (http://hl7.org/v2).

w5
w5 was mapped to FiveWs Pattern Mapping (http://hl7.org/fhir/fivews).

rim
rim was mapped to RIM Mapping (http://hl7.org/v3).

Example

The following is an example of how one of the developed profiles would standardize data. The data in the example is data from the case.

In the example, the profile Observation contains information regarding the observations made during the encounter. Therefore, the element code is sliced into six slices which contain SNOMED CT codes to identify the observation, e.g. HbA1c or Toal cholesterol.

<StructureDefinition xmlns="http://hl7.org/fhir">
    <id value="edb8ea3a-c11d-44d1-ba90-60dde4dd836b" />
    <meta>
        <lastUpdated value="2021-11-23T18:34:49.486+00:00" />
    </meta>
    <url value="https://OneComprehensivePatientPlanForChronicDiseases.org/fhir/StructureDefinition/Observation" />
    <name value="Observation" />
    <status value="draft" />
    <date value="2021-11-20T22:51:02.1593735+00:00" />
    <fhirVersion value="4.0.1" />
    <kind value="resource" />
    <abstract value="false" />
    <type value="Observation" />
    <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Observation" />
    <derivation value="constraint" />
    <differential>
        <element id="Observation.identifier">
            <path value="Observation.identifier" />
            <min value="1" />
            <max value="1" />
        </element>
        <element id="Observation.identifier.use">
            <path value="Observation.identifier.use" />
            <max value="0" />
        </element>
        <element id="Observation.identifier.type">
            <path value="Observation.identifier.type" />
            <max value="0" />
        </element>
        <element id="Observation.identifier.system">
            <path value="Observation.identifier.system" />
            <short value="National SSN system in Denmark" />
            <min value="1" />
        </element>
        <element id="Observation.identifier.value">
            <path value="Observation.identifier.value" />
            <short value="SSN of the citizen" />
            <min value="1" />
        </element>
        <element id="Observation.identifier.period">
            <path value="Observation.identifier.period" />
            <max value="0" />
        </element>
        <element id="Observation.identifier.assigner">
            <path value="Observation.identifier.assigner" />
            <max value="0" />
        </element>
        <element id="Observation.basedOn">
            <path value="Observation.basedOn" />
            <max value="0" />
        </element>
        <element id="Observation.partOf">
            <path value="Observation.partOf" />
            <max value="0" />
        </element>
        <element id="Observation.status">
            <path value="Observation.status" />
            <fixedCode value="registered" />
        </element>
        <element id="Observation.category">
            <path value="Observation.category" />
            <max value="0" />
        </element>
        <element id="Observation.code.coding">
            <path value="Observation.code.coding" />
            <max value="0" />
        </element>
        <element id="Observation.code.text">
            <path value="Observation.code.text" />
            <max value="0" />
        </element>
        <element id="Observation.subject">
            <path value="Observation.subject" />
            <min value="1" />
            <type>
                <code value="Reference" />
                <targetProfile value="https://OneComprehensivePatientPlanForChronicDiseases.org/fhir/StructureDefinition/Citizen" />
            </type>
        </element>
        <element id="Observation.subject.reference">
            <path value="Observation.subject.reference" />
            <max value="0" />
        </element>
        <element id="Observation.subject.type">
            <path value="Observation.subject.type" />
            <max value="0" />
        </element>
        <element id="Observation.subject.identifier">
            <path value="Observation.subject.identifier" />
            <max value="0" />
        </element>
        <element id="Observation.subject.display">
            <path value="Observation.subject.display" />
            <max value="0" />
        </element>
        <element id="Observation.focus">
            <path value="Observation.focus" />
            <max value="0" />
        </element>
        <element id="Observation.encounter">
            <path value="Observation.encounter" />
            <max value="0" />
        </element>
        <element id="Observation.effective[x]">
            <path value="Observation.effective[x]" />
            <min value="1" />
            <type>
                <code value="dateTime" />
            </type>
        </element>
        <element id="Observation.issued">
            <path value="Observation.issued" />
            <max value="0" />
        </element>
        <element id="Observation.performer">
            <path value="Observation.performer" />
            <min value="1" />
            <max value="1" />
            <type>
                <code value="Reference" />
                <targetProfile value="https://OneComprehensivePatientPlanForChronicDiseases.org/fhir/StructureDefinition/Doctor" />
            </type>
        </element>
        <element id="Observation.performer.reference">
            <path value="Observation.performer.reference" />
            <max value="0" />
        </element>
        <element id="Observation.performer.type">
            <path value="Observation.performer.type" />
            <max value="0" />
        </element>
        <element id="Observation.performer.identifier">
            <path value="Observation.performer.identifier" />
            <max value="0" />
        </element>
        <element id="Observation.performer.display">
            <path value="Observation.performer.display" />
            <max value="0" />
        </element>
        <element id="Observation.value[x]">
            <path value="Observation.value[x]" />
            <max value="0" />
        </element>
        <element id="Observation.dataAbsentReason">
            <path value="Observation.dataAbsentReason" />
            <max value="0" />
        </element>
        <element id="Observation.interpretation">
            <path value="Observation.interpretation" />
            <max value="0" />
        </element>
        <element id="Observation.note">
            <path value="Observation.note" />
            <max value="0" />
        </element>
        <element id="Observation.bodySite">
            <path value="Observation.bodySite" />
            <max value="0" />
        </element>
        <element id="Observation.method">
            <path value="Observation.method" />
            <max value="0" />
        </element>
        <element id="Observation.specimen">
            <path value="Observation.specimen" />
            <max value="0" />
        </element>
        <element id="Observation.device">
            <path value="Observation.device" />
            <max value="0" />
        </element>
        <element id="Observation.referenceRange">
            <path value="Observation.referenceRange" />
            <max value="0" />
        </element>
        <element id="Observation.hasMember">
            <path value="Observation.hasMember" />
            <max value="0" />
        </element>
        <element id="Observation.derivedFrom">
            <path value="Observation.derivedFrom" />
            <max value="0" />
        </element>
        <element id="Observation.component">
            <path value="Observation.component" />
            <slicing>
                <discriminator>
                    <type value="exists" />
                    <path value="code.coding.code" />
                </discriminator>
                <rules value="open" />
            </slicing>
        </element>
        <element id="Observation.component:HbA1c">
            <path value="Observation.component" />
            <sliceName value="HbA1c" />
            <max value="1" />
        </element>
        <element id="Observation.component:HbA1c.code">
            <path value="Observation.component.code" />
            <slicing>
                <discriminator>
                    <type value="exists" />
                    <path value="coding.code" />
                </discriminator>
                <rules value="open" />
            </slicing>
        </element>
        <element id="Observation.component:HbA1c.code:HbA1cSnomed">
            <path value="Observation.component.code" />
            <sliceName value="HbA1cSnomed" />
        </element>
        <element id="Observation.component:HbA1c.code:HbA1cSnomed.coding">
            <path value="Observation.component.code.coding" />
            <min value="1" />
            <max value="1" />
        </element>
        <element id="Observation.component:HbA1c.code:HbA1cSnomed.coding.system">
            <path value="Observation.component.code.coding.system" />
            <max value="0" />
        </element>
        <element id="Observation.component:HbA1c.code:HbA1cSnomed.coding.version">
            <path value="Observation.component.code.coding.version" />
            <max value="0" />
        </element>
        <element id="Observation.component:HbA1c.code:HbA1cSnomed.coding.code">
            <path value="Observation.component.code.coding.code" />
            <code>
                <system value="http://snomed.info/sct" />
                <version value="2021-09-30" />
                <display value="HbA1c" />
            </code>
            <min value="1" />
        </element>
        <element id="Observation.component:HbA1c.code:HbA1cSnomed.coding.display">
            <path value="Observation.component.code.coding.display" />
            <max value="0" />
        </element>
        <element id="Observation.component:HbA1c.code:HbA1cSnomed.coding.userSelected">
            <path value="Observation.component.code.coding.userSelected" />
            <max value="0" />
        </element>
        <element id="Observation.component:HbA1c.code:HbA1cSnomed.text">
            <path value="Observation.component.code.text" />
            <max value="0" />
        </element>
        <element id="Observation.component:HbA1c.code:HbA1cLoinc">
            <path value="Observation.component.code" />
            <sliceName value="HbA1cLoinc" />
        </element>
        <element id="Observation.component:HbA1c.code:HbA1cLoinc.coding">
            <path value="Observation.component.code.coding" />
            <min value="1" />
            <max value="1" />
        </element>
        <element id="Observation.component:HbA1c.code:HbA1cLoinc.coding.system">
            <path value="Observation.component.code.coding.system" />
            <max value="0" />
        </element>
        <element id="Observation.component:HbA1c.code:HbA1cLoinc.coding.version">
            <path value="Observation.component.code.coding.version" />
            <max value="0" />
        </element>
        <element id="Observation.component:HbA1c.code:HbA1cLoinc.coding.code">
            <path value="Observation.component.code.coding.code" />
            <code>
                <system value="http://loinc.org" />
                <version value="2.71" />
                <code value="86910-7" />
            </code>
            <min value="1" />
        </element>
        <element id="Observation.component:HbA1c.code:HbA1cLoinc.coding.display">
            <path value="Observation.component.code.coding.display" />
            <max value="0" />
        </element>
        <element id="Observation.component:HbA1c.code:HbA1cLoinc.coding.userSelected">
            <path value="Observation.component.code.coding.userSelected" />
            <max value="0" />
        </element>
        <element id="Observation.component:HbA1c.code:HbA1cLoinc.text">
            <path value="Observation.component.code.text" />
            <max value="0" />
        </element>
        <element id="Observation.component:HbA1c.value[x]">
            <path value="Observation.component.value[x]" />
            <max value="0" />
        </element>
        <element id="Observation.component:HbA1c.dataAbsentReason">
            <path value="Observation.component.dataAbsentReason" />
            <max value="0" />
        </element>
        <element id="Observation.component:HbA1c.interpretation">
            <path value="Observation.component.interpretation" />
            <max value="0" />
        </element>
        <element id="Observation.component:HbA1c.referenceRange">
            <path value="Observation.component.referenceRange" />
            <max value="0" />
        </element>
        <element id="Observation.component:LDLCholesterol">
            <path value="Observation.component" />
            <sliceName value="LDLCholesterol" />
            <max value="1" />
        </element>
        <element id="Observation.component:LDLCholesterol.code">
            <path value="Observation.component.code" />
            <slicing>
                <discriminator>
                    <type value="exists" />
                    <path value="coding.code" />
                </discriminator>
                <rules value="open" />
            </slicing>
        </element>
        <element id="Observation.component:LDLCholesterol.code:LDLCholesterolSnomed">
            <path value="Observation.component.code" />
            <sliceName value="LDLCholesterolSnomed" />
        </element>
        <element id="Observation.component:LDLCholesterol.code:LDLCholesterolSnomed.coding">
            <path value="Observation.component.code.coding" />
            <min value="1" />
            <max value="1" />
        </element>
        <element id="Observation.component:LDLCholesterol.code:LDLCholesterolSnomed.coding.system">
            <path value="Observation.component.code.coding.system" />
            <max value="0" />
        </element>
        <element id="Observation.component:LDLCholesterol.code:LDLCholesterolSnomed.coding.version">
            <path value="Observation.component.code.coding.version" />
            <max value="0" />
        </element>
        <element id="Observation.component:LDLCholesterol.code:LDLCholesterolSnomed.coding.code">
            <path value="Observation.component.code.coding.code" />
            <code>
                <system value="http://snomed.info/sct" />
                <version value="2021-09-30" />
                <display value="LDL Kolesterol" />
            </code>
            <min value="1" />
        </element>
        <element id="Observation.component:LDLCholesterol.code:LDLCholesterolSnomed.coding.display">
            <path value="Observation.component.code.coding.display" />
            <max value="0" />
        </element>
        <element id="Observation.component:LDLCholesterol.code:LDLCholesterolSnomed.coding.userSelected">
            <path value="Observation.component.code.coding.userSelected" />
            <max value="0" />
        </element>
        <element id="Observation.component:LDLCholesterol.code:LDLCholesterolSnomed.text">
            <path value="Observation.component.code.text" />
            <max value="0" />
        </element>
        <element id="Observation.component:LDLCholesterol.code:LDLCholesterolLoinc">
            <path value="Observation.component.code" />
            <sliceName value="LDLCholesterolLoinc" />
        </element>
        <element id="Observation.component:LDLCholesterol.code:LDLCholesterolLoinc.coding">
            <path value="Observation.component.code.coding" />
            <min value="1" />
            <max value="1" />
        </element>
        <element id="Observation.component:LDLCholesterol.code:LDLCholesterolLoinc.coding.system">
            <path value="Observation.component.code.coding.system" />
            <max value="0" />
        </element>
        <element id="Observation.component:LDLCholesterol.code:LDLCholesterolLoinc.coding.version">
            <path value="Observation.component.code.coding.version" />
            <max value="0" />
        </element>
        <element id="Observation.component:LDLCholesterol.code:LDLCholesterolLoinc.coding.code">
            <path value="Observation.component.code.coding.code" />
            <code>
                <system value="http://loinc.org" />
                <version value="2.71" />
                <code value="92717-8" />
            </code>
            <min value="1" />
        </element>
        <element id="Observation.component:LDLCholesterol.code:LDLCholesterolLoinc.coding.display">
            <path value="Observation.component.code.coding.display" />
            <max value="0" />
        </element>
        <element id="Observation.component:LDLCholesterol.code:LDLCholesterolLoinc.coding.userSelected">
            <path value="Observation.component.code.coding.userSelected" />
            <max value="0" />
        </element>
        <element id="Observation.component:LDLCholesterol.code:LDLCholesterolLoinc.text">
            <path value="Observation.component.code.text" />
            <max value="0" />
        </element>
        <element id="Observation.component:LDLCholesterol.value[x]">
            <path value="Observation.component.value[x]" />
            <max value="0" />
        </element>
        <element id="Observation.component:LDLCholesterol.dataAbsentReason">
            <path value="Observation.component.dataAbsentReason" />
            <max value="0" />
        </element>
        <element id="Observation.component:LDLCholesterol.interpretation">
            <path value="Observation.component.interpretation" />
            <max value="0" />
        </element>
        <element id="Observation.component:LDLCholesterol.referenceRange">
            <path value="Observation.component.referenceRange" />
            <max value="0" />
        </element>
        <element id="Observation.component:plasmaCreatinine">
            <path value="Observation.component" />
            <sliceName value="plasmaCreatinine" />
            <max value="1" />
        </element>
        <element id="Observation.component:plasmaCreatinine.code">
            <path value="Observation.component.code" />
            <slicing>
                <discriminator>
                    <type value="exists" />
                    <path value="coding.code" />
                </discriminator>
                <rules value="open" />
            </slicing>
        </element>
        <element id="Observation.component:plasmaCreatinine.code:plasmaCreatinineSnomed">
            <path value="Observation.component.code" />
            <sliceName value="plasmaCreatinineSnomed" />
        </element>
        <element id="Observation.component:plasmaCreatinine.code:plasmaCreatinineSnomed.coding">
            <path value="Observation.component.code.coding" />
            <min value="1" />
            <max value="1" />
        </element>
        <element id="Observation.component:plasmaCreatinine.code:plasmaCreatinineSnomed.coding.system">
            <path value="Observation.component.code.coding.system" />
            <max value="0" />
        </element>
        <element id="Observation.component:plasmaCreatinine.code:plasmaCreatinineSnomed.coding.version">
            <path value="Observation.component.code.coding.version" />
            <max value="0" />
        </element>
        <element id="Observation.component:plasmaCreatinine.code:plasmaCreatinineSnomed.coding.code">
            <path value="Observation.component.code.coding.code" />
            <code>
                <system value="http://snomed.info/sct" />
                <version value="2021-09-30" />
                <code value="251872006" />
            </code>
            <min value="1" />
        </element>
        <element id="Observation.component:plasmaCreatinine.code:plasmaCreatinineSnomed.coding.display">
            <path value="Observation.component.code.coding.display" />
            <max value="0" />
        </element>
        <element id="Observation.component:plasmaCreatinine.code:plasmaCreatinineSnomed.coding.userSelected">
            <path value="Observation.component.code.coding.userSelected" />
            <max value="0" />
        </element>
        <element id="Observation.component:plasmaCreatinine.code:plasmaCreatinineSnomed.text">
            <path value="Observation.component.code.text" />
            <max value="0" />
        </element>
        <element id="Observation.component:plasmaCreatinine.code:plasmaCreatinineLoinc">
            <path value="Observation.component.code" />
            <sliceName value="plasmaCreatinineLoinc" />
        </element>
        <element id="Observation.component:plasmaCreatinine.code:plasmaCreatinineLoinc.coding">
            <path value="Observation.component.code.coding" />
            <min value="1" />
            <max value="1" />
        </element>
        <element id="Observation.component:plasmaCreatinine.code:plasmaCreatinineLoinc.coding.system">
            <path value="Observation.component.code.coding.system" />
            <max value="0" />
        </element>
        <element id="Observation.component:plasmaCreatinine.code:plasmaCreatinineLoinc.coding.version">
            <path value="Observation.component.code.coding.version" />
            <max value="0" />
        </element>
        <element id="Observation.component:plasmaCreatinine.code:plasmaCreatinineLoinc.coding.code">
            <path value="Observation.component.code.coding.code" />
            <code>
                <system value="http://loinc.org" />
                <version value="2.71" />
                <code value="59834-2" />
            </code>
            <min value="1" />
        </element>
        <element id="Observation.component:plasmaCreatinine.code:plasmaCreatinineLoinc.coding.display">
            <path value="Observation.component.code.coding.display" />
            <max value="0" />
        </element>
        <element id="Observation.component:plasmaCreatinine.code:plasmaCreatinineLoinc.coding.userSelected">
            <path value="Observation.component.code.coding.userSelected" />
            <max value="0" />
        </element>
        <element id="Observation.component:plasmaCreatinine.code:plasmaCreatinineLoinc.text">
            <path value="Observation.component.code.text" />
            <max value="0" />
        </element>
        <element id="Observation.component:plasmaCreatinine.value[x]">
            <path value="Observation.component.value[x]" />
            <max value="0" />
        </element>
        <element id="Observation.component:plasmaCreatinine.dataAbsentReason">
            <path value="Observation.component.dataAbsentReason" />
            <max value="0" />
        </element>
        <element id="Observation.component:plasmaCreatinine.interpretation">
            <path value="Observation.component.interpretation" />
            <max value="0" />
        </element>
        <element id="Observation.component:plasmaCreatinine.referenceRange">
            <path value="Observation.component.referenceRange" />
            <max value="0" />
        </element>
        <element id="Observation.component:uAlbuminCreatinine">
            <path value="Observation.component" />
            <sliceName value="uAlbuminCreatinine" />
            <max value="1" />
        </element>
        <element id="Observation.component:uAlbuminCreatinine.code">
            <path value="Observation.component.code" />
            <slicing>
                <discriminator>
                    <type value="exists" />
                    <path value="coding.code" />
                </discriminator>
                <rules value="open" />
            </slicing>
        </element>
        <element id="Observation.component:uAlbuminCreatinine.code:uAlbuminCreatinineSnomed">
            <path value="Observation.component.code" />
            <sliceName value="uAlbuminCreatinineSnomed" />
        </element>
        <element id="Observation.component:uAlbuminCreatinine.code:uAlbuminCreatinineSnomed.coding">
            <path value="Observation.component.code.coding" />
            <min value="1" />
            <max value="1" />
        </element>
        <element id="Observation.component:uAlbuminCreatinine.code:uAlbuminCreatinineSnomed.coding.system">
            <path value="Observation.component.code.coding.system" />
            <max value="0" />
        </element>
        <element id="Observation.component:uAlbuminCreatinine.code:uAlbuminCreatinineSnomed.coding.version">
            <path value="Observation.component.code.coding.version" />
            <max value="0" />
        </element>
        <element id="Observation.component:uAlbuminCreatinine.code:uAlbuminCreatinineSnomed.coding.code">
            <path value="Observation.component.code.coding.code" />
            <code>
                <system value="http://snomed.info/sct" />
                <version value="2021-09-30" />
                <code value="250745003" />
            </code>
            <min value="1" />
        </element>
        <element id="Observation.component:uAlbuminCreatinine.code:uAlbuminCreatinineSnomed.coding.display">
            <path value="Observation.component.code.coding.display" />
            <max value="0" />
        </element>
        <element id="Observation.component:uAlbuminCreatinine.code:uAlbuminCreatinineSnomed.coding.userSelected">
            <path value="Observation.component.code.coding.userSelected" />
            <max value="0" />
        </element>
        <element id="Observation.component:uAlbuminCreatinine.code:uAlbuminCreatinineSnomed.text">
            <path value="Observation.component.code.text" />
            <max value="0" />
        </element>
        <element id="Observation.component:uAlbuminCreatinine.code:uAlbuminCreatinineLoinc">
            <path value="Observation.component.code" />
            <sliceName value="uAlbuminCreatinineLoinc" />
        </element>
        <element id="Observation.component:uAlbuminCreatinine.code:uAlbuminCreatinineLoinc.coding">
            <path value="Observation.component.code.coding" />
            <min value="1" />
            <max value="1" />
        </element>
        <element id="Observation.component:uAlbuminCreatinine.code:uAlbuminCreatinineLoinc.coding.system">
            <path value="Observation.component.code.coding.system" />
            <max value="0" />
        </element>
        <element id="Observation.component:uAlbuminCreatinine.code:uAlbuminCreatinineLoinc.coding.version">
            <path value="Observation.component.code.coding.version" />
            <max value="0" />
        </element>
        <element id="Observation.component:uAlbuminCreatinine.code:uAlbuminCreatinineLoinc.coding.code">
            <path value="Observation.component.code.coding.code" />
            <code>
                <system value="http://loinc.org" />
                <version value="2.71" />
                <code value="32294-1" />
                <display value="U-Alb Krea" />
            </code>
            <min value="1" />
        </element>
        <element id="Observation.component:uAlbuminCreatinine.code:uAlbuminCreatinineLoinc.coding.display">
            <path value="Observation.component.code.coding.display" />
            <max value="0" />
        </element>
        <element id="Observation.component:uAlbuminCreatinine.code:uAlbuminCreatinineLoinc.coding.userSelected">
            <path value="Observation.component.code.coding.userSelected" />
            <max value="0" />
        </element>
        <element id="Observation.component:uAlbuminCreatinine.code:uAlbuminCreatinineLoinc.text">
            <path value="Observation.component.code.text" />
            <max value="0" />
        </element>
        <element id="Observation.component:uAlbuminCreatinine.value[x]">
            <path value="Observation.component.value[x]" />
            <max value="0" />
        </element>
        <element id="Observation.component:uAlbuminCreatinine.dataAbsentReason">
            <path value="Observation.component.dataAbsentReason" />
            <max value="0" />
        </element>
        <element id="Observation.component:uAlbuminCreatinine.interpretation">
            <path value="Observation.component.interpretation" />
            <max value="0" />
        </element>
        <element id="Observation.component:uAlbuminCreatinine.referenceRange">
            <path value="Observation.component.referenceRange" />
            <max value="0" />
        </element>
        <element id="Observation.component:totalCholesterol">
            <path value="Observation.component" />
            <sliceName value="totalCholesterol" />
            <max value="1" />
        </element>
        <element id="Observation.component:totalCholesterol.code">
            <path value="Observation.component.code" />
            <slicing>
                <discriminator>
                    <type value="exists" />
                    <path value="coding.code" />
                </discriminator>
                <rules value="open" />
            </slicing>
        </element>
        <element id="Observation.component:totalCholesterol.code:totalCholesterolSnomed">
            <path value="Observation.component.code" />
            <sliceName value="totalCholesterolSnomed" />
        </element>
        <element id="Observation.component:totalCholesterol.code:totalCholesterolSnomed.coding">
            <path value="Observation.component.code.coding" />
            <min value="1" />
            <max value="1" />
        </element>
        <element id="Observation.component:totalCholesterol.code:totalCholesterolSnomed.coding.system">
            <path value="Observation.component.code.coding.system" />
            <max value="0" />
        </element>
        <element id="Observation.component:totalCholesterol.code:totalCholesterolSnomed.coding.version">
            <path value="Observation.component.code.coding.version" />
            <max value="0" />
        </element>
        <element id="Observation.component:totalCholesterol.code:totalCholesterolSnomed.coding.code">
            <path value="Observation.component.code.coding.code" />
            <code>
                <system value="http://snomed.info/sct" />
                <version value="2021-09-30" />
                <code value="121868005" />
                <display value="Total kolesterol" />
            </code>
            <min value="1" />
        </element>
        <element id="Observation.component:totalCholesterol.code:totalCholesterolSnomed.coding.display">
            <path value="Observation.component.code.coding.display" />
            <max value="0" />
        </element>
        <element id="Observation.component:totalCholesterol.code:totalCholesterolSnomed.coding.userSelected">
            <path value="Observation.component.code.coding.userSelected" />
            <max value="0" />
        </element>
        <element id="Observation.component:totalCholesterol.code:totalCholesterolSnomed.text">
            <path value="Observation.component.code.text" />
            <max value="0" />
        </element>
        <element id="Observation.component:totalCholesterol.code:totalCholesterolLoinc">
            <path value="Observation.component.code" />
            <sliceName value="totalCholesterolLoinc" />
        </element>
        <element id="Observation.component:totalCholesterol.code:totalCholesterolLoinc.coding">
            <path value="Observation.component.code.coding" />
            <min value="1" />
            <max value="1" />
        </element>
        <element id="Observation.component:totalCholesterol.code:totalCholesterolLoinc.coding.system">
            <path value="Observation.component.code.coding.system" />
            <max value="0" />
        </element>
        <element id="Observation.component:totalCholesterol.code:totalCholesterolLoinc.coding.version">
            <path value="Observation.component.code.coding.version" />
            <max value="0" />
        </element>
        <element id="Observation.component:totalCholesterol.code:totalCholesterolLoinc.coding.code">
            <path value="Observation.component.code.coding.code" />
            <code>
                <system value="http://loinc.org" />
                <version value="2.71" />
                <code value="21197-9" />
                <display value="Total kolesterol" />
            </code>
            <min value="1" />
        </element>
        <element id="Observation.component:totalCholesterol.code:totalCholesterolLoinc.coding.display">
            <path value="Observation.component.code.coding.display" />
            <max value="0" />
        </element>
        <element id="Observation.component:totalCholesterol.code:totalCholesterolLoinc.coding.userSelected">
            <path value="Observation.component.code.coding.userSelected" />
            <max value="0" />
        </element>
        <element id="Observation.component:totalCholesterol.code:totalCholesterolLoinc.text">
            <path value="Observation.component.code.text" />
            <max value="0" />
        </element>
        <element id="Observation.component:totalCholesterol.value[x]">
            <path value="Observation.component.value[x]" />
            <max value="0" />
        </element>
        <element id="Observation.component:totalCholesterol.dataAbsentReason">
            <path value="Observation.component.dataAbsentReason" />
            <max value="0" />
        </element>
        <element id="Observation.component:totalCholesterol.interpretation">
            <path value="Observation.component.interpretation" />
            <max value="0" />
        </element>
        <element id="Observation.component:totalCholesterol.referenceRange">
            <path value="Observation.component.referenceRange" />
            <max value="0" />
        </element>
        <element id="Observation.component:eGFR">
            <path value="Observation.component" />
            <sliceName value="eGFR" />
            <max value="1" />
        </element>
        <element id="Observation.component:eGFR.code">
            <path value="Observation.component.code" />
            <slicing>
                <discriminator>
                    <type value="exists" />
                    <path value="coding.code" />
                </discriminator>
                <rules value="open" />
            </slicing>
        </element>
        <element id="Observation.component:eGFR.code:eGFRSnomed">
            <path value="Observation.component.code" />
            <sliceName value="eGFRSnomed" />
        </element>
        <element id="Observation.component:eGFR.code:eGFRSnomed.coding">
            <path value="Observation.component.code.coding" />
            <min value="1" />
            <max value="1" />
        </element>
        <element id="Observation.component:eGFR.code:eGFRSnomed.coding.system">
            <path value="Observation.component.code.coding.system" />
            <max value="0" />
        </element>
        <element id="Observation.component:eGFR.code:eGFRSnomed.coding.version">
            <path value="Observation.component.code.coding.version" />
            <max value="0" />
        </element>
        <element id="Observation.component:eGFR.code:eGFRSnomed.coding.code">
            <path value="Observation.component.code.coding.code" />
            <code>
                <system value="http://snomed.info/sct" />
                <version value="2021-09-30" />
                <code value="80274001" />
            </code>
            <min value="1" />
        </element>
        <element id="Observation.component:eGFR.code:eGFRSnomed.coding.display">
            <path value="Observation.component.code.coding.display" />
            <max value="0" />
        </element>
        <element id="Observation.component:eGFR.code:eGFRSnomed.coding.userSelected">
            <path value="Observation.component.code.coding.userSelected" />
            <max value="0" />
        </element>
        <element id="Observation.component:eGFR.code:eGFRSnomed.text">
            <path value="Observation.component.code.text" />
            <max value="0" />
        </element>
        <element id="Observation.component:eGFR.code:eGFRLoinc">
            <path value="Observation.component.code" />
            <sliceName value="eGFRLoinc" />
        </element>
        <element id="Observation.component:eGFR.code:eGFRLoinc.coding">
            <path value="Observation.component.code.coding" />
            <min value="1" />
            <max value="1" />
        </element>
        <element id="Observation.component:eGFR.code:eGFRLoinc.coding.system">
            <path value="Observation.component.code.coding.system" />
            <max value="0" />
        </element>
        <element id="Observation.component:eGFR.code:eGFRLoinc.coding.version">
            <path value="Observation.component.code.coding.version" />
            <max value="0" />
        </element>
        <element id="Observation.component:eGFR.code:eGFRLoinc.coding.code">
            <path value="Observation.component.code.coding.code" />
            <code>
                <system value="http://loinc.org" />
                <version value="2.71" />
                <code value="87430-5" />
            </code>
            <min value="1" />
        </element>
        <element id="Observation.component:eGFR.code:eGFRLoinc.coding.display">
            <path value="Observation.component.code.coding.display" />
            <max value="0" />
        </element>
        <element id="Observation.component:eGFR.code:eGFRLoinc.coding.userSelected">
            <path value="Observation.component.code.coding.userSelected" />
            <max value="0" />
        </element>
        <element id="Observation.component:eGFR.code:eGFRLoinc.text">
            <path value="Observation.component.code.text" />
            <max value="0" />
        </element>
        <element id="Observation.component:eGFR.value[x]">
            <path value="Observation.component.value[x]" />
            <max value="0" />
        </element>
        <element id="Observation.component:eGFR.dataAbsentReason">
            <path value="Observation.component.dataAbsentReason" />
            <max value="0" />
        </element>
        <element id="Observation.component:eGFR.interpretation">
            <path value="Observation.component.interpretation" />
            <max value="0" />
        </element>
        <element id="Observation.component:eGFR.referenceRange">
            <path value="Observation.component.referenceRange" />
            <max value="0" />
        </element>
    </differential>
</StructureDefinition>