,

Dieses Profil spezifiziert die Minimalanforderungen für die Bereitstellung von Informationen über die Behandlungen/Prozeduren eines Patienten im Rahmen des Bestätigungsverfahrens der gematik.

Motivation

Die Möglichkeit auf eine Übersicht der Prozeduren eines Patienten zuzugreifen, Patienten anhand durchgeführter oder geplanter Prozeduren zu suchen, oder zu prüfen, ob eine konkrete Prozedur bei einem Patienten durchgeführt wurde, sind wichtige Funktionen im klinischen Behandlungsablauf.

In FHIR werden Prozeduren mit der Procedure-Ressource repräsentiert.

Da die Prozeduren in klinischen Primärsystemen, in der Regel, in OPS-codierter Form vorliegen, fordert ISiK in erster Linie diese Form des Austausches. Falls eine Prozedur zwar dokumentiert aber noch nicht codiert wurde (z.B. wenn die Kodierung erst nach der Entlassung erfolgt), ist alternativ eine Repräsentation als Freitext-Prozedur möglich.

Kompatibilität

Für das Profil ISIKProzedur wird eine Kompatibilität mit folgenden Profilen angestrebt; allerdings kann nicht sichergestellt werden, dass Instanzen, die gegen ISIKProzedur valide sind, auch valide sind gegen:

Bestätigungsrelevanz

VerbindlichkeitSHALL

Metadaten

Canonicalhttps://gematik.de/fhir/isik/StructureDefinition/ISiKProzedurhttps://gematik.de/fhir/isik/StructureDefinition/ISiKProzedur
Statusactiveactive
Version5.0.0-rc2-test-broken5.1.0
Basishttp://hl7.org/fhir/StructureDefinition/Procedurehttp://hl7.org/fhir/StructureDefinition/Procedure

Inhalt

