diff --git a/ImplementationGuide/markdown/Standort/Standort_Motivation.md b/ImplementationGuide/markdown/Standort/Standort_Motivation.md index 3c542f7a..f135298c 100644 --- a/ImplementationGuide/markdown/Standort/Standort_Motivation.md +++ b/ImplementationGuide/markdown/Standort/Standort_Motivation.md @@ -1,15 +1,14 @@ ### Motivation - -Die Abbildung von Standorten in einem Krankenhaus unterstützt die Raum- und Bettenbelegung in strukturierter Form. - In FHIR wird die Organisation (Organization) vom Standort (Location) eindeutig abgegrenzt. +Die Abbildung von Standorten in einem Krankenhaus unterstützt u.a. die Raum- und Bettenbelegung in strukturierter Form. + Die Erfassung des Standortes in strukturierter Form ermöglicht u.a.: - Zuweisungen von Diensten an bestimmte Standorte im Rahmen des Terminmanagements - Die Raum- und Betten-Belegung in strukturierter Form (interdisziplinär) -- Im Rahmen der Versorgung lann eine der folgenden Beispiel-Fragen beantworten werden : +- Im Rahmen der Versorgung kann eine der folgenden Beispiel-Fragen beantworten werden : - Handelt es sich um ein Isolationszimmer? - - Gibt es bestimmte Ausstattung, z.B. Beatmungsgeräte - - etc. + - Gibt es bestimmte Ausstattung, z.B. Beatmungsgeräte etc. + --- \ No newline at end of file diff --git a/Material/Anforderungssteckbrief-Organisation.md b/Material/Anforderungssteckbrief-Organisation.md index f5b1fa04..2039c7e7 100644 --- a/Material/Anforderungssteckbrief-Organisation.md +++ b/Material/Anforderungssteckbrief-Organisation.md @@ -4,7 +4,7 @@ Es wurden Bedarfe nach Abbildung sowohl der KH-Aufbauorganisation (FHIR Ressourc Folgende Bedarfe, Anforderungen und Use Cases finden im Rahmen der Ausbaustufe 4 von ISIK zwecks Festlegung im Implementierungsleitfaden und in Profilen Beachtung: 3 1. Die (Raum- und Betten-)Belegung (interdisziplinär) sollte strukturiert erfolgen können. - - Frage: Wir gehen davon aus, dass die Raum- und Bettenbelegung Bestandteil der Funktionalität eines KIS ist. Was wären Use-Cases um diese Information über eine Schnittstelle zu kommunizieren? + - Frage - grundsätzlich: Wir gehen davon aus, dass die Raum- und Bettenbelegung Bestandteil der Funktionalität eines KIS ist. Was wären Use-Cases um diese Information über eine Schnittstelle zu kommunizieren? 1. Im Rahmen des Terminmanagements sollten Zuweisungen von Diensten an bestimmte Bereiche der Aufbauorganisation (Fachbereiche etc.) und an bestimmte Standorte möglich sein. - Fragen: Welche Granularität an Standorten ist hier sinnvoll? Reichen z.B. als Standort-Typen: Klinik, Station, Raum? 1. Im Rahmen der Versorgung sollte eine der folgenden Beispiel-Fragen beantworten werden können: @@ -19,6 +19,16 @@ Folgende Bedarfe, Anforderungen und Use Cases finden im Rahmen der Ausbaustufe 4 1. Profil IOrganisation sollte sich möglichst an das entsprechende Profil der KBV orientieren. - siehe insbesondere .identifier +Als Standorte für ISiK werden momentan in Betracht gezogen (WIP): +- Station +- Raum +- Bett + +Zu bedenken: +- Gebäude (z.B. verschiedene Gebäude im Pavillonsystem; ggf. auch Krankensäle im Kammsystem) + - ggf. abzugrenzen von Klinik? +- Campus (vgl. Charité mit Campus 1) Mitte , 2) Virchow und 3) Benjamin Franklin) + **Weitere Fragen - offen** 1. Soll ein Profil zur Organisation auch ein Krankenhaus als ganzes abbilden können? - Gegenargument: Der Vorteil in der Abbildung einer Organization-Ressource darin, dass man die Hierarchie von Abteilungen, Kliniken, etc. abbilden kann (per Organization.partOf). Falls es nur darum geht die Zuständigkeit zu anmontieren, könnte dies auch "inline" per Display-Value (Name der Organization) und Identifier (z.B. IKNR der Organization) erfolgen. diff --git a/Resources/fsh-generated/fsh-index.json b/Resources/fsh-generated/fsh-index.json index d2bab607..fad35d4e 100644 --- a/Resources/fsh-generated/fsh-index.json +++ b/Resources/fsh-generated/fsh-index.json @@ -156,16 +156,16 @@ "fshName": "BettStandortBeispiel", "fshType": "Instance", "fshFile": "ISiKStandort.fsh", - "startLine": 24, - "endLine": 29 + "startLine": 47, + "endLine": 51 }, { "outputFile": "Location-RaumStandortBeispiel.json", "fshName": "RaumStandortBeispiel", "fshType": "Instance", "fshFile": "ISiKStandort.fsh", - "startLine": 17, - "endLine": 21 + "startLine": 41, + "endLine": 45 }, { "outputFile": "Organization-AbteilungAllgemeinchirurgieOrganisationBeispiel.json", @@ -341,7 +341,23 @@ "fshType": "Profile", "fshFile": "ISiKStandort.fsh", "startLine": 1, - "endLine": 14 + "endLine": 20 + }, + { + "outputFile": "StructureDefinition-ISiKStandortBett.json", + "fshName": "ISiKStandortBett", + "fshType": "Profile", + "fshFile": "ISiKStandort.fsh", + "startLine": 31, + "endLine": 38 + }, + { + "outputFile": "StructureDefinition-ISiKStandortRaum.json", + "fshName": "ISiKStandortRaum", + "fshType": "Profile", + "fshFile": "ISiKStandort.fsh", + "startLine": 23, + "endLine": 29 }, { "outputFile": "StructureDefinition-ISiKValueSet.json", diff --git a/Resources/fsh-generated/fsh-index.txt b/Resources/fsh-generated/fsh-index.txt index 982f9585..b186b16d 100644 --- a/Resources/fsh-generated/fsh-index.txt +++ b/Resources/fsh-generated/fsh-index.txt @@ -18,8 +18,8 @@ Coverage-CoverageGesetzlich.json CoverageGeset Coverage-CoveragePrivat.json CoveragePrivat Instance ISiKVersicherungsverhaeltnisSelbstzahler.fsh 16 - 22 Encounter-Fachabteilungskontakt.json Fachabteilungskontakt Instance ISiKKontaktGesundheitseinrichtung.fsh 133 - 170 Encounter-FachabteilungskontaktMinimal.json FachabteilungskontaktMinimal Instance ISiKBerichtBundle.fsh 55 - 68 -Location-BettStandortBeispiel.json BettStandortBeispiel Instance ISiKStandort.fsh 24 - 29 -Location-RaumStandortBeispiel.json RaumStandortBeispiel Instance ISiKStandort.fsh 17 - 21 +Location-BettStandortBeispiel.json BettStandortBeispiel Instance ISiKStandort.fsh 47 - 51 +Location-RaumStandortBeispiel.json RaumStandortBeispiel Instance ISiKStandort.fsh 41 - 45 Organization-AbteilungAllgemeinchirurgieOrganisationBeispiel.json AbteilungAllgemeinchirurgieOrganisationBeispiel Instance ISiKOrganisation.fsh 148 - 156 Patient-PatientinMusterfrau.json PatientinMusterfrau Instance ISiKPatient.fsh 108 - 158 Patient-PatientinMusterfrauMinimal.json PatientinMusterfrauMinimal Instance ISiKBerichtBundle.fsh 41 - 53 @@ -41,7 +41,9 @@ StructureDefinition-ISiKOrganisationFachabteilung.json ISiKOrganisat StructureDefinition-ISiKPatient.json ISiKPatient Profile ISiKPatient.fsh 1 - 106 StructureDefinition-ISiKPersonImGesundheitsberuf.json ISiKPersonImGesundheitsberuf Profile ISiKPersonImGesundheitsberuf.fsh 1 - 90 StructureDefinition-ISiKProzedur.json ISiKProzedur Profile ISiKProzedur.fsh 1 - 50 -StructureDefinition-ISiKStandort.json ISiKStandort Profile ISiKStandort.fsh 1 - 14 +StructureDefinition-ISiKStandort.json ISiKStandort Profile ISiKStandort.fsh 1 - 20 +StructureDefinition-ISiKStandortBett.json ISiKStandortBett Profile ISiKStandort.fsh 31 - 38 +StructureDefinition-ISiKStandortRaum.json ISiKStandortRaum Profile ISiKStandort.fsh 23 - 29 StructureDefinition-ISiKValueSet.json ISiKValueSet Profile ISiKValueSet.fsh 1 - 22 StructureDefinition-ISiKVersicherungsverhaeltnisGesetzlich.json ISiKVersicherungsverhaeltnisGesetzlich Profile ISiKVersicherungsverhaeltnisGesetzlich.fsh 1 - 60 StructureDefinition-ISiKVersicherungsverhaeltnisSelbstzahler.json ISiKVersicherungsverhaeltnisSelbstzahler Profile ISiKVersicherungsverhaeltnisSelbstzahler.fsh 1 - 14 diff --git a/Resources/fsh-generated/resources/Location-BettStandortBeispiel.json b/Resources/fsh-generated/resources/Location-BettStandortBeispiel.json index e5ba835d..60934437 100644 --- a/Resources/fsh-generated/resources/Location-BettStandortBeispiel.json +++ b/Resources/fsh-generated/resources/Location-BettStandortBeispiel.json @@ -3,7 +3,7 @@ "id": "BettStandortBeispiel", "meta": { "profile": [ - "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKStandort" + "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKStandortBett" ] }, "physicalType": { diff --git a/Resources/fsh-generated/resources/StructureDefinition-ISiKOrganisation.json b/Resources/fsh-generated/resources/StructureDefinition-ISiKOrganisation.json index 0a5b7666..dd38eb2c 100644 --- a/Resources/fsh-generated/resources/StructureDefinition-ISiKOrganisation.json +++ b/Resources/fsh-generated/resources/StructureDefinition-ISiKOrganisation.json @@ -78,7 +78,7 @@ { "id": "Organization.identifier:IKNR.type", "path": "Organization.identifier.type", - "comment": "Motivation: Entsprechend der Vorgabe der KBV Organisation 1.5.0. (https://fhir.kbv.de/StructureDefinition/KBV_PR_Base_Organization), muss ein System ein Institutionskennzeichen (IKNR) verarbeiten können, sofern diese Information bereitgestellt wird. " + "comment": "Motivation: Entsprechend der Vorgabe der KBV Organisation 1.5.0. (https://fhir.kbv.de/StructureDefinition/KBV_PR_Base_Organization), muss ein System ein Institutionskennzeichen (IKNR) verarbeiten können, sofern diese Information verfügbar ist. " }, { "id": "Organization.identifier:BSNR", @@ -99,7 +99,7 @@ { "id": "Organization.identifier:BSNR.type", "path": "Organization.identifier.type", - "comment": "Motivation: Entsprechend der Bedarfsmeldung im Rahmen der Stakeholderbefragung zu einem Profil Organisation in der Arbeitsgruppe zum ISIK Basismodul Stufe 4 und der Vorgabe der KBV Organisation 1.5.0. (https://fhir.kbv.de/StructureDefinition/KBV_PR_Base_Organization), muss ein System eine Betriebsstättennummer (BSNR) verarbeiten können, sofern diese Information bereitgestellt wird." + "comment": "Motivation: Entsprechend der Bedarfsmeldung im Rahmen der Stakeholderbefragung zu einem Profil Organisation in der Arbeitsgruppe zum ISIK Basismodul Stufe 4 und der Vorgabe der KBV Organisation 1.5.0. (https://fhir.kbv.de/StructureDefinition/KBV_PR_Base_Organization), muss ein System eine Betriebsstättennummer (BSNR) verarbeiten können, sofern diese Information verfügbar ist." }, { "id": "Organization.identifier:OrganisationseinheitenID", @@ -125,7 +125,7 @@ { "id": "Organization.active", "path": "Organization.active", - "comment": "Motivation: Ein System oder eine Person muss prüfen können, ob eine Organisation aktiv ist oder nicht, sofern diese Information bereitgestellt wird.", + "comment": "Motivation: Ein System muss prüfen können, ob eine Organisation aktiv ist oder nicht, sofern diese Information verfügbar ist.", "mustSupport": true }, { @@ -141,7 +141,7 @@ "rules": "open", "ordered": false }, - "comment": "Motivation: Ein System oder eine Person muss den Typ einer Organisation abrufen können, sofern diese Information bereitgestellt wird. \r\n Die Festlegung einer endlichen Menge von Organisations-Formen in verbindlicher weise, ist zum Zeitpunkt der Festlegung nicht möglich.", + "comment": "Motivation: Ein System muss den Typ einer Organisation zum Abruf bereitstellen, sofern diese Information verfügbar ist. \r\n Die Festlegung einer endlichen Menge von Organisations-Formen in verbindlicher weise, ist zum Zeitpunkt der Festlegung nicht möglich.", "mustSupport": true }, { @@ -195,43 +195,43 @@ { "id": "Organization.name", "path": "Organization.name", - "comment": "Motivation: Ein System oder eine Person muss den Namen einer Organisation abrufen können, sofern diese Information bereitgestellt wird..", + "comment": "Motivation: Ein System muss den Namen einer Organisation zum Abruf bereitstellen, sofern diese Information verfügbar ist..", "mustSupport": true }, { "id": "Organization.alias", "path": "Organization.alias", - "comment": "Hinweis: unter Umstaänden können hier Kürzel genutzt werden. Motivation: Ein System oder eine Person muss den Alias einer Organisation abrufen können, sofern diese Information bereitgestellt wird.", + "comment": "Hinweis: unter Umstaänden können hier Kürzel genutzt werden. Motivation: Ein System muss den Alias einer Organisation zum Abruf bereitstellen, sofern diese Information verfügbar ist.", "mustSupport": true }, { "id": "Organization.telecom", "path": "Organization.telecom", - "comment": "Motivation: Ein System oder eine Person muss Kontaktinformation einer Organisation abrufen können, sofern diese Information bereitgestellt wird.", + "comment": "Motivation: Ein System muss Kontaktinformation einer Organisation zum Abruf bereitstellen, sofern diese Information verfügbar ist.", "mustSupport": true }, { "id": "Organization.address", "path": "Organization.address", - "comment": "Motivation: Ein System oder eine Person muss Adressinformationen einer Organisation abrufen können, sofern diese Information bereitgestellt wird.", + "comment": "Motivation: Ein System muss Adressinformationen einer Organisation zum Abruf bereitstellen, sofern diese Information verfügbar ist.", "mustSupport": true }, { "id": "Organization.partOf", "path": "Organization.partOf", - "comment": "Motivation: System oder eine Person muss die Hierarchie einer Organisationseinheit innherhalb einer Organisation abrufen können, sofern diese Information bereitgestellt wird.", + "comment": "Motivation: System muss die Hierarchie einer Organisationseinheit innherhalb einer Organisation zum Abruf bereitstellen, sofern diese Information verfügbar ist.", "mustSupport": true }, { "id": "Organization.contact", "path": "Organization.contact", - "comment": "Motivation: Ein System oder eine Person muss Kontaktinformation einer Organisation abrufen können, sofern diese Information bereitgestellt wird.", + "comment": "Motivation: Ein System muss Kontaktinformation einer Organisation zum Abruf bereitstellen, sofern diese Information verfügbar ist.", "mustSupport": true }, { "id": "Organization.endpoint", "path": "Organization.endpoint", - "comment": "Motivation: Ein System oder eine Person muss den technischen Endpunt einer Organisation abrufen können, sofern diese Information bereitgestellt wird.", + "comment": "Motivation: Ein System muss den technischen Endpunt einer Organisation zum Abruf bereitstellen, sofern diese Information verfügbar ist.", "mustSupport": true } ] diff --git a/Resources/fsh-generated/resources/StructureDefinition-ISiKOrganisationFachabteilung.json b/Resources/fsh-generated/resources/StructureDefinition-ISiKOrganisationFachabteilung.json index c6b40ec9..0d0ed011 100644 --- a/Resources/fsh-generated/resources/StructureDefinition-ISiKOrganisationFachabteilung.json +++ b/Resources/fsh-generated/resources/StructureDefinition-ISiKOrganisationFachabteilung.json @@ -78,7 +78,7 @@ { "id": "Organization.identifier:IKNR.type", "path": "Organization.identifier.type", - "comment": "Motivation: Entsprechend der Vorgabe der KBV Organisation 1.5.0. (https://fhir.kbv.de/StructureDefinition/KBV_PR_Base_Organization), muss ein System ein Institutionskennzeichen (IKNR) verarbeiten können, sofern diese Information bereitgestellt wird. " + "comment": "Motivation: Entsprechend der Vorgabe der KBV Organisation 1.5.0. (https://fhir.kbv.de/StructureDefinition/KBV_PR_Base_Organization), muss ein System ein Institutionskennzeichen (IKNR) verarbeiten können, sofern diese Information verfügbar ist. " }, { "id": "Organization.identifier:BSNR", @@ -99,7 +99,7 @@ { "id": "Organization.identifier:BSNR.type", "path": "Organization.identifier.type", - "comment": "Motivation: Entsprechend der Bedarfsmeldung im Rahmen der Stakeholderbefragung zu einem Profil Organisation in der Arbeitsgruppe zum ISIK Basismodul Stufe 4 und der Vorgabe der KBV Organisation 1.5.0. (https://fhir.kbv.de/StructureDefinition/KBV_PR_Base_Organization), muss ein System eine Betriebsstättennummer (BSNR) verarbeiten können, sofern diese Information bereitgestellt wird." + "comment": "Motivation: Entsprechend der Bedarfsmeldung im Rahmen der Stakeholderbefragung zu einem Profil Organisation in der Arbeitsgruppe zum ISIK Basismodul Stufe 4 und der Vorgabe der KBV Organisation 1.5.0. (https://fhir.kbv.de/StructureDefinition/KBV_PR_Base_Organization), muss ein System eine Betriebsstättennummer (BSNR) verarbeiten können, sofern diese Information verfügbar ist." }, { "id": "Organization.identifier:Abteilungsidentifikator", @@ -119,7 +119,7 @@ { "id": "Organization.active", "path": "Organization.active", - "comment": "Motivation: Ein System oder eine Person muss prüfen können, ob eine Fachabteilung als Organisation aktiv ist oder nicht, sofern diese Information bereitgestellt wird.", + "comment": "Motivation: Ein System muss prüfen können, ob eine Fachabteilung als Organisation aktiv ist oder nicht, sofern diese Information verfügbar ist.", "mustSupport": true }, { @@ -135,7 +135,7 @@ "rules": "open", "ordered": false }, - "comment": "Motivation: Ein System oder eine Person muss den Typ einer Organisation abrufen können, sofern diese Information bereitgestellt wird. \r\n Die Festlegung einer endlichen Menge von Organisations-Formen in verbindlicher weise, ist zum Zeitpunkt der Festlegung nicht möglich.", + "comment": "Motivation: Ein System muss den Typ einer Organisation zum Abruf bereitstellen, sofern diese Information verfügbar ist. \r\n Die Festlegung einer endlichen Menge von Organisations-Formen in verbindlicher weise, ist zum Zeitpunkt der Festlegung nicht möglich.", "min": 1, "mustSupport": true }, @@ -190,37 +190,37 @@ { "id": "Organization.alias", "path": "Organization.alias", - "comment": "Hinweis: unter Umstaänden können hier Kürzel genutzt werden. Motivation: Ein System oder eine Person muss den Alias einer Organisation abrufen können, sofern diese Information bereitgestellt wird.", + "comment": "Hinweis: unter Umstaänden können hier Kürzel genutzt werden. Motivation: Ein System muss den Alias einer Organisation zum Abruf bereitstellen, sofern diese Information verfügbar ist.", "mustSupport": true }, { "id": "Organization.telecom", "path": "Organization.telecom", - "comment": "Motivation: Ein System oder eine Person muss Kontaktinformation einer Organisation abrufen können, sofern diese Information bereitgestellt wird.", + "comment": "Motivation: Ein System muss Kontaktinformation einer Organisation zum Abruf bereitstellen, sofern diese Information verfügbar ist.", "mustSupport": true }, { "id": "Organization.address", "path": "Organization.address", - "comment": "Motivation: Ein System oder eine Person muss Adressinformationen einer Organisation abrufen können, sofern diese Information bereitgestellt wird.", + "comment": "Motivation: Ein System muss Adressinformationen einer Organisation zum Abruf bereitstellen, sofern diese Information verfügbar ist.", "mustSupport": true }, { "id": "Organization.partOf", "path": "Organization.partOf", - "comment": "Motivation: System oder eine Person muss die Hierarchie einer Organisationseinheit innherhalb einer Organisation abrufen können, sofern diese Information bereitgestellt wird.", + "comment": "Motivation: System muss die Hierarchie einer Organisationseinheit innherhalb einer Organisation zum Abruf bereitstellen, sofern diese Information verfügbar ist.", "mustSupport": true }, { "id": "Organization.contact", "path": "Organization.contact", - "comment": "Motivation: Ein System oder eine Person muss Kontaktinformation einer Organisation abrufen können, sofern diese Information bereitgestellt wird.", + "comment": "Motivation: Ein System muss Kontaktinformation einer Organisation zum Abruf bereitstellen, sofern diese Information verfügbar ist.", "mustSupport": true }, { "id": "Organization.endpoint", "path": "Organization.endpoint", - "comment": "Motivation: Ein System oder eine Person muss den technischen Endpunt einer Organisation abrufen können, sofern diese Information bereitgestellt wird.", + "comment": "Motivation: Ein System muss den technischen Endpunt einer Organisation zum Abruf bereitstellen, sofern diese Information verfügbar ist.", "mustSupport": true } ] diff --git a/Resources/fsh-generated/resources/StructureDefinition-ISiKStandort.json b/Resources/fsh-generated/resources/StructureDefinition-ISiKStandort.json index dbd50fb3..6d72e395 100644 --- a/Resources/fsh-generated/resources/StructureDefinition-ISiKStandort.json +++ b/Resources/fsh-generated/resources/StructureDefinition-ISiKStandort.json @@ -52,6 +52,12 @@ }, "mustSupport": true }, + { + "id": "Location.type", + "path": "Location.type", + "comment": "Motivation: Ein System muss den Typ eines Standorts zum Abruf bereitstellen, sofern diese Information verfügbar ist.", + "mustSupport": true + }, { "id": "Location.address", "path": "Location.address", @@ -64,6 +70,12 @@ "min": 1, "mustSupport": true }, + { + "id": "Location.position", + "path": "Location.position", + "comment": "Motivation: Ein System muss die Geodaten eines Standorts zum Abruf bereitstellen, sofern diese Information verfügbar ist.", + "mustSupport": true + }, { "id": "Location.managingOrganization", "path": "Location.managingOrganization", @@ -73,6 +85,12 @@ { "id": "Location.partOf", "path": "Location.partOf", + "comment": "Motivation: Ein System muss die organisationale Zugehörigkeit eines Standorts zum Abruf bereitstellen, sofern diese Information verfügbar ist.", + "mustSupport": true + }, + { + "id": "Location.hoursOfOperation", + "path": "Location.hoursOfOperation", "mustSupport": true } ] diff --git a/Resources/fsh-generated/resources/StructureDefinition-ISiKStandortBett.json b/Resources/fsh-generated/resources/StructureDefinition-ISiKStandortBett.json new file mode 100644 index 00000000..aa241970 --- /dev/null +++ b/Resources/fsh-generated/resources/StructureDefinition-ISiKStandortBett.json @@ -0,0 +1,53 @@ +{ + "resourceType": "StructureDefinition", + "id": "ISiKStandortBett", + "url": "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKStandortBett", + "name": "ISiKStandortBett", + "status": "draft", + "description": "Dieses Profil dient der strukturierten Erfassung von Betten (als Standorten) eines Krankenhauses", + "fhirVersion": "4.0.1", + "mapping": [ + { + "identity": "rim", + "uri": "http://hl7.org/v3", + "name": "RIM Mapping" + }, + { + "identity": "w5", + "uri": "http://hl7.org/fhir/fivews", + "name": "FiveWs Pattern Mapping" + } + ], + "kind": "resource", + "abstract": false, + "type": "Location", + "baseDefinition": "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKStandort", + "derivation": "constraint", + "differential": { + "element": [ + { + "id": "Location.operationalStatus", + "path": "Location.operationalStatus", + "comment": "Motivation: Entsprechend der Bedarfsmeldung im Rahmen der AG zur Ausbaustufe 4 muss ein System den Belegungsstatus eines Bettes zum Abruf bereitstellen, sofern diese Information verfügbar ist. Im Sinne der Interoperabilität ist das ValueSet verpflichtend.", + "mustSupport": true, + "binding": { + "strength": "required", + "valueSet": "http://terminology.hl7.org/CodeSystem/v2-0116" + } + }, + { + "id": "Location.physicalType", + "path": "Location.physicalType", + "patternCodeableConcept": { + "coding": [ + { + "code": "bd", + "system": "http://terminology.hl7.org/CodeSystem/location-physical-type", + "display": "Bed" + } + ] + } + } + ] + } +} diff --git a/Resources/fsh-generated/resources/StructureDefinition-ISiKStandortRaum.json b/Resources/fsh-generated/resources/StructureDefinition-ISiKStandortRaum.json new file mode 100644 index 00000000..4dc4ac84 --- /dev/null +++ b/Resources/fsh-generated/resources/StructureDefinition-ISiKStandortRaum.json @@ -0,0 +1,49 @@ +{ + "resourceType": "StructureDefinition", + "id": "ISiKStandortRaum", + "url": "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKStandortRaum", + "name": "ISiKStandortRaum", + "status": "draft", + "description": "Dieses Profil dient der strukturierten Erfassung von Räumen (als Standorten) eines Krankenhauses", + "fhirVersion": "4.0.1", + "mapping": [ + { + "identity": "rim", + "uri": "http://hl7.org/v3", + "name": "RIM Mapping" + }, + { + "identity": "w5", + "uri": "http://hl7.org/fhir/fivews", + "name": "FiveWs Pattern Mapping" + } + ], + "kind": "resource", + "abstract": false, + "type": "Location", + "baseDefinition": "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKStandort", + "derivation": "constraint", + "differential": { + "element": [ + { + "id": "Location.operationalStatus", + "path": "Location.operationalStatus", + "comment": "Motivation: Entsprechend der Bedarfsmeldung im Rahmen der AG zur Ausbaustufe 4 muss ein System den Belegungsstatus eines Raums zum Abruf bereitstellen, sofern diese Information verfügbar ist.", + "mustSupport": true + }, + { + "id": "Location.physicalType", + "path": "Location.physicalType", + "patternCodeableConcept": { + "coding": [ + { + "code": "ro", + "system": "http://terminology.hl7.org/CodeSystem/location-physical-type", + "display": "Room" + } + ] + } + } + ] + } +} diff --git a/Resources/input/fsh/ISiKOrganisation.fsh b/Resources/input/fsh/ISiKOrganisation.fsh index 2d1ae4ac..3e853889 100644 --- a/Resources/input/fsh/ISiKOrganisation.fsh +++ b/Resources/input/fsh/ISiKOrganisation.fsh @@ -18,10 +18,10 @@ Description: "Dieses Profil beschreibt die Organisationseinheit Fachabteilung in */ * identifier[IKNR] only $identifier-iknr * identifier[IKNR].type 0..1 - * ^comment = "Motivation: Entsprechend der Vorgabe der KBV Organisation 1.5.0. (https://fhir.kbv.de/StructureDefinition/KBV_PR_Base_Organization), muss ein System ein Institutionskennzeichen (IKNR) verarbeiten können, sofern diese Information bereitgestellt wird. " + * ^comment = "Motivation: Entsprechend der Vorgabe der KBV Organisation 1.5.0. (https://fhir.kbv.de/StructureDefinition/KBV_PR_Base_Organization), muss ein System ein Institutionskennzeichen (IKNR) verarbeiten können, sofern diese Information verfügbar ist. " * identifier[BSNR] only $identifier-bsnr * identifier[BSNR].type 0..1 - * ^comment = "Motivation: Entsprechend der Bedarfsmeldung im Rahmen der Stakeholderbefragung zu einem Profil Organisation in der Arbeitsgruppe zum ISIK Basismodul Stufe 4 und der Vorgabe der KBV Organisation 1.5.0. (https://fhir.kbv.de/StructureDefinition/KBV_PR_Base_Organization), muss ein System eine Betriebsstättennummer (BSNR) verarbeiten können, sofern diese Information bereitgestellt wird." + * ^comment = "Motivation: Entsprechend der Bedarfsmeldung im Rahmen der Stakeholderbefragung zu einem Profil Organisation in der Arbeitsgruppe zum ISIK Basismodul Stufe 4 und der Vorgabe der KBV Organisation 1.5.0. (https://fhir.kbv.de/StructureDefinition/KBV_PR_Base_Organization), muss ein System eine Betriebsstättennummer (BSNR) verarbeiten können, sofern diese Information verfügbar ist." * identifier[Abteilungsidentifikator].system 1.. MS * ^comment = "Motivation: Für IDs, die Krankhausintern spezifischen Fachabteilungen vergeben werden, ist diese Identifier zu nutzen - analog zu Slice Abteilungsidentifikator in https://simplifier.net/medizininformatikinitiative-modulstrukturdaten/mii_pr_struktur_abteilung." /* @@ -33,9 +33,9 @@ Description: "Dieses Profil beschreibt die Organisationseinheit Fachabteilung in * identifier[TIMAdresse].type = https://gematik.de/fhir/directory/CodeSystem/EndpointDirectoryConnectionType#tim */ * active MS - * ^comment = "Motivation: Ein System oder eine Person muss prüfen können, ob eine Fachabteilung als Organisation aktiv ist oder nicht, sofern diese Information bereitgestellt wird." + * ^comment = "Motivation: Ein System muss prüfen können, ob eine Fachabteilung als Organisation aktiv ist oder nicht, sofern diese Information verfügbar ist." * type MS - * ^comment = "Motivation: Ein System oder eine Person muss den Typ einer Organisation abrufen können, sofern diese Information bereitgestellt wird. + * ^comment = "Motivation: Ein System muss den Typ einer Organisation zum Abruf bereitstellen, sofern diese Information verfügbar ist. Die Festlegung einer endlichen Menge von Organisations-Formen in verbindlicher weise, ist zum Zeitpunkt der Festlegung nicht möglich." * type ^slicing.discriminator.type = #pattern * type ^slicing.discriminator.path = "$this" @@ -53,17 +53,17 @@ Description: "Dieses Profil beschreibt die Organisationseinheit Fachabteilung in * name MS * ^comment = "Motivation: Einer Organisation oder Organisationseinheit muss ein Name zugewiesen werden." * alias MS - * ^comment = "Hinweis: unter Umstaänden können hier Kürzel genutzt werden. Motivation: Ein System oder eine Person muss den Alias einer Organisation abrufen können, sofern diese Information bereitgestellt wird." + * ^comment = "Hinweis: unter Umstaänden können hier Kürzel genutzt werden. Motivation: Ein System muss den Alias einer Organisation zum Abruf bereitstellen, sofern diese Information verfügbar ist." * telecom MS - * ^comment = "Motivation: Ein System oder eine Person muss Kontaktinformation einer Organisation abrufen können, sofern diese Information bereitgestellt wird." + * ^comment = "Motivation: Ein System muss Kontaktinformation einer Organisation zum Abruf bereitstellen, sofern diese Information verfügbar ist." * address MS - * ^comment = "Motivation: Ein System oder eine Person muss Adressinformationen einer Organisation abrufen können, sofern diese Information bereitgestellt wird." + * ^comment = "Motivation: Ein System muss Adressinformationen einer Organisation zum Abruf bereitstellen, sofern diese Information verfügbar ist." * partOf MS - * ^comment = "Motivation: System oder eine Person muss die Hierarchie einer Organisationseinheit innherhalb einer Organisation abrufen können, sofern diese Information bereitgestellt wird." + * ^comment = "Motivation: System muss die Hierarchie einer Organisationseinheit innherhalb einer Organisation zum Abruf bereitstellen, sofern diese Information verfügbar ist." * contact MS - * ^comment = "Motivation: Ein System oder eine Person muss Kontaktinformation einer Organisation abrufen können, sofern diese Information bereitgestellt wird." + * ^comment = "Motivation: Ein System muss Kontaktinformation einer Organisation zum Abruf bereitstellen, sofern diese Information verfügbar ist." * endpoint MS - * ^comment = "Motivation: Ein System oder eine Person muss den technischen Endpunt einer Organisation abrufen können, sofern diese Information bereitgestellt wird." + * ^comment = "Motivation: Ein System muss den technischen Endpunt einer Organisation zum Abruf bereitstellen, sofern diese Information verfügbar ist." Profile: ISiKOrganisation @@ -86,10 +86,10 @@ Description: "Dieses Profil beschreibt die Nutzung von Organisationseinheiten in */ * identifier[IKNR] only $identifier-iknr * identifier[IKNR].type 0..1 - * ^comment = "Motivation: Entsprechend der Vorgabe der KBV Organisation 1.5.0. (https://fhir.kbv.de/StructureDefinition/KBV_PR_Base_Organization), muss ein System ein Institutionskennzeichen (IKNR) verarbeiten können, sofern diese Information bereitgestellt wird. " + * ^comment = "Motivation: Entsprechend der Vorgabe der KBV Organisation 1.5.0. (https://fhir.kbv.de/StructureDefinition/KBV_PR_Base_Organization), muss ein System ein Institutionskennzeichen (IKNR) verarbeiten können, sofern diese Information verfügbar ist. " * identifier[BSNR] only $identifier-bsnr * identifier[BSNR].type 0..1 - * ^comment = "Motivation: Entsprechend der Bedarfsmeldung im Rahmen der Stakeholderbefragung zu einem Profil Organisation in der Arbeitsgruppe zum ISIK Basismodul Stufe 4 und der Vorgabe der KBV Organisation 1.5.0. (https://fhir.kbv.de/StructureDefinition/KBV_PR_Base_Organization), muss ein System eine Betriebsstättennummer (BSNR) verarbeiten können, sofern diese Information bereitgestellt wird." + * ^comment = "Motivation: Entsprechend der Bedarfsmeldung im Rahmen der Stakeholderbefragung zu einem Profil Organisation in der Arbeitsgruppe zum ISIK Basismodul Stufe 4 und der Vorgabe der KBV Organisation 1.5.0. (https://fhir.kbv.de/StructureDefinition/KBV_PR_Base_Organization), muss ein System eine Betriebsstättennummer (BSNR) verarbeiten können, sofern diese Information verfügbar ist." * identifier[OrganisationseinheitenID].system 1.. MS * ^comment = "Motivation: Für IDs, die Krankhausintern spezifischen Organisationseinheiten wie Abteilungen oder Stationen vergeben werden, ist diese Identifier zu nutzen - analog zu Slice Abteilungsidentifikator in https://simplifier.net/medizininformatikinitiative-modulstrukturdaten/mii_pr_struktur_abteilung. Da auch Stationen im Identifier-System inkludiert werden könnten, sollte hier das Identifier generisch Organisationseinheiten abbilden und nicht Abteilungen allein." * identifier[OrganisationseinheitenID].value 1.. MS @@ -102,9 +102,9 @@ Description: "Dieses Profil beschreibt die Nutzung von Organisationseinheiten in * identifier[TIMAdresse].type = https://gematik.de/fhir/directory/CodeSystem/EndpointDirectoryConnectionType#tim */ * active MS - * ^comment = "Motivation: Ein System oder eine Person muss prüfen können, ob eine Organisation aktiv ist oder nicht, sofern diese Information bereitgestellt wird." + * ^comment = "Motivation: Ein System muss prüfen können, ob eine Organisation aktiv ist oder nicht, sofern diese Information verfügbar ist." * type MS - * ^comment = "Motivation: Ein System oder eine Person muss den Typ einer Organisation abrufen können, sofern diese Information bereitgestellt wird. + * ^comment = "Motivation: Ein System muss den Typ einer Organisation zum Abruf bereitstellen, sofern diese Information verfügbar ist. Die Festlegung einer endlichen Menge von Organisations-Formen in verbindlicher weise, ist zum Zeitpunkt der Festlegung nicht möglich." * type ^slicing.discriminator.type = #pattern * type ^slicing.discriminator.path = "$this" @@ -120,19 +120,19 @@ Description: "Dieses Profil beschreibt die Nutzung von Organisationseinheiten in * type[fachabteilungsschluessel].coding.system 1.. MS * type[fachabteilungsschluessel].coding.code 1.. MS * name MS - * ^comment = "Motivation: Ein System oder eine Person muss den Namen einer Organisation abrufen können, sofern diese Information bereitgestellt wird.." + * ^comment = "Motivation: Ein System muss den Namen einer Organisation zum Abruf bereitstellen, sofern diese Information verfügbar ist.." * alias MS - * ^comment = "Hinweis: unter Umstaänden können hier Kürzel genutzt werden. Motivation: Ein System oder eine Person muss den Alias einer Organisation abrufen können, sofern diese Information bereitgestellt wird." + * ^comment = "Hinweis: unter Umstaänden können hier Kürzel genutzt werden. Motivation: Ein System muss den Alias einer Organisation zum Abruf bereitstellen, sofern diese Information verfügbar ist." * telecom MS - * ^comment = "Motivation: Ein System oder eine Person muss Kontaktinformation einer Organisation abrufen können, sofern diese Information bereitgestellt wird." + * ^comment = "Motivation: Ein System muss Kontaktinformation einer Organisation zum Abruf bereitstellen, sofern diese Information verfügbar ist." * address MS - * ^comment = "Motivation: Ein System oder eine Person muss Adressinformationen einer Organisation abrufen können, sofern diese Information bereitgestellt wird." + * ^comment = "Motivation: Ein System muss Adressinformationen einer Organisation zum Abruf bereitstellen, sofern diese Information verfügbar ist." * partOf MS - * ^comment = "Motivation: System oder eine Person muss die Hierarchie einer Organisationseinheit innherhalb einer Organisation abrufen können, sofern diese Information bereitgestellt wird." + * ^comment = "Motivation: System muss die Hierarchie einer Organisationseinheit innherhalb einer Organisation zum Abruf bereitstellen, sofern diese Information verfügbar ist." * contact MS - * ^comment = "Motivation: Ein System oder eine Person muss Kontaktinformation einer Organisation abrufen können, sofern diese Information bereitgestellt wird." + * ^comment = "Motivation: Ein System muss Kontaktinformation einer Organisation zum Abruf bereitstellen, sofern diese Information verfügbar ist." * endpoint MS - * ^comment = "Motivation: Ein System oder eine Person muss den technischen Endpunt einer Organisation abrufen können, sofern diese Information bereitgestellt wird." + * ^comment = "Motivation: Ein System muss den technischen Endpunt einer Organisation zum Abruf bereitstellen, sofern diese Information verfügbar ist." /* Instance: KrankenhausOrganisationBeispiel diff --git a/Resources/input/fsh/ISiKStandort.fsh b/Resources/input/fsh/ISiKStandort.fsh index d6e26761..cab1069d 100644 --- a/Resources/input/fsh/ISiKStandort.fsh +++ b/Resources/input/fsh/ISiKStandort.fsh @@ -7,11 +7,35 @@ Description: "Dieses Profil dient der strukturierten Erfassung von Standortangab * name MS //Motivation: Kein Name zwingend notwendig (z.B. für ein Zimmer), wenn über .identifier identifizierbar; weicht daher ab von https://simplifier.net/medizininformatikinitiative-modulstrukturdaten/sd_mii_struktur_location * mode MS //Motivation: entspricht https://simplifier.net/medizininformatikinitiative-modulstrukturdaten/sd_mii_struktur_location * ^patternCodeableConcept.coding = $LocationMode#instance +* type MS + * ^comment = "Motivation: Ein System muss den Typ eines Standorts zum Abruf bereitstellen, sofern diese Information verfügbar ist." * address MS // TODO anpassen auf deutsche Adresse * physicalType 1..1 MS //Motivation: entspricht https://simplifier.net/medizininformatikinitiative-modulstrukturdaten/sd_mii_struktur_location * ^comment = "test" +* position MS + * ^comment = "Motivation: Ein System muss die Geodaten eines Standorts zum Abruf bereitstellen, sofern diese Information verfügbar ist." * managingOrganization 1..1 MS //Motivation: entspricht https://simplifier.net/medizininformatikinitiative-modulstrukturdaten/sd_mii_struktur_location * partOf MS + * ^comment = "Motivation: Ein System muss die organisationale Zugehörigkeit eines Standorts zum Abruf bereitstellen, sofern diese Information verfügbar ist." +* hoursOfOperation MS +// * ^comment = "Motivation: Ein System muss die Betriebszeiten eines Standorts zum Abruf bereitstellen, sofern diese Information verfügbar ist." + +Profile: ISiKStandortRaum +Parent: ISiKStandort +Id: ISiKStandortRaum +Description: "Dieses Profil dient der strukturierten Erfassung von Räumen (als Standorten) eines Krankenhauses" +* physicalType = $LocationPhysicalType#ro "Room" +* operationalStatus MS //TODO: hier ggf. ein dezidiertes VS notwendig für Raumbelegung + * ^comment = "Motivation: Entsprechend der Bedarfsmeldung im Rahmen der AG zur Ausbaustufe 4 muss ein System den Belegungsstatus eines Raums zum Abruf bereitstellen, sofern diese Information verfügbar ist." + +Profile: ISiKStandortBett +Parent: ISiKStandort +Id: ISiKStandortBett +Description: "Dieses Profil dient der strukturierten Erfassung von Betten (als Standorten) eines Krankenhauses" +* physicalType = $LocationPhysicalType#bd "Bed" +* operationalStatus MS +* operationalStatus from http://terminology.hl7.org/CodeSystem/v2-0116 (required) + * ^comment = "Motivation: Entsprechend der Bedarfsmeldung im Rahmen der AG zur Ausbaustufe 4 muss ein System den Belegungsstatus eines Bettes zum Abruf bereitstellen, sofern diese Information verfügbar ist. Im Sinne der Interoperabilität ist das ValueSet verpflichtend." Instance: RaumStandortBeispiel @@ -20,11 +44,9 @@ Usage: #example * physicalType = $LocationPhysicalType#ro "Room" * managingOrganization = Reference(AbteilungAllgemeinchirurgieOrganisationBeispiel) - Instance: BettStandortBeispiel -InstanceOf: ISiKStandort +InstanceOf: ISiKStandortBett Usage: #example -* physicalType = $LocationPhysicalType#bd "Bed" * managingOrganization = Reference(AbteilungAllgemeinchirurgieOrganisationBeispiel) * partOf = Reference(RaumStandortBeispiel)