MII-Initiative

MII IG Onkologie DE v2024

Allgemeiner Leistungszustand: Observation

Kontext

Dieses Profil beschreibt den allgemeinen Leistungszustand eines Patienten in der Onkologie.

Die Erfassung des allgemeine Leistungszustand wird im oBDS vorgeschrieben. Dabei wird die eigentliche Meldung als ECOG kodiert und übertragen, wobei die Antwortmöglichkeiten ein Mapping vom Karnofsky-Score ermöglichen.

Im bisherigen oBDS und in den vorliegenden FHIR-Profilen ist sowohl eine Dokumentation des ECOG mit den Antwortmöglichkeiten 0-4 als auch des Karnofsky-Scores mit 10%, 20% etc. gestattet. Der aktuelle Umsetzungsleitfaden enthält jedoch einen Hinweis, dass in Zukunft ausschließlich der ECOG gemeldet werden soll. https://plattform65c.atlassian.net/wiki/spaces/UMK/pages/15532323/Allgemeiner+Leistungszustand+Typ

Für den Fall, dass in den Befunden nur Bezug auf den Allgemeinzustand genommen wird, ohne dabei in ECOG oder Karnofsky zu kodieren, empfiehlt der Dokumentationsleitfaden der Plattform §65c die Entwicklung hausinterner Richtlinien zur besseren Reproduzierbarkeit. https://plattform65c.atlassian.net/wiki/spaces/Dokumentat/pages/86310992/Allgemeiner+Leistungszustand

Daher enthält das vorliegende Profil nur Kodierungen für die Angabe des ECOG-Leistungszustandes.

NameStatusVersionCanonicalBasis
MII_PR_Onko_Allgemeiner_Leistungszustandactive2025.0.0https://www.medizininformatik-initiative.de/fhir/ext/modul-onko/StructureDefinition/mii-pr-onko-allgemeiner-leistungszustandhttp://hl7.org/fhir/StructureDefinition/Observation

Inhalt

idΣ0..1string
id0..1string
extensionI0..*Extension
versionIdΣ0..1id
lastUpdatedΣ0..1instant
sourceΣ0..1uri
profileS Σ0..*canonical(StructureDefinition)
securityΣ0..*CodingBinding
tagΣ0..*Coding
implicitRulesΣ ?!0..1uri
language0..1codeBinding
text0..1Narrative
contained0..*Resource
extensionI0..*Extension
modifierExtension?! I0..*Extension
identifierΣ0..*Identifier
basedOnΣ I0..*Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest)
partOfΣ I0..*Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy)
statusΣ ?!1..1codeBinding
category0..*CodeableConceptBinding
id0..1string
extensionI0..*Extension
id0..1string
extensionI0..*Extension
systemΣ1..1uriPattern
versionΣ0..1string
codeΣ1..1codePattern
displayΣ0..1string
userSelectedΣ0..1boolean
textΣ0..1string
subjectS Σ I1..1Reference(Patient)
focusΣ I0..*Reference(Resource)
encounterS Σ I0..1Reference(Encounter)
effectiveDateTimedateTime
effectivePeriodPeriod
effectiveTimingTiming
effectiveInstantinstant
issuedΣ0..1instant
performerΣ I0..*Reference(Practitioner | PractitionerRole | Organization | CareTeam | Patient | RelatedPerson)
valueQuantityQuantity
valueStringstring
valueBooleanboolean
valueIntegerinteger
valueRangeRange
valueRatioRatio
valueSampledDataSampledData
valueTimetime
valueDateTimedateTime
valuePeriodPeriod
id0..1string
extensionI0..*Extension
id0..1string
extensionI0..*Extension
systemΣ0..1uri
versionΣ0..1string
codeΣ0..1code
displayΣ0..1string
userSelectedΣ0..1boolean
textΣ0..1string
dataAbsentReasonI0..1CodeableConceptBinding
interpretation0..*CodeableConceptBinding
note0..*Annotation
bodySite0..1CodeableConcept
method0..1CodeableConcept
specimenI0..1Reference(Specimen)
deviceI0..1Reference(Device | DeviceMetric)
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
lowI0..1SimpleQuantity
highI0..1SimpleQuantity
type0..1CodeableConceptBinding
appliesTo0..*CodeableConcept
ageI0..1Range
text0..1string
hasMemberΣ I0..*Reference(Observation | QuestionnaireResponse | MolecularSequence)
derivedFromΣ I0..*Reference(DocumentReference | ImagingStudy | Media | QuestionnaireResponse | Observation | MolecularSequence)
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
codeΣ1..1CodeableConcept
valueQuantityQuantity
valueCodeableConceptCodeableConcept
valueStringstring
valueBooleanboolean
valueIntegerinteger
valueRangeRange
valueRatioRatio
valueSampledDataSampledData
valueTimetime
valueDateTimedateTime
valuePeriodPeriod
dataAbsentReasonI0..1CodeableConceptBinding
interpretation0..*CodeableConceptBinding
referenceRange0..*see (referenceRange)
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
id0..1string
extensionI0..*Extension
codingS Σ1..1CodingPattern
textΣ0..1string
valueCodeableConceptCodeableConcept
dataAbsentReasonI0..1CodeableConceptBinding
interpretation0..*CodeableConceptBinding
referenceRange0..*see (referenceRange)
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
id0..1string
extensionI0..*Extension
codingS Σ1..1CodingPattern
textΣ0..1string
valueCodeableConceptCodeableConcept
dataAbsentReasonI0..1CodeableConceptBinding
interpretation0..*CodeableConceptBinding
referenceRange0..*see (referenceRange)