idS Σ0..1string
id0..1string
extensionC0..*Extension
versionIdΣ0..1id
lastUpdatedΣ0..1instant
sourceΣ0..1uri
profileΣ0..*canonical(StructureDefinition)
securityΣ0..*CodingBinding
tagΣ0..*Coding
implicitRulesΣ ?!0..1uri
language0..1codeBinding
text0..1Narrative
contained0..*Resource
DokumentationsdatumS C0..1Extension(dateTime)
modifierExtension?! C0..*Extension
identifierΣ0..*Identifier
instantiatesCanonicalΣ0..*canonical(PlanDefinition | ActivityDefinition | Measure | OperationDefinition | Questionnaire)
instantiatesUriΣ0..*uri
basedOnΣ0..*Reference(CarePlan | ServiceRequest)
partOfΣ0..*Reference(Procedure | Observation | MedicationAdministration)
statusS Σ ?!1..1codeBinding
statusReasonΣ0..1CodeableConcept
id0..1string
extensionC0..*Extension
SNOMED-CTS Σ0..1ISiKSnomedCTCodingBinding
textΣ0..1string
id0..1string
extensionC0..*Extension
id0..1string
SeitenlokalisationS C0..1Extension(Coding)
systemS Σ1..1uriFixed Value
versionS Σ1..1string
codeS Σ C1..1code
displayΣ0..1string
userSelectedΣ0..1boolean
SNOMED-CTS Σ0..1ISiKSnomedCTCodingBinding
textS Σ0..1string
id0..1string
extensionC0..*Extension
referenceS Σ C1..1string
typeΣ0..1uriBinding
identifierΣ0..1Identifier
displayΣ0..1string
id0..1string
extensionC0..*Extension
referenceS Σ C1..1string
typeΣ0..1uriBinding
identifierΣ0..1Identifier
displayΣ0..1string
performedDateTimedateTime
performedPeriodPeriod
recorderΣ0..1Reference(Patient | RelatedPerson | Practitioner | PractitionerRole)
asserterΣ0..1Reference(Patient | RelatedPerson | Practitioner | PractitionerRole)
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
functionΣ0..1CodeableConcept
actorΣ1..1Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device)
onBehalfOf0..1Reference(Organization)
locationΣ0..1Reference(Location)
reasonCodeΣ0..*CodeableConcept
reasonReferenceΣ0..*Reference(Condition | Observation | Procedure | DiagnosticReport | DocumentReference)
bodySiteΣ0..*CodeableConcept
outcomeΣ0..1CodeableConcept
report0..*Reference(DiagnosticReport | DocumentReference | Composition)
complication0..*CodeableConcept
complicationDetail0..*Reference(Condition)
followUp0..*CodeableConcept
noteS0..*Annotation
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
action0..1CodeableConceptBinding
manipulated1..1Reference(Device)
usedReference0..*Reference(Device | Medication | Substance)
usedCode0..*CodeableConcept
<StructureDefinition xmlns="http://hl7.org/fhir">
<id value="ISiKProzedur" />
<url value="https://gematik.de/fhir/isik/StructureDefinition/ISiKProzedur" />
<version value="5.1.0" />
<name value="ISiKProzedur" />
<status value="active" />
<experimental value="false" />
<date value="2025-10-23" />
<publisher value="gematik GmbH" />
<description value="Dieses Profil spezifiziert die Minimalanforderungen für die Bereitstellung von Informationen über die Behandlungen/Prozeduren eines Patienten im Rahmen des Bestätigungsverfahrens der gematik.\n### Motivation\nDie Möglichkeit auf eine Übersicht der Prozeduren eines Patienten zuzugreifen, Patienten anhand durchgeführter oder geplanter Prozeduren zu suchen, oder zu prüfen, ob eine konkrete Prozedur bei einem Patienten durchgeführt wurde, sind wichtige Funktionen im klinischen Behandlungsablauf.\n\nIn FHIR werden Prozeduren mit der Procedure-Ressource repräsentiert.\n\nDa die Prozeduren in klinischen Primärsystemen, in der Regel, in OPS-codierter Form vorliegen, fordert ISiK in erster Linie diese Form des Austausches. Falls eine Prozedur zwar dokumentiert aber noch nicht codiert wurde (z.B. wenn die Kodierung erst nach der Entlassung erfolgt), ist alternativ eine Repräsentation als Freitext-Prozedur möglich.\n\n### Kompatibilität\nFür das Profil ISIKProzedur wird eine Kompatibilität mit folgenden Profilen angestrebt; allerdings kann nicht sichergestellt werden, dass Instanzen, die gegen ISIKProzedur valide sind, auch valide sind gegen:\n\n* [Profil Prozedur](https://www.medizininformatik-initiative.de/fhir/core/modul-prozedur/StructureDefinition/Procedure) der Medizininformatik Initiative \nHinweise zu Inkompatibilitäten können über die [Portalseite](https://service.gematik.de/servicedesk/customer/portal/16) gemeldet werden." />
<fhirVersion value="4.0.1" />
<kind value="resource" />
<abstract value="false" />
<type value="Procedure" />
<baseDefinition value="http://hl7.org/fhir/StructureDefinition/Procedure" />
<derivation value="constraint" />
<element id="Procedure">
<path value="Procedure" />
<key value="proc-ISiK-1" />
<severity value="error" />
<human value="Falls die Prozedur per OPS kodiert wird, MUSS eine SNOMED-CT kodierte Category abgebildet werden" />
<expression value="code.coding.where(system = 'http://fhir.de/CodeSystem/bfarm/ops').exists() implies category.coding.where(system = 'http://snomed.info/sct').exists()" />
<source value="https://gematik.de/fhir/isik/StructureDefinition/ISiKProzedur" />
</constraint>
<key value="proc-ISiK-2" />
<severity value="error" />
<human value="Falls eine codierte Prozedur vorliegt MUSS eine kodierte Category abgebildet werden" />
<expression value="code.coding.exists() implies category.coding.exists()" />
<source value="https://gematik.de/fhir/isik/StructureDefinition/ISiKProzedur" />
</constraint>
</element>
<element id="Procedure.id">
<path value="Procedure.id" />
<short value="serverseitige, interne ID des Datensatzes" />
<comment value="**bedingtes Pflichtfeld/bedingtes MS:** Alle von einem Server bereitgestellten Ressourcen MÜSSEN über eine `id` verfügen.\n Von Clients erzeugte Ressourcen, die im Kontext einer CREATE-Interaktion übermittelt werden, MÜSSEN NICHT über eine `id`verfügen." />
<mustSupport value="true" />
</element>
<element id="Procedure.meta.versionId">
<path value="Procedure.meta.versionId" />
<short value="Eindeutiger Name der serverseitigen Version des Datensatzes" />
<comment value="Alle von einem Server bereitgestellten Ressourcen SOLLEN über eine `versionID` verfügen.\n Von Clients erzeugte Ressourcen, die im Kontext einer CREATE-Interaktion übermittelt werden, MÜSSEN NICHT über eine `versionID`verfügen." />
</element>
<element id="Procedure.meta.lastUpdated">
<path value="Procedure.meta.lastUpdated" />
<short value="Zeitpunkt der letzten Änderung" />
<comment value="Alle von einem Server bereitgestellten Ressourcen SOLLEN über ein `lastUpdate` verfügen.\n Von Clients erzeugte Ressourcen, die im Kontext einer CREATE-Interaktion übermittelt werden, MÜSSEN NICHT über ein `lastUpdate`verfügen." />
</element>
<element id="Procedure.extension">
<path value="Procedure.extension" />
<mustSupport value="true" />
</element>
<element id="Procedure.extension:Dokumentationsdatum">
<path value="Procedure.extension" />
<sliceName value="Dokumentationsdatum" />
<short value="Dokumentationsdatum" />
<comment value="Datum, an dem die Prozedur dokumentiert wurde. \n Es handelt sich hierbei um das fachliche Dokumentationsdatum, nicht zu verwechseln mit dem Datum der technischen Anlage des Datensatzes im Primärsystem. \n Diese beiden Daten *können* jedoch identisch sein." />
<min value="0" />
<max value="1" />
<code value="Extension" />
<profile value="http://fhir.de/StructureDefinition/ProzedurDokumentationsdatum" />
</type>
<mustSupport value="true" />
</element>
<element id="Procedure.status">
<path value="Procedure.status" />
<short value="Status" />
<comment value="Zeigt den aktuellen Status der Prozedur an. \n **WICHTIGER Hinweis für Implementierer: \n * Alle server-seitigen Implementierungen MÜSSEN in der Lage sein, \n die systemintern möglichen Statuswerte korrekt in FHIR abzubilden, mindestens jedoch die Werte `completed` und `unknown`.\n * Alle client-seitigen Implementierungen MÜSSEN in der Lage sein, sämtliche Status-Codes zu interpretieren und dem Anwender in angemessener Form darstellen zu können, \n beispielsweise durch Ausblenden/Durchstreichen von Prozeduren mit dem status `entered-in-error` und Ausgrauen von Prozeduren, die noch nicht stattgefunden haben, o.ä." />
<mustSupport value="true" />
</element>
<element id="Procedure.category">
<path value="Procedure.category" />
<short value="Kategorie" />
<comment value="Die Kategorisierung erfolgt vorzugsweise auf Basis von SNOMED CT. Für OPS-codierte Prozeduren MUSS die Kategorie angegeben werden: Sie kann ermittelt werden, \n indem das erste Zeichen des OPS-Codes mit Hilfe einer [ConceptMap](http://fhir.de/ConceptMap/OPS-SNOMED-Category) auf die zutreffende SNOMED-Kategorie gemappt wird.\n \n **Begründung MS:** Die Kategorisierung dient der Verbesserung von Suche und Darstellung." />
<mustSupport value="true" />
</element>
<element id="Procedure.category.coding">
<path value="Procedure.category.coding" />
<type value="pattern" />
<path value="system" />
</discriminator>
<rules value="open" />
</slicing>
</element>
<element id="Procedure.category.coding:SNOMED-CT">
<path value="Procedure.category.coding" />
<sliceName value="SNOMED-CT" />
<min value="0" />
<max value="1" />
<code value="Coding" />
<profile value="https://gematik.de/fhir/isik/StructureDefinition/ISiKSnomedCTCoding" />
</type>
<mustSupport value="true" />
<strength value="preferred" />
<valueSet value="https://gematik.de/fhir/isik/ValueSet/ProzedurenKategorieSCT" />
</binding>
</element>
<element id="Procedure.code">
<path value="Procedure.code" />
<short value="Prozeduren-Code" />
<comment value="Prozeduren SOLLEN mindestens entweder mit einem OPS-Code oder einem SNOMED-Code aus dem angegebenen ValueSet codiert werden. \n Ist keine Codierung möglich, MUSS statt dessen eine textuelle Beschreibung der Prozedur angegeben werden. \n **Begründung Pflichtfeld:** Ist *weder* eine Codierung *noch* eine textuelle Beschreibung vorhanden, besitzt diese Ressource keine medizinische Aussagefähigkeit." />
<min value="1" />
<key value="sct-ops-1" />
<severity value="error" />
<human value="Falls die Prozedur kodiert vorliegt, SOLL mindestens ein OPS oder SNOMED-CT Code angegeben werden." />
<expression value="coding.exists() implies coding.where(system = 'http://snomed.info/sct').exists() or coding.where(system = 'http://fhir.de/CodeSystem/bfarm/ops').exists()" />
<source value="https://gematik.de/fhir/isik/StructureDefinition/ISiKProzedur" />
</constraint>
<key value="proc-ISiK-3" />
<severity value="error" />
<human value="Entweder MUSS eine kodierte Prozedur vorliegen oder eine textuelle Beschreibung. Stattdessen nur Extensions hinzuzufügen (vgl. https://www.hl7.org/fhir/element.html - ele-1), ist explizit nicht erlaubt." />
<expression value="coding.exists().not() implies text.exists()" />
<source value="https://gematik.de/fhir/isik/StructureDefinition/ISiKProzedur" />
</constraint>
<mustSupport value="true" />
</element>
<element id="Procedure.code.coding">
<path value="Procedure.code.coding" />
<type value="pattern" />
<path value="system" />
</discriminator>
<rules value="open" />
</slicing>
<short value="Codierte Darstellung der Prozedur" />
<mustSupport value="true" />
</element>
<element id="Procedure.code.coding:OPS">
<path value="Procedure.code.coding" />
<sliceName value="OPS" />
<short value="OPS-codierte Darstellung der Prozedur" />
<min value="0" />
<max value="1" />
<code value="Coding" />
<profile value="http://fhir.de/StructureDefinition/CodingOPS" />
</type>
<mustSupport value="true" />
<strength value="required" />
<valueSet value="http://fhir.de/ValueSet/bfarm/ops" />
</binding>
</element>
<element id="Procedure.code.coding:OPS.extension:Seitenlokalisation">
<path value="Procedure.code.coding.extension" />
<sliceName value="Seitenlokalisation" />
<short value="Seitenlokalisation" />
<comment value="**Begründung MS:** Bei OPS-codierten Prozeduren an paarigen Organen oder Körperteilen müssen die Zusatzkennzeichen für die Seitigkeit (R, L oder B) angeben werden" />
<mustSupport value="true" />
</element>
<element id="Procedure.code.coding:OPS.system">
<path value="Procedure.code.coding.system" />
<short value="Namensraum des Prozeduren-Codes" />
<comment value="Hier ist stets der Wert `http://fhir.de/CodeSystem/bfarm/ops` anzugeben." />
<mustSupport value="true" />
</element>
<element id="Procedure.code.coding:OPS.version">
<path value="Procedure.code.coding.version" />
<short value="Die Jahresversion des OPS Kataloges. Angegeben wird immer die vierstellige Jahreszahl (z.B. `2017`)" />
<comment value="**Begründung Pflichtfeld:** Bei Verwendung von OPS ist die Angabe der Version zwingend erforderlich. \n Hierdurch wird der Tatsache Rechnung getragen, dass jede der jährlich neu erscheinenden Fassung von OPS ein neues Codesystem darstellt." />
<mustSupport value="true" />
</element>
<element id="Procedure.code.coding:OPS.code">
<path value="Procedure.code.coding.code" />
<short value="OPS-Code" />
<comment value="Hier ist der OPS-Code ohne jegliche Zusatzkennzeichen (z.B. Seitenlokalisation) oder Versionsnummern anzugeben." />
<mustSupport value="true" />
</element>
<element id="Procedure.code.coding:SNOMED-CT">
<path value="Procedure.code.coding" />
<sliceName value="SNOMED-CT" />
<short value="SNOMED-codierte Darstellung der Prozedur" />
<comment value="**Hintergrund und Begründung zum Must-Support:** Das BfArM hat ein 'Zielbild für eine semantische Strategie' (https://www.bfarm.de/DE/Kodiersysteme/Services/Terminologieserver/Semantik-Strategie/_node.html) verfasst, in dem die Nutzung von international gängigen Basis-Terminologien vorgestellt wird. Dort wird als grundlegende Position dargestellt, dass basierend auf einer Basisterminologie weitere Use Cases bedient werden sollen. Bei Prozeduren wäre das damit eine klinische Dokumentation mit SNOMED CT als internationalem Kodiersystem und einer Ableitung davon zum OPS. Dies ist insbesondere auch wichtig für den Datentransfer in den European Health Data Space, in dem der OPS keine Rolle spielen wird." />
<min value="0" />
<max value="1" />
<code value="Coding" />
<profile value="https://gematik.de/fhir/isik/StructureDefinition/ISiKSnomedCTCoding" />
</type>
<mustSupport value="true" />
<strength value="required" />
<valueSet value="https://gematik.de/fhir/isik/ValueSet/ProzedurenCodesSCT" />
</binding>
</element>
<element id="Procedure.code.text">
<path value="Procedure.code.text" />
<short value="Freitextiche Beschreibung der Prozedur" />
<comment value="Die freitextliche Beschreibung kann ergänzend oder anstelle einer codierten Angabe der Prozedur erfolgen." />
<mustSupport value="true" />
</element>
<element id="Procedure.subject">
<path value="Procedure.subject" />
<short value="Patientenbezug" />
<comment value="**Begründung Must-Support:** Ein Patientenbezug der Prozedur MUSS stets zum Zwecke der Nachvollziehbarkeit und Datenintegrität vorliegen." />
<mustSupport value="true" />
</element>
<element id="Procedure.subject.reference">
<path value="Procedure.subject.reference" />
<short value="Patienten-Link" />
<comment value="**Begründung MS:** Die Verlinkung auf eine Patienten-Ressource dient der technischen Zuordnung der Dokumentation zu einem Patienten und ermöglicht wichtige API-Funktionen wie verkettete Suche, (Reverse-)Include etc.\nIm ISik Kontext MUSS die referenzierte Ressource konform zu [ISiKPatient](https://gematik.de/fhir/isik/StructureDefinition/ISiKPatient) sein.\nJenseits von ISiK KÖNNEN weitere Instanzen mit anderen Profilen referenziert werden." />
<min value="1" />
<mustSupport value="true" />
</element>
<element id="Procedure.encounter">
<path value="Procedure.encounter" />
<short value="Aufenthaltsbezug" />
<comment value="**Begründung Must-Support:** Ein Aufenthaltsbezug der Prozedur MUSS stets zum Zwecke der Nachvollziehbarkeit und Datenintegrität vorliegen." />
<mustSupport value="true" />
</element>
<element id="Procedure.encounter.reference">
<path value="Procedure.encounter.reference" />
<short value="Encounter-Link" />
<comment value="**Begründung Pflichtfeld:** Die Verlinkung auf eine Encounter-Ressource dient der technischen Zuordnung der Dokumentation zu einem Aufenthalt und ermöglicht wichtige API-Funktionen wie verkettete Suche, (Reverse-)Include etc.\nIm ISik Kontext MUSS die referenzierte Ressource konform zu [ISiKKontaktGesundheitseinrichtung](https://gematik.de/fhir/isik/StructureDefinition/ISiKKontaktGesundheitseinrichtung) sein.\nJenseits von ISiK KÖNNEN weitere Instanzen mit anderen Profilen referenziert werden." />
<min value="1" />
<mustSupport value="true" />
</element>
<element id="Procedure.performed[x]">
<path value="Procedure.performed[x]" />
<short value="Durchführungsdatum oder -Zeitraum" />
<comment value="Es muss mindestens entweder ein (partielles) Durchführungsdatum oder der Beginn des Durchführungszeitraumes angegeben werden.\n **Begründung Pflichtfeld:** Die zeitliche Einordnung einer Prozedur ist in vielen Fällen maßgeblich für deren medizinische Relevanz." />
<min value="1" />
<code value="dateTime" />
</type>
<code value="Period" />
</type>
<mustSupport value="true" />
</element>
<element id="Procedure.note">
<path value="Procedure.note" />
<short value="Notizen" />
<comment value="Ergänzende Hinweise und Anmerkungen zur Prozedur" />
<mustSupport value="true" />
</element>
</differential>
</StructureDefinition>
{
"resourceType": "StructureDefinition",
"id": "ISiKProzedur",
"url": "https://gematik.de/fhir/isik/StructureDefinition/ISiKProzedur",
"version": "5.1.0",
"name": "ISiKProzedur",
"status": "active",
"experimental": false,
"date": "2025-10-23",
"publisher": "gematik GmbH",
"description": "Dieses Profil spezifiziert die Minimalanforderungen für die Bereitstellung von Informationen über die Behandlungen/Prozeduren eines Patienten im Rahmen des Bestätigungsverfahrens der gematik.\n### Motivation\nDie Möglichkeit auf eine Übersicht der Prozeduren eines Patienten zuzugreifen, Patienten anhand durchgeführter oder geplanter Prozeduren zu suchen, oder zu prüfen, ob eine konkrete Prozedur bei einem Patienten durchgeführt wurde, sind wichtige Funktionen im klinischen Behandlungsablauf.\n\nIn FHIR werden Prozeduren mit der Procedure-Ressource repräsentiert.\n\nDa die Prozeduren in klinischen Primärsystemen, in der Regel, in OPS-codierter Form vorliegen, fordert ISiK in erster Linie diese Form des Austausches. Falls eine Prozedur zwar dokumentiert aber noch nicht codiert wurde (z.B. wenn die Kodierung erst nach der Entlassung erfolgt), ist alternativ eine Repräsentation als Freitext-Prozedur möglich.\n\n### Kompatibilität\nFür das Profil ISIKProzedur wird eine Kompatibilität mit folgenden Profilen angestrebt; allerdings kann nicht sichergestellt werden, dass Instanzen, die gegen ISIKProzedur valide sind, auch valide sind gegen:\n\n* [Profil Prozedur](https://www.medizininformatik-initiative.de/fhir/core/modul-prozedur/StructureDefinition/Procedure) der Medizininformatik Initiative \nHinweise zu Inkompatibilitäten können über die [Portalseite](https://service.gematik.de/servicedesk/customer/portal/16) gemeldet werden.",
"fhirVersion": "4.0.1",
"kind": "resource",
"abstract": false,
"type": "Procedure",
"baseDefinition": "http://hl7.org/fhir/StructureDefinition/Procedure",
"derivation": "constraint",
"element": [
{
"id": "Procedure",
"path": "Procedure",
{
"key": "proc-ISiK-1",
"severity": "error",
"human": "Falls die Prozedur per OPS kodiert wird, MUSS eine SNOMED-CT kodierte Category abgebildet werden",
"expression": "code.coding.where(system = 'http://fhir.de/CodeSystem/bfarm/ops').exists() implies category.coding.where(system = 'http://snomed.info/sct').exists()",
"source": "https://gematik.de/fhir/isik/StructureDefinition/ISiKProzedur"
},
{
"key": "proc-ISiK-2",
"severity": "error",
"human": "Falls eine codierte Prozedur vorliegt MUSS eine kodierte Category abgebildet werden",
"expression": "code.coding.exists() implies category.coding.exists()",
"source": "https://gematik.de/fhir/isik/StructureDefinition/ISiKProzedur"
}
]
},
{
"id": "Procedure.id",
"path": "Procedure.id",
"short": "serverseitige, interne ID des Datensatzes",
"comment": "**bedingtes Pflichtfeld/bedingtes MS:** Alle von einem Server bereitgestellten Ressourcen MÜSSEN über eine `id` verfügen.\n Von Clients erzeugte Ressourcen, die im Kontext einer CREATE-Interaktion übermittelt werden, MÜSSEN NICHT über eine `id`verfügen.",
"mustSupport": true
},
{
"id": "Procedure.meta.versionId",
"path": "Procedure.meta.versionId",
"short": "Eindeutiger Name der serverseitigen Version des Datensatzes",
"comment": "Alle von einem Server bereitgestellten Ressourcen SOLLEN über eine `versionID` verfügen.\n Von Clients erzeugte Ressourcen, die im Kontext einer CREATE-Interaktion übermittelt werden, MÜSSEN NICHT über eine `versionID`verfügen."
},
{
"id": "Procedure.meta.lastUpdated",
"path": "Procedure.meta.lastUpdated",
"short": "Zeitpunkt der letzten Änderung",
"comment": "Alle von einem Server bereitgestellten Ressourcen SOLLEN über ein `lastUpdate` verfügen.\n Von Clients erzeugte Ressourcen, die im Kontext einer CREATE-Interaktion übermittelt werden, MÜSSEN NICHT über ein `lastUpdate`verfügen."
},
{
"id": "Procedure.extension",
"path": "Procedure.extension",
"mustSupport": true
},
{
"id": "Procedure.extension:Dokumentationsdatum",
"path": "Procedure.extension",
"sliceName": "Dokumentationsdatum",
"short": "Dokumentationsdatum",
"comment": "Datum, an dem die Prozedur dokumentiert wurde. \n Es handelt sich hierbei um das fachliche Dokumentationsdatum, nicht zu verwechseln mit dem Datum der technischen Anlage des Datensatzes im Primärsystem. \n Diese beiden Daten *können* jedoch identisch sein.",
"min": 0,
"max": "1",
"type": [
{
"code": "Extension",
"profile": [
"http://fhir.de/StructureDefinition/ProzedurDokumentationsdatum"
]
}
],
"mustSupport": true
},
{
"id": "Procedure.status",
"path": "Procedure.status",
"short": "Status",
"comment": "Zeigt den aktuellen Status der Prozedur an. \n **WICHTIGER Hinweis für Implementierer: \n * Alle server-seitigen Implementierungen MÜSSEN in der Lage sein, \n die systemintern möglichen Statuswerte korrekt in FHIR abzubilden, mindestens jedoch die Werte `completed` und `unknown`.\n * Alle client-seitigen Implementierungen MÜSSEN in der Lage sein, sämtliche Status-Codes zu interpretieren und dem Anwender in angemessener Form darstellen zu können, \n beispielsweise durch Ausblenden/Durchstreichen von Prozeduren mit dem status `entered-in-error` und Ausgrauen von Prozeduren, die noch nicht stattgefunden haben, o.ä.",
"mustSupport": true
},
{
"id": "Procedure.category",
"path": "Procedure.category",
"short": "Kategorie",
"comment": "Die Kategorisierung erfolgt vorzugsweise auf Basis von SNOMED CT. Für OPS-codierte Prozeduren MUSS die Kategorie angegeben werden: Sie kann ermittelt werden, \n indem das erste Zeichen des OPS-Codes mit Hilfe einer [ConceptMap](http://fhir.de/ConceptMap/OPS-SNOMED-Category) auf die zutreffende SNOMED-Kategorie gemappt wird.\n \n **Begründung MS:** Die Kategorisierung dient der Verbesserung von Suche und Darstellung.",
"mustSupport": true
},
{
"id": "Procedure.category.coding",
"path": "Procedure.category.coding",
"slicing": {
{
"type": "pattern",
"path": "system"
}
],
"rules": "open"
}
},
{
"id": "Procedure.category.coding:SNOMED-CT",
"path": "Procedure.category.coding",
"sliceName": "SNOMED-CT",
"min": 0,
"max": "1",
"type": [
{
"code": "Coding",
"profile": [
"https://gematik.de/fhir/isik/StructureDefinition/ISiKSnomedCTCoding"
]
}
],
"mustSupport": true,
"binding": {
"strength": "preferred",
"valueSet": "https://gematik.de/fhir/isik/ValueSet/ProzedurenKategorieSCT"
}
},
{
"id": "Procedure.code",
"path": "Procedure.code",
"short": "Prozeduren-Code",
"comment": "Prozeduren SOLLEN mindestens entweder mit einem OPS-Code oder einem SNOMED-Code aus dem angegebenen ValueSet codiert werden. \n Ist keine Codierung möglich, MUSS statt dessen eine textuelle Beschreibung der Prozedur angegeben werden. \n **Begründung Pflichtfeld:** Ist *weder* eine Codierung *noch* eine textuelle Beschreibung vorhanden, besitzt diese Ressource keine medizinische Aussagefähigkeit.",
"min": 1,
{
"key": "sct-ops-1",
"severity": "error",
"human": "Falls die Prozedur kodiert vorliegt, SOLL mindestens ein OPS oder SNOMED-CT Code angegeben werden.",
"expression": "coding.exists() implies coding.where(system = 'http://snomed.info/sct').exists() or coding.where(system = 'http://fhir.de/CodeSystem/bfarm/ops').exists()",
"source": "https://gematik.de/fhir/isik/StructureDefinition/ISiKProzedur"
},
{
"key": "proc-ISiK-3",
"severity": "error",
"human": "Entweder MUSS eine kodierte Prozedur vorliegen oder eine textuelle Beschreibung. Stattdessen nur Extensions hinzuzufügen (vgl. https://www.hl7.org/fhir/element.html - ele-1), ist explizit nicht erlaubt.",
"expression": "coding.exists().not() implies text.exists()",
"source": "https://gematik.de/fhir/isik/StructureDefinition/ISiKProzedur"
}
],
"mustSupport": true
},
{
"id": "Procedure.code.coding",
"path": "Procedure.code.coding",
"slicing": {
{
"type": "pattern",
"path": "system"
}
],
"rules": "open"
},
"short": "Codierte Darstellung der Prozedur",
"mustSupport": true
},
{
"id": "Procedure.code.coding:OPS",
"path": "Procedure.code.coding",
"sliceName": "OPS",
"short": "OPS-codierte Darstellung der Prozedur",
"min": 0,
"max": "1",
"type": [
{
"code": "Coding",
"profile": [
"http://fhir.de/StructureDefinition/CodingOPS"
]
}
],
"mustSupport": true,
"binding": {
"strength": "required",
"valueSet": "http://fhir.de/ValueSet/bfarm/ops"
}
},
{
"id": "Procedure.code.coding:OPS.extension:Seitenlokalisation",
"path": "Procedure.code.coding.extension",
"sliceName": "Seitenlokalisation",
"short": "Seitenlokalisation",
"comment": "**Begründung MS:** Bei OPS-codierten Prozeduren an paarigen Organen oder Körperteilen müssen die Zusatzkennzeichen für die Seitigkeit (R, L oder B) angeben werden",
"mustSupport": true
},
{
"id": "Procedure.code.coding:OPS.system",
"path": "Procedure.code.coding.system",
"short": "Namensraum des Prozeduren-Codes",
"comment": "Hier ist stets der Wert `http://fhir.de/CodeSystem/bfarm/ops` anzugeben.",
"mustSupport": true
},
{
"id": "Procedure.code.coding:OPS.version",
"path": "Procedure.code.coding.version",
"short": "Die Jahresversion des OPS Kataloges. Angegeben wird immer die vierstellige Jahreszahl (z.B. `2017`)",
"comment": "**Begründung Pflichtfeld:** Bei Verwendung von OPS ist die Angabe der Version zwingend erforderlich. \n Hierdurch wird der Tatsache Rechnung getragen, dass jede der jährlich neu erscheinenden Fassung von OPS ein neues Codesystem darstellt.",
"mustSupport": true
},
{
"id": "Procedure.code.coding:OPS.code",
"path": "Procedure.code.coding.code",
"short": "OPS-Code",
"comment": "Hier ist der OPS-Code ohne jegliche Zusatzkennzeichen (z.B. Seitenlokalisation) oder Versionsnummern anzugeben.",
"mustSupport": true
},
{
"id": "Procedure.code.coding:SNOMED-CT",
"path": "Procedure.code.coding",
"sliceName": "SNOMED-CT",
"short": "SNOMED-codierte Darstellung der Prozedur",
"comment": "**Hintergrund und Begründung zum Must-Support:** Das BfArM hat ein 'Zielbild für eine semantische Strategie' (https://www.bfarm.de/DE/Kodiersysteme/Services/Terminologieserver/Semantik-Strategie/_node.html) verfasst, in dem die Nutzung von international gängigen Basis-Terminologien vorgestellt wird. Dort wird als grundlegende Position dargestellt, dass basierend auf einer Basisterminologie weitere Use Cases bedient werden sollen. Bei Prozeduren wäre das damit eine klinische Dokumentation mit SNOMED CT als internationalem Kodiersystem und einer Ableitung davon zum OPS. Dies ist insbesondere auch wichtig für den Datentransfer in den European Health Data Space, in dem der OPS keine Rolle spielen wird.",
"min": 0,
"max": "1",
"type": [
{
"code": "Coding",
"profile": [
"https://gematik.de/fhir/isik/StructureDefinition/ISiKSnomedCTCoding"
]
}
],
"mustSupport": true,
"binding": {
"strength": "required",
"valueSet": "https://gematik.de/fhir/isik/ValueSet/ProzedurenCodesSCT"
}
},
{
"id": "Procedure.code.text",
"path": "Procedure.code.text",
"short": "Freitextiche Beschreibung der Prozedur",
"comment": "Die freitextliche Beschreibung kann ergänzend oder anstelle einer codierten Angabe der Prozedur erfolgen.",
"mustSupport": true
},
{
"id": "Procedure.subject",
"path": "Procedure.subject",
"short": "Patientenbezug",
"comment": "**Begründung Must-Support:** Ein Patientenbezug der Prozedur MUSS stets zum Zwecke der Nachvollziehbarkeit und Datenintegrität vorliegen.",
"mustSupport": true
},
{
"id": "Procedure.subject.reference",
"path": "Procedure.subject.reference",
"short": "Patienten-Link",
"comment": "**Begründung MS:** Die Verlinkung auf eine Patienten-Ressource dient der technischen Zuordnung der Dokumentation zu einem Patienten und ermöglicht wichtige API-Funktionen wie verkettete Suche, (Reverse-)Include etc.\nIm ISik Kontext MUSS die referenzierte Ressource konform zu [ISiKPatient](https://gematik.de/fhir/isik/StructureDefinition/ISiKPatient) sein.\nJenseits von ISiK KÖNNEN weitere Instanzen mit anderen Profilen referenziert werden.",
"min": 1,
"mustSupport": true
},
{
"id": "Procedure.encounter",
"path": "Procedure.encounter",
"short": "Aufenthaltsbezug",
"comment": "**Begründung Must-Support:** Ein Aufenthaltsbezug der Prozedur MUSS stets zum Zwecke der Nachvollziehbarkeit und Datenintegrität vorliegen.",
"mustSupport": true
},
{
"id": "Procedure.encounter.reference",
"path": "Procedure.encounter.reference",
"short": "Encounter-Link",
"comment": "**Begründung Pflichtfeld:** Die Verlinkung auf eine Encounter-Ressource dient der technischen Zuordnung der Dokumentation zu einem Aufenthalt und ermöglicht wichtige API-Funktionen wie verkettete Suche, (Reverse-)Include etc.\nIm ISik Kontext MUSS die referenzierte Ressource konform zu [ISiKKontaktGesundheitseinrichtung](https://gematik.de/fhir/isik/StructureDefinition/ISiKKontaktGesundheitseinrichtung) sein.\nJenseits von ISiK KÖNNEN weitere Instanzen mit anderen Profilen referenziert werden.",
"min": 1,
"mustSupport": true
},
{
"id": "Procedure.performed[x]",
"path": "Procedure.performed[x]",
"short": "Durchführungsdatum oder -Zeitraum",
"comment": "Es muss mindestens entweder ein (partielles) Durchführungsdatum oder der Beginn des Durchführungszeitraumes angegeben werden.\n **Begründung Pflichtfeld:** Die zeitliche Einordnung einer Prozedur ist in vielen Fällen maßgeblich für deren medizinische Relevanz.",
"min": 1,
"type": [
{
"code": "dateTime"
},
{
"code": "Period"
}
],
"mustSupport": true
},
{
"id": "Procedure.note",
"path": "Procedure.note",
"short": "Notizen",
"comment": "Ergänzende Hinweise und Anmerkungen zur Prozedur",
"mustSupport": true
}
]
}
}

