diff --git a/ImplementationGuide/Implementierungsleitfaden_ISiKBasismodul.json b/ImplementationGuide/Implementierungsleitfaden_ISiKBasismodul.json index 2e323047..7a8e1ff4 100644 --- a/ImplementationGuide/Implementierungsleitfaden_ISiKBasismodul.json +++ b/ImplementationGuide/Implementierungsleitfaden_ISiKBasismodul.json @@ -272,6 +272,43 @@ } ] }, + { + "nameUrl": "ImplementationGuide/markdown/Datenobjekte/Datenobjekte_AllergieUnvertraeglichkeit.md", + "title": "Allergie/Unverträglichkeit (AllergyIntolerance)", + "generation": "markdown", + "page": [ + { + "nameUrl": "ImplementationGuide/markdown/AllergieUnvertraeglichkeit/AllergieUnvertraeglichkeit_Motivation.md", + "title": "Motivation", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/AllergieUnvertraeglichkeit/AllergieUnvertraeglichkeit_Kompatibilitaet.md", + "title": "Kompatibilität", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/AllergieUnvertraeglichkeit/AllergieUnvertraeglichkeit_Profil.md", + "title": "Profil", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/AllergieUnvertraeglichkeit/AllergieUnvertraeglichkeit_AnmerkungenZuDenMustSupportFeldern.md", + "title": "Anmerkungen zu den Must-Support Feldern", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/AllergieUnvertraeglichkeit/AllergieUnvertraeglichkeit_Interaktionen.md", + "title": "Interaktionen", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/AllergieUnvertraeglichkeit/AllergieUnvertraeglichkeit_Beispiele.md", + "title": "Beispiele", + "generation": "markdown" + } + ] + }, { "nameUrl": "ImplementationGuide/markdown/Datenobjekte/Datenobjekte_Prozedur.md", "title": "Prozedur (Procedure)", diff --git a/ImplementationGuide/markdown/AllergieUnvertraeglichkeit/AllergieUnvertraeglichkeit_AnmerkungenZuDenMustSupportFeldern.md b/ImplementationGuide/markdown/AllergieUnvertraeglichkeit/AllergieUnvertraeglichkeit_AnmerkungenZuDenMustSupportFeldern.md new file mode 100644 index 00000000..d3abf810 --- /dev/null +++ b/ImplementationGuide/markdown/AllergieUnvertraeglichkeit/AllergieUnvertraeglichkeit_AnmerkungenZuDenMustSupportFeldern.md @@ -0,0 +1,12 @@ +### Anmerkungen zu den Must-Support-Feldern + +@```from + StructureDefinition +where + url = 'https://gematik.de/fhir/isik/v4/Medikation/StructureDefinition/ISiKAllergieUnvertraeglichkeit' +for differential.element +where mustSupport = true + and short.exists() +select + Feldname: id, Kurzbeschreibung: short, Hinweise: comment +``` diff --git a/ImplementationGuide/markdown/AllergieUnvertraeglichkeit/AllergieUnvertraeglichkeit_Beispiele.md b/ImplementationGuide/markdown/AllergieUnvertraeglichkeit/AllergieUnvertraeglichkeit_Beispiele.md new file mode 100644 index 00000000..92b62207 --- /dev/null +++ b/ImplementationGuide/markdown/AllergieUnvertraeglichkeit/AllergieUnvertraeglichkeit_Beispiele.md @@ -0,0 +1,5 @@ +### Beispiel + +Valides Beispiel Allergie/Unverträglichkeit: + +{{json:ISiKAllergieUnvertraeglichkeitBeispiel1}} diff --git a/ImplementationGuide/markdown/AllergieUnvertraeglichkeit/AllergieUnvertraeglichkeit_Interaktionen.md b/ImplementationGuide/markdown/AllergieUnvertraeglichkeit/AllergieUnvertraeglichkeit_Interaktionen.md new file mode 100644 index 00000000..735ff56a --- /dev/null +++ b/ImplementationGuide/markdown/AllergieUnvertraeglichkeit/AllergieUnvertraeglichkeit_Interaktionen.md @@ -0,0 +1,71 @@ +### Interaktionen + +Für die Ressource AllergyIntolerance MUSS die REST-Interaktion "READ" implementiert werden. + +Folgende Suchparameter sind für das Bestätigungsverfahren relevant, auch in Kombination: + +1. Der Suchparameter "_id" MUSS unterstützt werden: + + Beispiele: + + ```GET [base]/AllergyIntolerance?_id=test``` + + Anwendungshinweise: Weitere Informationen zur Suche nach "_id" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Parameters for all resources"](https://hl7.org/fhir/R4/search.html#all). + +1. Der Suchparameter "clinical-status" MUSS unterstützt werden: + + Beispiele: + + ```GET [base]/AllergyIntolerance?clinical-status=active``` + + Anwendungshinweise: Weitere Informationen zur Suche nach "AllergyIntolerance.clinicalStatus" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Token Search"](https://hl7.org/fhir/R4/search.html#token). + + Dieser Suchparameter ist für die Umsetzung des IHE QEDm Profils verpflichtend. + +1. Der Suchparameter "patient" MUSS unterstützt werden: + + Beispiele: + + ```GET [base]/AllergyIntolerance?patient=Patient/123``` + + Anwendungshinweise: Weitere Informationen zur Suche nach "AllergyIntolerance.subject" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Reference Search"](https://www.hl7.org/fhir/R4/search.html#reference). + +1. Der Suchparameter "onset" MUSS unterstützt werden: + + Beispiele: + + ```GET [base]/AllergyIntolerance?onset=2015-01-01T12:00:23Z+02:00``` + + Anwendungshinweise: Weitere Informationen zur Suche nach "AllergyIntolerance.onset[x]" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Date Search"](https://hl7.org/fhir/R4/search.html#date). + +1. Der Suchparameter "date" MUSS unterstützt werden: + + Beispiele: + + ```GET [base]/AllergyIntolerance?date=2015-01-01T12:00:23Z+02:00``` + + Anwendungshinweise: Weitere Informationen zur Suche nach "AllergyIntolerance.recordedDate" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Date Search"](https://hl7.org/fhir/R4/search.html#date). + + +1. Der Suchparameter "_profile" KANN unterstützt werden: + + Beispiele: + + ```GET [base]/AllergyIntolerance?_profile=https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKAllergieUnvertraeglichkeit``` + + Anwendungshinweise: Weitere Informationen zur Suche nach "_profile" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Parameters for all resources"](https://hl7.org/fhir/R4/search.html#all). + +1. Der Suchparameter "category" KANN unterstützt werden: + + Beispiele: + + ```GET [base]/AllergyIntolerance?category=environment``` + +1. Der Suchparameter "type" KANN unterstützt werden: + + Beispiele: + + ```GET [base]/AllergyIntolerance?type=allergy``` + + +--- diff --git a/ImplementationGuide/markdown/AllergieUnvertraeglichkeit/AllergieUnvertraeglichkeit_Kompatibilitaet.md b/ImplementationGuide/markdown/AllergieUnvertraeglichkeit/AllergieUnvertraeglichkeit_Kompatibilitaet.md new file mode 100644 index 00000000..a6905a40 --- /dev/null +++ b/ImplementationGuide/markdown/AllergieUnvertraeglichkeit/AllergieUnvertraeglichkeit_Kompatibilitaet.md @@ -0,0 +1,10 @@ +### Kompatibilität + + +Für das Profil ISiKAllergieUnvertraeglichkeit wird eine Kompatibilität mit folgenden Profilen angestrebt; allerdings kann nicht sichergestellt werden, dass Instanzen, die gegen ISiKAllergieUnvertraeglichkeit valide sind, auch valide sind gegen: +* [das Profil KBV_PR_Base_AllergyIntolerance der KBV](https://fhir.kbv.de/StructureDefinition/KBV_PR_Base_AllergyIntolerance) +* [das Profil EMDAF_PR_AllergyIntolerance der GEVKO](https://fhir.gevko.de/StructureDefinition/EMDAF_PR_AllergyIntolerance) +* [das Profil AllergyIntolerance-uv-ips der International Patient Summary](http://hl7.org/fhir/uv/ips/StructureDefinition/AllergyIntolerance-uv-ips) + +Hinweise zu Inkompatibilitäten können über die [Portalseite](https://service.gematik.de/servicedesk/customer/portal/16) gemeldet werden. +--- diff --git a/ImplementationGuide/markdown/AllergieUnvertraeglichkeit/AllergieUnvertraeglichkeit_Motivation.md b/ImplementationGuide/markdown/AllergieUnvertraeglichkeit/AllergieUnvertraeglichkeit_Motivation.md new file mode 100644 index 00000000..6eed8e00 --- /dev/null +++ b/ImplementationGuide/markdown/AllergieUnvertraeglichkeit/AllergieUnvertraeglichkeit_Motivation.md @@ -0,0 +1,7 @@ +### Motivation + +Die Möglichkeit, auf eine Übersicht der Allergien und Unverträglichkeiten eines Patienten zuzugreifen, ist eine wichtige Funktionen im klinischen Behandlungsablauf. Dies gilt insbesondere, aber nicht ausschließlich, im Bereich der Arzneimitteltherapiesicherheit. + +In FHIR werden Allergien und Unverträglichkeiten mit der [AllergyIntolerance](https://hl7.org/fhir/R4/allergyintolerance.html)-Ressource repräsentiert. + +--- diff --git a/ImplementationGuide/markdown/AllergieUnvertraeglichkeit/AllergieUnvertraeglichkeit_Profil.md b/ImplementationGuide/markdown/AllergieUnvertraeglichkeit/AllergieUnvertraeglichkeit_Profil.md new file mode 100644 index 00000000..6f7c1de5 --- /dev/null +++ b/ImplementationGuide/markdown/AllergieUnvertraeglichkeit/AllergieUnvertraeglichkeit_Profil.md @@ -0,0 +1,27 @@ +### Profil + +@``` +from StructureDefinition where url = 'https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKAllergieUnvertraeglichkeit' select Name: name, Canonical: url +``` + +{{tree:https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKAllergieUnvertraeglichkeit, hybrid}} + +--- + +**Terminology Bindings** + +@``` +from StructureDefinition +where url in ('https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKAllergieUnvertraeglichkeit' ) +for differential.element +select +Path: path, +join binding.where(valueSet.exists()) +{ + Name: valueSet.substring((9 + valueSet.indexOf('ValueSet/'))), + Strength: strength, + URL: valueSet +} +``` + +--- diff --git a/ImplementationGuide/markdown/Datenobjekte/Datenobjekte_AllergieUnvertraeglichkeit.md b/ImplementationGuide/markdown/Datenobjekte/Datenobjekte_AllergieUnvertraeglichkeit.md new file mode 100644 index 00000000..a8d6d731 --- /dev/null +++ b/ImplementationGuide/markdown/Datenobjekte/Datenobjekte_AllergieUnvertraeglichkeit.md @@ -0,0 +1,3 @@ +## Allergie/Unverträglichkeit [(AllergyIntolerance)](https://hl7.org/fhir/R4/allergyintolerance.html) + +--- diff --git a/Resources/fsh-generated/resources/AllergyIntolerance-ISiKAllergieUnvertraeglichkeitBeispiel1.json b/Resources/fsh-generated/resources/AllergyIntolerance-ISiKAllergieUnvertraeglichkeitBeispiel1.json new file mode 100644 index 00000000..6a48a1e1 --- /dev/null +++ b/Resources/fsh-generated/resources/AllergyIntolerance-ISiKAllergieUnvertraeglichkeitBeispiel1.json @@ -0,0 +1,84 @@ +{ + "resourceType": "AllergyIntolerance", + "id": "ISiKAllergieUnvertraeglichkeitBeispiel1", + "meta": { + "profile": [ + "https://gematik.de/fhir/isik/Basismodul/StructureDefinition/ISiKAllergieUnvertraeglichkeit" + ] + }, + "clinicalStatus": { + "coding": [ + { + "code": "active", + "system": "http://terminology.hl7.org/CodeSystem/allergyintolerance-clinical" + } + ] + }, + "verificationStatus": { + "coding": [ + { + "code": "confirmed", + "system": "http://terminology.hl7.org/CodeSystem/allergyintolerance-verification" + } + ] + }, + "type": "allergy", + "category": [ + "environment" + ], + "criticality": "low", + "code": { + "coding": [ + { + "code": "256262001", + "system": "http://snomed.info/sct", + "display": "Betula pendula pollen" + } + ] + }, + "patient": { + "reference": "Patient/PatientinMusterfrau" + }, + "onsetDateTime": "1987", + "recordedDate": "2011-05-12", + "recorder": { + "display": "Dr. Martin Mustermann" + }, + "asserter": { + "display": "Dr. Berta Beispiel" + }, + "note": [ + { + "authorReference": { + "reference": "Practitioner/PractitionerWalterArzt" + }, + "time": "2024-02-20T14:34:12+01:00", + "text": "Patientin berichtet von einer leichten Verschlimmerung in den letzten 3 Jahren." + } + ], + "reaction": [ + { + "manifestation": [ + { + "coding": [ + { + "code": "162367006", + "system": "http://snomed.info/sct", + "display": "Sneezing symptom" + } + ] + } + ], + "severity": "moderate", + "exposureRoute": { + "coding": [ + { + "code": "14910006", + "system": "http://snomed.info/sct", + "display": "Inspiration" + } + ] + } + } + ] +} diff --git a/Resources/fsh-generated/resources/StructureDefinition-ISiKAllergieUnvertraeglichkeit.json b/Resources/fsh-generated/resources/StructureDefinition-ISiKAllergieUnvertraeglichkeit.json new file mode 100644 index 00000000..57a760e8 --- /dev/null +++ b/Resources/fsh-generated/resources/StructureDefinition-ISiKAllergieUnvertraeglichkeit.json @@ -0,0 +1,471 @@ +{ + "resourceType": "StructureDefinition", + "id": "ISiKAllergieUnvertraeglichkeit", + "url": "https://gematik.de/fhir/isik/Basismodul/StructureDefinition/ISiKAllergieUnvertraeglichkeit", + "version": "4.0.0-rc", + "name": "ISiKAllergieUnvertraeglichkeit", + "status": "draft", + "experimental": false, + "date": "2024-01-16", + "publisher": "gematik GmbH", + "description": "Diese Profil ermöglicht die Dokumentation von Allergien und Unverträglichkeiten in ISiK Szenarien.", + "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" + }, + { + "identity": "v2", + "uri": "http://hl7.org/v2", + "name": "HL7 v2 Mapping" + } + ], + "kind": "resource", + "abstract": false, + "type": "AllergyIntolerance", + "baseDefinition": "http://hl7.org/fhir/StructureDefinition/AllergyIntolerance", + "derivation": "constraint", + "differential": { + "element": [ + { + "id": "AllergyIntolerance.clinicalStatus", + "path": "AllergyIntolerance.clinicalStatus", + "short": "klinischer Status", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.clinicalStatus.coding", + "path": "AllergyIntolerance.clinicalStatus.coding", + "min": 1, + "max": "1", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.clinicalStatus.coding.system", + "path": "AllergyIntolerance.clinicalStatus.coding.system", + "min": 1, + "mustSupport": true + }, + { + "id": "AllergyIntolerance.clinicalStatus.coding.code", + "path": "AllergyIntolerance.clinicalStatus.coding.code", + "min": 1, + "mustSupport": true + }, + { + "id": "AllergyIntolerance.verificationStatus", + "path": "AllergyIntolerance.verificationStatus", + "short": "Verifikationsstatus", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.verificationStatus.coding", + "path": "AllergyIntolerance.verificationStatus.coding", + "min": 1, + "max": "1", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.verificationStatus.coding.system", + "path": "AllergyIntolerance.verificationStatus.coding.system", + "min": 1, + "mustSupport": true + }, + { + "id": "AllergyIntolerance.verificationStatus.coding.code", + "path": "AllergyIntolerance.verificationStatus.coding.code", + "min": 1, + "mustSupport": true + }, + { + "id": "AllergyIntolerance.type", + "path": "AllergyIntolerance.type", + "short": "Type (Allergie oder Unverträglichkeit)", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.category", + "path": "AllergyIntolerance.category", + "short": "Kategorie", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.criticality", + "path": "AllergyIntolerance.criticality", + "short": "Kritikalität", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.code", + "path": "AllergyIntolerance.code", + "short": "Benennung der Allergie/Unverträglichkeit", + "min": 1, + "mustSupport": true + }, + { + "id": "AllergyIntolerance.code.coding", + "path": "AllergyIntolerance.code.coding", + "slicing": { + "discriminator": [ + { + "type": "pattern", + "path": "$this" + } + ], + "rules": "open" + }, + "min": 1, + "mustSupport": true + }, + { + "id": "AllergyIntolerance.code.coding:snomed-ct", + "path": "AllergyIntolerance.code.coding", + "sliceName": "snomed-ct", + "min": 1, + "max": "1", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.code.coding:snomed-ct.system", + "path": "AllergyIntolerance.code.coding.system", + "fixedUri": "http://snomed.info/sct", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.code.coding:snomed-ct.code", + "path": "AllergyIntolerance.code.coding.code", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.code.coding:snomed-ct.display", + "path": "AllergyIntolerance.code.coding.display", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.code.coding:ask", + "path": "AllergyIntolerance.code.coding", + "sliceName": "ask", + "min": 0, + "max": "1", + "type": [ + { + "code": "Coding", + "profile": [ + "http://fhir.de/StructureDefinition/CodingASK" + ] + } + ], + "mustSupport": true + }, + { + "id": "AllergyIntolerance.code.coding:ask.system", + "path": "AllergyIntolerance.code.coding.system", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.code.coding:ask.code", + "path": "AllergyIntolerance.code.coding.code", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.code.coding:ask.display", + "path": "AllergyIntolerance.code.coding.display", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.code.coding:atc", + "path": "AllergyIntolerance.code.coding", + "sliceName": "atc", + "min": 0, + "max": "1", + "type": [ + { + "code": "Coding", + "profile": [ + "http://fhir.de/StructureDefinition/CodingATC" + ] + } + ], + "mustSupport": true + }, + { + "id": "AllergyIntolerance.code.coding:atc.system", + "path": "AllergyIntolerance.code.coding.system", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.code.coding:atc.version", + "path": "AllergyIntolerance.code.coding.version", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.code.coding:atc.code", + "path": "AllergyIntolerance.code.coding.code", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.code.coding:atc.display", + "path": "AllergyIntolerance.code.coding.display", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.code.text", + "path": "AllergyIntolerance.code.text", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.patient", + "path": "AllergyIntolerance.patient", + "short": "Patient (Referenz)", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.encounter", + "path": "AllergyIntolerance.encounter", + "short": "Aufenthalt, bei dem die Allergie/Unverträglichkeit festgestellt wurde (nicht notwendigerweise der aktuelle Aufenthalt!)", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.onset[x]", + "path": "AllergyIntolerance.onset[x]", + "slicing": { + "discriminator": [ + { + "type": "type", + "path": "$this" + } + ], + "ordered": false, + "rules": "open" + }, + "short": "Beginn-Zeitpunkt", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.onset[x]:onsetDateTime", + "path": "AllergyIntolerance.onset[x]", + "sliceName": "onsetDateTime", + "min": 0, + "max": "1", + "type": [ + { + "code": "dateTime" + } + ], + "mustSupport": true + }, + { + "id": "AllergyIntolerance.onset[x]:onsetAge", + "path": "AllergyIntolerance.onset[x]", + "sliceName": "onsetAge", + "min": 0, + "max": "1", + "type": [ + { + "code": "Age" + } + ], + "mustSupport": true + }, + { + "id": "AllergyIntolerance.onset[x]:onsetString", + "path": "AllergyIntolerance.onset[x]", + "sliceName": "onsetString", + "min": 0, + "max": "1", + "type": [ + { + "code": "string" + } + ], + "mustSupport": true + }, + { + "id": "AllergyIntolerance.recordedDate", + "path": "AllergyIntolerance.recordedDate", + "short": "", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.recorder", + "path": "AllergyIntolerance.recorder", + "short": "Person/Rolle, die die Information dokumentiert", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.recorder.reference", + "path": "AllergyIntolerance.recorder.reference", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.recorder.display", + "path": "AllergyIntolerance.recorder.display", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.asserter", + "path": "AllergyIntolerance.asserter", + "short": "Person/Rolle, die die Allergie/Unverträglichkeit festgestellt hat", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.asserter.reference", + "path": "AllergyIntolerance.asserter.reference", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.asserter.display", + "path": "AllergyIntolerance.asserter.display", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.note", + "path": "AllergyIntolerance.note", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.note.author[x]", + "path": "AllergyIntolerance.note.author[x]", + "type": [ + { + "code": "Reference", + "targetProfile": [ + "http://hl7.org/fhir/StructureDefinition/Practitioner", + "http://hl7.org/fhir/StructureDefinition/Patient", + "http://hl7.org/fhir/StructureDefinition/RelatedPerson", + "http://hl7.org/fhir/StructureDefinition/Organization" + ] + } + ], + "mustSupport": true + }, + { + "id": "AllergyIntolerance.note.author[x].reference", + "path": "AllergyIntolerance.note.author[x].reference", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.note.author[x].display", + "path": "AllergyIntolerance.note.author[x].display", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.note.time", + "path": "AllergyIntolerance.note.time", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.note.text", + "path": "AllergyIntolerance.note.text", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.reaction", + "path": "AllergyIntolerance.reaction", + "short": "Unerwünschte Reaktion", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.reaction.manifestation", + "path": "AllergyIntolerance.reaction.manifestation", + "short": "Manifestation der Reaktion", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.reaction.manifestation.coding", + "path": "AllergyIntolerance.reaction.manifestation.coding", + "slicing": { + "discriminator": [ + { + "type": "pattern", + "path": "$this" + } + ], + "rules": "open" + }, + "mustSupport": true + }, + { + "id": "AllergyIntolerance.reaction.manifestation.coding:snomed-ct", + "path": "AllergyIntolerance.reaction.manifestation.coding", + "sliceName": "snomed-ct", + "min": 0, + "max": "1", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.reaction.manifestation.coding:snomed-ct.system", + "path": "AllergyIntolerance.reaction.manifestation.coding.system", + "fixedUri": "http://snomed.info/sct", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.reaction.manifestation.coding:snomed-ct.code", + "path": "AllergyIntolerance.reaction.manifestation.coding.code", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.reaction.manifestation.text", + "path": "AllergyIntolerance.reaction.manifestation.text", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.reaction.severity", + "path": "AllergyIntolerance.reaction.severity", + "short": "Schweregrad der Reaktion", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.reaction.exposureRoute", + "path": "AllergyIntolerance.reaction.exposureRoute", + "short": "Expositionsweg", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.reaction.exposureRoute.coding", + "path": "AllergyIntolerance.reaction.exposureRoute.coding", + "slicing": { + "discriminator": [ + { + "type": "pattern", + "path": "$this" + } + ], + "rules": "open" + }, + "mustSupport": true + }, + { + "id": "AllergyIntolerance.reaction.exposureRoute.coding:snomed-ct", + "path": "AllergyIntolerance.reaction.exposureRoute.coding", + "sliceName": "snomed-ct", + "min": 0, + "max": "1", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.reaction.exposureRoute.coding:snomed-ct.system", + "path": "AllergyIntolerance.reaction.exposureRoute.coding.system", + "fixedUri": "http://snomed.info/sct", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.reaction.exposureRoute.coding:snomed-ct.code", + "path": "AllergyIntolerance.reaction.exposureRoute.coding.code", + "mustSupport": true + }, + { + "id": "AllergyIntolerance.reaction.exposureRoute.text", + "path": "AllergyIntolerance.reaction.exposureRoute.text", + "mustSupport": true + } + ] + } +} diff --git a/Resources/fsh-generated/resources/StructureDefinition-ISiKPatient.json b/Resources/fsh-generated/resources/StructureDefinition-ISiKPatient.json index 98d19396..91402422 100644 --- a/Resources/fsh-generated/resources/StructureDefinition-ISiKPatient.json +++ b/Resources/fsh-generated/resources/StructureDefinition-ISiKPatient.json @@ -284,12 +284,14 @@ "id": "Patient.name:Name.family.extension:nachname", "path": "Patient.name.family.extension", "sliceName": "nachname", + "max": "1", "mustSupport": true }, { "id": "Patient.name:Name.family.extension:vorsatzwort", "path": "Patient.name.family.extension", "sliceName": "vorsatzwort", + "max": "1", "mustSupport": true }, { @@ -356,12 +358,14 @@ "id": "Patient.name:Geburtsname.family.extension:nachname", "path": "Patient.name.family.extension", "sliceName": "nachname", + "max": "1", "mustSupport": true }, { "id": "Patient.name:Geburtsname.family.extension:vorsatzwort", "path": "Patient.name.family.extension", "sliceName": "vorsatzwort", + "max": "1", "mustSupport": true }, { diff --git a/Resources/input/fsh/ISiKAllergieUnvertraeglichkeit.fsh b/Resources/input/fsh/ISiKAllergieUnvertraeglichkeit.fsh new file mode 100644 index 00000000..066ead2d --- /dev/null +++ b/Resources/input/fsh/ISiKAllergieUnvertraeglichkeit.fsh @@ -0,0 +1,128 @@ +Profile: ISiKAllergieUnvertraeglichkeit +Parent: AllergyIntolerance +Id: ISiKAllergieUnvertraeglichkeit +Description: "Diese Profil ermöglicht die Dokumentation von Allergien und Unverträglichkeiten in ISiK Szenarien." +* insert Meta +* clinicalStatus MS + * ^short = "klinischer Status" + * coding 1..1 MS + * system 1..1 MS + * code 1..1 MS +* verificationStatus MS + * ^short = "Verifikationsstatus" + * coding 1..1 MS + * system 1..1 MS + * code 1..1 MS +* type MS + * ^short = "Type (Allergie oder Unverträglichkeit)" +* category MS + * ^short = "Kategorie" +* criticality MS + * ^short = "Kritikalität" +* code 1.. MS + * ^short = "Benennung der Allergie/Unverträglichkeit" + * coding MS + * ^slicing.discriminator.type = #pattern + * ^slicing.discriminator.path = "$this" + * ^slicing.rules = #open + * coding contains + snomed-ct 1..1 MS and + ask 0..1 MS and + atc 0..1 MS + * coding[snomed-ct] MS + * system MS + * system = "http://snomed.info/sct" (exactly) + * code MS + * display MS + * coding[ask] MS + * coding[ask] only CodingASK + * system MS + * code MS + * display MS + * coding[atc] MS + * coding[atc] only CodingATC + * system MS + * version MS + * code MS + * display MS + * text MS +* patient MS + * ^short = "Patient (Referenz)" +* encounter MS + * ^short = "Aufenthalt, bei dem die Allergie/Unverträglichkeit festgestellt wurde (nicht notwendigerweise der aktuelle Aufenthalt!)" +* onset[x] MS + * ^short = "Beginn-Zeitpunkt" +* onsetDateTime MS +* onsetAge MS +* onsetString MS +* recordedDate MS + * ^short = "" +* recorder MS + * ^short = "Person/Rolle, die die Information dokumentiert" + * reference MS + * display MS +* asserter MS + * ^short = "Person/Rolle, die die Allergie/Unverträglichkeit festgestellt hat" + * reference MS + * display MS +* note MS + * author[x] MS + * author[x] only Reference + * authorReference MS + * reference MS + * display MS + * time MS + * text MS +* reaction MS + * ^short = "Unerwünschte Reaktion" + * manifestation MS + * ^short = "Manifestation der Reaktion" + * coding MS + * ^slicing.discriminator.type = #pattern + * ^slicing.discriminator.path = "$this" + * ^slicing.rules = #open + * coding contains + snomed-ct 0..1 MS + * coding[snomed-ct] MS + * system MS + * system = "http://snomed.info/sct" (exactly) + * code MS + * text MS + * severity MS + * ^short = "Schweregrad der Reaktion" + * exposureRoute MS + * ^short = "Expositionsweg" + * coding MS + * ^slicing.discriminator.type = #pattern + * ^slicing.discriminator.path = "$this" + * ^slicing.rules = #open + * coding contains + snomed-ct 0..1 MS + * coding[snomed-ct] MS + * system MS + * system = "http://snomed.info/sct" (exactly) + * code MS + * text MS + +Instance: ISiKAllergieUnvertraeglichkeitBeispiel1 +InstanceOf: ISiKAllergieUnvertraeglichkeit +Usage: #example +* clinicalStatus = $vsAllergyIntoleranceClinicalStatus#active +* verificationStatus = $vsAllergyIntoleranceVerificationStatus#confirmed +* type = #allergy +* category = #environment +* criticality = #low +* code = $sct#256262001 "Betula pendula pollen" +* patient = Reference(PatientinMusterfrau) +* onsetDateTime = "1987" +* recordedDate = 2011-05-12 +* recorder.display = "Dr. Martin Mustermann" +* asserter.display = "Dr. Berta Beispiel" +* note + * authorReference = Reference(PractitionerWalterArzt) + * time = 2024-02-20T14:34:12+01:00 + * text = "Patientin berichtet von einer leichten Verschlimmerung in den letzten 3 Jahren." +* reaction + * manifestation = $sct#162367006 "Sneezing symptom" + * severity = #moderate + * exposureRoute = $sct#14910006 "Inspiration" diff --git a/Resources/input/fsh/aliases.fsh b/Resources/input/fsh/aliases.fsh index 1e6d55f3..84142538 100644 --- a/Resources/input/fsh/aliases.fsh +++ b/Resources/input/fsh/aliases.fsh @@ -35,4 +35,6 @@ Alias: $KBV_VS_Base_Practitioner_Speciality = https://fhir.kbv.de/ValueSet/KBV_V Alias: $ProzedurenCodesSCT = https://gematik.de/fhir/isik/v3/Basismodul/ValueSet/ProzedurenCodesSCT Alias: $capabilitystatement-expectation = http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation Alias: $kvid10 = http://fhir.de/sid/gkv/kvid-10 -Alias: $kvnr30 = http://fhir.de/sid/gkv/kvnr-30 \ No newline at end of file +Alias: $kvnr30 = http://fhir.de/sid/gkv/kvnr-30 +Alias: $vsAllergyIntoleranceClinicalStatus = http://terminology.hl7.org/CodeSystem/allergyintolerance-clinical +Alias: $vsAllergyIntoleranceVerificationStatus = http://terminology.hl7.org/CodeSystem/allergyintolerance-verification