OBDS Beschreibung des allgemeines Leistungszustandes

Feldname
Observation.meta.profile
Observation.code
Observation.code.coding
Observation.subject
Observation.encounter
Observation.component
Observation.component:ecog.code
Observation.component:ecog.code.coding
Observation.component:ecog.value[x]
Observation.component:karnofsky
Observation.component:karnofsky.code
Observation.component:karnofsky.code.coding
Observation.component:karnofsky.value[x]
<StructureDefinition xmlns="http://hl7.org/fhir">
    <id value="mii-pr-onko-allgemeiner-leistungszustand" />
    <url value="https://www.medizininformatik-initiative.de/fhir/ext/modul-onko/StructureDefinition/mii-pr-onko-allgemeiner-leistungszustand" />
    <version value="2025.0.0" />
    <name value="MII_PR_Onko_Allgemeiner_Leistungszustand" />
    <title value="MII PR Onkologie Allgemeiner Leistungszustand" />
    <status value="active" />
    <publisher value="Medizininformatik Initiative" />
    <contact>
        <telecom>
            <system value="url" />
            <value value="https://www.medizininformatik-initiative.de" />
        </telecom>
    </contact>
    <description value="OBDS Beschreibung des allgemeines Leistungszustandes" />
    <fhirVersion value="4.0.1" />
    <mapping>
        <identity value="oBDS" />
        <name value="Mapping FHIR zu oBDS" />
    </mapping>
    <kind value="resource" />
    <abstract value="false" />
    <type value="Observation" />
    <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Observation" />
    <derivation value="constraint" />
    <differential>
        <element id="Observation">
            <path value="Observation" />
            <mapping>
                <identity value="oBDS" />
                <map value="12" />
                <comment value="Allgemeiner Leistungszustand" />
            </mapping>
        </element>
        <element id="Observation.meta.profile">
            <path value="Observation.meta.profile" />
            <mustSupport value="true" />
        </element>
        <element id="Observation.code">
            <path value="Observation.code" />
            <mustSupport value="true" />
        </element>
        <element id="Observation.code.coding">
            <path value="Observation.code.coding" />
            <min value="1" />
            <patternCoding>
                <system value="http://snomed.info/sct" />
                <code value="423690003" />
            </patternCoding>
            <mustSupport value="true" />
        </element>
        <element id="Observation.code.coding.system">
            <path value="Observation.code.coding.system" />
            <min value="1" />
        </element>
        <element id="Observation.code.coding.code">
            <path value="Observation.code.coding.code" />
            <min value="1" />
        </element>
        <element id="Observation.subject">
            <path value="Observation.subject" />
            <min value="1" />
            <type>
                <code value="Reference" />
                <targetProfile value="http://hl7.org/fhir/StructureDefinition/Patient" />
            </type>
            <mustSupport value="true" />
        </element>
        <element id="Observation.encounter">
            <path value="Observation.encounter" />
            <mustSupport value="true" />
        </element>
        <element id="Observation.value[x]">
            <path value="Observation.value[x]" />
            <slicing>
                <discriminator>
                    <type value="type" />
                    <path value="$this" />
                </discriminator>
                <ordered value="false" />
                <rules value="open" />
            </slicing>
        </element>
        <element id="Observation.value[x]:valueCodeableConcept">
            <path value="Observation.value[x]" />
            <sliceName value="valueCodeableConcept" />
            <min value="0" />
            <max value="1" />
            <type>
                <code value="CodeableConcept" />
            </type>
        </element>
        <element id="Observation.value[x]:valueCodeableConcept.coding.code">
            <path value="Observation.value[x].coding.code" />
            <mapping>
                <identity value="oBDS" />
                <map value="12.1" />
                <comment value="Allgemeiner Leistungszustand" />
            </mapping>
        </element>
        <element id="Observation.component">
            <path value="Observation.component" />
            <slicing>
                <discriminator>
                    <type value="pattern" />
                    <path value="$this" />
                </discriminator>
                <rules value="open" />
            </slicing>
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="Observation.component:ecog">
            <path value="Observation.component" />
            <sliceName value="ecog" />
            <min value="0" />
            <max value="1" />
        </element>
        <element id="Observation.component:ecog.code">
            <path value="Observation.component.code" />
            <mustSupport value="true" />
        </element>
        <element id="Observation.component:ecog.code.coding">
            <path value="Observation.component.code.coding" />
            <min value="1" />
            <max value="1" />
            <patternCoding>
                <system value="http://snomed.info/sct" />
                <code value="423740007" />
            </patternCoding>
            <mustSupport value="true" />
        </element>
        <element id="Observation.component:ecog.value[x]">
            <path value="Observation.component.value[x]" />
            <min value="1" />
            <type>
                <code value="CodeableConcept" />
            </type>
            <mustSupport value="true" />
            <binding>
                <strength value="required" />
                <valueSet value="https://www.medizininformatik-initiative.de/fhir/ext/modul-onko/ValueSet/mii-vs-onko-allgemeiner-leistungszustand-ecog" />
            </binding>
        </element>
        <element id="Observation.component:karnofsky">
            <path value="Observation.component" />
            <sliceName value="karnofsky" />
            <min value="1" />
            <max value="1" />
            <mustSupport value="true" />
        </element>
        <element id="Observation.component:karnofsky.code">
            <path value="Observation.component.code" />
            <mustSupport value="true" />
        </element>
        <element id="Observation.component:karnofsky.code.coding">
            <path value="Observation.component.code.coding" />
            <min value="1" />
            <max value="1" />
            <patternCoding>
                <system value="http://snomed.info/sct" />
                <code value="761869008" />
            </patternCoding>
            <mustSupport value="true" />
        </element>
        <element id="Observation.component:karnofsky.value[x]">
            <path value="Observation.component.value[x]" />
            <min value="1" />
            <type>
                <code value="CodeableConcept" />
            </type>
            <mustSupport value="true" />
            <binding>
                <strength value="required" />
                <valueSet value="https://www.medizininformatik-initiative.de/fhir/ext/modul-onko/ValueSet/mii-vs-onko-allgemeiner-leistungszustand-karnofsky" />
            </binding>
        </element>
    </differential>