Constraints/Invarianten

NameSchweregradBeschreibungAusdruck
proc-ISiK-1errorFalls die Prozedur per OPS kodiert wird, MUSS eine SNOMED-CT kodierte Category abgebildet werdencode.coding.where(system = 'http://fhir.de/CodeSystem/bfarm/ops').exists() implies category.coding.where(system = 'http://snomed.info/sct').exists()
proc-ISiK-2errorFalls eine codierte Prozedur vorliegt MUSS eine kodierte Category abgebildet werdencode.coding.exists() implies category.coding.exists()
sct-ops-1errorFalls die Prozedur kodiert vorliegt, SOLL mindestens ein OPS oder SNOMED-CT Code angegeben werden.coding.exists() implies coding.where(system = 'http://snomed.info/sct').exists() or coding.where(system = 'http://fhir.de/CodeSystem/bfarm/ops').exists()
proc-ISiK-3errorEntweder MUSS eine kodierte Prozedur vorliegen oder eine textuelle Beschreibung. Stattdessen nur Extensions hinzuzufügen (vgl. https://www.hl7.org/fhir/element.html - ele-1), ist explizit nicht erlaubt.coding.exists().not() implies text.exists()
proc-ISiK-1errorFalls die Prozedur per OPS kodiert wird, MUSS eine SNOMED-CT kodierte Category abgebildet werdencode.coding.where(system = 'http://fhir.de/CodeSystem/bfarm/ops').exists() implies category.coding.where(system = 'http://snomed.info/sct').exists()
proc-ISiK-2errorFalls eine codierte Prozedur vorliegt MUSS eine kodierte Category abgebildet werdencode.coding.exists() implies category.coding.exists()
sct-ops-1errorFalls die Prozedur kodiert vorliegt, SOLL mindestens ein OPS oder SNOMED-CT Code angegeben werden.coding.exists() implies coding.where(system = 'http://snomed.info/sct').exists() or coding.where(system = 'http://fhir.de/CodeSystem/bfarm/ops').exists()
proc-ISiK-3errorEntweder MUSS eine kodierte Prozedur vorliegen oder eine textuelle Beschreibung. Stattdessen nur Extensions hinzuzufügen (vgl. https://www.hl7.org/fhir/element.html - ele-1), ist explizit nicht erlaubt.coding.exists().not() implies text.exists()

Terminology-Bindings

ElementStaerkeValueSet
Procedure.category.coding:SNOMED-CTpreferredhttps://gematik.de/fhir/isik/ValueSet/ProzedurenKategorieSCT
Procedure.code.coding:OPSrequiredhttp://fhir.de/ValueSet/bfarm/ops
Procedure.code.coding:SNOMED-CTrequiredhttps://gematik.de/fhir/isik/ValueSet/ProzedurenCodesSCT
Procedure.category.coding:SNOMED-CTpreferredhttps://gematik.de/fhir/isik/ValueSet/ProzedurenKategorieSCT
Procedure.code.coding:OPSrequiredhttp://fhir.de/ValueSet/bfarm/ops
Procedure.code.coding:SNOMED-CTrequiredhttps://gematik.de/fhir/isik/ValueSet/ProzedurenCodesSCT