</StructureDefinition>
{
    "resourceType": "StructureDefinition",
    "id": "mii-pr-onko-allgemeiner-leistungszustand",
    "url": "https://www.medizininformatik-initiative.de/fhir/ext/modul-onko/StructureDefinition/mii-pr-onko-allgemeiner-leistungszustand",
    "version": "2025.0.0",
    "name": "MII_PR_Onko_Allgemeiner_Leistungszustand",
    "title": "MII PR Onkologie Allgemeiner Leistungszustand",
    "status": "active",
    "publisher": "Medizininformatik Initiative",
    "contact":  [
        {
            "telecom":  [
                {
                    "system": "url",
                    "value": "https://www.medizininformatik-initiative.de"
                }
            ]
        }
    ],
    "description": "OBDS Beschreibung des allgemeines Leistungszustandes",
    "fhirVersion": "4.0.1",
    "mapping":  [
        {
            "identity": "oBDS",
            "name": "Mapping FHIR zu oBDS"
        }
    ],
    "kind": "resource",
    "abstract": false,
    "type": "Observation",
    "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Observation",
    "derivation": "constraint",
    "differential": {
        "element":  [
            {
                "id": "Observation",
                "path": "Observation",
                "mapping":  [
                    {
                        "identity": "oBDS",
                        "map": "12",
                        "comment": "Allgemeiner Leistungszustand"
                    }
                ]
            },
            {
                "id": "Observation.meta.profile",
                "path": "Observation.meta.profile",
                "mustSupport": true
            },
            {
                "id": "Observation.code",
                "path": "Observation.code",
                "mustSupport": true
            },
            {
                "id": "Observation.code.coding",
                "path": "Observation.code.coding",
                "min": 1,
                "patternCoding": {
                    "code": "423690003",
                    "system": "http://snomed.info/sct"
                },
                "mustSupport": true
            },
            {
                "id": "Observation.code.coding.system",
                "path": "Observation.code.coding.system",
                "min": 1
            },
            {
                "id": "Observation.code.coding.code",
                "path": "Observation.code.coding.code",
                "min": 1
            },
            {
                "id": "Observation.subject",
                "path": "Observation.subject",
                "min": 1,
                "type":  [
                    {
                        "code": "Reference",
                        "targetProfile":  [
                            "http://hl7.org/fhir/StructureDefinition/Patient"
                        ]
                    }
                ],
                "mustSupport": true
            },
            {
                "id": "Observation.encounter",
                "path": "Observation.encounter",
                "mustSupport": true
            },
            {
                "id": "Observation.value[x]",
                "path": "Observation.value[x]",
                "slicing": {
                    "discriminator":  [
                        {
                            "type": "type",
                            "path": "$this"
                        }
                    ],
                    "ordered": false,
                    "rules": "open"
                }
            },
            {
                "id": "Observation.value[x]:valueCodeableConcept",
                "path": "Observation.value[x]",
                "sliceName": "valueCodeableConcept",
                "min": 0,
                "max": "1",
                "type":  [
                    {
                        "code": "CodeableConcept"
                    }
                ]
            },
            {
                "id": "Observation.value[x]:valueCodeableConcept.coding.code",
                "path": "Observation.value[x].coding.code",
                "mapping":  [
                    {
                        "identity": "oBDS",
                        "map": "12.1",
                        "comment": "Allgemeiner Leistungszustand "
                    }
                ]
            },
            {
                "id": "Observation.component",
                "path": "Observation.component",
                "slicing": {
                    "discriminator":  [
                        {
                            "type": "pattern",
                            "path": "$this"
                        }
                    ],
                    "rules": "open"
                },
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "Observation.component:ecog",
                "path": "Observation.component",
                "sliceName": "ecog",
                "min": 0,
                "max": "1"
            },
            {
                "id": "Observation.component:ecog.code",
                "path": "Observation.component.code",
                "mustSupport": true
            },
            {
                "id": "Observation.component:ecog.code.coding",
                "path": "Observation.component.code.coding",
                "min": 1,
                "max": "1",
                "patternCoding": {
                    "code": "423740007",
                    "system": "http://snomed.info/sct"
                },
                "mustSupport": true
            },
            {
                "id": "Observation.component:ecog.value[x]",
                "path": "Observation.component.value[x]",
                "min": 1,
                "type":  [
                    {
                        "code": "CodeableConcept"
                    }
                ],
                "mustSupport": true,
                "binding": {
                    "strength": "required",
                    "valueSet": "https://www.medizininformatik-initiative.de/fhir/ext/modul-onko/ValueSet/mii-vs-onko-allgemeiner-leistungszustand-ecog"
                }
            },
            {
                "id": "Observation.component:karnofsky",
                "path": "Observation.component",
                "sliceName": "karnofsky",
                "min": 1,
                "max": "1",
                "mustSupport": true
            },
            {
                "id": "Observation.component:karnofsky.code",
                "path": "Observation.component.code",
                "mustSupport": true
            },
            {
                "id": "Observation.component:karnofsky.code.coding",
                "path": "Observation.component.code.coding",
                "min": 1,
                "max": "1",
                "patternCoding": {
                    "code": "761869008",
                    "system": "http://snomed.info/sct"
                },
                "mustSupport": true
            },
            {
                "id": "Observation.component:karnofsky.value[x]",
                "path": "Observation.component.value[x]",
                "min": 1,
                "type":  [
                    {
                        "code": "CodeableConcept"
                    }
                ],
                "mustSupport": true,
                "binding": {
                    "strength": "required",
                    "valueSet": "https://www.medizininformatik-initiative.de/fhir/ext/modul-onko/ValueSet/mii-vs-onko-allgemeiner-leistungszustand-karnofsky"
                }
            }
        ]
    }
}

Mapping Datensatz zu FHIR

DatensatzErklaerungFHIR
Allgemeiner Leistungszustand

Allgemeiner Leistungszustand

ECOG oder Karnofsky

ECOG oder Karnofsky

Observation.value[x]

Mapping Einheitlicher onkologischer Basisdatensatz (oBDS) zu FHIR

oBDSDefinitionFHIR
12Allgemeiner LeistungszustandObservation
12.1Allgemeiner LeistungszustandObservation.value[x].coding.code

Suchparameter

Folgende Suchparameter sind für das Modul Onkologie relevant, auch in Kombination:

  1. Der Suchparameter _id MUSS unterstützt werden:

    Beispiele:

    GET [base]/Observation?_id=1234

    Anwendungshinweise: Weitere Informationen zur Suche nach "_id" finden sich in der FHIR-Basisspezifikation - Abschnitt "Parameters for all resources".

  2. Der Suchparameter "_profile" MUSS unterstützt werden:

    Beispiele:

    GET [base]/Observation?_profile=https://www.medizininformatik-initiative.de/fhir/ext/modul-onko/StructureDefinition/mii-pr-onko-allgemeiner-leistungszustand

    Anwendungshinweise: Weitere Informationen zur Suche nach "_profile" finden sich in der FHIR-Basisspezifikation - Abschnitt "token".

  3. Der Suchparameter "code" MUSS unterstützt werden:

    Beispiele:

    GET [base]/Observation?code=http://fhir.de/CodeSystem/sct|184305005

    Anwendungshinweise: Weitere Informationen zur Suche nach "code" finden sich in der FHIR-Basisspezifikation - Abschnitt "token".

  4. Der Suchparameter "subject" MUSS unterstützt werden:

    Beispiele:

    GET [base]/Observation?subject=Patient/example

    Anwendungshinweise: Weitere Informationen zur Suche nach "subject" finden sich in der FHIR-Basisspezifikation - Abschnitt "reference".

  5. Der Suchparameter "encounter" MUSS unterstützt werden:

    Beispiele:

    GET [base]/Observation?encounter=Encounter/example

    Anwendungshinweise: Weitere Informationen zur Suche nach "encounter" finden sich in der FHIR-Basisspezifikation - Abschnitt "reference".

Beispiele

{
    "resourceType": "Observation",
    "id": "mii-exa-onko-allgemeiner-leistungszustand-1",
    "meta": {
        "profile":  [
            "https://www.medizininformatik-initiative.de/fhir/ext/modul-onko/StructureDefinition/mii-pr-onko-allgemeiner-leistungszustand"
        ]
    },
    "code": {
        "coding":  [
            {
                "code": "423690003",
                "system": "http://snomed.info/sct"
            }
        ]
    },
    "component":  [
        {
            "code": {
                "coding":  [
                    {
                        "code": "761869008",
                        "system": "http://snomed.info/sct"
                    }
                ]
            },
            "valueCodeableConcept": {
                "coding":  [
                    {
                        "code": "30%",
                        "display": "30%"
                    }
                ]
            }
        },
        {
            "code": {
                "coding":  [
                    {
                        "code": "423740007",
                        "system": "http://snomed.info/sct"
                    }
                ]
            },
            "valueCodeableConcept": {
                "coding":  [
                    {
                        "code": "3",
                        "display": "Nur begrenzte Selbstversorgung möglich; ist 50 % oder mehr der Wachzeit an Bett oder Stuhl gebunden (30 - 40 % nach Karnofsky)"
                    }
                ]
            }
        }
    ],
    "status": "final",
    "subject": {
        "reference": "Patient/example"
    }
}