diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile new file mode 100644 index 00000000..987fa188 --- /dev/null +++ b/.devcontainer/Dockerfile @@ -0,0 +1,59 @@ +FROM mcr.microsoft.com/devcontainers/base:alpine-3.18 + +# Setzen der Umgebungsvariablen +ENV FIRELY_TERMINAL_VERSION=3.1.0 +ENV JAVA_VALIDATOR_VERSION=6.0.11 +ENV SUSHI_VERSION=3.5.0 + +# Installieren der notwendige Tools +# Add Microsoft's .NET SDK repository and install .NET SDK +RUN wget https://dot.net/v1/dotnet-install.sh \ + && chmod +x dotnet-install.sh \ + && ./dotnet-install.sh --channel 6.0 --install-dir /usr/share/dotnet \ + && ln -s /usr/share/dotnet/dotnet /usr/local/bin \ + && rm dotnet-install.sh + +# Install ICU libraries +RUN apk add --no-cache icu-libs + +# Install Node.js and npm +RUN apk add --no-cache nodejs npm + +# Install Java (OpenJDK) +RUN apk add --no-cache openjdk11 + +# Install Firely Terminal as vscode user +# Switch to the vscode user +USER vscode + +# Install Firely Terminal +RUN dotnet tool install --global Firely.Terminal --version $FIRELY_TERMINAL_VERSION + +# Add .NET tools to PATH for vscode user +ENV PATH="/home/vscode/.dotnet/tools:${PATH}" + +# Switch back to root user to perform remaining installations +USER root + +RUN npm install -g fsh-sushi@$SUSHI_VERSION + +# Installieren der zusätzliche Abhängigkeiten +RUN apk update && apk add --no-cache jq findutils curl ca-certificates + +# Setup for FHIR Validator +RUN mkdir -p /home/vscode/.fhir/validators/ +RUN wget -q https://github.com/hapifhir/org.hl7.fhir.core/releases/download/$JAVA_VALIDATOR_VERSION/validator_cli.jar -O /home/vscode/.fhir/validators/validator_cli.jar + +# Set ownership +RUN mkdir -p /home/vscode/.fhir/packages && \ + chown -R vscode:vscode /home/vscode/.fhir/packages + +RUN mkdir -p /home/vscode/.fhir/settings/ +COPY codfsh-config.yaml /home/vscode/.fhir/settings/codfsh-config.yaml + +# Setzen des Arbeitsverzeichnis +WORKDIR /workspace + +COPY . /workspace + +CMD [ "/bin/bash" ] diff --git a/.devcontainer/codfsh-config.yaml b/.devcontainer/codfsh-config.yaml new file mode 100644 index 00000000..7b151129 --- /dev/null +++ b/.devcontainer/codfsh-config.yaml @@ -0,0 +1,9 @@ +sushi: + min_version: "3.5.0" +hapi: + min_version: "3.0.0" + parameters: + jurisdiction: DE + locale: de-DE + tx: "n/a" + debug: true diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json new file mode 100644 index 00000000..8072f952 --- /dev/null +++ b/.devcontainer/devcontainer.json @@ -0,0 +1,34 @@ +// For format details, see https://aka.ms/devcontainer.json. For config options, see the +// README at: https://github.com/devcontainers/templates/tree/main/src/alpine +{ + "name": "FHIR Development Container", + // Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile + "build": { + "dockerfile": "Dockerfile" + }, + "customizations": { + "vscode": { + "extensions": [ + "gematikde.codfsh", + "MITRE-Health.vscode-language-fsh", + "ms-azuretools.vscode-docker" + ], + "settings": { + "codfsh.HapiValidator.Executable": "/home/vscode/.fhir/validators/validator_cli.jar", + "codfsh.HapiValidator.Settings.SettingsFile": "/home/vscode/.fhir/settings/codfsh-config.yaml" + } + } + } + + // Features to add to the dev container. More info: https://containers.dev/features. + // "features": {}, + + // Use 'forwardPorts' to make a list of ports inside the container available locally. + // "forwardPorts": [], + + // Use 'postCreateCommand' to run commands after the container is created. + // "postCreateCommand": "uname -a", + + // Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root. + // "remoteUser": "root" +} diff --git a/.github/ISSUE_TEMPLATE/BUG-REPORT.yml b/.github/ISSUE_TEMPLATE/BUG-REPORT.yml new file mode 100644 index 00000000..b06dde60 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/BUG-REPORT.yml @@ -0,0 +1,76 @@ +name: "🐛 Bug Report" +description: Create a new ticket for a bug. +title: "🐛 [BUG] - " +labels: [ + "bug", + "invalid" +] +body: + - type: textarea + id: description + attributes: + label: "Description" + description: Please enter an explicit description of the issue. + placeholder: | + Short and explicit description of the incident... + If you are able to specify, please also select the appropriate label: + - Bug, if something is technically not working, e.g. not compiling. + - Invalid, if something is technically working but does not seem to yield to correct outcome, e.g. 1+1 is 3. + validations: + required: true + - type: input + id: reprod-url + attributes: + label: "Reproduction URL" + description: Please enter the corresponding Simplifier URL (or other, e.g. GitHub) to provide a source for reproduction of the issue. + placeholder: ex. https://simplifier.net/REPO-NAME/RESOURCE-NAME + validations: + required: true + - type: input + id: version + attributes: + label: "Version or Branch" + description: If this bug occures only in a specific version or development branch, please tell us here. + placeholder: ex. Only occurs with ISiK 2.0.4. + validations: + required: false + - type: textarea + id: reprod + attributes: + label: "Reproduction Steps" + description: Please enter a step by step description of the issue. + value: | + + 1. At the interface '....' + 2. With Data '....' + 3. Execute Operation '....' + 4. See error + render: bash + validations: + required: true + - type: textarea + id: logs + attributes: + label: "Stack Trace and Logs" + description: Please copy and paste any relevant stack trace or log output. This will be automatically formatted into code. + render: bash + validations: + required: false + - type: textarea + id: screenshot + attributes: + label: "Screenshots" + description: If applicable, add screenshots to help explain your problem. + value: | + ![DESCRIPTION](LINK.png) + render: bash + validations: + required: false + - type: textarea + id: environment + attributes: + label: "Software and Environment" + description: Please describe the used software and your environment further. + placeholder: ex. I Use dotnet sdk 4.x and Firely Terminal to manage fhir packages + validations: + required: false \ No newline at end of file diff --git a/.github/ISSUE_TEMPLATE/FEATURE-REQUEST.yml b/.github/ISSUE_TEMPLATE/FEATURE-REQUEST.yml new file mode 100644 index 00000000..77974bbb --- /dev/null +++ b/.github/ISSUE_TEMPLATE/FEATURE-REQUEST.yml @@ -0,0 +1,72 @@ +name: "💡 Feature Request" +description: Create a new ticket for a new feature request +title: "💡 [REQUEST] - <title>" +labels: [ + "question", + "enhancement" +] +body: + - type: input + id: target_date + attributes: + label: "Target Date" + description: When would you need this feature to be available? + placeholder: "MM YYYY" + validations: + required: false + - type: input + id: implementation_pr + attributes: + label: "Implementation PR" + description: In case you already developed the feature yourself, please tell us the corresponding PR. Also, maybe you have seen this feature somewhere else? + placeholder: "Your Pull Request ID or link to a similar PR." + validations: + required: false + - type: textarea + id: reference_issues + attributes: + label: "Reference Issues" + description: Some common issues this feature would address. + placeholder: "Issues IDs and references" + validations: + required: false + - type: textarea + id: summary + attributes: + label: "Summary" + description: Please provide a brief explanation of the feature. + placeholder: | + Describe in a few lines your feature request ... + If you are able to specify, please also select the appropriate label: + - Question, if you would also be fine with more information, on how to address your request, e.g. with a workaround. + - Enhancement, if you are kinda sure your Request is an independent new addition, that could not be achieved otherwise. + validations: + required: true + - type: textarea + id: basic_example + attributes: + label: "Common Examples" + description: Indicate some basic examples of your feature or a common flow in which it would be used. + placeholder: | + In the use case of '...' + The necessary data will flow like '....' + Feature will be used '....' + With the result of '....' + validations: + required: true + - type: textarea + id: drawbacks + attributes: + label: "Drawbacks" + description: What are the drawbacks or mutual impacts of your feature request? + placeholder: Identify the drawbacks and mutual impacts with respect to other features. + validations: + required: true + - type: textarea + id: unadress_question + attributes: + label: "Unadressed questions" + description: What issues or questions still remain unadressed? + placeholder: Identify any unresolved issues or questions. + validations: + required: false \ No newline at end of file diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 00000000..ec4bb386 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1 @@ +blank_issues_enabled: false \ No newline at end of file diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 00000000..7753d413 --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,11 @@ +Please go the the `Preview` tab and select the appropriate sub-template: + +[**Contributor PR**](?expand=1&template=PR_Template_Contributor.md) + +[Version Upgrade **(for Admins)**](?expand=1&template=PR_Template_VersionUpgrade.md) + + +<!--- If you have no idea, time, what so ever, you can also continue here without using a pull request template--> +<!--- Please keep in mind that if you use this short cut, your PR is lees likely to be merged, because of missing information.--> +## Pull Request Short Cut +<!--- Describe your changes briefly. If you need some space to describe, please use the contributor template as mentioned at the top--> \ No newline at end of file diff --git a/.github/PULL_REQUEST_TEMPLATE/PR_Template_Contributor.md b/.github/PULL_REQUEST_TEMPLATE/PR_Template_Contributor.md new file mode 100644 index 00000000..4d417179 --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE/PR_Template_Contributor.md @@ -0,0 +1,32 @@ + +# Contributor Pull Request +<!--- Provide a general summary of your changes in the Title above --> + +## Description +<!--- Describe your changes in detail --> + +## Motivation and Context +<!--- Why is this change required? What problem does it solve? --> +<!--- If it fixes an open issue, please link to the issue here. --> +<!--- If it full fills an open feature request, please link to the feature request here. --> + +## How has this been tested? +<!--- Please describe in detail how you tested your changes. --> +<!--- Include details of your testing environment, especially --> +<!--- the software you teste your change with. --> +<!--- Are other areas of the specification affected? --> + +## Snippets or Screenshots (if necessary): + +## Types of changes +<!--- What types of changes does your code introduce? Put an `x` in all the boxes that apply: --> +- [ ] Bug fix (non-breaking change which fixes an issue) +- [ ] New feature (non-breaking change which adds functionality) +- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected) + +## Checklist: +<!--- Go over all the following points, and put an `x` in all the boxes that apply. --> +<!--- If you're unsure about any of these, don't hesitate to ask. We're here to help! --> +- [ ] My code follows the code style of this IG / specification. +- [ ] My change requires a change to the documentation or narrative (intend) of the IG. +- [ ] I have already updated the documentation / narrative (intend) accordingly. \ No newline at end of file diff --git a/.github/PULL_REQUEST_TEMPLATE/PR_Template_VersionUpgrade.md b/.github/PULL_REQUEST_TEMPLATE/PR_Template_VersionUpgrade.md new file mode 100644 index 00000000..6822e18d --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE/PR_Template_VersionUpgrade.md @@ -0,0 +1,57 @@ +# Version Upgrade Template +<!--- parameters of your upgrade --> + +Version: + +Date: + +## Description +<!--- CAVEAT: You to be an admin to perform all the necessary jobs. --> +This is a Pullreuqest that requires an increase in the Version number. Therefore, multiple outside-github, related Task have to be performed and checked. + +All jobs with an `x` in the boxes were performed to the best of knowledge. + +## Pre-Merge Activities +<!--- Lets check everything before we continue. --> +- [ ] This PR refers to a versioned Branch with a name and a version number in the form of N.n.n, e.g. "TC_3.2.1". +- [ ] This PR has a clean meaningful commit history. Minor commits or commits without description have been squashed, at the latest now. +- [ ] The _./github/workflows/main.yml_ refers to the correct Firely Terminal and SUSHI Version. + > **_Firely Terminal Pipeline_** 0.4.0. + + > **_SUSHI Versions_** 3.5.0. +- [ ] By running the _Release_Publish.py_ script, release version and date was updated accordingly. The script ran without errors. +- [ ] Eventually, increase the dependency of to newer Basis Modul (package and sushi-config) +- [ ] New Release Notes were created, alined to the commit history and cleaned. In Github, go to + - [ ] _-> Releases_ then _-> Draft a new release_ with the _Modul Name and Version_, then + - [ ] _-> Target the main-Branch_ and _->enter a new Tag according to the Version_, then click. + - [ ] Click _-> Generate Release notes_ , _->Adjust them if necessary_ and _-> Copy/Paste the Details in the RealeaseNotes.md_ of the very Branch you want to merge. + - [ ] Finally _-> Save as Draft_ + +## Merge and Publishing +<!--- Now lets do the merge. --> +<!--- Include details of your testing environment, especially --> +- [ ] With the updated Version, Dates, and Release Notes (as described above) with the last committ into the Branch you want to merge. +- [ ] In GitHub _-> Actions_ the _->CI (FHIR Validation)_ workflow terminates successfully. +- [ ] Add the Approve / the PR gets positively reviewed by a colleague. +- [ ] Merge (without squash) the PR, delete the Branch. + + +## Post-Merge Activities +<!--- Do some update, refreshe and cleanup of related resources. --> + +- [ ] Go to the corresponding SIMPLIFIER Project and _-> Github -> Reimport_ the project. +- [ ] Go to the corresponding SIMPLIFIER Project and _-> Packages -> Expand the Dropdown for Create -> Create new package_ for the project. + - [ ] With the corresponding version number, and + - [ ] The Release notes (from above) and a compare-link to the previous Release. + - [ ] Unlist the old package by _-> clicking on the old package_, _-> go to Administration_ and _-> click on Unlist_ +- [ ] Publish the previously drafted Release, including version number, on GitHub. +- [ ] Provide / Archive the IG in the corresponding _gh-pages_ branch of the GitHub project. + - [ ] Checkout the Branch (no need to merge it later). + - [ ] Export from Simplifier via _-> Guides -> Expand the Modul ... -> Export_ + - [ ] Unpack the zip, remove the packages folder (because its kinda big), and move everything else to a (version corresponding) new folder in the branch folder structure. + - [ ] Update the file index.html and check rendering + - [ ] commit the branch. +- [ ] If ISiK Basismodul was updated all depending Modules should be updated with a renewed dependency to the incremented Basismodul version - possibly including and closing technical corrections + + +## Finished diff --git a/.github/workflows/RenderAllDiagrams.yml b/.github/workflows/RenderAllDiagrams.yml new file mode 100644 index 00000000..ee949a78 --- /dev/null +++ b/.github/workflows/RenderAllDiagrams.yml @@ -0,0 +1,102 @@ +name: Render All Diagrams + +on: + push: + paths: + - '**/Material/images/src/**/*.puml' + - '**/Material/images/src/**/*.drawio' + branches-ignore: + - 'main**' + + # Allows you to run this workflow manually from the Actions tab + workflow_dispatch: + +jobs: + build: + runs-on: ubuntu-latest + + steps: + + # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it + - name: Checkout repository + uses: actions/checkout@v4 + + # Installs Java distribution for running the plantUML jar + - name: Install Java + uses: actions/setup-java@v3 + with: + distribution: 'temurin' + java-version: '17' + check-latest: true + + # Install graphviz for plantuml + - name: Setup Graphviz + uses: ts-graphviz/setup-graphviz@v1 + + # Download plantUML jar + - name: Download plantuml file + run: | + wget -O plantuml.jar "https://github.com/plantuml/plantuml/releases/latest/download/plantuml.jar" + + # Clean Folder + - name: Ensure and clean folder + run: | + img_dir=Material/images/diagrams + mkdir -p $img_dir + rm -rf Material/images/diagrams/*.svg + + # Generate the SVGs from PUML + - name: Render PUML to SVG and Move files + run: | + FileNamePaths=$(find . -path "*/images/src/*/*.puml" -exec dirname {} \; | sort -u) + for dir in $FileNamePaths + do + # Render SVGs from PUMLs + find $dir -name "*.puml" -exec java -jar plantuml.jar -tsvg {} \; + done + + # Remove plantUML jar + - name: remove plantuml file + run: | + rm -f plantuml.jar + + # Generate the SVGs from DrawIO + - name: Render DrawIO to SVG with predefined action + uses: rlespinasse/drawio-export-action@v2 + with: + path: ./Material/images/src/drawio/ + remove-page-suffix: true + output: . + format: svg + action-mode: all + + # copies the created SVG files to the images/diagrams folder and deletes the drawio files + - name: Move SVGs to target image folder + run: | + img_dir=Material/images/diagrams + # Find all unique directories containing *.SVGs files under any /imgsrc/ folder + FileNamePaths=$(find . -path "*/images/src/*/*.svg" -exec dirname {} \; | sort -u) + for dir in $FileNamePaths + do + # Move SVGs to out directory + find $dir -name "*.svg" -exec mv {} $img_dir \; + done + + ## add and commit the new generated files + #- name: Create Pull Request + # uses: peter-evans/create-pull-request@v5 + # with: + # branch: auto/images-generation + # commit-message: Generated Images from source Code by GitHub Action + # title: Generated Images from GitHub Action + # assignees: ${{ github.actor }} + # reviewers: ${{ github.actor }} + # delete-branch: true + # labels: automated pr + + - name: Commit rendered files + uses: stefanzweifel/git-auto-commit-action@v5 + with: + commit_user_name: GitHub Actions Bot + commit_user_email: ActionBot@github.com + commit_message: auto-generated diagrams by GitHub Action after source code change \ No newline at end of file diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 57bf663f..ceae92b3 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -6,12 +6,13 @@ name: CI (FHIR Validation) on: # Triggers the workflow on push or pull request events but only for the master branch push: - branches: [ master-isik-stufe-2 ] + paths: + - 'Resources/**' + branches-ignore: + - 'main**' pull_request: - branches: [ master-isik-stufe-2 ] - - # Allows you to run this workflow manually from the Actions tab - workflow_dispatch: + branches: + - 'main**' # A workflow run is made up of one or more jobs that can run sequentially or in parallel jobs: @@ -29,7 +30,7 @@ jobs: # Java and .NET are already installed on ubuntu-latest - name: Firely.Terminal (GitHub Actions) - uses: FirelyTeam/firely-terminal-pipeline@v0.3.5 + uses: FirelyTeam/firely-terminal-pipeline@v0.4.0 with: PATH_TO_CONFORMANCE_RESOURCES: Resources/fsh-generated/resources/ #PATH_TO_EXAMPLES: Examples @@ -42,10 +43,13 @@ jobs: SIMPLIFIER_PASSWORD: ${{ secrets.SIMPLIFIER_PASSWORD }} SUSHI_ENABLED: true SUSHI_OPTIONS: Resources/ - SUSHI_VERSION: 2.10.2 + SUSHI_VERSION: 3.5.0 EXPECTED_FAILS: VALIDATION_CONFORMANCE_DOTNET VALIDATION_CONFORMANCE_JAVA VALIDATION_EXAMPLES_JAVA - name: Add & Commit uses: EndBug/add-and-commit@v7 with: + committer_name: GitHub Actions Bot + committer_email: ActionBot@github.com add: 'Resources/fsh-generated/resources/' + message: auto-generated FHIR files by GitHub Actions (CI FSH to FHIR Validation) diff --git a/.gitignore b/.gitignore index 34df97f7..6515dd43 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ /fhirpkg.lock.json +.vscode/* diff --git a/ImplementationGuide/ImplementierungsleitfadenIsiK_basismodul.json b/ImplementationGuide/ImplementierungsleitfadenIsiK_basismodul.json index dff976b1..d8cb7f49 100644 --- a/ImplementationGuide/ImplementierungsleitfadenIsiK_basismodul.json +++ b/ImplementationGuide/ImplementierungsleitfadenIsiK_basismodul.json @@ -1,537 +1,542 @@ -{ - "resourceType": "ImplementationGuide", - "url": "https://gematik.de/fhir/isik/v3/Basismodul/ImplementationGuide/ISiK-Basismodul", - "version": "3.0.0", - "name": "Implementierungsleitfaden ISiK-Basismodul Stufe 3", - "status": "active", - "fhirVersion": [ - "4.0.1" - ], - "packageId": "de.gematik.isik-basismodul-stufe3", - "definition": { - "resource": [ - { - "reference": { - "reference": "Patient/test" - } - } - ], - "page": { - "nameUrl": "ImplementationGuide/markdown/Einfuehrung.md", - "title": "Einführung", - "generation": "markdown", - "page": [ - { - "nameUrl": "ImplementationGuide/markdown/ReleaseNotes.md", - "title": "Release Notes", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Motivation.md", - "title": "Motivation", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/UebergreifendeFestlegungen/UebergreifendeFestlegungen.md", - "title": "Übergreifende Festlegungen", - "generation": "markdown", - "page": [ - { - "nameUrl": "ImplementationGuide/markdown/UebergreifendeFestlegungen/UebergreifendeFestlegungen_Methodik.md", - "title": "Methodik", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/UebergreifendeFestlegungen/UebergreifendeFestlegungen_BestaetigungsrelevanteSysteme.md", - "title": "Bestätigungsrelevante Systeme", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/UebergreifendeFestlegungen/KompatibilitaetDerGematikSpezifikation.md", - "title": "Kompatibilität der gematik-Spezifikation", - "generation": "markdown", - "page": [ - { - "nameUrl": "ImplementationGuide/markdown/UebergreifendeFestlegungen/KompatibilitaetDerGematikSpezifikation_IHE.md", - "title": "IHE-Profile", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/UebergreifendeFestlegungen/KompatibilitaetDerGematikSpezifikation_Andere.md", - "title": "Nationale FHIR-Spezifikationen", - "generation": "markdown" - } - ] - }, - { - "nameUrl": "ImplementationGuide/markdown/UebergreifendeFestlegungen/UebergreifendeFestlegungen_Must-Support-Flags.md", - "title": "Must-Support-Flags", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/UebergreifendeFestlegungen/UebergreifendeFestlegungen_Repraesentationsformate.md", - "title": "Repräsentationsformate", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/UebergreifendeFestlegungen/UebergreifendeFestlegungen_Suchparameter.md", - "title": "Suchparameter", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/UebergreifendeFestlegungen/UebergreifendeFestlegungen_Rest.md", - "title": "REST-API", - "generation": "markdown" - } - ] - }, - { - "nameUrl": "ImplementationGuide/markdown/Datenobjekte/Datenobjekte.md", - "title": "Datenobjekte", - "generation": "markdown", - "page": [ - { - "nameUrl": "ImplementationGuide/markdown/CapabilityStatement.md", - "title": "CapabilityStatement", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Datenobjekte/Datenobjekte_Patient.md", - "title": "Patient (Patient)", - "generation": "markdown", - "page": [ - { - "nameUrl": "ImplementationGuide/markdown/Patient/Patient_Motivation.md", - "title": "Motivation", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Patient/Patient_Kompatibilitaet.md", - "title": "Kompatibilität", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Patient/Patient_Profil.md", - "title": "Profil", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Patient/Patient_AnmerkungenZuDenMustSupportFeldern.md", - "title": "Anmerkungen zu den Must-Support Feldern", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Patient/Patient_Interaktionen.md", - "title": "Interaktionen", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Patient/Patient_Beispiele.md", - "title": "Beispiele", - "generation": "markdown" - } - ] - }, - { - "nameUrl": "ImplementationGuide/markdown/Datenobjekte/Datenobjekte_Kontakt.md", - "title": "Kontakt/Fall (Encounter)", - "generation": "markdown", - "page": [ - { - "nameUrl": "ImplementationGuide/markdown/KontaktGesundheitseinrichtung/Kontakt_Motivation.md", - "title": "Motivation", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/KontaktGesundheitseinrichtung/Kontakt_Kompatibilitaet.md", - "title": "Kompatibilität", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/KontaktGesundheitseinrichtung/Kontakt_Profil.md", - "title": "Profil", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/KontaktGesundheitseinrichtung/Kontakt_AnmerkungenZuDenMustSupportFeldern.md", - "title": "Anmerkungen zu den Must-Support Feldern", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/KontaktGesundheitseinrichtung/Kontakt_Interaktionen.md", - "title": "Interaktionen", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/KontaktGesundheitseinrichtung/Kontakt_Beispiele.md", - "title": "Beispiele", - "generation": "markdown" - } - ] - }, - { - "nameUrl": "ImplementationGuide/markdown/Datenobjekte/Datenobjekte_Abrechnungsfall.md", - "title": "Abrechnungsfall (Account)", - "generation": "markdown", - "page": [ - { - "nameUrl": "ImplementationGuide/markdown/Abrechnungsfall/Abrechnungsfall_Motivation.md", - "title": "Motivation", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Abrechnungsfall/Abrechnungsfall_Kompatibilitaet.md", - "title": "Kompatibilität", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Abrechnungsfall/Abrechnungsfall_Profil.md", - "title": "Profil", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Abrechnungsfall/Abrechnungsfall_AnmerkungenZuDenMustSupportFeldern.md", - "title": "Anmerkungen zu den Must-Support Feldern", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Abrechnungsfall/Abrechnungsfall_Interaktionen.md", - "title": "Interaktionen", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Abrechnungsfall/Abrechnungsfall_Beispiele.md", - "title": "Beispiele", - "generation": "markdown" - } - ] - }, - { - "nameUrl": "ImplementationGuide/markdown/Datenobjekte/Datenobjekte_Diagnose.md", - "title": "Diagnose (Condition)", - "generation": "markdown", - "page": [ - { - "nameUrl": "ImplementationGuide/markdown/Diagnose/Diagnose_Motivation.md", - "title": "Motivation", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Diagnose/Diagnose_Kompatibilitaet.md", - "title": "Kompatibilität", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Diagnose/Diagnose_Profil.md", - "title": "Profil", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Diagnose/Diagnose_AnmerkungenZuDenMustSupportFeldern.md", - "title": "Anmerkungen zu den Must-Support Feldern", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Diagnose/Diagnose_Interaktionen.md", - "title": "Interaktionen", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Diagnose/Diagnose_Beispiele.md", - "title": "Beispiele", - "generation": "markdown" - } - ] - }, - { - "nameUrl": "ImplementationGuide/markdown/Datenobjekte/Datenobjekte_Prozedur.md", - "title": "Prozedur (Procedure)", - "generation": "markdown", - "page": [ - { - "nameUrl": "ImplementationGuide/markdown/Prozedur/Prozedur_Motivation.md", - "title": "Motivation", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Prozedur/Prozedur_Kompatibilitaet.md", - "title": "Kompatibilität", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Prozedur/Prozedur_Profil.md", - "title": "Profil", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Prozedur/Prozedur_AnmerkungenZuDenMustSupportFeldern.md", - "title": "Anmerkungen zu den Must-Support Feldern", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Prozedur/Prozedur_Interaktionen.md", - "title": "Interaktionen", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Prozedur/Prozedur_Beispiele.md", - "title": "Beispiele", - "generation": "markdown" - } - ] - }, - { - "nameUrl": "ImplementationGuide/markdown/Datenobjekte/Datenobjekte_Versicherungsverhaeltnis.md", - "title": "Versicherungsverhältnis (Coverage)", - "generation": "markdown", - "page": [ - { - "nameUrl": "ImplementationGuide/markdown/Versicherungsverhaeltnis/Versicherungsverhaeltnis_Motivation.md", - "title": "Motivation", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Versicherungsverhaeltnis/Versicherungsverhaeltnis_Kompatibilitaet.md", - "title": "Kompatibilität", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Versicherungsverhaeltnis/Versicherungsverhaeltnis_Profil.md", - "title": "Profil", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Versicherungsverhaeltnis/Versicherungsverhaeltnis_AnmerkungenZuDenMustSupportFeldern.md", - "title": "Anmerkungen", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Versicherungsverhaeltnis/Versicherungsverhaeltnis_Interaktionen.md", - "title": "Interaktionen", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Versicherungsverhaeltnis/Versicherungsverhaeltnis_Beispiele.md", - "title": "Beispiele", - "generation": "markdown" - } - ] - }, - { - "nameUrl": "ImplementationGuide/markdown/Datenobjekte/Datenobjekte_Angehoeriger.md", - "title": "Angehöriger (RelatedPerson)", - "generation": "markdown", - "page": [ - { - "nameUrl": "ImplementationGuide/markdown/Angehoeriger/Angehoeriger_Motivation.md", - "title": "Motivation", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Angehoeriger/Angehoeriger_Kompatibilitaet.md", - "title": "Kompatibilität", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Angehoeriger/Angehoeriger_Profil.md", - "title": "Profil", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Angehoeriger/Angehoeriger_AnmerkungenZuDenMustSupportFeldern.md", - "title": "Anmerkungen", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Angehoeriger/Angehoeriger_Interaktionen.md", - "title": "Interaktionen", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Angehoeriger/Angehoeriger_Beispiele.md", - "title": "Beispiele", - "generation": "markdown" - } - ] - }, - { - "nameUrl": "ImplementationGuide/markdown/Datenobjekte/Datenobjekte_PersonImGesundheitsberuf.md", - "title": "PersonImGesundheitsberuf (Practitioner)", - "generation": "markdown", - "page": [ - { - "nameUrl": "ImplementationGuide/markdown/PersonImGesundheitsberuf/PersonImGesundheitsberuf_Motivation.md", - "title": "Motivation", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/PersonImGesundheitsberuf/PersonImGesundheitsberuf_Kompatibilitaet.md", - "title": "Kompatibilität", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/PersonImGesundheitsberuf/PersonImGesundheitsberuf_Profil.md", - "title": "Profil", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/PersonImGesundheitsberuf/PersonImGesundheitsberuf_AnmerkungenZuDenMustSupportFeldern.md", - "title": "Anmerkungen", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/PersonImGesundheitsberuf/PersonImGesundheitsberuf_Interaktionen.md", - "title": "Interaktionen", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/PersonImGesundheitsberuf/PersonImGesundheitsberuf_Beispiele.md", - "title": "Beispiele", - "generation": "markdown" - } - ] - }, - { - "nameUrl": "ImplementationGuide/markdown/Datenobjekte/Datenobjekte_BerichtSubsystem.md", - "title": "Bericht aus Subsystemen (Composition)", - "generation": "markdown", - "page": [ - { - "nameUrl": "ImplementationGuide/markdown/BerichtSubsystem/BerichtSubsystem_Motivation.md", - "title": "Motivation", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/BerichtSubsystem/BerichtSubsystem_Interaktionen.md", - "title": "Interaktionen", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/BerichtSubsystem/BerichtSubsystem_Profil.md", - "title": "Profil", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/BerichtSubsystem/BerichtSubsystem_AnmerkungenZuDenMustSupportFeldern.md", - "title": "Anmerkungen", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/BerichtSubsystem/BerichtSubsystem_Beispiele.md", - "title": "Beispiele", - "generation": "markdown" - } - ] - }, - { - "nameUrl": "ImplementationGuide/markdown/Datenobjekte/Datenobjekte_CodeSystem.md", - "title": "Katalog (CodeSystem)", - "generation": "markdown", - "page": [ - { - "nameUrl": "ImplementationGuide/markdown/Katalog/CodeSystem_Motivation.md", - "title": "Motivation", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Katalog/CodeSystem_Profil.md", - "title": "Profil", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Katalog/CodeSystem_Interaktionen.md", - "title": "Interaktionen", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Katalog/CodeSystem_AnmerkungenZuDenMustSupportFeldern.md", - "title": "Anmerkungen", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Katalog/CodeSystem_Beispiele.md", - "title": "Anmerkungen", - "generation": "markdown" - } - ] - }, - { - "nameUrl": "ImplementationGuide/markdown/Datenobjekte/Datenobjekte_ValueSet.md", - "title": "ValueSet (ValueSet)", - "generation": "markdown", - "page": [ - { - "nameUrl": "ImplementationGuide/markdown/ValueSet/ValueSet_Motivation.md", - "title": "Motivation", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/ValueSet/ValueSet_Kompatibilitaet.md", - "title": "Kompatibilität", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/ValueSet/ValueSet_Profil.md", - "title": "Profil", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/ValueSet/ValueSet_AnmerkungenZuDenMustSupportFeldern.md", - "title": "Anmerkungen", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/ValueSet/ValueSet_Interaktionen.md", - "title": "Anmerkungen", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/ValueSet/ValueSet_Beispiele.md", - "title": "Beispiele", - "generation": "markdown" - } - ] - }, - { - "nameUrl": "ImplementationGuide/markdown/Datenobjekte/Datenobjekte_Binary.md", - "title": "Binary (Binary)", - "generation": "markdown", - "page": [ - { - "nameUrl": "ImplementationGuide/markdown/Binary/Binary_Motivation.md", - "title": "Motivation", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Binary/ValueSet_Kompatibilitaet.md", - "title": "Kompatibilität", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Binary/Binary_Profil.md", - "title": "Profil", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Binary/Binary_AnmerkungenZuDenMustSupportFeldern.md", - "title": "Anmerkungen", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Binary/Binary_Interaktionen.md", - "title": "Anmerkungen", - "generation": "markdown" - }, - { - "nameUrl": "ImplementationGuide/markdown/Binary/Binary_Beispiele.md", - "title": "Beispiele", - "generation": "markdown" - } - ] - } - ] - } - ] - } - } -} +{ + "resourceType": "ImplementationGuide", + "url": "https://gematik.de/fhir/isik/v3/Basismodul/ImplementationGuide/ISiK-Basismodul", + "version": "4.0.0-rc", + "name": "Implementierungsleitfaden ISiK-Basismodul Stufe 3", + "status": "draft", + "fhirVersion": [ + "4.0.1" + ], + "packageId": "de.gematik.isik-basismodul-stufe3", + "definition": { + "resource": [ + { + "reference": { + "reference": "Patient/test" + } + } + ], + "page": { + "nameUrl": "ImplementationGuide/markdown/Einfuehrung.md", + "title": "Einführung", + "generation": "markdown", + "page": [ + { + "nameUrl": "ImplementationGuide/markdown/ReleaseNotes.md", + "title": "Release Notes", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Motivation.md", + "title": "Motivation", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/UebergreifendeFestlegungen/UebergreifendeFestlegungen.md", + "title": "Übergreifende Festlegungen", + "generation": "markdown", + "page": [ + { + "nameUrl": "ImplementationGuide/markdown/UebergreifendeFestlegungen/UebergreifendeFestlegungen_Methodik.md", + "title": "Methodik", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/UebergreifendeFestlegungen/UebergreifendeFestlegungen_BestaetigungsrelevanteSysteme.md", + "title": "Bestätigungsrelevante Systeme", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/UebergreifendeFestlegungen/KompatibilitaetDerGematikSpezifikation.md", + "title": "Kompatibilität der gematik-Spezifikation", + "generation": "markdown", + "page": [ + { + "nameUrl": "ImplementationGuide/markdown/UebergreifendeFestlegungen/KompatibilitaetDerGematikSpezifikation_IHE.md", + "title": "IHE-Profile", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/UebergreifendeFestlegungen/KompatibilitaetDerGematikSpezifikation_Andere.md", + "title": "Nationale FHIR-Spezifikationen", + "generation": "markdown" + } + ] + }, + { + "nameUrl": "ImplementationGuide/markdown/UebergreifendeFestlegungen/UebergreifendeFestlegungen_Must-Support-Flags.md", + "title": "Must-Support-Flags", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/UebergreifendeFestlegungen/UebergreifendeFestlegungen_Repraesentationsformate.md", + "title": "Repräsentationsformate", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/UebergreifendeFestlegungen/UebergreifendeFestlegungen_Suchparameter.md", + "title": "Suchparameter", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/UebergreifendeFestlegungen/UebergreifendeFestlegungen_Patient-merge.md", + "title": "patient-merge Notification", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/UebergreifendeFestlegungen/UebergreifendeFestlegungen_Rest.md", + "title": "REST-API", + "generation": "markdown" + } + ] + }, + { + "nameUrl": "ImplementationGuide/markdown/Datenobjekte/Datenobjekte.md", + "title": "Datenobjekte", + "generation": "markdown", + "page": [ + { + "nameUrl": "ImplementationGuide/markdown/CapabilityStatement.md", + "title": "CapabilityStatement", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Datenobjekte/Datenobjekte_Patient.md", + "title": "Patient (Patient)", + "generation": "markdown", + "page": [ + { + "nameUrl": "ImplementationGuide/markdown/Patient/Patient_Motivation.md", + "title": "Motivation", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Patient/Patient_Kompatibilitaet.md", + "title": "Kompatibilität", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Patient/Patient_Profil.md", + "title": "Profil", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Patient/Patient_AnmerkungenZuDenMustSupportFeldern.md", + "title": "Anmerkungen zu den Must-Support Feldern", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Patient/Patient_Interaktionen.md", + "title": "Interaktionen", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Patient/Patient_Beispiele.md", + "title": "Beispiele", + "generation": "markdown" + } + ] + }, + { + "nameUrl": "ImplementationGuide/markdown/Datenobjekte/Datenobjekte_Kontakt.md", + "title": "Kontakt/Fall (Encounter)", + "generation": "markdown", + "page": [ + { + "nameUrl": "ImplementationGuide/markdown/KontaktGesundheitseinrichtung/Kontakt_Motivation.md", + "title": "Motivation", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/KontaktGesundheitseinrichtung/Kontakt_Kompatibilitaet.md", + "title": "Kompatibilität", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/KontaktGesundheitseinrichtung/Kontakt_Profil.md", + "title": "Profil", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/KontaktGesundheitseinrichtung/Kontakt_AnmerkungenZuDenMustSupportFeldern.md", + "title": "Anmerkungen zu den Must-Support Feldern", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/KontaktGesundheitseinrichtung/Kontakt_Interaktionen.md", + "title": "Interaktionen", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/KontaktGesundheitseinrichtung/Kontakt_Beispiele.md", + "title": "Beispiele", + "generation": "markdown" + } + ] + }, + { + "nameUrl": "ImplementationGuide/markdown/Datenobjekte/Datenobjekte_Abrechnungsfall.md", + "title": "Abrechnungsfall (Account)", + "generation": "markdown", + "page": [ + { + "nameUrl": "ImplementationGuide/markdown/Abrechnungsfall/Abrechnungsfall_Motivation.md", + "title": "Motivation", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Abrechnungsfall/Abrechnungsfall_Kompatibilitaet.md", + "title": "Kompatibilität", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Abrechnungsfall/Abrechnungsfall_Profil.md", + "title": "Profil", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Abrechnungsfall/Abrechnungsfall_AnmerkungenZuDenMustSupportFeldern.md", + "title": "Anmerkungen zu den Must-Support Feldern", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Abrechnungsfall/Abrechnungsfall_Interaktionen.md", + "title": "Interaktionen", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Abrechnungsfall/Abrechnungsfall_Beispiele.md", + "title": "Beispiele", + "generation": "markdown" + } + ] + }, + { + "nameUrl": "ImplementationGuide/markdown/Datenobjekte/Datenobjekte_Diagnose.md", + "title": "Diagnose (Condition)", + "generation": "markdown", + "page": [ + { + "nameUrl": "ImplementationGuide/markdown/Diagnose/Diagnose_Motivation.md", + "title": "Motivation", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Diagnose/Diagnose_Kompatibilitaet.md", + "title": "Kompatibilität", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Diagnose/Diagnose_Profil.md", + "title": "Profil", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Diagnose/Diagnose_AnmerkungenZuDenMustSupportFeldern.md", + "title": "Anmerkungen zu den Must-Support Feldern", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Diagnose/Diagnose_Interaktionen.md", + "title": "Interaktionen", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Diagnose/Diagnose_Beispiele.md", + "title": "Beispiele", + "generation": "markdown" + } + ] + }, + { + "nameUrl": "ImplementationGuide/markdown/Datenobjekte/Datenobjekte_Prozedur.md", + "title": "Prozedur (Procedure)", + "generation": "markdown", + "page": [ + { + "nameUrl": "ImplementationGuide/markdown/Prozedur/Prozedur_Motivation.md", + "title": "Motivation", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Prozedur/Prozedur_Kompatibilitaet.md", + "title": "Kompatibilität", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Prozedur/Prozedur_Profil.md", + "title": "Profil", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Prozedur/Prozedur_AnmerkungenZuDenMustSupportFeldern.md", + "title": "Anmerkungen zu den Must-Support Feldern", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Prozedur/Prozedur_Interaktionen.md", + "title": "Interaktionen", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Prozedur/Prozedur_Beispiele.md", + "title": "Beispiele", + "generation": "markdown" + } + ] + }, + { + "nameUrl": "ImplementationGuide/markdown/Datenobjekte/Datenobjekte_Versicherungsverhaeltnis.md", + "title": "Versicherungsverhältnis (Coverage)", + "generation": "markdown", + "page": [ + { + "nameUrl": "ImplementationGuide/markdown/Versicherungsverhaeltnis/Versicherungsverhaeltnis_Motivation.md", + "title": "Motivation", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Versicherungsverhaeltnis/Versicherungsverhaeltnis_Kompatibilitaet.md", + "title": "Kompatibilität", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Versicherungsverhaeltnis/Versicherungsverhaeltnis_Profil.md", + "title": "Profil", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Versicherungsverhaeltnis/Versicherungsverhaeltnis_AnmerkungenZuDenMustSupportFeldern.md", + "title": "Anmerkungen", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Versicherungsverhaeltnis/Versicherungsverhaeltnis_Interaktionen.md", + "title": "Interaktionen", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Versicherungsverhaeltnis/Versicherungsverhaeltnis_Beispiele.md", + "title": "Beispiele", + "generation": "markdown" + } + ] + }, + { + "nameUrl": "ImplementationGuide/markdown/Datenobjekte/Datenobjekte_Angehoeriger.md", + "title": "Angehöriger (RelatedPerson)", + "generation": "markdown", + "page": [ + { + "nameUrl": "ImplementationGuide/markdown/Angehoeriger/Angehoeriger_Motivation.md", + "title": "Motivation", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Angehoeriger/Angehoeriger_Kompatibilitaet.md", + "title": "Kompatibilität", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Angehoeriger/Angehoeriger_Profil.md", + "title": "Profil", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Angehoeriger/Angehoeriger_AnmerkungenZuDenMustSupportFeldern.md", + "title": "Anmerkungen", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Angehoeriger/Angehoeriger_Interaktionen.md", + "title": "Interaktionen", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Angehoeriger/Angehoeriger_Beispiele.md", + "title": "Beispiele", + "generation": "markdown" + } + ] + }, + { + "nameUrl": "ImplementationGuide/markdown/Datenobjekte/Datenobjekte_PersonImGesundheitsberuf.md", + "title": "PersonImGesundheitsberuf (Practitioner)", + "generation": "markdown", + "page": [ + { + "nameUrl": "ImplementationGuide/markdown/PersonImGesundheitsberuf/PersonImGesundheitsberuf_Motivation.md", + "title": "Motivation", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/PersonImGesundheitsberuf/PersonImGesundheitsberuf_Kompatibilitaet.md", + "title": "Kompatibilität", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/PersonImGesundheitsberuf/PersonImGesundheitsberuf_Profil.md", + "title": "Profil", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/PersonImGesundheitsberuf/PersonImGesundheitsberuf_AnmerkungenZuDenMustSupportFeldern.md", + "title": "Anmerkungen", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/PersonImGesundheitsberuf/PersonImGesundheitsberuf_Interaktionen.md", + "title": "Interaktionen", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/PersonImGesundheitsberuf/PersonImGesundheitsberuf_Beispiele.md", + "title": "Beispiele", + "generation": "markdown" + } + ] + }, + { + "nameUrl": "ImplementationGuide/markdown/Datenobjekte/Datenobjekte_BerichtSubsystem.md", + "title": "Bericht aus Subsystemen (Composition)", + "generation": "markdown", + "page": [ + { + "nameUrl": "ImplementationGuide/markdown/BerichtSubsystem/BerichtSubsystem_Motivation.md", + "title": "Motivation", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/BerichtSubsystem/BerichtSubsystem_Interaktionen.md", + "title": "Interaktionen", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/BerichtSubsystem/BerichtSubsystem_Profil.md", + "title": "Profil", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/BerichtSubsystem/BerichtSubsystem_AnmerkungenZuDenMustSupportFeldern.md", + "title": "Anmerkungen", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/BerichtSubsystem/BerichtSubsystem_Beispiele.md", + "title": "Beispiele", + "generation": "markdown" + } + ] + }, + { + "nameUrl": "ImplementationGuide/markdown/Datenobjekte/Datenobjekte_CodeSystem.md", + "title": "Katalog (CodeSystem)", + "generation": "markdown", + "page": [ + { + "nameUrl": "ImplementationGuide/markdown/Katalog/CodeSystem_Motivation.md", + "title": "Motivation", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Katalog/CodeSystem_Profil.md", + "title": "Profil", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Katalog/CodeSystem_Interaktionen.md", + "title": "Interaktionen", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Katalog/CodeSystem_AnmerkungenZuDenMustSupportFeldern.md", + "title": "Anmerkungen", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Katalog/CodeSystem_Beispiele.md", + "title": "Anmerkungen", + "generation": "markdown" + } + ] + }, + { + "nameUrl": "ImplementationGuide/markdown/Datenobjekte/Datenobjekte_ValueSet.md", + "title": "ValueSet (ValueSet)", + "generation": "markdown", + "page": [ + { + "nameUrl": "ImplementationGuide/markdown/ValueSet/ValueSet_Motivation.md", + "title": "Motivation", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/ValueSet/ValueSet_Kompatibilitaet.md", + "title": "Kompatibilität", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/ValueSet/ValueSet_Profil.md", + "title": "Profil", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/ValueSet/ValueSet_AnmerkungenZuDenMustSupportFeldern.md", + "title": "Anmerkungen", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/ValueSet/ValueSet_Interaktionen.md", + "title": "Anmerkungen", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/ValueSet/ValueSet_Beispiele.md", + "title": "Beispiele", + "generation": "markdown" + } + ] + }, + { + "nameUrl": "ImplementationGuide/markdown/Datenobjekte/Datenobjekte_Binary.md", + "title": "Binary (Binary)", + "generation": "markdown", + "page": [ + { + "nameUrl": "ImplementationGuide/markdown/Binary/Binary_Motivation.md", + "title": "Motivation", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Binary/ValueSet_Kompatibilitaet.md", + "title": "Kompatibilität", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Binary/Binary_Profil.md", + "title": "Profil", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Binary/Binary_AnmerkungenZuDenMustSupportFeldern.md", + "title": "Anmerkungen", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Binary/Binary_Interaktionen.md", + "title": "Anmerkungen", + "generation": "markdown" + }, + { + "nameUrl": "ImplementationGuide/markdown/Binary/Binary_Beispiele.md", + "title": "Beispiele", + "generation": "markdown" + } + ] + } + ] + } + ] + } + } +} diff --git a/ImplementationGuide/markdown/Abrechnungsfall/Abrechnungsfall_Interaktionen.md b/ImplementationGuide/markdown/Abrechnungsfall/Abrechnungsfall_Interaktionen.md index 906a8605..ad508d02 100644 --- a/ImplementationGuide/markdown/Abrechnungsfall/Abrechnungsfall_Interaktionen.md +++ b/ImplementationGuide/markdown/Abrechnungsfall/Abrechnungsfall_Interaktionen.md @@ -42,7 +42,7 @@ Folgende Suchparameter sind für das Bestätigungsverfahren relevant, auch in Ko ```GET [base]/Account?patient=Patient/123``` - Anwendungshinweise: Weitere Informationen zur Suche nach "Account.subject" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Reference Search"](https://www.hl7.org/fhir/search.html#reference). + Anwendungshinweise: Weitere Informationen zur Suche nach "Account.subject" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Reference Search"](https://www.hl7.org/fhir/R4/search.html#reference). 1. Der Suchparameter "_profile" KANN unterstützt werden: diff --git a/ImplementationGuide/markdown/Abrechnungsfall/Abrechnungsfall_Kompatibilitaet.md b/ImplementationGuide/markdown/Abrechnungsfall/Abrechnungsfall_Kompatibilitaet.md index 72174ee4..60d414d8 100644 --- a/ImplementationGuide/markdown/Abrechnungsfall/Abrechnungsfall_Kompatibilitaet.md +++ b/ImplementationGuide/markdown/Abrechnungsfall/Abrechnungsfall_Kompatibilitaet.md @@ -1,5 +1,5 @@ ### Kompatibilität -Seitens der KBV, als auch der Medizininformatik-Initiative wurde zum Zeitpunkt der Veröffentlichung dieser vorliegenden Spezifikation kein Profil für den Ressourcentyp "Account" definiert, sodass kein Abgleich der Kompatibilität durchgeführt werden konnte. +Für das Profil ISiKAbrechnungsfall wurde bis zum Zeitpunkt der Veröffentlichung kein Abgleich der Kompatibilität zu anderen Profilen (der KBV und der Medizininformatik-Initiative) durchgeführt. --- diff --git a/ImplementationGuide/markdown/Abrechnungsfall/Abrechnungsfall_Profil.md b/ImplementationGuide/markdown/Abrechnungsfall/Abrechnungsfall_Profil.md index f52cfa76..f99ab7ef 100644 --- a/ImplementationGuide/markdown/Abrechnungsfall/Abrechnungsfall_Profil.md +++ b/ImplementationGuide/markdown/Abrechnungsfall/Abrechnungsfall_Profil.md @@ -8,4 +8,22 @@ from StructureDefinition where url = 'https://gematik.de/fhir/isik/v3/Basismodul Weitere Hinweise zu den Abgrenzungen der Begrifflichkeiten Fall und Kontakt finden sie unter [Deutsche Basisprofile - Abschnitt Ambulanter/stationärer Fall / Kontakt (Encounter)](https://ig.fhir.de/basisprofile-de/1.2.0/Ressourcen-AmbulanterStationaererFall.html). +--- + +**Terminology Bindings** + +@``` +from StructureDefinition +where url in ('https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKAbrechnungsfall' ) +for differential.element +select +Path: path, +join binding.where(valueSet.exists()) +{ + Name: valueSet.substring((9 + valueSet.indexOf('ValueSet/'))), + Strength: strength, + URL: valueSet +} +``` + --- \ No newline at end of file diff --git a/ImplementationGuide/markdown/Angehoeriger/Angehoeriger_Interaktionen.md b/ImplementationGuide/markdown/Angehoeriger/Angehoeriger_Interaktionen.md index c1f56e9e..d0ebd2ba 100644 --- a/ImplementationGuide/markdown/Angehoeriger/Angehoeriger_Interaktionen.md +++ b/ImplementationGuide/markdown/Angehoeriger/Angehoeriger_Interaktionen.md @@ -18,7 +18,7 @@ Folgende Suchparameter sind für das Bestätigungsverfahren relevant, auch in Ko ```GET [base]/RelatedPerson?patient=Patient/123``` - Anwendungshinweise: Weitere Informationen zur Suche nach "RelatedPerson.patient" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Reference Search"](https://www.hl7.org/fhir/search.html#reference). + Anwendungshinweise: Weitere Informationen zur Suche nach "RelatedPerson.patient" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Reference Search"](https://www.hl7.org/fhir/R4/search.html#reference). 1. Die Suche nach einem beliebigen Bestandteil des Namens KANN unterstützt werden: @@ -30,4 +30,36 @@ Folgende Suchparameter sind für das Bestätigungsverfahren relevant, auch in Ko Anwendungshinweise: Weitere Informationen zur Suche nach "RelatedPerson.name" finden sich in der [FHIR-Basisspezifikation - Abschnitt "String Search"](https://hl7.org/fhir/R4/search.html#string). +1. Der Suchparameter "address" KANN unterstützt werden: + + Beispiele + + ```GET [base]/RelatedPerson?address=Berlin``` + + Anwendungshinweise: Weitere Informationen zur Suche nach "RelatedPerson.address" finden sich in der [FHIR-Basisspezifikation - Abschnitt "String Search"](https://hl7.org/fhir/R4/search.html#string). + + 1. Der Suchparameter "address-city" KANN unterstützt werden: + + Beispiele: + + ```GET [base]/RelatedPerson?address-city=Berlin``` + + Anwendungshinweise: Weitere Informationen zur Suche nach "RelatedPerson.address.city" finden sich in der [FHIR-Basisspezifikation - Abschnitt "String Search"](https://hl7.org/fhir/R4/search.html#string). + +1. Der Suchparameter "address-country" KANN unterstützt werden: + + Beispiele: + + ```GET [base]/RelatedPerson?address-country=DE``` + + Anwendungshinweise: Weitere Informationen zur Suche nach "RelatedPerson.address.country" finden sich in der [FHIR-Basisspezifikation - Abschnitt "String Search"](https://hl7.org/fhir/R4/search.html#string). + +1. Der Suchparameter "address-postalcode" KANN unterstützt werden: + + Beispiele: + + ```GET [base]/RelatedPerson?address-postalcode=10117``` + + Anwendungshinweise: Weitere Informationen zur Suche nach "RelatedPerson.address.postalCode" finden sich in der [FHIR-Basisspezifikation - Abschnitt "String Search"](https://hl7.org/fhir/R4/search.html#string). + --- \ No newline at end of file diff --git a/ImplementationGuide/markdown/Angehoeriger/Angehoeriger_Kompatibilitaet.md b/ImplementationGuide/markdown/Angehoeriger/Angehoeriger_Kompatibilitaet.md index 14193cae..96bd4aa7 100644 --- a/ImplementationGuide/markdown/Angehoeriger/Angehoeriger_Kompatibilitaet.md +++ b/ImplementationGuide/markdown/Angehoeriger/Angehoeriger_Kompatibilitaet.md @@ -1,11 +1,6 @@ ### Kompatibilität -Zum Zeitpunkt der Erstellung dieses Leitfadens waren keine geeigneten Basis-Profile zur Darstellung von Angehörigen bekannt. - -Instanzen, die gegen dieses Profil valide sind, sind auch valide gegen: - * [Profil Bezugsperson der KBV Archiv- und Wechselschnittstelle - v1.2.0](https://simplifier.net/pvs-archivierungs-undwechselschnittstelle/kbvprawbezugsperson) - * sofern für den Angehörigen mindestens ein Vor- und Nachname angegeben wurde. - * wenn die Ressource einen Narrative enthält und in den Metadaten die Canonical-URL des KBV-Profile angegeben wird +Für das Profil ISiKAngehoeriger wurde bis zum Zeitpunkt der Veröffentlichung kein Abgleich der Kompatibilität zu anderen Profilen (der KBV und der Medizininformatik-Initiative) durchgeführt. --- diff --git a/ImplementationGuide/markdown/BerichtSubsystem/BerichtSubsystem_AnmerkungenZuDenMustSupportFeldern.md b/ImplementationGuide/markdown/BerichtSubsystem/BerichtSubsystem_AnmerkungenZuDenMustSupportFeldern.md index fff30947..319bef3e 100644 --- a/ImplementationGuide/markdown/BerichtSubsystem/BerichtSubsystem_AnmerkungenZuDenMustSupportFeldern.md +++ b/ImplementationGuide/markdown/BerichtSubsystem/BerichtSubsystem_AnmerkungenZuDenMustSupportFeldern.md @@ -63,7 +63,7 @@ Beispiel: **Bedeutung:** Patientenbezug des Dokumentes -### `Composition.context` +### `Composition.encounter` **Bedeutung:** Fallbezug des Dokumentes diff --git a/ImplementationGuide/markdown/BerichtSubsystem/BerichtSubsystem_Interaktionen.md b/ImplementationGuide/markdown/BerichtSubsystem/BerichtSubsystem_Interaktionen.md index 5b0101a6..04e2bcc1 100644 --- a/ImplementationGuide/markdown/BerichtSubsystem/BerichtSubsystem_Interaktionen.md +++ b/ImplementationGuide/markdown/BerichtSubsystem/BerichtSubsystem_Interaktionen.md @@ -6,7 +6,7 @@ Die Rückübermittlung eines Document-Bundles an ein Primärsystem erfolgt mitte `POST [base]/` mit einer FHIR-Bundle Ressource im Request-Body. - Anwendungshinweise: Weitere Informationen zu den verschiedenen Endpunkten für Dokumente finden sich in der [FHIR-Basisspezifikation - Abschnitt "Document End-Points"](https://www.hl7.org/fhir/documents.html#bundle). + Anwendungshinweise: Weitere Informationen zu den verschiedenen Endpunkten für Dokumente finden sich in der [FHIR-Basisspezifikation - Abschnitt "Document End-Points"](https://www.hl7.org/fhir/R4/documents.html#bundle). Das Bundle dient der Aggregation aller Ressourcen, die Bestandteil des Dokumentes sind. Dabei ist die erste Ressource im Bundle (Bundle.entry.resource) stets eine Composition, alle weiteren Entries enthalten zusätzliche Ressourcen, auf die die Composition verweist. @@ -27,8 +27,9 @@ In der aktuellen Ausbaustufe von ISiK MUSS ein empfangenes Dokument in folgenden 4. Hinzufügen des Dokumentes und seiner Metadaten zur Fallakte des Patienten. 5. Visualisierung des Dokumentes und seiner Metadaten in der Fallakte des Patienten -{{render:ImplementationGuide/Images/Composition-Bundle.png}} -*Die Grafik zeigt an einem vereinfachten Beispiel die Zuordnung des HTML-Dokumentes zu Patient und Kontakt in der aktuellen Ausbaustufe von ISiK (schwarze Pfeile). Die grauen Pfeile deuten die Übernahme strukturierter Daten, wie sie in weiteren Ausbaustufen erforderlich wird.* +<img src="https://raw.githubusercontent.com/gematik/spec-ISiK-Basismodul/main-isik-stufe-3/Material/images/diagrams/Composition_Bundle.svg" alt="Composition Bundle" width="90%"/> + +Die Grafik zeigt an einem vereinfachten Beispiel die Zuordnung des HTML-Dokumentes zu Patient und Kontakt in der aktuellen Ausbaustufe von ISiK (schwarze Pfeile). Die grauen Pfeile deuten die Übernahme strukturierter Daten, wie sie in weiteren Ausbaustufen erforderlich wird. ### Hinweise zum Umgang mit der menschenlesbaren Repräsentation @@ -57,7 +58,7 @@ Folgende Fälle sind zu beachten um eine Patient-/ und Encounter-Ressource aus d ### Persistierung der menschenlesbaren Repräsentation Das Narrative der Ressource KANN innerhalb einer DocumentReference-Ressource persistiert werden. Zum derzeitigen Zeitpunkt obliegt es der jeweiligen Implementierung wie diese DocumentReference Ressource ausgestaltet ist. -Ein Mapping der Composition-Metadaten auf DocumentReference-Metadaten KANN der FHIR Kernspezifikation entnommen werden. Siehe [Abschnitt "2.42.8.7 FHIR Composition"](https://www.hl7.org/fhir/documentreference-mappings.html#fhircomposition). +Ein Mapping der Composition-Metadaten auf DocumentReference-Metadaten KANN der FHIR Kernspezifikation entnommen werden. Siehe [Abschnitt "2.42.8.7 FHIR Composition"](https://www.hl7.org/fhir/R4/documentreference-mappings.html#fhircomposition). Das Narrative MUSS als Binary-Ressource unter DocumentReference.content.attachment.url angegeben werden. diff --git a/ImplementationGuide/markdown/BerichtSubsystem/BerichtSubsystem_Motivation.md b/ImplementationGuide/markdown/BerichtSubsystem/BerichtSubsystem_Motivation.md index fa4c909c..541a040c 100644 --- a/ImplementationGuide/markdown/BerichtSubsystem/BerichtSubsystem_Motivation.md +++ b/ImplementationGuide/markdown/BerichtSubsystem/BerichtSubsystem_Motivation.md @@ -16,6 +16,6 @@ In weiteren Ausbaustufen von ISiK soll darüber hinaus eine Übernahme der struk Es obliegt dabei dem Ermessen des Herstellers, ob die Übernahme strukturierter Daten in das Primärsystem automatisch erfolgt, oder durch den Benutzer initiiert wird. -Die Berichte werden, wie von der [FHIR Spezifikation für die Composition Ressource vorgesehen](https://www.hl7.org/fhir/composition.html), in einem FHIR-Bundle versendet. +Die Berichte werden, wie von der [FHIR Spezifikation für die Composition Ressource vorgesehen](https://www.hl7.org/fhir/R4/composition.html), in einem FHIR-Bundle versendet. --- diff --git a/ImplementationGuide/markdown/Binary/Binary_Interaktionen.md b/ImplementationGuide/markdown/Binary/Binary_Interaktionen.md index c967c62b..f44af135 100644 --- a/ImplementationGuide/markdown/Binary/Binary_Interaktionen.md +++ b/ImplementationGuide/markdown/Binary/Binary_Interaktionen.md @@ -1,5 +1,5 @@ ### Interaktionen -Für die Ressource Binary MUSS die REST-Interaktion "READ" implementiert werden. Es MÜSSEN die Regeln aus der FHIR-Kernspezifikation zur Abfrage einer Binary Ressource beachtet werden. Siehe ["Serving Binary Resources using the RESTful API"](https://www.hl7.org/fhir/binary.html#rest). +Für die Ressource Binary MUSS die REST-Interaktion "READ" implementiert werden. Es MÜSSEN die Regeln aus der FHIR-Kernspezifikation zur Abfrage einer Binary Ressource beachtet werden. Siehe ["Serving Binary Resources using the RESTful API"](https://www.hl7.org/fhir/R4/binary.html#rest). --- diff --git a/ImplementationGuide/markdown/Binary/Binary_Kompatibilitaet.md b/ImplementationGuide/markdown/Binary/Binary_Kompatibilitaet.md index b4a2f48e..1c98bb17 100644 --- a/ImplementationGuide/markdown/Binary/Binary_Kompatibilitaet.md +++ b/ImplementationGuide/markdown/Binary/Binary_Kompatibilitaet.md @@ -1,3 +1,3 @@ ### Kompatibilität -Zum Zeitpunkt der Veröffentlichung waren keine weiteren Profile in nationalen Spezifikationen für dieses Datenobjekt bekannt. \ No newline at end of file +Für das Profil ISiKBinary wurde bis zum Zeitpunkt der Veröffentlichung kein Abgleich der Kompatibilität zu anderen Profilen (der KBV und der Medizininformatik-Initiative) durchgeführt. \ No newline at end of file diff --git a/ImplementationGuide/markdown/Binary/Binary_Motivation.md b/ImplementationGuide/markdown/Binary/Binary_Motivation.md index 28d8c04f..0f5175ec 100644 --- a/ImplementationGuide/markdown/Binary/Binary_Motivation.md +++ b/ImplementationGuide/markdown/Binary/Binary_Motivation.md @@ -6,4 +6,7 @@ Dazu werden die Daten base64-codiert in der Binary-Ressource (in XML oder JSON) Binary-Ressourcen werden von Attachment-Elementen verlinkt und damit in den Kontext anderer FHIR-Ressourcen (z.B. Patient und Encounter) gestellt. +Das ISIK-Binary-Profil ist *nicht* Bestandteil der Implementierung des ISIK Basismoduls. +Das Profil ist Teil des ISIK Basismoduls, da es als übergreifend genutzte Ressource sowohl im [Modul Terminplanung](https://simplifier.net/guide/Implementierungsleitfaden-ISiK-Modul-Terminplanung-Stufe-3/ImplementationGuide-markdown-Datenobjekte?version=current) als auch im [Modul Dokumentenaustausch](https://simplifier.net/guide/Implementierungsleitfaden-ISiK-Modul-Dokumentenaustausch-Stufe-3/ImplementationGuide-markdown-Datenobjekte?version=current) implementiert werden muss. + --- diff --git a/ImplementationGuide/markdown/Datenobjekte/Datenobjekte.md b/ImplementationGuide/markdown/Datenobjekte/Datenobjekte.md index af7cc9eb..6b5151e0 100644 --- a/ImplementationGuide/markdown/Datenobjekte/Datenobjekte.md +++ b/ImplementationGuide/markdown/Datenobjekte/Datenobjekte.md @@ -2,5 +2,4 @@ In den folgenden Unterkapiteln werden die ISiK-Datenobjekte, die in dem vereinfachten Informationsmodell dargestellt sind, und ihre FHIR-Spezifikation beschrieben. -{{render:ImplementationGuide/Images/Infomodel.png}} -*Vereinfachtes Informationsmodell* +<img src="https://raw.githubusercontent.com/gematik/spec-ISiK-Basismodul/main-isik-stufe-3/Material/images/diagrams/Vereinfachtes_Infomodell.svg" alt="Vereinfachtes Infomodell" width="90%"/> diff --git a/ImplementationGuide/markdown/DecisionLog.md b/ImplementationGuide/markdown/DecisionLog.md new file mode 100644 index 00000000..e5ab113a --- /dev/null +++ b/ImplementationGuide/markdown/DecisionLog.md @@ -0,0 +1,30 @@ +# Decision Log + +---- +Version: Technical Correction 3.0.2 + +Datum: 11.12.2023 + +* Problem: Das Datenobjekt RelatedPerson sollte einen optionalen Suchparameter enthalten für .address, da das Element ein MS-Flag besitzt. + * Option A: Hinzufügen optionaler Suchparameter für die UCs: + * Suchabfragen von Angehörigen mit Hilfe der Adresse + * Suchabfragen von Angehörigen mit Hilfe der Adresse unter Angabe der Stadt + * Suchabfragen von Angehörigen mit Hilfe der Adresse unter Angabe des Ländercodes + * Suchabfragen von Angehörigen mit Hilfe der Adresse unter Angabe der Postleihzahl + * Option B (ggf. mit Nennung der Risiken): Keine Änderung. + * Risiko: könnte ggf. zu Abweichung bei den oben gelisteten Abfragen führen, bei Implementierung abweichender Custom-Suchparameter. + * Entscheidung: Option A - umgesetzt hier: Add new optional SearchParameter for RelatedPerson.address - https://github.com/gematik/spec-ISiK-Basismodul/pull/345/commits/beca71aaae70538f52f934a072928e93d23fd6fd + + ---- + +Version: 3.0.1 + +Datum: 05.12.2023 + +* Problem: SNOMED Code (103693007|Diagnostic procedure) zur Codierung einer Prozeduren-Kategorie wurde zurückgezogen. + * Option A (ggf. mit Nennung der Risiken): Der obsolete Code wird ersetzt (165197003|Diagnostic assessment), um zu verhindern, dass Terminologieserver diesen nicht verarbeiten können. + * Risiko: Ein Breaking Change wird eingeführt. + * Option B (ggf. mit Nennung der Risiken): Der obsolete Code wird nicht angepasst, um einen Breaking Change zu vermeiden, mit dem Risiko, dass Terminologieserver diesen nicht verarbeiten können. + * Entscheidung: Option A - umgesetzt hier: obsoleter SNOMED Code ersetzt: https://github.com/gematik/spec-ISiK-Basismodul/pull/322/commits/d72f3a08a41b999074b4f33db299d5d71cd04be9 + + diff --git a/ImplementationGuide/markdown/Diagnose/Diagnose_AnmerkungenZuDenMustSupportFeldern.md b/ImplementationGuide/markdown/Diagnose/Diagnose_AnmerkungenZuDenMustSupportFeldern.md index 5a5f22a0..8fdc5ae3 100644 --- a/ImplementationGuide/markdown/Diagnose/Diagnose_AnmerkungenZuDenMustSupportFeldern.md +++ b/ImplementationGuide/markdown/Diagnose/Diagnose_AnmerkungenZuDenMustSupportFeldern.md @@ -6,7 +6,7 @@ **Hinweise:** -[FHIRPath Constraints seitens der FHIR-Kernspezifikation](https://www.hl7.org/fhir/condition.html#invs) rund um Condition.clinicalStatus sind zu beachten. +[FHIRPath Constraints seitens der FHIR-Kernspezifikation](https://www.hl7.org/fhir/R4/condition.html#invs) rund um Condition.clinicalStatus sind zu beachten. ### `Condition.code.coding` diff --git a/ImplementationGuide/markdown/Diagnose/Diagnose_Interaktionen.md b/ImplementationGuide/markdown/Diagnose/Diagnose_Interaktionen.md index d74754b8..d613b501 100644 --- a/ImplementationGuide/markdown/Diagnose/Diagnose_Interaktionen.md +++ b/ImplementationGuide/markdown/Diagnose/Diagnose_Interaktionen.md @@ -28,7 +28,7 @@ Folgende Suchparameter sind für das Bestätigungsverfahren relevant, auch in Ko ```GET [base]/Condition?patient=Patient/123``` - Anwendungshinweise: Weitere Informationen zur Suche nach "Condition.subject" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Reference Search"](https://www.hl7.org/fhir/search.html#reference). + Anwendungshinweise: Weitere Informationen zur Suche nach "Condition.subject" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Reference Search"](https://www.hl7.org/fhir/R4/search.html#reference). Dieser Suchparameter ist für die Umsetzung des IHE QEDm Profils verpflichtend. @@ -38,7 +38,7 @@ Folgende Suchparameter sind für das Bestätigungsverfahren relevant, auch in Ko ```GET [base]/Condition?subject=Patient/123``` - Anwendungshinweise: Weitere Informationen zur Suche nach "Condition.subject" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Reference Search"](https://www.hl7.org/fhir/search.html#reference). + Anwendungshinweise: Weitere Informationen zur Suche nach "Condition.subject" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Reference Search"](https://www.hl7.org/fhir/R4/search.html#reference). 1. Der Suchparameter "encounter" MUSS unterstützt werden: @@ -46,7 +46,7 @@ Folgende Suchparameter sind für das Bestätigungsverfahren relevant, auch in Ko ```GET [base]/Condition?encounter=Patient/123``` - Anwendungshinweise: Weitere Informationen zur Suche nach "Condition.encounter" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Reference Search"](https://www.hl7.org/fhir/search.html#reference). + Anwendungshinweise: Weitere Informationen zur Suche nach "Condition.encounter" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Reference Search"](https://www.hl7.org/fhir/R4/search.html#reference). 1. Der Suchparameter "recorded-date" MUSS unterstützt werden: @@ -76,7 +76,7 @@ Folgende Suchparameter sind für das Bestätigungsverfahren relevant, auch in Ko Beispiele: - ```GET [base]/Condition?category=https://hl7.org/fhir/R4/ValueSet/condition-category|problem-list-item``` + ```GET [base]/Condition?category=http://hl7.org/fhir/ValueSet/condition-category|problem-list-item``` Anwendungshinweise: Weitere Informationen zur Suche nach "category" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Token Search"](https://hl7.org/fhir/R4/search.html#token). diff --git a/ImplementationGuide/markdown/Diagnose/Diagnose_Kompatibilitaet.md b/ImplementationGuide/markdown/Diagnose/Diagnose_Kompatibilitaet.md index f4f0ee6d..ea07d9a2 100644 --- a/ImplementationGuide/markdown/Diagnose/Diagnose_Kompatibilitaet.md +++ b/ImplementationGuide/markdown/Diagnose/Diagnose_Kompatibilitaet.md @@ -1,18 +1,9 @@ ### Kompatibilität -Dieses Profil basiert auf dem [Profil "Diagnose" der Medizininformatik-Initative](https://simplifier.net/medizininformatikinitiative-moduldiagnosen/diagnose). -Instanzen, die gegen ISiKDiagnose valide sind, sind auch valide gegen: - -* [das Profil ProfileConditionDiagnose der Medizininformatik-Initative - v2.0.0](https://simplifier.net/medizininformatikinitiative-moduldiagnosen/diagnose) - * wenn unter `Condition.code.coding` mindestens eine codierte Darstellung der Diagnose angegeben wurde - -* [das Profil KBV_PR_Base_Diagnosis der KBV - v1.2.1](https://simplifier.net/packages/kbv.basis/1.2.1) - * wenn unter `Condition.code.coding` mindestens eine codierte Darstellung der Diagnose angegeben wurde - -* [das Profil KBV_PR_EAU_Condition_ICD der KBV - v1.0.2](https://simplifier.net/packages/kbv.ita.eau/1.0.2) - * wenn unter `Condition.code.coding` mindestens eine ICD-10-codierte Darstellung der Diagnose angegeben wurde - * wenn unter `Condition.verificationStatus` ein Wert angegeben wurde - * wenn unter `Condition.asserter` eine Referenz auf einen Practitioner angegeben werden. +Für das Profil ISiKDiagnose wird eine Kompatibilität mit folgenden Profilen angestrebt; allerdings kann nicht sichergestellt werden, dass Instanzen, die gegen ISiKDiagnose valide sind, auch valide sind gegen: +* [das Profil ProfileConditionDiagnose der Medizininformatik-Initative](https://www.medizininformatik-initiative.de/fhir/core/modul-diagnose/StructureDefinition/Diagnose) +* [das Profil KBV_PR_Base_Condition_Diagnosis der KBV](https://fhir.kbv.de/StructureDefinition/KBV_PR_Base_Condition_Diagnosis) +Hinweise zu Inkompatibilitäten können über die [Portalseite](https://service.gematik.de/servicedesk/customer/portal/16) gemeldet werden. --- \ No newline at end of file diff --git a/ImplementationGuide/markdown/Diagnose/Diagnose_Profil.md b/ImplementationGuide/markdown/Diagnose/Diagnose_Profil.md index be7215b1..9fd023e2 100644 --- a/ImplementationGuide/markdown/Diagnose/Diagnose_Profil.md +++ b/ImplementationGuide/markdown/Diagnose/Diagnose_Profil.md @@ -20,7 +20,7 @@ Folgende FHIRPath-Constraints sind im Profil zu beachten: @``` from StructureDefinition -where url in ('https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKKontaktGesundheitseinrichtung' ) +where url in ('https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKDiagnose' ) for differential.element select Path: path, diff --git a/ImplementationGuide/markdown/Einfuehrung.md b/ImplementationGuide/markdown/Einfuehrung.md index 37a6e915..9bd9befe 100644 --- a/ImplementationGuide/markdown/Einfuehrung.md +++ b/ImplementationGuide/markdown/Einfuehrung.md @@ -1,47 +1,47 @@ -<img src="https://raw.githubusercontent.com/gematik/spec-ISiK-Basismodul/master-isik-stufe-2/Material/Gematik_Logo_Flag.png" alt="gematik logo" width="400"/> - ----- -Version: 3.0.0 - -Datum: 01.07.2023 - -Status: Aktiv - -Realm: Deutschland - - - -Abgekündigte Versionen oder Zwischenveröffentlichungen der Implementierungsleitfäden finden Sie unter: https://gematik.github.io/spec-ISiK-Basismodul/index.html - - ----- - - -# Interoperabler Datenaustausch durch Informationssysteme im Krankenhaus (ISiK) - -Die gematik wurde vom Gesetzgeber beauftragt, im Benehmen mit der Deutschen Krankenhausgesellschaft (DKG) und den maßgeblichen Bundesverbänden der Industrie im Gesundheitswesen, verbindliche Standards für den Austausch von Gesundheitsdaten mit Informationssystemen im Krankenhaus zu erarbeiten. Dieser FHIR ImplementationGuide (IG) beschreibt die für diesen Zweck entwickelten FHIR Profile und das [REST](https://de.wikipedia.org/wiki/Representational_State_Transfer)-basierte Application Programming Interface (API). Die REST-API wird im Wesentlichen [vom FHIR Standard vorgegeben](https://www.hl7.org/fhir/http.html). Dieser Leitfaden konkretisiert die ISiK-relevanten Funktionen der Standard-REST-API und trifft inhaltliche Festlegungen zu den ISiK-relevanten Ressourcen in Form von Ressourcen-Profilen. - -Hersteller bestätigungsrelevanter Systeme sollen durch diesen IG in die Lage versetzt werden, eine konforme Implementierung zu erstellen und das Bestätigungsverfahren der gematik erfolgreich zu absolvieren. - -Weitere Informationen siehe [§373 SGB V](https://www.gesetze-im-internet.de/sgb_5/__373.html). - -Hinweis: Sowohl für die Implementierung der ISiK-Spezifikation als auch für den Betrieb eines Produktes, das die ISiK-Spezifikation implementiert, ist eine SNOMED-CT-Lizenz notwendig. Diese kann beim [National Release Center für SNOMED CT in Deutschland](https://www.bfarm.de/DE/Kodiersysteme/Terminologien/SNOMED-CT/_node.html) beantragt werden. - -**Kontakt** - -Bringen Sie Allgemeine Fragen und Anmerkungen gerne über unser Anfrageportal ein: [Anfragen ISiK + ISiP](https://service.gematik.de/servicedesk/customer/portal/16) - -Falls Sie keinen Zugang zum Anfrageportal haben und dieses nutzen wollen, senden Sie uns bitte eine Nachricht an die Adresse isik [ at ] gematik.de mit dem Betreff "Portalzugang". - -**Herausgeber** - -gematik GmbH - -[Impressum](https://www.gematik.de/impressum/) - -**Gender-Hinweis** - -Zugunsten des Leseflusses wird in dieser Publikation meist die -männliche Form verwendet. Wir bitten, dies nicht als Zeichen einer -geschlechtsspezifischen Wertung zu deuten. Diese Variante deckt auch alle -weiteren Geschlechter, neben männlich und weiblich, ab. +<img src="https://raw.githubusercontent.com/gematik/spec-ISiK-Basismodul/main-isik-stufe-3/Material/images/Gematik_Logo_Flag.svg" alt="gematik logo" width="400"/> + +---- +Version: 4.0.0-rc + +Datum: 16.01.2024 + +Status: Draft + +Realm: Deutschland + + + +Abgekündigte Versionen oder Zwischenveröffentlichungen der Implementierungsleitfäden finden Sie unter: https://gematik.github.io/spec-ISiK-Basismodul/index.html + + +---- + + +# Interoperabler Datenaustausch durch Informationssysteme im Krankenhaus (ISiK) + +Die gematik wurde vom Gesetzgeber beauftragt, im Benehmen mit der Deutschen Krankenhausgesellschaft (DKG) und den maßgeblichen Bundesverbänden der Industrie im Gesundheitswesen, verbindliche Standards für den Austausch von Gesundheitsdaten mit Informationssystemen im Krankenhaus zu erarbeiten. Dieser FHIR ImplementationGuide (IG) beschreibt die für diesen Zweck entwickelten FHIR Profile und das [REST](https://de.wikipedia.org/wiki/Representational_State_Transfer)-basierte Application Programming Interface (API). Die REST-API wird im Wesentlichen [vom FHIR Standard vorgegeben](https://www.hl7.org/fhir/R4/http.html). Dieser Leitfaden konkretisiert die ISiK-relevanten Funktionen der Standard-REST-API und trifft inhaltliche Festlegungen zu den ISiK-relevanten Ressourcen in Form von Ressourcen-Profilen. + +Hersteller bestätigungsrelevanter Systeme sollen durch diesen IG in die Lage versetzt werden, eine konforme Implementierung zu erstellen und das Bestätigungsverfahren der gematik erfolgreich zu absolvieren. + +Weitere Informationen siehe [§373 SGB V](https://www.gesetze-im-internet.de/sgb_5/__373.html). + +Hinweis: Sowohl für die Implementierung der ISiK-Spezifikation als auch für den Betrieb eines Produktes, das die ISiK-Spezifikation implementiert, ist eine SNOMED-CT-Lizenz notwendig. Diese kann beim [National Release Center für SNOMED CT in Deutschland](https://www.bfarm.de/DE/Kodiersysteme/Terminologien/SNOMED-CT/_node.html) beantragt werden. + +**Kontakt** + +Bringen Sie Allgemeine Fragen und Anmerkungen gerne über unser Anfrageportal ein: [Anfragen ISiK + ISiP](https://service.gematik.de/servicedesk/customer/portal/16) + +Falls Sie keinen Zugang zum Anfrageportal haben und dieses nutzen wollen, senden Sie uns bitte eine Nachricht an die Adresse isik [ at ] gematik.de mit dem Betreff "Portalzugang". + +**Herausgeber** + +gematik GmbH + +[Impressum](https://www.gematik.de/impressum/) + +**Gender-Hinweis** + +Zugunsten des Leseflusses wird in dieser Publikation meist die +männliche Form verwendet. Wir bitten, dies nicht als Zeichen einer +geschlechtsspezifischen Wertung zu deuten. Diese Variante deckt auch alle +weiteren Geschlechter, neben männlich und weiblich, ab. diff --git a/ImplementationGuide/markdown/Katalog/CodeSystem_AnmerkungenZuDenMustSupportFeldern.md b/ImplementationGuide/markdown/Katalog/CodeSystem_AnmerkungenZuDenMustSupportFeldern.md index 843b72b1..d1ead5b0 100644 --- a/ImplementationGuide/markdown/Katalog/CodeSystem_AnmerkungenZuDenMustSupportFeldern.md +++ b/ImplementationGuide/markdown/Katalog/CodeSystem_AnmerkungenZuDenMustSupportFeldern.md @@ -16,7 +16,7 @@ **Bedeutung:** Maschinenlesbarer Name des CodeSystems -**Hinweise:** Der Constraint [cps-0](https://www.hl7.org/fhir/codesystem.html#invs) ist hierbei zu beachten. +**Hinweise:** Der Constraint [cps-0](https://www.hl7.org/fhir/R4/codesystem.html#invs) ist hierbei zu beachten. ### `CodeSystem.status` diff --git a/ImplementationGuide/markdown/Katalog/CodeSystem_Interaktionen.md b/ImplementationGuide/markdown/Katalog/CodeSystem_Interaktionen.md index 4875337b..4196437a 100644 --- a/ImplementationGuide/markdown/Katalog/CodeSystem_Interaktionen.md +++ b/ImplementationGuide/markdown/Katalog/CodeSystem_Interaktionen.md @@ -18,7 +18,7 @@ Folgende Suchparameter sind für das Bestätigungsverfahren relevant, auch in Ko ```GET [base]/CodeSystem?url=http://example.org/fhir/CodeSystem/test``` - Anwendungshinweise: Weitere Informationen zur Suche nach "CodeSystem.url" finden sich in der [FHIR-Basisspezifikation - Abschnitt "uri"](https://www.hl7.org/fhir/search.html#uri). + Anwendungshinweise: Weitere Informationen zur Suche nach "CodeSystem.url" finden sich in der [FHIR-Basisspezifikation - Abschnitt "uri"](https://www.hl7.org/fhir/R4/search.html#uri). 1. Der Suchparameter "name" MUSS unterstützt werden: diff --git a/ImplementationGuide/markdown/Katalog/CodeSystem_Kompatibilitaet.md b/ImplementationGuide/markdown/Katalog/CodeSystem_Kompatibilitaet.md index b4a2f48e..f76cfeaf 100644 --- a/ImplementationGuide/markdown/Katalog/CodeSystem_Kompatibilitaet.md +++ b/ImplementationGuide/markdown/Katalog/CodeSystem_Kompatibilitaet.md @@ -1,3 +1,3 @@ ### Kompatibilität -Zum Zeitpunkt der Veröffentlichung waren keine weiteren Profile in nationalen Spezifikationen für dieses Datenobjekt bekannt. \ No newline at end of file +Für das Profil ISiKCodeSystem wurde bis zum Zeitpunkt der Veröffentlichung kein Abgleich der Kompatibilität zu anderen Profilen (der KBV und der Medizininformatik-Initiative) durchgeführt. \ No newline at end of file diff --git a/ImplementationGuide/markdown/KontaktGesundheitseinrichtung/Kontakt_Interaktionen.md b/ImplementationGuide/markdown/KontaktGesundheitseinrichtung/Kontakt_Interaktionen.md index 7935df36..70405003 100644 --- a/ImplementationGuide/markdown/KontaktGesundheitseinrichtung/Kontakt_Interaktionen.md +++ b/ImplementationGuide/markdown/KontaktGesundheitseinrichtung/Kontakt_Interaktionen.md @@ -50,7 +50,7 @@ Folgende Suchparameter sind für das Bestätigungsverfahren relevant, auch in Ko ```GET [base]/Encounter?subject=Patient/123``` - Anwendungshinweise: Weitere Informationen zur Suche nach "Encounter.subject" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Reference Search"](https://www.hl7.org/fhir/search.html#reference). + Anwendungshinweise: Weitere Informationen zur Suche nach "Encounter.subject" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Reference Search"](https://www.hl7.org/fhir/R4/search.html#reference). 1. Der Suchparameter "patient" MUSS unterstützt werden: @@ -58,7 +58,7 @@ Folgende Suchparameter sind für das Bestätigungsverfahren relevant, auch in Ko ```GET [base]/Encounter?patient=Patient/123``` - Anwendungshinweise: Weitere Informationen zur Suche nach "Encounter.subject" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Reference Search"](https://www.hl7.org/fhir/search.html#reference). + Anwendungshinweise: Weitere Informationen zur Suche nach "Encounter.subject" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Reference Search"](https://www.hl7.org/fhir/R4/search.html#reference). Dieser Suchparameter ist für die Umsetzung des IHE QEDm Profils verpflichtend. @@ -70,7 +70,7 @@ Folgende Suchparameter sind für das Bestätigungsverfahren relevant, auch in Ko ```GET [base]/Encounter?account:identifier=https://example.org/fhir/sid/abrechnungsfallnr|123456``` - Anwendungshinweise: Weitere Informationen zur Suche nach "Encounter.account" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Reference Search"](https://www.hl7.org/fhir/search.html#reference). + Anwendungshinweise: Weitere Informationen zur Suche nach "Encounter.account" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Reference Search"](https://www.hl7.org/fhir/R4/search.html#reference). 1. Der Suchparameter "date" MUSS unterstützt werden: @@ -96,7 +96,7 @@ Folgende Suchparameter sind für das Bestätigungsverfahren relevant, auch in Ko ```GET [base]/Encounter?end-date=lt2020-26-10``` - Anwendungshinweise: Bei diesem custom Suchparameter handelt es sich um eine Lösung, die aus einer [abweichenden FHIR-Version (R5)](https://hl7.org/fhir/SearchParameter/Encounter-end-date) stammt. Weitere Informationen zur Suche nach "Encounter.period" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Date Search"](https://hl7.org/fhir/R4/search.html#date). + Anwendungshinweise: Bei diesem custom Suchparameter handelt es sich um eine Lösung, die aus einer [abweichenden FHIR-Version (R5)](https://hl7.org/fhir/R5/SearchParameter/Encounter-end-date) stammt. Weitere Informationen zur Suche nach "Encounter.period" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Date Search"](https://hl7.org/fhir/R4/search.html#date). 1. Der Suchparameter "location" KANN unterstützt werden: @@ -104,7 +104,7 @@ Folgende Suchparameter sind für das Bestätigungsverfahren relevant, auch in Ko ```GET [base]/Encounter?location=Location/test``` - Anwendungshinweise: Weitere Informationen zur Suche nach "Encounter.location" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Reference Search"](https://www.hl7.org/fhir/search.html#reference). + Anwendungshinweise: Weitere Informationen zur Suche nach "Encounter.location" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Reference Search"](https://www.hl7.org/fhir/R4/search.html#reference). 1. Der Suchparameter "service-provider" KANN unterstützt werden: @@ -112,7 +112,7 @@ Folgende Suchparameter sind für das Bestätigungsverfahren relevant, auch in Ko ```GET [base]/Encounter?service-provider=Organization/test``` - Anwendungshinweise: Weitere Informationen zur Suche nach "Encounter.serviceProvider" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Reference Search"](https://www.hl7.org/fhir/search.html#reference). + Anwendungshinweise: Weitere Informationen zur Suche nach "Encounter.serviceProvider" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Reference Search"](https://www.hl7.org/fhir/R4/search.html#reference). 1. Der Suchparameter "_profile" KANN unterstützt werden: diff --git a/ImplementationGuide/markdown/KontaktGesundheitseinrichtung/Kontakt_Kompatibilitaet.md b/ImplementationGuide/markdown/KontaktGesundheitseinrichtung/Kontakt_Kompatibilitaet.md index 22875157..549ee07c 100644 --- a/ImplementationGuide/markdown/KontaktGesundheitseinrichtung/Kontakt_Kompatibilitaet.md +++ b/ImplementationGuide/markdown/KontaktGesundheitseinrichtung/Kontakt_Kompatibilitaet.md @@ -1,8 +1,8 @@ ### Kompatibilität -Dieses Profil basiert auf dem Profil [KontaktGesundheitseinrichtung der Medizininformatik-Initiative](https://simplifier.net/medizininformatikinitiative-modulfall/kontaktgesundheitseinrichtung). +Für das Profil ISiKKontaktGesundheitseinrichtung wird eine Kompatibilität mit folgenden Profilen angestrebt; allerdings kann nicht sichergestellt werden, dass Instanzen, die gegen ISiKKontaktGesundheitseinrichtung valide sind, auch valide sind gegen: +* [Profil Kontakt mit einer Gesundheitseinrichtung der Medizininformatik-Initiative](https://www.medizininformatik-initiative.de/fhir/core/modul-fall/StructureDefinition/KontaktGesundheitseinrichtung) -Instanzen, die gegen ISiKKontaktGesundheitseinrichtung valide sind, sind auch valide gegen -* [Profil KontaktGesundheitseinrichtung der Medizininformatik-Initiative - v2.0.0](https://simplifier.net/medizininformatikinitiative-modulfall/kontaktgesundheitseinrichtung) +Hinweise zu Inkompatibilitäten können über die [Portalseite](https://service.gematik.de/servicedesk/customer/portal/16) gemeldet werden.. --- diff --git a/ImplementationGuide/markdown/KontaktGesundheitseinrichtung/Kontakt_Motivation.md b/ImplementationGuide/markdown/KontaktGesundheitseinrichtung/Kontakt_Motivation.md index c45f72c2..1d1888aa 100644 --- a/ImplementationGuide/markdown/KontaktGesundheitseinrichtung/Kontakt_Motivation.md +++ b/ImplementationGuide/markdown/KontaktGesundheitseinrichtung/Kontakt_Motivation.md @@ -21,11 +21,11 @@ Der stationäre Aufenthalt oder der ambulante Kontakt eines Patienten in einer G * **Abrechnungsfall (Account):** Der Fall, im Sinne einer Gruppierung von medizinischen Leistungen, die in einem gemeinsamen Kontext abgerechnet werden, sind in FHIR durch die Ressource Account repräsentiert. Ein Abrechnungsfall kann mehrere Encounter umfassen (z.B. vorstationärer Besuch, stationärer Aufenthalt und nachstationäre Besuche) -{{render:ImplementationGuide/Images/Encounter-Modell-Abrechnung.png}} +{{render:Material/Images/Encounter-Modell-Abrechnung.png}} * **Medizinischer Fall (EpisodeOfCare):** Der medizinische Fall gruppiert Informationen, die im Kontext einer gemeinsamen (Dauer-)Diagnose stehen und wird in FHIR durch die EpisodeOfCare dargestellt. -{{render:ImplementationGuide/Images/Encounter-Modell-Medizinisch.png}} +{{render:Material/Images/Encounter-Modell-Medizinisch.png}} --- @@ -43,7 +43,7 @@ Als Kontakt des Patienten mit konkreten Servicestellen, wie z.B. Radiologie oder Zur Unterscheidung der verschiedenen Kontaktebenen wird in der MI-I eine Codierung in `Encounter.type` verwendet. Die Hierarchie der Encounter wird über die `Encounter.partOf`-Relation hergestellt. Ambulante Besuche werden in dem Modell derzeit noch nicht berücksichtigt. -{{render:ImplementationGuide/Images/Encounter-Modell-MII.png}} +{{render:Material/Images/Encounter-Modell-MII.png}} --- @@ -51,7 +51,7 @@ Zur Unterscheidung der verschiedenen Kontaktebenen wird in der MI-I eine Codieru Für die Ausbaustufe 2 und 3 des ISiK Basismoduls werden alle zuvor genannten Sichtweise und Modelle berücksichtigt: -{{render:ImplementationGuide/Images/Encounter-Modelle.png}} +{{render:Material/Images/Encounter-Modelle.png}} Verpflichtend umzusetzen ist für die bestätigungsrelevanten Systeme der Account, im Sinne der Gruppierung einzelner Besuche, zu einem gemeinsamen (Abrechnungs-)Fall sowie der Encounter der Ebene "Abteilungskontakt" im Sinne des Modells der Medizininformatikinitiative. @@ -61,7 +61,7 @@ Wichtig sind dabei jedoch folgende Punkte zu beachten: * Encounter im ISiK-Kontext sind stets als "Abteilungskontakte, im Sinne der MI-I mit dem entsprechenden `Encounter.type`-Code, zu kennzeichnen. * jegliche im ISiK-Basis-Modul, als auch in anderen ISiK-Modulen definierte Ressourcen, die über einen Encounter-Kontext verfügen, müssen auf einen ISiK-Encounter (Abteilungskontakt) referenzieren. -{{render:ImplementationGuide/Images/Encounter-Modell-ISiK.png}} +{{render:Material/Images/Encounter-Modell-ISiK.png}} --- @@ -78,8 +78,8 @@ Um insbesondere Subsysteme von der Pflicht zu entbinden, die Account-Ressource z | Hinweis | Änderung gegenüber ISiK-Basis-Modul Stufe 1!| |---------|---------------------| -| {{render:ImplementationGuide-Images-ig-bilder-Warning}} | Die Abbildung der Fallnummer als Identifier des Accounts ist abweichend von der im Basismodul Stufe 1 festgelegten Abbildung der Fallnummer als Identifier des Encounters. Diese Änderung ist erforderlich, da die Fallnummer nicht geeignet ist, einen Encounter eindeutig zu identifizieren. Der Encounter kann weiterhin einen von der Abrechnungsfallnummer unabhänigen Identifier enthalten (z.B. "Aufnahmenummer", Bewegungsnummer). Dieser identifiziert eineindeutig den jeweiligen Kontakt.| +| {{render:Material/Images/IG_Warning}} | Die Abbildung der Fallnummer als Identifier des Accounts ist abweichend von der im Basismodul Stufe 1 festgelegten Abbildung der Fallnummer als Identifier des Encounters. Diese Änderung ist erforderlich, da die Fallnummer nicht geeignet ist, einen Encounter eindeutig zu identifizieren. Der Encounter kann weiterhin einen von der Abrechnungsfallnummer unabhänigen Identifier enthalten (z.B. "Aufnahmenummer", Bewegungsnummer). Dieser identifiziert eineindeutig den jeweiligen Kontakt.| -{{render:ImplementationGuide/Images/Encounter-Modell-Fallnummer.png}} +{{render:Material/Images/Encounter-Modell-Fallnummer.png}} --- diff --git a/ImplementationGuide/markdown/KontaktGesundheitseinrichtung/Kontakt_Profil.md b/ImplementationGuide/markdown/KontaktGesundheitseinrichtung/Kontakt_Profil.md index 31d00a68..0d47f419 100644 --- a/ImplementationGuide/markdown/KontaktGesundheitseinrichtung/Kontakt_Profil.md +++ b/ImplementationGuide/markdown/KontaktGesundheitseinrichtung/Kontakt_Profil.md @@ -6,6 +6,16 @@ from StructureDefinition where url = 'https://gematik.de/fhir/isik/v3/Basismodul {{tree:https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKKontaktGesundheitseinrichtung, hybrid}} +**Bei Abbildung von Versorgungsstellenkontakten** + +Es ist ein üblicher Fall, dass die Dauer eines Versorgungsstellenkontaktes die eines Abteilungskontaktes übersteigt. Ein Beispiel hierfür: Ein Patient bleibt im Bett (Versorgungsstellenkontakt), aber ein Fachabteilungswechsel geschieht, da die Diagnose über eine Fachabteilung (Onkologie) läuft, dann aber der Wechsel zur Fachabteilung Chirurgie (neuer Abteilungskontakt) notwendig wird. + +Für einen solchen Fall gilt: + +Im Falle eines Fachabteilungswechsels legt ein System einen neuen Abteilungskontakt an. Bestehende Versorgungsstellenkontakt SOLLEN nicht in ihrer Relation (.partOf) zum Abteilungskontakt modifiziert werden. Hingegen SOLL das System einen oder mehrere Versorgungsstellenkontakte erzeugen und mit dem neu angelegten Abteilungskontakt in Verbindung setzen. + +Hinweis: Ein Versorgungsstellenkontakt endet zugleich nicht notwendigerweise mit einem Fachabteilungswechsel. + --- **Constraints** @@ -34,4 +44,4 @@ join binding.where(valueSet.exists()) } ``` ---- \ No newline at end of file +--- diff --git a/ImplementationGuide/markdown/Patient/Patient_AnmerkungenZuDenMustSupportFeldern.md b/ImplementationGuide/markdown/Patient/Patient_AnmerkungenZuDenMustSupportFeldern.md index 9758b735..5d2ea719 100644 --- a/ImplementationGuide/markdown/Patient/Patient_AnmerkungenZuDenMustSupportFeldern.md +++ b/ImplementationGuide/markdown/Patient/Patient_AnmerkungenZuDenMustSupportFeldern.md @@ -28,7 +28,7 @@ **Bedeutung:** Vollständiger Name -**Hinweise:** Wenn kein Name vorliegt, SOLLTE die [data-absent-reasons](https://www.hl7.org/fhir/extension-data-absent-reason.html)-Extension eingesetzt werden. Siehe [Beschreibung der Deutschen Basisprofile](https://ig.fhir.de/basisprofile-de/1.2.0/Ressourcen-Patient.html#Ressourcen-Patient-Name) +**Hinweise:** Wenn kein Name vorliegt, SOLLTE die [data-absent-reasons](https://www.hl7.org/fhir/R4/extension-data-absent-reason.html)-Extension eingesetzt werden. Siehe [Beschreibung der Deutschen Basisprofile](https://ig.fhir.de/basisprofile-de/1.2.0/Ressourcen-Patient.html#Ressourcen-Patient-Name) ### `Patient.name:geburtsname` diff --git a/ImplementationGuide/markdown/Patient/Patient_Kompatibilitaet.md b/ImplementationGuide/markdown/Patient/Patient_Kompatibilitaet.md index 702a3136..ad22fc4d 100644 --- a/ImplementationGuide/markdown/Patient/Patient_Kompatibilitaet.md +++ b/ImplementationGuide/markdown/Patient/Patient_Kompatibilitaet.md @@ -1,30 +1,10 @@ ### Kompatibilität -Dieses Profil basiert auf dem [Profil KBV_PR_Base_Patient der KBV Basisprofile](https://simplifier.net/base1x0/kbv_pr_base_patient). +Für das Profil ISIKPatient wird eine Kompatibilität mit folgenden Profilen angestrebt; allerdings kann nicht sichergestellt werden, dass Instanzen, die gegen ISIKPatient valide sind, auch valide sind gegen: +* [Profil KBV_PR_Base_Patient der KBV Basisprofile](https://fhir.kbv.de/StructureDefinition/KBV_PR_Base_Patient) +* [Profil Patient im International Patient Summary (IPS)](https://hl7.org/fhir/uv/ips/StructureDefinition-Patient-uv-ips.html) +* [Profil Patient der MI-Initiative](https://www.medizininformatik-initiative.de/fhir/core/modul-person/StructureDefinition/Patient) -Instanzen, die gegen ISiKPatient valide sind, sind auch (mit wenigen Einschränkungen) valide gegen: -* [Profil KBV_PR_Base_Patient der KBV Basisprofile - v1.2.1](https://simplifier.net/packages/kbv.basis/1.2.1) - * hier ist zu beachten, dass die KBV im Patienten-Profil für Address.country ein "extensible"-Binding auf die DEÜV-Codes festlegt; dies weicht von der ISiK Verwendung von ISO-Codes ab -* [Profil Patient im International Patient Summary (IPS) - STU-1](https://hl7.org/fhir/uv/ips/StructureDefinition-Patient-uv-ips.html) -* [Profil Patient der MI-Initiative - v2.0.0](https://simplifier.net/medizininformatikinitiative-modulperson/sdmiipersonpatient) - * wenn in identifier:pid.assigner eine Referenz auf eine Organisation angegeben wurde - * wenn in identifier:versichertenId_GKV.assigner die IK-NR der Krankenversicherung angegeben ist -* [Profil Patient der KBV Archiv- und Wechselschnittstelle - v1.2.0](https://simplifier.net/pvs-archivierungs-undwechselschnittstelle/kbv_pr_aw_patient) - * wenn die Ressource einen Narrative enthält und in den Metadaten die Canonical-URL des KBV-Profile angegeben wird +Hinweise zu Inkompatibilitäten können über die [Portalseite](https://service.gematik.de/servicedesk/customer/portal/16) gemeldet werden.. -Instanzen, die gegen dieses Profil valide sind, sind **nicht** valide gegen: - -* [Profil Patient der formularübergreifenden Vorgaben der KBV - v1.0.3](https://simplifier.net/for/kbvprforpatient) (eRezept/eAU) <br/> -Um die Kompatibilität herzustellen sind folgende Schritte erforderlich: - * es MUSS genau eine Adresse angegeben werden (Mehrfachangaben sind nicht erlaubt) - * folgende Elemente MÜSSEN entfernt werden: - * active - * identifier:pid - * name:geburtsname - * gender - -* [Profil Patient Deutsches Elektronisches Melde- und Informationssystem für den Infektionsschutz (RKI) - v1.1.1](https://simplifier.net/demis/notifiedperson) <br/> -Aus Gründen der Datensparsamkeit bei der Übermittlung einer Meldung nach Infektionsschutzgesetz müssen bestimmte Datenelemente entfernt werden. Um die Kompatibilität herzustellen sind folgende Schritte erforderlich: - * es MUSS der offizielle Name der Person angegeben werden (Angabe des Geburtsnamen nicht erlaubt) - * es MUSS die Straßenanschrift der Person angegeben werden (Angabe einer Postfachadresse nicht erlaubt) - * innerhalb der Straßenanschrift der Person MÜSSEN alle Zustell- oder Abholangaben in eine Adresszeile abgebildet werden \ No newline at end of file +--- diff --git a/ImplementationGuide/markdown/PersonImGesundheitsberuf/PersonImGesundheitsberuf_Interaktionen.md b/ImplementationGuide/markdown/PersonImGesundheitsberuf/PersonImGesundheitsberuf_Interaktionen.md index 4a263b68..07d77d58 100644 --- a/ImplementationGuide/markdown/PersonImGesundheitsberuf/PersonImGesundheitsberuf_Interaktionen.md +++ b/ImplementationGuide/markdown/PersonImGesundheitsberuf/PersonImGesundheitsberuf_Interaktionen.md @@ -10,7 +10,7 @@ Folgende Suchparameter sind für das Bestätigungsverfahren relevant, auch in Ko ```GET [base]/Practitioner?_id=1234567890``` - Anwendungshinweise: Weitere Informationen zur Suche nach "_id" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Parameters for all resources"](https://www.hl7.org/fhir/search.html#all). + Anwendungshinweise: Weitere Informationen zur Suche nach "_id" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Parameters for all resources"](https://www.hl7.org/fhir/R4/search.html#all). 1. Der Suchparameter "identifier" MUSS unterstützt werden: @@ -52,7 +52,7 @@ Folgende Suchparameter sind für das Bestätigungsverfahren relevant, auch in Ko ```GET [base]/Practitioner?_profile=<https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKPersonImGesundheitsberuf>``` - Anwendungshinweise: Weitere Informationen zur Suche nach "_profile" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Parameters for all resources"](https://www.hl7.org/fhir/search.html#all). + Anwendungshinweise: Weitere Informationen zur Suche nach "_profile" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Parameters for all resources"](https://www.hl7.org/fhir/R4/search.html#all). 1. Der Suchparameter "address" KANN unterstützt werden: diff --git a/ImplementationGuide/markdown/PersonImGesundheitsberuf/PersonImGesundheitsberuf_Kompatibilitaet.md b/ImplementationGuide/markdown/PersonImGesundheitsberuf/PersonImGesundheitsberuf_Kompatibilitaet.md index c6b35c18..7ab604ab 100644 --- a/ImplementationGuide/markdown/PersonImGesundheitsberuf/PersonImGesundheitsberuf_Kompatibilitaet.md +++ b/ImplementationGuide/markdown/PersonImGesundheitsberuf/PersonImGesundheitsberuf_Kompatibilitaet.md @@ -1,13 +1,10 @@ ### Kompatibilität -Dieses Profil basiert auf dem [Profil KBV_PR_Base_Practitioner der KBV Basisprofile](https://fhir.kbv.de/StructureDefinition/KBV_PR_Base_Practitioner). - -Instanzen, die gegen dieses Profil valide sind, sind auch valide gegen: -* [Profil KBV_PR_Base_Practitioner der KBV Basisprofile - v1.1.3](https://fhir.kbv.de/StructureDefinition/KBV_PR_Base_Practitioner). -* [Profil HiGHmed_IC_Practitioner, MI Initiative - HiGHmed Use Case Infection Control - v1.0.0](https://simplifier.net/medizininformatikinitiative-highmed-ic/highmed-ic-practitioner), wenn - * das Element `address` mindestens einmal vorhanden ist - * das Element `birthDate` vorhanden ist und - * das Element `qualification` vorhanden ist +Für das Profil ISIKPersonImGesundheitsberuf wird eine Kompatibilität mit folgenden Profilen angestrebt; allerdings kann nicht sichergestellt werden, dass Instanzen, die gegen ISIKPatient valide sind, auch valide sind gegen: +* [Profil KBV_PR_Base_Practitioner der KBV Basisprofile](https://fhir.kbv.de/StructureDefinition/KBV_PR_Base_Practitioner). +* [Profil HiGHmed_IC_Practitioner, MI Initiative - HiGHmed Use Case Infection Control der Medizininformatik Initiative ](https://simplifier.net/medizininformatikinitiative-highmed-ic/highmed-ic-practitioner) + +Hinweise zu Inkompatibilitäten können über die [Portalseite](https://service.gematik.de/servicedesk/customer/portal/16) gemeldet werden.. --- diff --git a/ImplementationGuide/markdown/Prozedur/Prozedur_Interaktionen.md b/ImplementationGuide/markdown/Prozedur/Prozedur_Interaktionen.md index 0ab073cb..e8e7637b 100644 --- a/ImplementationGuide/markdown/Prozedur/Prozedur_Interaktionen.md +++ b/ImplementationGuide/markdown/Prozedur/Prozedur_Interaktionen.md @@ -42,7 +42,7 @@ Folgende Suchparameter sind für das Bestätigungsverfahren relevant, auch in Ko ```GET [base]/Procedure?subject=Patient/123``` - Anwendungshinweise: Weitere Informationen zur Suche nach "Procedure.subject" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Reference Search"](https://www.hl7.org/fhir/search.html#reference). + Anwendungshinweise: Weitere Informationen zur Suche nach "Procedure.subject" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Reference Search"](https://www.hl7.org/fhir/R4/search.html#reference). 1. Der Suchparameter "patient" MUSS unterstützt werden: @@ -50,7 +50,7 @@ Folgende Suchparameter sind für das Bestätigungsverfahren relevant, auch in Ko ```GET [base]/Procedure?patient=Patient/123``` - Anwendungshinweise: Weitere Informationen zur Suche nach "patient" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Reference Search"](https://www.hl7.org/fhir/search.html#reference). + Anwendungshinweise: Weitere Informationen zur Suche nach "patient" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Reference Search"](https://www.hl7.org/fhir/R4/search.html#reference). Dieser Suchparameter ist für die Umsetzung des IHE QEDm Profils verpflichtend. @@ -60,7 +60,7 @@ Folgende Suchparameter sind für das Bestätigungsverfahren relevant, auch in Ko ```GET [base]/Procedure?encounter=Encounter/123``` - Anwendungshinweise: Weitere Informationen zur Suche nach "encounter" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Reference Search"](https://www.hl7.org/fhir/search.html#reference). + Anwendungshinweise: Weitere Informationen zur Suche nach "encounter" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Reference Search"](https://www.hl7.org/fhir/R4/search.html#reference). 1. Der Suchparameter "date" MUSS unterstützt werden: diff --git a/ImplementationGuide/markdown/Prozedur/Prozedur_Kompatibilitaet.md b/ImplementationGuide/markdown/Prozedur/Prozedur_Kompatibilitaet.md index 8fe6f829..47fc9744 100644 --- a/ImplementationGuide/markdown/Prozedur/Prozedur_Kompatibilitaet.md +++ b/ImplementationGuide/markdown/Prozedur/Prozedur_Kompatibilitaet.md @@ -1,10 +1,8 @@ ### Kompatibilität -Dieses Profil basiert auf dem [Profil "Prozedur" der Medizininformatik-Initative](https://simplifier.net/MedizininformatikInitiative-ModulProzeduren/~introduction). +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: +* [Profil "Prozedur" der Medizininformatik Initiative](https://www.medizininformatik-initiative.de/fhir/core/modul-prozedur/StructureDefinition/Procedure) -Instanzen, die gegen ISiKProzedur valide sind, sind auch valide gegen: - -* [Profil "Prozedur" der Medizininformatik-Initative - v2.0.0](https://simplifier.net/medizininformatikinitiative-modulprozeduren/sd_mii_prozedur_procedure) - * wenn unter `Procedure.code.coding` mindestens eine codierte Darstellung der Prozedur angegeben wurde +Hinweise zu Inkompatibilitäten können über die [Portalseite](https://service.gematik.de/servicedesk/customer/portal/16) gemeldet werden.. --- diff --git a/ImplementationGuide/markdown/ReleaseNotes.md b/ImplementationGuide/markdown/ReleaseNotes.md index 1be937e2..c30a3092 100644 --- a/ImplementationGuide/markdown/ReleaseNotes.md +++ b/ImplementationGuide/markdown/ReleaseNotes.md @@ -4,6 +4,41 @@ Im Rahmen der ISiK-Veröffentlichungen wird das [Semantic Versioning](https://se Die erste Ziffer X bezeichnet ein Major-Release und regelt die Gültigkeit von Releases. Die dritte Ziffer Y (Release x.0.y) bezeichnet eine technische Korrektur und versioniert kleinere Änderungen (Packages) während eines Jahres, z. B. 1.0.1. +---- +Version: 3.0.3 + +Datum: 15.01.2024 + +* Anpassung und Harmonisierung der Anforderungen zu HTTP-Responses: update HTTP response requirement #308 by @f-peverali in https://github.com/gematik/spec-ISiK-Basismodul/pull/354 + +**Full Changelog**: https://github.com/gematik/spec-ISiK-Basismodul/compare/v.3.0.2...v.3.0.3 + +---- +Version: 3.0.2 + +Datum: 09.01.2024 + +* Hinzufügen optionaler Suchparameter für RelatedPerson: Add new optional SearchParameter for RelatedPerson.address - Feature/anfisk 146 search related person by @f-peverali in https://github.com/gematik/spec-ISiK-Basismodul/pull/346 + +**Full Changelog**: https://github.com/gematik/spec-ISiK-Basismodul/compare/v.3.0.1...v.3.0.2 + +---- +Version: 3.0.1 + +Datum: 05.12.2023 + +* Obsoleter SNOMED Code ersetzt: https://github.com/gematik/spec-ISiK-Basismodul/pull/322/commits/d72f3a08a41b999074b4f33db299d5d71cd04be9 +* Hinweis zur Nutzung der ISIKBinary-Ressource hinzugefügt: https://github.com/gematik/spec-ISiK-Basismodul/pull/322/commits/7dc3026686856efd3e61660a37f1e15955d45a11 +* Invariante zur Strassenanschrift modifiziert - fix invariant context #330: https://github.com/gematik/spec-ISiK-Basismodul/pull/322/commits/345d776f3b75442e391d8787c71a051628050b9e + * hier auch Constraint bezüglich ISiKAngehoeriger aus Strassenanschrift entfernt +* Anforderungen im CapabilityStatement zum Account entsprechend der textuellen Anforderungen angepasst: https://github.com/gematik/spec-ISiK-Basismodul/pull/322/commits/ac4d2c730bb94dd50cc4f5deea8c2b1344329d2c +* Neue (klärende) Anforderung zum Versorgungsstellenkontakt: https://github.com/gematik/spec-ISiK-Basismodul/pull/322/commits/d7005923c4596f8a646468f20e1f9975f2489bef +* Öffnung der Festlegung einer Coverage-ID - fix identifier slices + add MS beneficiary + rm MS kvid: https://github.com/gematik/spec-ISiK-Basismodul/pull/322/commits/bd66cca38397b987581bece3d2e9f508813ff765 +* Zielstellung zur Interoperabilität der Profile angepasst: https://github.com/gematik/spec-ISiK-Basismodul/pull/322/commits/3130973de182a078208f181a64ff1cfd8783493a + + +**Full Changelog**: https://github.com/gematik/spec-ISiK-Basismodul/compare/v.3.0.0...v.3.0.1 + ---- Version: 3.0.0 diff --git a/ImplementationGuide/markdown/UebergreifendeFestlegungen/UebergreifendeFestlegungen_BestaetigungsrelevanteSysteme.md b/ImplementationGuide/markdown/UebergreifendeFestlegungen/UebergreifendeFestlegungen_BestaetigungsrelevanteSysteme.md index 270f1109..be991c25 100644 --- a/ImplementationGuide/markdown/UebergreifendeFestlegungen/UebergreifendeFestlegungen_BestaetigungsrelevanteSysteme.md +++ b/ImplementationGuide/markdown/UebergreifendeFestlegungen/UebergreifendeFestlegungen_BestaetigungsrelevanteSysteme.md @@ -46,4 +46,8 @@ ISiK-Modul Terminplanung [z.B. für die Umsetzung von KHZG Fördertatbestand 2] - KIS - Patientenportal-Terminmodul -Hinweise und Rückfragen zu den bestätigungsrelevante Systemen können an die [DKG-Geschäftsstelle](https://www.dkgev.de/dkg/verband-auf-einen-blick/geschaeftsstelle/) gerichtet werden. \ No newline at end of file +Hinweise und Rückfragen zu den bestätigungsrelevante Systemen können an die [DKG-Geschäftsstelle](https://www.dkgev.de/dkg/verband-auf-einen-blick/geschaeftsstelle/) gerichtet werden. + +## Festlegungen auf Profilebene im CapabilityStatement + +Festlegungen zu Anforderungen auf Profilebene werden unter {{pagelink:ImplementationGuide/markdown/CapabilityStatement.md}} geführt. \ No newline at end of file diff --git a/ImplementationGuide/markdown/UebergreifendeFestlegungen/UebergreifendeFestlegungen_Patient-merge.md b/ImplementationGuide/markdown/UebergreifendeFestlegungen/UebergreifendeFestlegungen_Patient-merge.md new file mode 100644 index 00000000..9dffa8ec --- /dev/null +++ b/ImplementationGuide/markdown/UebergreifendeFestlegungen/UebergreifendeFestlegungen_Patient-merge.md @@ -0,0 +1,58 @@ +# Patient merge und Notification +Im Rahmen von Krankenhausbesuchen umfassen u.a. die Aufnahme-Workflows regelmäßig die manuelle Bearbeitung von Patientenstammdaten. Daher ist hier das Risiko redundant persistierter Patientendaten stets vorhanden. Dies hat auch zur Folge, dass Zusammenführungen von Patientendaten in Krankenhäusern an der Tagesordnung stehen. +Die Patientendatenzusammenführung (Patient merge) bezeichnet den Workflow der Bereinigung redundanter Patienten-Instanzen innerhalb eines KIS oder einer KH-IT-Umgebung. Die Bereinigung geschieht erfahrungsgemäß als halbautomatisierter Prozess, für den dedizierte Komponenten eingesetzt werden können. + +Ziel dieses Spezifikations-Abschnitts ist es, dass externe Clients Patient-merge-Vorgänge nachvollziehen und entsprechend verarbeiten können. +Entsprechend wird hier eine Festlegung zur Kommunikation eines stattgefundenen Patient merges (Patient merge Notification) gegenüber einem Subsystem oder einem externen Service - u.a. mittels FHIR Subscriptions - festgelegt. + + +## Patient merge +Mergen von Patienten ist Aufgabe des bestätigungsrelevanten Systems (d.h. hier des patientenführenden Systems - in der Regel des KIS). +Ein externes Starten eines Patient merge - bspw. durch die [$patient-merge Operation aus R5](https://hl7.org/fhir/R5/patient-operation-merge.html) - ist nicht gefordert. + +**Hinweis**: Die Patienten-Ressource, die nicht weiter verwendet werden soll, nennen wir im Folgenden die "obsolete Ressource". Die Ressource, die erhalten bleiben soll, nennen wir "resultierende Ressource". + +## Gemergte Patienten Instanz +Wenn ein Patient merge geschieht, gelten für das patientenführende System folgende Anforderungen: + +**REQ_BAS_PAT-MER-010**: Das patientenführende System MUSS sicherstellen, dass ein externer Client, dem ein lesender Zugriff auf eine Patienten-Ressource erteilt wurde, auch nach einem Patient merge auf diese obsolete Ressource zugreifen kann, um eine Abfrage auf die resultierende Ressource mittels .link-Elements zu ermöglichen. Dies MUSS solange gelten, bis das patientenführende System sicherstellen kann - z.B. mittels eines vereinbarten Workflows -, dass alle Abfragen des Clients, die potentiell auf die obsolete Ressource zielen könnten, in Zukunft auf die resultierende Ressource zielen. + +### Datenelemente der obsoleten Patienten-Ressource + +**REQ_BAS_PAT-MER-011**: Das patientenführende System MUSS nach einem merge die Elemente der obsoleten Ressource folgendermaßen befüllen, um sicherzustellen, dass die obsolete Ressource auf die resultieren Ressource verweist und das die obsolete Ressource als inaktiv gekennzeichnet ist: +- .active = false +- .link.other = Reference(auf “resultierenden” Patient) +- .link.type = “replaced-by” + +### Datenelemente der resultierenden Patienten-Ressource + +**REQ_BAS_PAT-MER-012**: Das patientenführende System MUSS nach einem merge die Elemente der resultierende Ressource folgendermaßen befüllen, um sicherzustellen, dass die resultierende Ressource auf die obsolete Ressource verweist: +- .link.other = Reference(auf “obsoleten” Patient) +- .link.type = “replaced-by” + +## Beispiele +Die Patient merge Notification kann folgendermaßen illustriert werden: es existieren fälschlicherweise zwei Instanzen, die sich lediglich hinsichtlich der organisationsspezifischen Patienten-ID unterscheiden. +Diese sind: + +"Quell" Patienten-Ressource: +{{json:DorisQuelle}} + +und + +"Ziel" Patienten-Ressource: +{{json:DorisZiel}} + +Mittels eines Patient-merge-Vorgangs wird die "Ziel" Patienten-Ressource ausgewählt und beide Ressourcen entsprechend modifiziert: + +Obsolete Patienten-Ressource: +{{json:DorisObsolet}} + +Resultierende Patientin: +{{json:DorisResultat}} + +## Patient merge Notification +**REQ_BAS_PAT-MER-020**: Das patientenführende System MUSS einen Client mittels FHIR Subscription über einen erfolgten Patienten merge informieren können. + +Hier wird aktuell geklärt ob dies mittels r4 Subscription oder R5 backport topic-based Subscription erfolgen soll. + + diff --git a/ImplementationGuide/markdown/UebergreifendeFestlegungen/UebergreifendeFestlegungen_Repraesentationsformate.md b/ImplementationGuide/markdown/UebergreifendeFestlegungen/UebergreifendeFestlegungen_Repraesentationsformate.md index a9fd6d3c..2661fbf2 100644 --- a/ImplementationGuide/markdown/UebergreifendeFestlegungen/UebergreifendeFestlegungen_Repraesentationsformate.md +++ b/ImplementationGuide/markdown/UebergreifendeFestlegungen/UebergreifendeFestlegungen_Repraesentationsformate.md @@ -8,7 +8,7 @@ Client-seitige Implementierungen haben die Wahl zwischen XML- und JSON-Repräsen Wenn ein Client im Accept-Header ein vom Server nicht unterstütztes Format anfordert, so MUSS der Server mit dem Fehlercode `406 not acceptable` antworten. Wenn ein Client im Content-Type-Header ein vom Server nicht unterstütztes Format sendet, so MUSS der Server mit dem Fehlercode `415 unsupported media type` antworten. -Es ist zu beachten, dass die Header `Content-Type` und `Accept` noch weitere FHIR-spezifische und allgemeine Parameter enthalten können. Siehe beispielsweise https://www.hl7.org/fhir/http.html#version-parameter. Das Vorhandensein dieser Parameter darf nicht zu einem Fehler führen. +Es ist zu beachten, dass die Header `Content-Type` und `Accept` noch weitere FHIR-spezifische und allgemeine Parameter enthalten können. Siehe beispielsweise https://www.hl7.org/fhir/R4/http.html#version-parameter. Das Vorhandensein dieser Parameter darf nicht zu einem Fehler führen. Anfragen, in denen eine andere FHIR-Version als die hier vereinbarte Version `4.0` angefordert wird, müssen mit Fehlercode `406 - not acceptable` beantwortet werden. diff --git a/ImplementationGuide/markdown/UebergreifendeFestlegungen/UebergreifendeFestlegungen_Rest.md b/ImplementationGuide/markdown/UebergreifendeFestlegungen/UebergreifendeFestlegungen_Rest.md index df2ce23a..dbd05841 100644 --- a/ImplementationGuide/markdown/UebergreifendeFestlegungen/UebergreifendeFestlegungen_Rest.md +++ b/ImplementationGuide/markdown/UebergreifendeFestlegungen/UebergreifendeFestlegungen_Rest.md @@ -2,13 +2,13 @@ ## Read-Interaktionen Instanzen von Datenobjekten, die die REST-Interaktion "READ" fordern MÜSSEN per HTTP GET auf ```[BASE_URL]/[resourceType]/[ID]``` abgerufen werden können. -Siehe: https://www.hl7.org/fhir/http.html#read +Siehe: https://www.hl7.org/fhir/R4/http.html#read ## Search-Interaktionen -Die Suche MUSS sowohl mittels HTTP GET als auch HTTP POST (vgl. [FHIR RESTful Search - Introduction](https://www.hl7.org/fhir/search.html#Introduction)) unterstützt werden. Die URL-Parameter komplexer Suchanfragen können personenbezogene Merkmale enthalten, daher ist im Echtbetrieb die Suche mittels HTTP POST in Verbindung mit TLS-Verschlüsselung vorzuziehen. +Die Suche MUSS sowohl mittels HTTP GET als auch HTTP POST (vgl. [FHIR RESTful Search - Introduction](https://www.hl7.org/fhir/R4/search.html#Introduction)) unterstützt werden. Die URL-Parameter komplexer Suchanfragen können personenbezogene Merkmale enthalten, daher ist im Echtbetrieb die Suche mittels HTTP POST in Verbindung mit TLS-Verschlüsselung vorzuziehen. ## Create-Interaktionen -Das Erstellen einer Ressource kann per HTTP POST (vgl. [FHIR RESTful API - create](https://www.hl7.org/fhir/http.html#create)) unterstützt werden. Einzelne Datenobjekte (spezifiziert im vorliegenden Basismodul oder in einem ISiK Erweiterungsmodul) können diese Interaktion als verpflichtend kennzeichnen. +Das Erstellen einer Ressource kann per HTTP POST (vgl. [FHIR RESTful API - create](https://www.hl7.org/fhir/R4/http.html#create)) unterstützt werden. Einzelne Datenobjekte (spezifiziert im vorliegenden Basismodul oder in einem ISiK Erweiterungsmodul) können diese Interaktion als verpflichtend kennzeichnen. Es liegt im Ermessen des bestätigungsrelevanten Systems, ob eine externe Ressource durch das System direkt übernommen wird. Auch wie die Herkunft der übernommenen Ressource gekennzeichnet wird, liegt im Ermessen des bestätigungsrelevanten Systems. @@ -37,10 +37,11 @@ Sollte die erzeugte Ressource dauerhaft in das bestätigungsrelevante System üb Per Create-Interaktion erzeugte Ressourcen MÜSSEN im Falle einer erfolgreichen Übermittlung direkt über die READ- und SEARCH-Interaktionen zur Verfügung gestellt werden. -Ressourcen, die zu einem entsprechenden ISiK-Profil nicht konform sind, MÜSSEN durch das bestätigungsrelevante System abgelehnt werden. Als Antwort MUSS ein HTTP 400 Status Code mit einer ```OperationOutcome```-Ressource zurückgegeben werden. Diese enthält eine Auflistung aller Fehler in der übermittelten Ressource in kodierter Form. +Ressourcen, die zu einem entsprechenden ISiK-Profil nicht konform sind, MÜSSEN durch das bestätigungsrelevante System abgelehnt werden. Als Antwort MUSS ein HTTP Status-Code 400 - Bad Request mit einer ```OperationOutcome```-Ressource zurückgegeben werden, falls es sich um einen syntaktischen Fehler in der Repräsentation der Ressource handelt. Die ```OperationOutcome``` MUSS eine Auflistung aller Fehler in der übermittelten Ressource in kodierter Form vorweisen. Anderweitig (semantisch) invalide Ressourcen MÜSSEN ebenfalls mit einer entsprechenden OperationOutcome-Ressource abgewiesen werden. In diesem Fall SOLLTE der HTTP Status-Code HTTP 422 - Unprocessable Entity verwendet werden. + ## Update-Interaktionen -Das Update einer Ressource KANN per HTTP PUT (vgl. [FHIR RESTful API - update](https://www.hl7.org/fhir/http.html#update)) unterstützt werden. Es ist zu beachten, dass beim Update einer Ressource bestimmte dazugehörige [Metadaten](https://www.hl7.org/fhir/resource.html#Meta) beibehalten werden SOLLTEN. +Das Update einer Ressource KANN per HTTP PUT (vgl. [FHIR RESTful API - update](https://www.hl7.org/fhir/R4/http.html#update)) unterstützt werden. Es ist zu beachten, dass beim Update einer Ressource bestimmte dazugehörige [Metadaten](https://www.hl7.org/fhir/R4/resource.html#Meta) beibehalten werden SOLLTEN. Die gleichen Vorgaben für die Handhabung von invaliden Ressourcen wie beschrieben im Abschnitt "Create-Interaktionen", gelten auch für Update-Interaktionen. ## Sicherheitsaspekte diff --git a/ImplementationGuide/markdown/UebergreifendeFestlegungen/UebergreifendeFestlegungen_Suchparameter.md b/ImplementationGuide/markdown/UebergreifendeFestlegungen/UebergreifendeFestlegungen_Suchparameter.md index bab96d2d..4cb12b99 100644 --- a/ImplementationGuide/markdown/UebergreifendeFestlegungen/UebergreifendeFestlegungen_Suchparameter.md +++ b/ImplementationGuide/markdown/UebergreifendeFestlegungen/UebergreifendeFestlegungen_Suchparameter.md @@ -2,7 +2,7 @@ Innerhalb der jeweiligen Abschnitte 'Interaktionen' (Siehe {{pagelink:ImplementationGuide/markdown/Datenobjekte/Datenobjekte.md}}) werden für alle innerhalb dieses Implementierungsleitfadens spezifizierten FHIR-Ressourcen Suchparameter bestimmt, welche im Rahmen des Bestätigungsverfahrens von ISiK unterstützt werden MÜSSEN. -Es MUSS sichergestellt werden, dass nicht unterstützte oder leere Suchparameter **nicht** zu einem Fehler führen. Siehe [FHIR RESTful Search - Handling Errors](https://www.hl7.org/fhir/search.html#errors). Alle unterstützten und verwendeten Suchparameter sind im Self-Link des Suchbundles korrekt anzugeben. +Es MUSS sichergestellt werden, dass nicht unterstützte oder leere Suchparameter **nicht** zu einem Fehler führen. Siehe [FHIR RESTful Search - Handling Errors](https://www.hl7.org/fhir/R4/search.html#errors). Alle unterstützten und verwendeten Suchparameter sind im Self-Link des Suchbundles korrekt anzugeben. Alle Suchparameter in FHIR entsprechen einem von neun definierten [Such-Parameter-Typen](https://hl7.org/fhir/R4/search.html): @@ -105,7 +105,7 @@ Folgende Suchparameter MÜSSEN für alle bestätigungsrelevante Datenojekte impl * ``_tag`` - Beispiele: ``GET [base]/Patient?_tag=https://example.org/codes|needs-review`` - - Anwendungshinweise: Weitere Informationen zur Suche nach "_tag" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Parameters for all resources"](https://hl7.org/fhir/R4/search.html#all) und [FHIR-Basisspezifikation - Abschnitt "Tags"](https://www.hl7.org/fhir/resource.html#simple-tags). + - Anwendungshinweise: Weitere Informationen zur Suche nach "_tag" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Parameters for all resources"](https://hl7.org/fhir/R4/search.html#all) und [FHIR-Basisspezifikation - Abschnitt "Tags"](https://www.hl7.org/fhir/R4/resource.html#simple-tags). * ``_has`` @@ -114,16 +114,16 @@ Folgende Suchparameter MÜSSEN für alle bestätigungsrelevante Datenojekte impl * ``_count`` - Beispiele: ``GET [base]/Patient?_count=100`` - - Anwendungshinweise: Weitere Informationen zur Suche nach "_count" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Page Count"](https://www.hl7.org/fhir/search.html#count). + - Anwendungshinweise: Weitere Informationen zur Suche nach "_count" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Page Count"](https://www.hl7.org/fhir/R4/search.html#count). - Hierraus ergibt sich, dass durch ein [Paging ensprechende der FHIR-Kernspezifikation](https://www.hl7.org/fhir/http.html#paging) unterstützt werden MUSS. + Hierraus ergibt sich, dass durch ein [Paging ensprechende der FHIR-Kernspezifikation](https://www.hl7.org/fhir/R4/http.html#paging) unterstützt werden MUSS. Für die URIs in den Link-Relationen "first", "last", "next", sowie "prev" MUSS sichergestellt werden, dass NICHT die ursprünglich verwendeten Suchparameter, sowie anderweitig sensitive Informationen enthalten, welche in der Suchanfrage an das bestätigungsrelevante System versendet wurden. - Der "self"-Link innerhalb des Such-Bundles MUSS entsprechend der Vorgaben aus [FHIR Kernspezifikation - 3.1.1.6 - Server Conformance](https://www.hl7.org/fhir/search.html#conformance) strukturiert sein. + Der "self"-Link innerhalb des Such-Bundles MUSS entsprechend der Vorgaben aus [FHIR Kernspezifikation - 3.1.1.6 - Server Conformance](https://www.hl7.org/fhir/R4/search.html#conformance) strukturiert sein. * ``_include`` - Beispiele: ``GET [base]/Encounter?_include=Patient:subject`` - - Anwendungshinweise: Weitere Informationen zur Suche nach "_tag" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Including other resources in result"](https://www.hl7.org/fhir/search.html#revinclude). + - Anwendungshinweise: Weitere Informationen zur Suche nach "_tag" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Including other resources in result"](https://www.hl7.org/fhir/R4/search.html#revinclude). - Alle Referenzen für die ein Chaining unterstützt wird MUSS auch der _include-Parameter implementiert werden. Alle unterstützten Include-Referenzen MÜSSEN im CapabilityStatement unter ```CapabilityStatement.rest.resource.searchInclude``` angegeben werden. Siehe {{pagelink:ImplementationGuide/markdown/CapabilityStatement.md}}. Der ```:iterate``` Modifier KANN unterstützt werden. @@ -131,7 +131,7 @@ Folgende Suchparameter MÜSSEN für alle bestätigungsrelevante Datenojekte impl * ``_revinclude`` - Beispiele: ``GET [base]/Patient?_revinclude=Encounter:subject`` - - Anwendungshinweise: Weitere Informationen zur Suche nach "_tag" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Including other resources in result"](https://www.hl7.org/fhir/search.html#revinclude). + - Anwendungshinweise: Weitere Informationen zur Suche nach "_tag" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Including other resources in result"](https://www.hl7.org/fhir/R4/search.html#revinclude). - Alle Referenzen für die ein Chaining unterstützt wird MUSS auch der _include-Parameter implementiert werden. Alle unterstützten Include-Referenzen MÜSSEN im CapabilityStatement unter ```CapabilityStatement.rest.resource.searchRevInclude``` angegeben werden. Siehe {{pagelink:ImplementationGuide/markdown/CapabilityStatement.md}}. Der ```:iterate``` Modifier KANN unterstützt werden. @@ -154,8 +154,8 @@ Diese grundlegenden Best Practice Empfehlungen beziehen sich auf die korrekte Ve - Wenn der Inhalt eines Suchparameters leer ist, SOLLTE der Server diesen ignorieren. -- Wenn der Inhalt eines Suchparameters syntaktisch falsch ist, SOLLTE der Server einen Fehler zurückgeben. Handelt es sich jedoch um eine logische Bedingung (z. B. einen Code), SOLLTE der Server die Suche verarbeiten, einschließlich des Parameters. Als Ergebnis wird in diesem Fall eine leere Suchmenge zurückgegeben, da der Parameter nicht erfüllt werden kann. In solchen Fällen kann zusätzlich ein OperationOutcome mit Hinweisen und Warnungen über den Suchprozess in das Ergebnis aufgenommen werden. Dieses wird in die Suchergebnisse als Eintrag mit [search mode](https://www.hl7.org/fhir/bundle-definitions.html#Bundle.entry.search.mode) = [`outcome`](https://www.hl7.org/fhir/valueset-search-entry-mode.html) aufgenommen. Clients können diese Informationen nutzen, um zukünftige Suchen zu verbessern. +- Wenn der Inhalt eines Suchparameters syntaktisch falsch ist, SOLLTE der Server einen Fehler zurückgeben. Handelt es sich jedoch um eine logische Bedingung (z. B. einen Code), SOLLTE der Server die Suche verarbeiten, einschließlich des Parameters. Als Ergebnis wird in diesem Fall eine leere Suchmenge zurückgegeben, da der Parameter nicht erfüllt werden kann. In solchen Fällen kann zusätzlich ein OperationOutcome mit Hinweisen und Warnungen über den Suchprozess in das Ergebnis aufgenommen werden. Dieses wird in die Suchergebnisse als Eintrag mit [search mode](https://www.hl7.org/fhir/R4/bundle-definitions.html#Bundle.entry.search.mode) = [`outcome`](https://www.hl7.org/fhir/R4/valueset-search-entry-mode.html) aufgenommen. Clients können diese Informationen nutzen, um zukünftige Suchen zu verbessern. - Wenn der Server geeignete Standardfilter bei der Suche auf der Grundlage des Patientenkontextes (z. B. das Herausfiltern von fehlerhaften Datensätzen oder inaktiven und verstorbenen Patienten) enthält, SOLLTEN diese angemessen und eindeutig dokumentiert sein (vorzugsweise durch Aufnahme in den 'self link' für eine Suche). -- Weitere Hinweise können in der [FHIR Spezifikation im Abschnitt `Search`](https://www.hl7.org/fhir/search.html#errors) eingesehen werden. +- Weitere Hinweise können in der [FHIR Spezifikation im Abschnitt `Search`](https://www.hl7.org/fhir/R4/search.html#errors) eingesehen werden. diff --git a/ImplementationGuide/markdown/ValueSet/ValueSet_AnmerkungenZuDenMustSupportFeldern.md b/ImplementationGuide/markdown/ValueSet/ValueSet_AnmerkungenZuDenMustSupportFeldern.md index fb36daa3..15838a0f 100644 --- a/ImplementationGuide/markdown/ValueSet/ValueSet_AnmerkungenZuDenMustSupportFeldern.md +++ b/ImplementationGuide/markdown/ValueSet/ValueSet_AnmerkungenZuDenMustSupportFeldern.md @@ -16,7 +16,7 @@ **Bedeutung:** Maschinenlesbarer Name des ValueSets -**Hinweise:** Der Constraint [vsd-0](https://www.hl7.org/fhir/valueset.html#invs) ist hierbei zu beachten. +**Hinweise:** Der Constraint [vsd-0](https://www.hl7.org/fhir/R4/valueset.html#invs) ist hierbei zu beachten. ### `ValueSet.status` diff --git a/ImplementationGuide/markdown/ValueSet/ValueSet_Interaktionen.md b/ImplementationGuide/markdown/ValueSet/ValueSet_Interaktionen.md index 2dd993c1..25450180 100644 --- a/ImplementationGuide/markdown/ValueSet/ValueSet_Interaktionen.md +++ b/ImplementationGuide/markdown/ValueSet/ValueSet_Interaktionen.md @@ -18,7 +18,7 @@ Folgende Suchparameter sind für das Bestätigungsverfahren relevant, auch in Ko ```GET [base]/ValueSet?url=http://example.org/fhir/ValueSet/test``` - Anwendungshinweise: Weitere Informationen zur Suche nach "ValueSet.url" finden sich in der [FHIR-Basisspezifikation - Abschnitt "uri"](https://www.hl7.org/fhir/search.html#uri). + Anwendungshinweise: Weitere Informationen zur Suche nach "ValueSet.url" finden sich in der [FHIR-Basisspezifikation - Abschnitt "uri"](https://www.hl7.org/fhir/R4/search.html#uri). 1. Der Suchparameter "name" MUSS unterstützt werden: @@ -51,6 +51,6 @@ Folgende Suchparameter sind für das Bestätigungsverfahren relevant, auch in Ko ```GET [base]/ValueSet?context-type-value=http://terminology.hl7.org/CodeSystem/usage-context-type|focus$http://hl7.org/fhir/resource-types|Encounter``` - Anwendungshinweise: Weitere Informationen zur Suche nach "CodeSystem.useContext" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Composite Search Parameters"](https://www.hl7.org/fhir/search.html#composite). + Anwendungshinweise: Weitere Informationen zur Suche nach "CodeSystem.useContext" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Composite Search Parameters"](https://www.hl7.org/fhir/R4/search.html#composite). --- \ No newline at end of file diff --git a/ImplementationGuide/markdown/ValueSet/ValueSet_Kompatibilitaet.md b/ImplementationGuide/markdown/ValueSet/ValueSet_Kompatibilitaet.md index b4a2f48e..a913d41a 100644 --- a/ImplementationGuide/markdown/ValueSet/ValueSet_Kompatibilitaet.md +++ b/ImplementationGuide/markdown/ValueSet/ValueSet_Kompatibilitaet.md @@ -1,3 +1,3 @@ ### Kompatibilität -Zum Zeitpunkt der Veröffentlichung waren keine weiteren Profile in nationalen Spezifikationen für dieses Datenobjekt bekannt. \ No newline at end of file +Für das Profil ISiKValueSet wurde bis zum Zeitpunkt der Veröffentlichung kein Abgleich der Kompatibilität zu anderen Profilen (der KBV und der Medizininformatik-Initiative) durchgeführt. \ No newline at end of file diff --git a/ImplementationGuide/markdown/Versicherungsverhaeltnis/Versicherungsverhaeltnis_Interaktionen.md b/ImplementationGuide/markdown/Versicherungsverhaeltnis/Versicherungsverhaeltnis_Interaktionen.md index 2c492f85..3216c70f 100644 --- a/ImplementationGuide/markdown/Versicherungsverhaeltnis/Versicherungsverhaeltnis_Interaktionen.md +++ b/ImplementationGuide/markdown/Versicherungsverhaeltnis/Versicherungsverhaeltnis_Interaktionen.md @@ -44,7 +44,7 @@ Folgende Suchparameter sind für das Bestätigungsverfahren relevant, auch in Ko ```GET [base]/Coverage?beneficiary=Patient/123``` - Anwendungshinweise: Weitere Informationen zur Suche nach "Coverage.beneficiary" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Reference Search"](https://www.hl7.org/fhir/search.html#reference). + Anwendungshinweise: Weitere Informationen zur Suche nach "Coverage.beneficiary" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Reference Search"](https://www.hl7.org/fhir/R4/search.html#reference). 6. Der Suchparameter "patient" MUSS unterstützt werden: @@ -52,7 +52,7 @@ Folgende Suchparameter sind für das Bestätigungsverfahren relevant, auch in Ko ```GET [base]/Coverage?patient=Patient/123``` - Anwendungshinweise: Weitere Informationen zur Suche nach "Coverage.beneficiary" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Reference Search"](https://www.hl7.org/fhir/search.html#reference). + Anwendungshinweise: Weitere Informationen zur Suche nach "Coverage.beneficiary" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Reference Search"](https://www.hl7.org/fhir/R4/search.html#reference). 7. Der Suchparameter "payor" in Kombination mit einem identifier-Modifier MUSS unterstützt werden: @@ -60,7 +60,7 @@ Folgende Suchparameter sind für das Bestätigungsverfahren relevant, auch in Ko ```GET [base]/Coverage?payor:identifier=0123456789``` - Anwendungshinweise: Weitere Informationen zur Suche nach "Coverage.payor" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Reference Search"](https://www.hl7.org/fhir/search.html#reference). + Anwendungshinweise: Weitere Informationen zur Suche nach "Coverage.payor" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Reference Search"](https://www.hl7.org/fhir/R4/search.html#reference). 8. Der Suchparameter "_profile" KANN unterstützt werden: @@ -68,7 +68,7 @@ Folgende Suchparameter sind für das Bestätigungsverfahren relevant, auch in Ko ```GET [base]/Coverage?_profile=https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKVersicherungsverhaeltnisGesetzlich``` - Anwendungshinweise: Weitere Informationen zur Suche nach "_profile" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Parameters for all resources"](https://www.hl7.org/fhir/search.html#all). + Anwendungshinweise: Weitere Informationen zur Suche nach "_profile" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Parameters for all resources"](https://www.hl7.org/fhir/R4/search.html#all). #### Profil ISiKVersicherungsverhaeltnisSelbstzahler @@ -86,7 +86,7 @@ Folgende Suchparameter sind für das Bestätigungsverfahren relevant, auch in Ko ```GET [base]/Coverage?beneficiary=Patient/123``` - Anwendungshinweise: Weitere Informationen zur Suche nach "Coverage.beneficiary" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Reference Search"](https://www.hl7.org/fhir/search.html#reference). + Anwendungshinweise: Weitere Informationen zur Suche nach "Coverage.beneficiary" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Reference Search"](https://www.hl7.org/fhir/R4/search.html#reference). 1. Der Suchparameter "payor" MUSS unterstützt werden: @@ -94,7 +94,7 @@ Folgende Suchparameter sind für das Bestätigungsverfahren relevant, auch in Ko ```GET [base]/Coverage?payor=0123456789``` - Anwendungshinweise: Weitere Informationen zur Suche nach "Coverage.payor" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Reference Search"](https://www.hl7.org/fhir/search.html#reference). + Anwendungshinweise: Weitere Informationen zur Suche nach "Coverage.payor" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Reference Search"](https://www.hl7.org/fhir/R4/search.html#reference). 1. Der Suchparameter "subscriber" KANN unterstützt werden: @@ -102,7 +102,7 @@ Folgende Suchparameter sind für das Bestätigungsverfahren relevant, auch in Ko ```GET [base]/Coverage?subscriber=Patient/123``` - Anwendungshinweise: Weitere Informationen zur Suche nach "Coverage.subscriber" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Reference Search"](https://www.hl7.org/fhir/search.html#reference). + Anwendungshinweise: Weitere Informationen zur Suche nach "Coverage.subscriber" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Reference Search"](https://www.hl7.org/fhir/R4/search.html#reference). 1. Der Suchparameter "status" KANN unterstützt werden: @@ -126,6 +126,6 @@ Folgende Suchparameter sind für das Bestätigungsverfahren relevant, auch in Ko ```GET [base]/Coverage?_profile=https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKVersicherungsverhaeltnisSelbstzahler``` - Anwendungshinweise: Weitere Informationen zur Suche nach "_profile" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Parameters for all resources"](https://www.hl7.org/fhir/search.html#all). + Anwendungshinweise: Weitere Informationen zur Suche nach "_profile" finden sich in der [FHIR-Basisspezifikation - Abschnitt "Parameters for all resources"](https://www.hl7.org/fhir/R4/search.html#all). --- \ No newline at end of file diff --git a/ImplementationGuide/markdown/Versicherungsverhaeltnis/Versicherungsverhaeltnis_Kompatibilitaet.md b/ImplementationGuide/markdown/Versicherungsverhaeltnis/Versicherungsverhaeltnis_Kompatibilitaet.md index 70189fe5..f970f415 100644 --- a/ImplementationGuide/markdown/Versicherungsverhaeltnis/Versicherungsverhaeltnis_Kompatibilitaet.md +++ b/ImplementationGuide/markdown/Versicherungsverhaeltnis/Versicherungsverhaeltnis_Kompatibilitaet.md @@ -2,25 +2,18 @@ #### Profil ISiKVersicherungsverhaeltnisGesetzlich -Das Profil ISiKVersicherungsverhaeltnisGesetzlich basiert auf dem Profil ["Coverage, deutsches GKV Profil" der deutschen Basisprofile](https://fhir.de/StructureDefinition/coverage-de-gkv). - +Das Profil ISiKVersicherungsverhaeltnisGesetzlich basiert auf dem Profil [Coverage der deutschen Basisprofile](http://fhir.de/StructureDefinition/coverage-de-basis). Instanzen, die gegen ISiKVersicherungsverhaeltnisGesetzlich valide sind, sind auch valide gegen -* Profil ["Coverage, deutsches GKV Profil" der deutschen Basisprofile - v1.0.0](https://fhir.de/StructureDefinition/coverage-de-gkv) - -Instanzen, die gegen ISiKVersicherungsverhaeltnisGesetzlich valide sind, sind **nicht** valide gegen: -* Profil [KBV_PR_FOR_Coverage der Formularübergreifenden Vorgaben der KBV (eRezept/eAU) - v1.0.3](https://fhir.kbv.de/StructureDefinition/KBV_PR_FOR_Coverage) - - Um die Kompatibilität herzustellen, sind folgende Schritte erforderlich: - * folgende Elemente MÜSSEN entfernt werden: - * `Coverage.identifier` - * `Coverage.status` MUSS den Wert `active` enthalten +* Profil ["Coverage, deutsches GKV Profil" der deutschen Basisprofile](https://fhir.de/StructureDefinition/coverage-de-gkv) +Hinweise zu Inkompatibilitäten können über die [Portalseite](https://service.gematik.de/servicedesk/customer/portal/16) gemeldet werden.. #### Profil ISiKVersicherungsverhaeltnisSelbstzahler -Das Profil ISiKVersicherungsverhaeltnisSelbstzahler basiert auf dem Profil ["Coverage, deutsches Selbstzahlerprofil" der deutschen Basisprofile - v1.0.0](https://fhir.de/StructureDefinition/coverage-de-sel). - +Das Profil ISiKVersicherungsverhaeltnisSelbstzahler basiert auf dem Profil ["Coverage, deutsches Selbstzahlerprofil" der deutschen Basisprofile](https://fhir.de/StructureDefinition/coverage-de-sel). Instanzen, die gegen ISiKVersicherungsverhaeltnisSelbstzahler valide sind, sind auch valide gegen -* Profil ["Coverage, deutsches Selbstzahlerprofil" der deutschen Basisprofile - v1.0.0](https://fhir.de/StructureDefinition/coverage-de-sel) +* Profil ["Coverage, deutsches Selbstzahlerprofil" der deutschen Basisprofile](https://fhir.de/StructureDefinition/coverage-de-sel) + +Hinweise zu Inkompatibilitäten können über die [Portalseite](https://service.gematik.de/servicedesk/customer/portal/16) gemeldet werden.. --- \ No newline at end of file diff --git a/Material/Darstellung_Composition_verarbeiten.docx b/Material/Darstellung_Composition_verarbeiten.docx deleted file mode 100644 index 9ef98900..00000000 Binary files a/Material/Darstellung_Composition_verarbeiten.docx and /dev/null differ diff --git a/Material/Gematik_Logo_Flag.png b/Material/Gematik_Logo_Flag.png deleted file mode 100644 index fc27adee..00000000 Binary files a/Material/Gematik_Logo_Flag.png and /dev/null differ diff --git a/ImplementationGuide/Images/Composition-Bundle.png b/Material/images/Composition-Bundle.png similarity index 100% rename from ImplementationGuide/Images/Composition-Bundle.png rename to Material/images/Composition-Bundle.png diff --git a/ImplementationGuide/Images/Encounter-Modell-Abrechnung.png b/Material/images/Encounter-Modell-Abrechnung.png similarity index 100% rename from ImplementationGuide/Images/Encounter-Modell-Abrechnung.png rename to Material/images/Encounter-Modell-Abrechnung.png diff --git a/ImplementationGuide/Images/Encounter-Modell-Fallnummer.png b/Material/images/Encounter-Modell-Fallnummer.png similarity index 100% rename from ImplementationGuide/Images/Encounter-Modell-Fallnummer.png rename to Material/images/Encounter-Modell-Fallnummer.png diff --git a/ImplementationGuide/Images/Encounter-Modell-ISiK.png b/Material/images/Encounter-Modell-ISiK.png similarity index 100% rename from ImplementationGuide/Images/Encounter-Modell-ISiK.png rename to Material/images/Encounter-Modell-ISiK.png diff --git a/ImplementationGuide/Images/Encounter-Modell-MII.png b/Material/images/Encounter-Modell-MII.png similarity index 100% rename from ImplementationGuide/Images/Encounter-Modell-MII.png rename to Material/images/Encounter-Modell-MII.png diff --git a/ImplementationGuide/Images/Encounter-Modell-Medizinisch.png b/Material/images/Encounter-Modell-Medizinisch.png similarity index 100% rename from ImplementationGuide/Images/Encounter-Modell-Medizinisch.png rename to Material/images/Encounter-Modell-Medizinisch.png diff --git a/ImplementationGuide/Images/Encounter-Modelle.png b/Material/images/Encounter-Modelle.png similarity index 100% rename from ImplementationGuide/Images/Encounter-Modelle.png rename to Material/images/Encounter-Modelle.png diff --git a/Material/images/Gematik_Logo_Flag.svg b/Material/images/Gematik_Logo_Flag.svg new file mode 100644 index 00000000..20976701 --- /dev/null +++ b/Material/images/Gematik_Logo_Flag.svg @@ -0,0 +1,40 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Generator: Adobe Illustrator 24.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) --> +<svg version="1.2" baseProfile="tiny" id="Ebene_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" + x="0px" y="0px" viewBox="0 0 400.33 74.22" xml:space="preserve"> +<rect x="2.33" y="1.96" fill="none" width="396.28" height="70.3"/> +<g> + <g> + <path d="M80.06,25.9H36.95c-2.09,0-3.78-1.69-3.78-3.78s1.69-3.78,3.78-3.78h43.11c2.09,0,3.78,1.69,3.78,3.78 + S82.15,25.9,80.06,25.9z"/> + </g> + <g> + <path fill="#E10000" d="M80.06,41.52H21.84c-2.09,0-3.78-1.69-3.78-3.78c0-2.09,1.69-3.78,3.78-3.78h58.22 + c2.09,0,3.78,1.69,3.78,3.78C83.84,39.83,82.15,41.52,80.06,41.52z"/> + </g> + <g> + <path fill="#FFCC00" d="M80.06,57.14H6.72c-2.09,0-3.78-1.69-3.78-3.78c0-2.09,1.69-3.78,3.78-3.78h73.34 + c2.09,0,3.78,1.69,3.78,3.78C83.84,55.45,82.15,57.14,80.06,57.14z"/> + </g> + <g> + <path fill="#000E52" d="M371.45,33.92h-0.3V3.36h-7.96v53.1h7.96V41.13h0.23l15.85,15.32H398l-19.8-19.27l19.65-17.14h-10.7 + L371.45,33.92z M342.78,56.45h7.96V20.04h-7.96V56.45z M346.72,2.6c-3.19,0-5.54,2.5-5.54,5.61c0,3.19,2.35,5.54,5.54,5.54 + c3.19,0,5.61-2.35,5.61-5.54C352.33,5.1,349.91,2.6,346.72,2.6 M319.19,27.25h13.96v-7.21h-13.96V9.12h-7.96v33.91 + c0,9.71,4.85,14.18,13.05,14.18c4.63,0,8.27-1.67,11.15-3.64l-3.11-6.37c-2.2,1.37-4.85,2.5-7.36,2.5c-3.19,0-5.76-1.97-5.76-6.83 + V27.25z M284.52,50.99c-5.99,0-7.96-2.43-7.96-4.78c0-2.35,1.67-4.55,7.13-5.08l10.01-0.99v9.56 + C291.5,50.46,288.09,50.99,284.52,50.99 M285.28,19.28c-4.93,0-10.32,1.06-15.4,4.25l2.96,6.45c3.26-1.9,7.89-3.64,12.14-3.64 + c5.54,0,8.72,2.12,8.72,6.98v0.61l-9.03,0.91c-10.01,0.99-16.08,4.55-16.08,11.3c0,6.68,4.63,11.07,16.31,11.07 + c5.92,0,12.74-1.44,16.76-3.57V32.86C301.66,23.91,295.67,19.36,285.28,19.28 M245.38,19.28c-4.55,0-9.41,1.37-13.05,3.64 + c-2.88-2.43-6.98-3.64-11.91-3.64c-6.07,0-12.59,2.43-16.01,5.99v31.18h7.96l-0.08-27c2.88-2.28,5.92-2.73,8.87-2.73 + c5.01,0,7.96,2.96,7.96,8.12v21.62h7.96V34.83c0-1.97-0.23-3.72-0.68-5.31c2.28-1.67,5.46-2.81,8.72-2.81 + c4.78,0,7.96,2.5,7.96,8.12v21.62h7.96V34.83C261.08,24.52,255.09,19.28,245.38,19.28 M169.23,34.61 + c0.99-5.08,4.63-8.42,10.09-8.42c5.08,0,8.34,2.96,9.25,8.42H169.23z M196.68,37.64c0-11.15-7.05-18.36-17.22-18.36 + c-10.7,0-18.58,7.51-18.58,18.66c0,12.06,8.19,19.27,19.12,19.27c5.46,0,10.47-1.37,14.94-5.08l-3.94-6.3 + c-3.03,3.11-6.9,4.55-10.54,4.55c-5.31,0-10.77-2.65-11.45-9.79h27.54C196.61,39.69,196.68,38.63,196.68,37.64 M151.63,25.28 + c-4.7-4.78-11.68-5.99-16.23-5.99c-13.12,0-20.86,7.59-20.86,19.04c0,10.92,7.36,18.13,17.9,18.13c3.03,0,4.7-1.44,4.7-3.87 + c0-2.28-1.67-3.57-4.7-3.57c-5.84,0-9.94-4.17-9.94-10.7c0-7.05,4.48-11.61,12.44-11.61c2.58,0,6.3,0.68,8.42,2.73L143.28,56 + c0,5.61-5.08,8.19-11.38,8.19c-5.76,0-9.56-2.58-10.32-2.96c-3.11-1.52-6.14-0.08-6.14,2.88c0,5.01,9.1,7.51,16.54,7.51 + c11.07,0,19.65-4.85,19.65-15.63V25.28z"/> + </g> +</g> +</svg> diff --git a/ImplementationGuide/Images/ig_bilder_Warning.jpg b/Material/images/IG_Warning.jpg similarity index 100% rename from ImplementationGuide/Images/ig_bilder_Warning.jpg rename to Material/images/IG_Warning.jpg diff --git a/Material/images/diagrams/Composition_Bundle.svg b/Material/images/diagrams/Composition_Bundle.svg new file mode 100644 index 00000000..3d60601e --- /dev/null +++ b/Material/images/diagrams/Composition_Bundle.svg @@ -0,0 +1,3 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="432px" height="312px" viewBox="-0.5 -0.5 432 312"><defs/><g><rect x="0" y="0" width="200" height="310" rx="26" ry="26" fill="#dae8fc" stroke="#6c8ebf" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe flex-start; width: 188px; height: 1px; padding-top: 7px; margin-left: 12px;"><div data-drawio-colors="color: #000000; " style="box-sizing: border-box; font-size: 0px; text-align: left;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; overflow-wrap: normal;">Bundle</div></div></div></foreignObject><text x="12" y="19" fill="#000000" font-family="Helvetica" font-size="12px" font-weight="bold">Bundle</text></switch></g><rect x="240" y="0" width="190" height="310" rx="24.7" ry="24.7" fill="#e6e6e6" stroke="#666666" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe flex-start; width: 178px; height: 1px; padding-top: 7px; margin-left: 252px;"><div data-drawio-colors="color: #000000; " style="box-sizing: border-box; font-size: 0px; text-align: left;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; overflow-wrap: normal;">Patientenakten "54321"</div></div></div></foreignObject><text x="252" y="19" fill="#000000" font-family="Helvetica" font-size="12px" font-weight="bold">Patientenakten "54321"</text></switch></g><rect x="10" y="30" width="120" height="270" rx="20.4" ry="20.4" fill="#ccccff" stroke="#6c8ebf" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe flex-start; width: 112px; height: 1px; padding-top: 35px; margin-left: 18px;"><div data-drawio-colors="color: #000000; " style="box-sizing: border-box; font-size: 0px; text-align: left;"><div style="display: inline-block; font-size: 10px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><b>Composition</b><br /><br />.text<br /><br /><br /><br />.encounter<br /><br /><br />.subject<br /><br /><br />.section "Diagnosen"<br /><br /><br /><br />.section "Laborwerte"</div></div></div></foreignObject><text x="18" y="45" fill="#000000" font-family="Helvetica" font-size="10px">Composition...</text></switch></g><rect x="250" y="30" width="170" height="210" rx="18.7" ry="18.7" fill="#cccccc" stroke="#666666" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe flex-start; width: 162px; height: 1px; padding-top: 35px; margin-left: 258px;"><div data-drawio-colors="color: #000000; " style="box-sizing: border-box; font-size: 0px; text-align: left;"><div style="display: inline-block; font-size: 10px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; overflow-wrap: normal;"><font style="font-size: 10px;"><span style="font-size: 10px;">Fallakte "12345"<br style="font-size: 10px;" /><br style="font-size: 10px;" /><span style="font-weight: normal;">Dokumente:<br /></span></span><span style="background-color: initial; font-weight: normal;">   -<span style="white-space: pre;"> </span>Befundbericht vom <span style="white-space: pre;"> </span>9.10.2020<br /></span><span style="font-size: 10px;"><span style="font-weight: normal;"><br /><br /><br /><br /><br />Diagnosen:<br />   -<span style="white-space: pre;"> </span>Diabetes Typ II<br /><br />Laborwerte:<br />   -<span style="white-space: pre;"> </span>Blutzucker: 201mg/dl <br /></span></span><br style="font-size: 10px;" /></font></div></div></div></foreignObject><text x="258" y="45" fill="#000000" font-family="Helvetica" font-size="10px" font-weight="bold">Fallakte "12345"...</text></switch></g><rect x="40" y="60" width="140" height="45" fill="#ffffff" stroke="rgb(0, 0, 0)" stroke-width="0.5" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe flex-start; width: 140px; height: 1px; padding-top: 65px; margin-left: 42px;"><div data-drawio-colors="color: #000000; " style="box-sizing: border-box; font-size: 0px; text-align: left;"><div style="display: inline-block; font-size: 6px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><div style="font-size: 6px;"><span style="font-size: 6px; background-color: initial;"><html<h1>Befundbericht</h1><br style="font-size: 6px;" /></span><span style="background-color: initial; font-size: 6px;"><p>Patient: Mustermann, Max </span><span style="background-color: initial; font-size: 6px;">(*01.01.1970)</p></span><span style="background-color: initial; font-size: 6px;"><h2>Diagnosen</h2>…</span></div><font style="font-size: 6px;"><div style="font-size: 6px;"><span style="background-color: initial; font-size: 6px;"><h2>VitalParameter</h2><br style="font-size: 6px;" /></span><span style="background-color: initial; font-size: 6px;">…mit freundlichen Grüßen</html></span></div></font></div></div></div></foreignObject><text x="42" y="71" fill="#000000" font-family="Helvetica" font-size="6px"><html<h1>Befundbericht</h1>...</text></switch></g><rect x="265" y="90" width="140" height="45" fill="#ffffff" stroke="rgb(0, 0, 0)" stroke-width="0.5" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe flex-start; width: 140px; height: 1px; padding-top: 95px; margin-left: 267px;"><div data-drawio-colors="color: #000000; " style="box-sizing: border-box; font-size: 0px; text-align: left;"><div style="display: inline-block; font-size: 6px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><div style="font-size: 6px;"><span style="font-size: 6px; background-color: initial;"><html<h1>Befundbericht</h1><br style="font-size: 6px;" /></span><span style="background-color: initial; font-size: 6px;"><p>Patient: Mustermann, Max </span><span style="background-color: initial; font-size: 6px;">(*01.01.1970)</p></span><span style="background-color: initial; font-size: 6px;"><h2>Diagnosen</h2>…</span></div><font style="font-size: 6px;"><div style="font-size: 6px;"><span style="background-color: initial; font-size: 6px;"><h2>VitalParameter</h2><br style="font-size: 6px;" /></span><span style="background-color: initial; font-size: 6px;">…mit freundlichen Grüßen</html></span></div></font></div></div></div></foreignObject><text x="267" y="101" fill="#000000" font-family="Helvetica" font-size="6px"><html<h1>Befundbericht</h1>...</text></switch></g><rect x="70" y="110" width="110" height="30" rx="5.1" ry="5.1" fill="#9999ff" stroke="#6c8ebf" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 104px; height: 1px; padding-top: 125px; margin-left: 78px;"><div data-drawio-colors="color: #000000; " style="box-sizing: border-box; font-size: 0px; text-align: left;"><div style="display: inline-block; font-size: 10px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">Encounter.identifier<br /><span style="white-space: pre;"> </span>= 12345</div></div></div></foreignObject><text x="78" y="128" fill="#000000" font-family="Helvetica" font-size="10px">Encounter.identifier...</text></switch></g><rect x="70" y="145" width="110" height="30" rx="5.1" ry="5.1" fill="#9999ff" stroke="#6c8ebf" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 104px; height: 1px; padding-top: 160px; margin-left: 78px;"><div data-drawio-colors="color: #000000; " style="box-sizing: border-box; font-size: 0px; text-align: left;"><div style="display: inline-block; font-size: 10px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">Patient.identifier<br /><span style="white-space: pre;"> </span>= 54321</div></div></div></foreignObject><text x="78" y="163" fill="#000000" font-family="Helvetica" font-size="10px">Patient.identifier...</text></switch></g><rect x="70" y="194" width="110" height="30" rx="5.1" ry="5.1" fill="#9999ff" stroke="#6c8ebf" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 104px; height: 1px; padding-top: 209px; margin-left: 78px;"><div data-drawio-colors="color: #000000; " style="box-sizing: border-box; font-size: 0px; text-align: left;"><div style="display: inline-block; font-size: 10px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">Condition.display<br />= "Diabetes Typ II"</div></div></div></foreignObject><text x="78" y="212" fill="#000000" font-family="Helvetica" font-size="10px">Condition.display...</text></switch></g><path d="M 180 264.5 L 255.1 202.07" fill="none" stroke="#999999" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 259.14 198.71 L 255.99 205.88 L 255.1 202.07 L 251.52 200.5 Z" fill="#999999" stroke="#999999" stroke-miterlimit="10" pointer-events="all"/><rect x="70" y="242" width="110" height="45" rx="7.65" ry="7.65" fill="#9999ff" stroke="#6c8ebf" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 104px; height: 1px; padding-top: 265px; margin-left: 78px;"><div data-drawio-colors="color: #000000; " style="box-sizing: border-box; font-size: 0px; text-align: left;"><div style="display: inline-block; font-size: 10px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">Observation<br />.code = "Blutzucker"<br />.value = "201 mg/dl"</div></div></div></foreignObject><text x="78" y="268" fill="#000000" font-family="Helvetica" font-size="10px">Observation...</text></switch></g><path d="M 180 209 L 254.51 165.23" fill="none" stroke="#999999" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 259.04 162.57 L 254.77 169.13 L 254.51 165.23 L 251.23 163.09 Z" fill="#999999" stroke="#999999" stroke-miterlimit="10" pointer-events="all"/><path d="M 180 160 L 247.21 26.46" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 249.57 21.77 L 249.55 29.59 L 247.21 26.46 L 243.29 26.45 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><path d="M 180 125 L 250.59 51.59" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 254.23 47.81 L 251.9 55.28 L 250.59 51.59 L 246.85 50.43 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><path d="M 180 82.5 L 259 110.38" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 263.95 112.13 L 256.18 113.1 L 259 110.38 L 258.51 106.5 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g><switch><g requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"/><a transform="translate(0,-5)" xlink:href="https://www.drawio.com/doc/faq/svg-export-text-problems" target="_blank"><text text-anchor="middle" font-size="10px" x="50%" y="100%">Text is not SVG - cannot display</text></a></switch></svg> \ No newline at end of file diff --git a/Material/ISiK Stufe 2 Vereinfachtes Infomodell.drawio.pdf b/Material/images/diagrams/ISiK Stufe 2 Vereinfachtes Infomodell.pdf similarity index 100% rename from Material/ISiK Stufe 2 Vereinfachtes Infomodell.drawio.pdf rename to Material/images/diagrams/ISiK Stufe 2 Vereinfachtes Infomodell.pdf diff --git a/ImplementationGuide/Images/Infomodel.png b/Material/images/diagrams/Infomodel.png similarity index 100% rename from ImplementationGuide/Images/Infomodel.png rename to Material/images/diagrams/Infomodel.png diff --git a/Material/images/diagrams/Vereinfachtes_Infomodell.svg b/Material/images/diagrams/Vereinfachtes_Infomodell.svg new file mode 100644 index 00000000..7ce36884 --- /dev/null +++ b/Material/images/diagrams/Vereinfachtes_Infomodell.svg @@ -0,0 +1,3 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="562px" height="682px" viewBox="-0.5 -0.5 562 682"><defs/><g><rect x="0" y="0" width="560" height="680" fill="none" stroke="#000000" pointer-events="all"/><rect x="120" y="60" width="120" height="60" rx="9" ry="9" fill="#d5e8d4" stroke="#82b366" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 90px; margin-left: 121px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">Person im Gesundheitsberuf</div></div></div></foreignObject><text x="180" y="94" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">Person im Gesundheit...</text></switch></g><path d="M 100 440 L 100 490 L 193.63 490" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 198.88 490 L 191.88 493.5 L 193.63 490 L 191.88 486.5 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><path d="M 100 380 L 100 330 L 193.63 330" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 198.88 330 L 191.88 333.5 L 193.63 330 L 191.88 326.5 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><rect x="40" y="380" width="120" height="60" rx="9" ry="9" fill="#bedce6" stroke="rgb(0, 0, 0)" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 410px; margin-left: 41px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">Prozedur</div></div></div></foreignObject><text x="100" y="414" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">Prozedur</text></switch></g><path d="M 420 440 L 420 490 L 326.37 490" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 321.12 490 L 328.12 486.5 L 326.37 490 L 328.12 493.5 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><path d="M 420 380 L 420 330 L 326.37 330" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 321.12 330 L 328.12 326.5 L 326.37 330 L 328.12 333.5 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><rect x="360" y="380" width="120" height="60" rx="9" ry="9" fill="#bedce6" stroke="rgb(0, 0, 0)" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 410px; margin-left: 361px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">Diagnose</div></div></div></foreignObject><text x="420" y="414" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">Diagnose</text></switch></g><path d="M 260 300 L 260 256.37" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 260 251.12 L 263.5 258.12 L 260 256.37 L 256.5 258.12 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><path d="M 260 360 L 260 453.63" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 260 458.88 L 256.5 451.88 L 260 453.63 L 263.5 451.88 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><rect x="200" y="300" width="120" height="60" rx="9" ry="9" fill="#d5e8d4" stroke="#82b366" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 330px; margin-left: 201px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">Kontakt (Fall)</div></div></div></foreignObject><text x="260" y="334" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">Kontakt (Fall)</text></switch></g><path d="M 320 220 L 450 220 L 450 373.63" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 450 378.88 L 446.5 371.88 L 450 373.63 L 453.5 371.88 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><path d="M 260 190 L 260 170 L 520 170 L 520 505 L 326.37 505" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 321.12 505 L 328.12 501.5 L 326.37 505 L 328.12 508.5 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><path d="M 200 220 L 70 220 L 70 373.63" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 70 378.88 L 66.5 371.88 L 70 373.63 L 73.5 371.88 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><rect x="200" y="190" width="120" height="60" rx="9" ry="9" fill="#d5e8d4" stroke="#82b366" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 220px; margin-left: 201px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">Abrechnungsfall</div></div></div></foreignObject><text x="260" y="224" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">Abrechnungsfall</text></switch></g><rect x="200" y="460" width="120" height="60" rx="9" ry="9" fill="#d5e8d4" stroke="#82b366" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 490px; margin-left: 201px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">Patient</div></div></div></foreignObject><text x="260" y="494" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">Patient</text></switch></g><path d="M 200 590 L 230 590 L 230 526.37" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 230 521.12 L 233.5 528.12 L 230 526.37 L 226.5 528.12 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><rect x="80" y="560" width="120" height="60" rx="9" ry="9" fill="#fae5a2" stroke="rgb(0, 0, 0)" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 590px; margin-left: 81px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">Gesetzlich Versicherter</div></div></div></foreignObject><text x="140" y="594" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">Gesetzlich Versicher...</text></switch></g><path d="M 320 590 L 290 590 L 290 526.37" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 290 521.12 L 293.5 528.12 L 290 526.37 L 286.5 528.12 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><rect x="320" y="560" width="120" height="60" rx="9" ry="9" fill="#fae5a2" stroke="#000000" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 590px; margin-left: 321px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">Selbstzahler</div></div></div></foreignObject><text x="380" y="594" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">Selbstzahler</text></switch></g><rect x="10" y="10" width="150" height="30" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 148px; height: 1px; padding-top: 25px; margin-left: 11px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; overflow-wrap: normal;">Bericht aus Subsystem </div></div></div></foreignObject><text x="85" y="29" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle" font-weight="bold">Bericht aus Subsystem </text></switch></g><rect x="280" y="60" width="120" height="60" rx="9" ry="9" fill="#d5e8d4" stroke="#82b366" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 90px; margin-left: 281px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">Angehöriger</div></div></div></foreignObject><text x="340" y="94" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">Angehöriger</text></switch></g></g><switch><g requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"/><a transform="translate(0,-5)" xlink:href="https://www.drawio.com/doc/faq/svg-export-text-problems" target="_blank"><text text-anchor="middle" font-size="10px" x="50%" y="100%">Text is not SVG - cannot display</text></a></switch></svg> \ No newline at end of file diff --git a/Material/images/src/drawio/Composition_Bundle.drawio b/Material/images/src/drawio/Composition_Bundle.drawio new file mode 100644 index 00000000..557f2acc --- /dev/null +++ b/Material/images/src/drawio/Composition_Bundle.drawio @@ -0,0 +1,69 @@ +<mxfile host="65bd71144e"> + <diagram id="GEynWf5i7sN6g8vhte-Q" name="Page-1"> + <mxGraphModel dx="3020" dy="1169" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="1169" pageHeight="827" math="0" shadow="0"> + <root> + <mxCell id="0"/> + <mxCell id="1" parent="0"/> + <mxCell id="4" value="Bundle" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;align=left;verticalAlign=top;arcSize=13;spacingLeft=10;fontStyle=1;fontColor=#000000;" parent="1" vertex="1"> + <mxGeometry x="-1040" y="120" width="200" height="310" as="geometry"/> + </mxCell> + <mxCell id="5" value="Patientenakten "54321"" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#E6E6E6;strokeColor=#666666;align=left;verticalAlign=top;arcSize=13;spacingLeft=10;fontStyle=1;fontColor=#000000;gradientColor=none;" vertex="1" parent="1"> + <mxGeometry x="-800" y="120" width="190" height="310" as="geometry"/> + </mxCell> + <mxCell id="6" value="<b>Composition</b><br><br>.text<br><br><br><br>.encounter<br><br><br>.subject<br><br><br>.section "Diagnosen"<br><br><br><br>.section "Laborwerte"" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#CCCCFF;strokeColor=#6c8ebf;align=left;verticalAlign=top;arcSize=17;spacingLeft=6;fontStyle=0;fontSize=10;spacingTop=-2;fontColor=#000000;" vertex="1" parent="1"> + <mxGeometry x="-1030" y="150" width="120" height="270" as="geometry"/> + </mxCell> + <mxCell id="7" value="<font style="font-size: 10px;"><span style="font-size: 10px;">Fallakte "12345"<br style="font-size: 10px;"><br style="font-size: 10px;"><span style="font-weight: normal;">Dokumente:<br></span></span><span style="background-color: initial; font-weight: normal;">&nbsp; &nbsp;-<span style="white-space: pre;"> </span>Befundbericht vom <span style="white-space: pre;"> </span>9.10.2020<br></span><span style="font-size: 10px;"><span style="font-weight: normal;"><br><br><br><br><br>Diagnosen:<br>&nbsp; &nbsp;-<span style="white-space: pre;"> </span>Diabetes Typ II<br><br>Laborwerte:<br>&nbsp; &nbsp;-<span style="white-space: pre;"> </span>Blutzucker: 201mg/dl&nbsp;<br></span></span><br style="font-size: 10px;"></font>" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#CCCCCC;strokeColor=#666666;align=left;verticalAlign=top;arcSize=11;spacingLeft=6;fontStyle=1;fontColor=#000000;gradientColor=none;spacingTop=-2;fontSize=10;" vertex="1" parent="1"> + <mxGeometry x="-790" y="150" width="170" height="210" as="geometry"/> + </mxCell> + <mxCell id="13" value="<div style="font-size: 6px;"><span style="font-size: 6px; background-color: initial;">&lt;html&lt;h1&gt;Befundbericht&lt;/h1&gt;<br style="font-size: 6px;"></span><span style="background-color: initial; font-size: 6px;">&lt;p&gt;Patient: Mustermann, Max&nbsp;</span><span style="background-color: initial; font-size: 6px;">(*01.01.1970)&lt;/p&gt;</span><span style="background-color: initial; font-size: 6px;">&lt;h2&gt;Diagnosen&lt;/h2&gt;…</span></div><font style="font-size: 6px;"><div style="font-size: 6px;"><span style="background-color: initial; font-size: 6px;">&lt;h2&gt;VitalParameter&lt;/h2&gt;<br style="font-size: 6px;"></span><span style="background-color: initial; font-size: 6px;">…mit freundlichen Grüßen&lt;/html&gt;</span></div></font>" style="rounded=0;whiteSpace=wrap;html=1;fontSize=6;fontColor=#000000;fillColor=#FFFFFF;gradientColor=none;align=left;verticalAlign=top;spacing=0;spacingRight=0;spacingLeft=2;strokeWidth=0.5;" vertex="1" parent="1"> + <mxGeometry x="-1000" y="180" width="140" height="45" as="geometry"/> + </mxCell> + <mxCell id="14" value="<div style="font-size: 6px;"><span style="font-size: 6px; background-color: initial;">&lt;html&lt;h1&gt;Befundbericht&lt;/h1&gt;<br style="font-size: 6px;"></span><span style="background-color: initial; font-size: 6px;">&lt;p&gt;Patient: Mustermann, Max&nbsp;</span><span style="background-color: initial; font-size: 6px;">(*01.01.1970)&lt;/p&gt;</span><span style="background-color: initial; font-size: 6px;">&lt;h2&gt;Diagnosen&lt;/h2&gt;…</span></div><font style="font-size: 6px;"><div style="font-size: 6px;"><span style="background-color: initial; font-size: 6px;">&lt;h2&gt;VitalParameter&lt;/h2&gt;<br style="font-size: 6px;"></span><span style="background-color: initial; font-size: 6px;">…mit freundlichen Grüßen&lt;/html&gt;</span></div></font>" style="rounded=0;whiteSpace=wrap;html=1;fontSize=6;fontColor=#000000;fillColor=#FFFFFF;gradientColor=none;align=left;verticalAlign=top;spacing=0;spacingRight=0;spacingLeft=2;strokeWidth=0.5;" vertex="1" parent="1"> + <mxGeometry x="-775" y="210" width="140" height="45" as="geometry"/> + </mxCell> + <mxCell id="15" value="Encounter.identifier<br><span style="white-space: pre;"> </span>= 12345" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#9999FF;strokeColor=#6c8ebf;align=left;verticalAlign=middle;arcSize=17;spacingLeft=8;fontStyle=0;fontSize=10;spacingTop=0;fontColor=#000000;spacing=0;" vertex="1" parent="1"> + <mxGeometry x="-970" y="230" width="110" height="30" as="geometry"/> + </mxCell> + <mxCell id="16" value="Patient.identifier<br><span style="white-space: pre;"> </span>= 54321" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#9999FF;strokeColor=#6c8ebf;align=left;verticalAlign=middle;arcSize=17;spacingLeft=8;fontStyle=0;fontSize=10;spacingTop=0;fontColor=#000000;spacing=0;" vertex="1" parent="1"> + <mxGeometry x="-970" y="265" width="110" height="30" as="geometry"/> + </mxCell> + <mxCell id="17" value="Condition.display<br>= "Diabetes Typ II"" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#9999FF;strokeColor=#6c8ebf;align=left;verticalAlign=middle;arcSize=17;spacingLeft=8;fontStyle=0;fontSize=10;spacingTop=0;fontColor=#000000;spacing=0;" vertex="1" parent="1"> + <mxGeometry x="-970" y="314" width="110" height="30" as="geometry"/> + </mxCell> + <mxCell id="19" style="edgeStyle=none;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;fontSize=6;fontColor=#000000;strokeColor=#999999;" edge="1" parent="1" source="18"> + <mxGeometry relative="1" as="geometry"> + <mxPoint x="-780" y="318" as="targetPoint"/> + </mxGeometry> + </mxCell> + <mxCell id="18" value="Observation<br>.code = "Blutzucker"<br>.value = "201 mg/dl"" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#9999FF;strokeColor=#6c8ebf;align=left;verticalAlign=middle;arcSize=17;spacingLeft=8;fontStyle=0;fontSize=10;spacingTop=0;fontColor=#000000;spacing=0;" vertex="1" parent="1"> + <mxGeometry x="-970" y="362" width="110" height="45" as="geometry"/> + </mxCell> + <mxCell id="20" style="edgeStyle=none;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;fontSize=6;fontColor=#000000;strokeColor=#999999;" edge="1" parent="1" source="17"> + <mxGeometry relative="1" as="geometry"> + <mxPoint x="-850.0000000000001" y="394.5000000000001" as="sourcePoint"/> + <mxPoint x="-780" y="282" as="targetPoint"/> + </mxGeometry> + </mxCell> + <mxCell id="22" style="edgeStyle=none;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;fontSize=6;fontColor=#000000;strokeColor=#000000;entryX=0.053;entryY=0.067;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" source="16" target="5"> + <mxGeometry relative="1" as="geometry"> + <mxPoint x="-850.0000000000001" y="339" as="sourcePoint"/> + <mxPoint x="-770" y="292.0000000000001" as="targetPoint"/> + </mxGeometry> + </mxCell> + <mxCell id="23" style="edgeStyle=none;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;fontSize=6;fontColor=#000000;strokeColor=#000000;" edge="1" parent="1" source="15"> + <mxGeometry relative="1" as="geometry"> + <mxPoint x="-850.0000000000001" y="290" as="sourcePoint"/> + <mxPoint x="-785" y="167" as="targetPoint"/> + </mxGeometry> + </mxCell> + <mxCell id="24" style="edgeStyle=none;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;fontSize=6;fontColor=#000000;strokeColor=#000000;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="13" target="14"> + <mxGeometry relative="1" as="geometry"> + <mxPoint x="-850.0000000000001" y="255" as="sourcePoint"/> + <mxPoint x="-775" y="177" as="targetPoint"/> + </mxGeometry> + </mxCell> + </root> + </mxGraphModel> + </diagram> +</mxfile> \ No newline at end of file diff --git a/Material/ISiK Stufe 2 Vereinfachtes Infomodell.drawio b/Material/images/src/drawio/Vereinfachtes_Infomodell.drawio similarity index 100% rename from Material/ISiK Stufe 2 Vereinfachtes Infomodell.drawio rename to Material/images/src/drawio/Vereinfachtes_Infomodell.drawio diff --git a/README.md b/README.md index 063ff27c..aa9ac368 100644 --- a/README.md +++ b/README.md @@ -2,4 +2,3 @@ Dies ist ein Branch rund um das Thema Patientendatenzusammenführung (Patient me Ein Konzept zur genaueren Definition des Problems (WIP) wird unter [Patient merge](ImplementationGuide/markdown/UebergreifendeFestlegungen/Patient_merge.md) veröffentlicht und weiterentwickelt. - diff --git a/Resources/fsh-generated/resources/CapabilityStatement-ISiKCapabilityStatementBasisServer.json b/Resources/fsh-generated/resources/CapabilityStatement-ISiKCapabilityStatementBasisServer.json index f8b7e79c..c7ec73ec 100644 --- a/Resources/fsh-generated/resources/CapabilityStatement-ISiKCapabilityStatementBasisServer.json +++ b/Resources/fsh-generated/resources/CapabilityStatement-ISiKCapabilityStatementBasisServer.json @@ -2,13 +2,13 @@ "resourceType": "CapabilityStatement", "id": "ISiKCapabilityStatementBasisServer", "url": "https://gematik.de/fhir/isik/v3/Basismodul/CapabilityStatement/basis-server", - "status": "active", + "version": "4.0.0-rc", + "status": "draft", "experimental": false, - "version": "3.0.0", "publisher": "gematik GmbH", - "date": "2023-07-01", + "date": "2024-01-16", "implementationGuide": [ - "https://gematik.de/fhir/isik/v3/Basismodul/ImplementationGuide|3.0.0" + "https://gematik.de/fhir/isik/v3/Basismodul/ImplementationGuide|4.0.0-rc" ], "name": "ISiKCapabilityStatementBasisServer", "title": "ISiK CapabilityStatement Basis Server", @@ -648,6 +648,106 @@ } ] }, + { + "extension": [ + { + "url": "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation", + "valueCode": "SHALL" + } + ], + "type": "Account", + "supportedProfile": [ + "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKAbrechnungsfall" + ], + "interaction": [ + { + "extension": [ + { + "url": "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation", + "valueCode": "SHALL" + } + ], + "code": "read" + }, + { + "extension": [ + { + "url": "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation", + "valueCode": "SHALL" + } + ], + "code": "search-type" + } + ], + "searchParam": [ + { + "extension": [ + { + "url": "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation", + "valueCode": "SHALL" + } + ], + "name": "_id", + "definition": "http://hl7.org/fhir/SearchParameter/Resource-id", + "type": "token" + }, + { + "extension": [ + { + "url": "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation", + "valueCode": "SHALL" + } + ], + "name": "identifier", + "definition": "http://hl7.org/fhir/SearchParameter/clinical-identifier", + "type": "token" + }, + { + "extension": [ + { + "url": "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation", + "valueCode": "SHALL" + } + ], + "name": "status", + "definition": "http://hl7.org/fhir/SearchParameter/Account-status", + "type": "token" + }, + { + "extension": [ + { + "url": "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation", + "valueCode": "SHALL" + } + ], + "name": "type", + "definition": "http://hl7.org/fhir/SearchParameter/clinical-type", + "type": "token" + }, + { + "extension": [ + { + "url": "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation", + "valueCode": "SHALL" + } + ], + "name": "patient", + "definition": "http://hl7.org/fhir/SearchParameter/clinical-patient", + "type": "reference" + }, + { + "extension": [ + { + "url": "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation", + "valueCode": "MAY" + } + ], + "name": "_profile", + "definition": "http://hl7.org/fhir/SearchParameter/Resource-profile", + "type": "uri" + } + ] + }, { "extension": [ { @@ -1240,6 +1340,50 @@ "name": "_profile", "definition": "http://hl7.org/fhir/SearchParameter/Resource-profile", "type": "uri" + }, + { + "extension": [ + { + "url": "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation", + "valueCode": "MAY" + } + ], + "name": "address", + "definition": "http://hl7.org/fhir/SearchParameter/individual-address", + "type": "string" + }, + { + "extension": [ + { + "url": "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation", + "valueCode": "MAY" + } + ], + "name": "address-city", + "definition": "http://hl7.org/fhir/SearchParameter/individual-address-city", + "type": "string" + }, + { + "extension": [ + { + "url": "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation", + "valueCode": "MAY" + } + ], + "name": "address-country", + "definition": "http://hl7.org/fhir/SearchParameter/individual-address-country", + "type": "string" + }, + { + "extension": [ + { + "url": "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation", + "valueCode": "MAY" + } + ], + "name": "address-postalcode", + "definition": "http://hl7.org/fhir/SearchParameter/individual-address-postalcode", + "type": "string" } ], "searchInclude": [ @@ -1607,44 +1751,106 @@ "valueCode": "MAY" } ], - "type": "Binary", + "type": "Composition", "supportedProfile": [ - "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKBinary" - ], - "interaction": [ - { - "extension": [ - { - "url": "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation", - "valueCode": "SHALL" - } - ], - "code": "read" - } + "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKBerichtSubSysteme" ] }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation", - "valueCode": "MAY" + "valueCode": "SHALL" } ], - "type": "Composition", + "type": "Bundle", "supportedProfile": [ - "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKBerichtSubSysteme" + "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKBerichtBundle" ] }, { "extension": [ { - "url": "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation", - "valueCode": "SHALL" + "url": "http://hl7.org/fhir/uv/subscriptions-backport/StructureDefinition/capabilitystatement-subscriptiontopic-canonical", + "valueCode": "SHALL", + "valueCanonical": "https://gematik.de/fhir/isik/v4/Basismodul/topic/patient-merge" } ], - "type": "Bundle", + "type": "Subscription", "supportedProfile": [ - "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKBerichtBundle" + "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/patient-merge-subscription" + ], + "_supportedProfile": [ + { + "extension": [ + { + "url": "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation", + "valueCode": "SHOULD" + } + ] + } + ], + "interaction": [ + { + "extension": [ + { + "url": "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation", + "valueCode": "SHALL" + } + ], + "code": "read" + }, + { + "extension": [ + { + "url": "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation", + "valueCode": "SHOULD" + } + ], + "code": "create" + }, + { + "extension": [ + { + "url": "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation", + "valueCode": "SHOULD" + } + ], + "code": "update" + }, + { + "extension": [ + { + "url": "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation", + "valueCode": "SHOULD" + } + ], + "code": "delete" + } + ], + "searchParam": [ + { + "extension": [ + { + "url": "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation", + "valueCode": "SHALL" + } + ], + "name": "url", + "definition": "http://hl7.org/fhir/SearchParameter/Subscription-url", + "type": "uri" + }, + { + "extension": [ + { + "url": "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation", + "valueCode": "SHOULD" + } + ], + "name": "status", + "definition": "http://hl7.org/fhir/SearchParameter/Subscription-status", + "type": "token" + } ] } ] diff --git a/Resources/fsh-generated/resources/CodeSystem-CodeSystemExample.json b/Resources/fsh-generated/resources/CodeSystem-CodeSystemExample.json index a9cf686d..4e5e56d7 100644 --- a/Resources/fsh-generated/resources/CodeSystem-CodeSystemExample.json +++ b/Resources/fsh-generated/resources/CodeSystem-CodeSystemExample.json @@ -6,10 +6,13 @@ "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKCodeSystem" ] }, + "version": "4.0.0-rc", + "status": "active", + "experimental": false, + "publisher": "gematik GmbH", + "date": "2024-01-16", "url": "http://example.org/fhir/CodeSystem/TestKatalog", - "version": "2.0.2", "name": "TestKatalog", - "status": "active", "content": "complete", "concept": [ { diff --git a/Resources/fsh-generated/resources/Coverage-CoverageGesetzlich.json b/Resources/fsh-generated/resources/Coverage-CoverageGesetzlich.json index 02515c8c..8765e898 100644 --- a/Resources/fsh-generated/resources/Coverage-CoverageGesetzlich.json +++ b/Resources/fsh-generated/resources/Coverage-CoverageGesetzlich.json @@ -6,20 +6,6 @@ "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKVersicherungsverhaeltnisGesetzlich" ] }, - "identifier": [ - { - "type": { - "coding": [ - { - "code": "GKV", - "system": "http://fhir.de/CodeSystem/identifier-type-de-basis" - } - ] - }, - "system": "http://fhir.de/sid/gkv/kvid-10", - "value": "A234567890" - } - ], "type": { "coding": [ { @@ -45,6 +31,20 @@ "display": "Eine Gesundheitskasse" } ], + "identifier": [ + { + "type": { + "coding": [ + { + "code": "GKV", + "system": "http://fhir.de/CodeSystem/identifier-type-de-basis" + } + ] + }, + "system": "http://fhir.de/sid/gkv/kvid-10", + "value": "A234567890" + } + ], "status": "active", "beneficiary": { "reference": "Patient/PatientinMusterfrau" diff --git a/Resources/fsh-generated/resources/Encounter-Fachabteilungskontakt.json b/Resources/fsh-generated/resources/Encounter-Fachabteilungskontakt.json index 548368e6..8b091bce 100644 --- a/Resources/fsh-generated/resources/Encounter-Fachabteilungskontakt.json +++ b/Resources/fsh-generated/resources/Encounter-Fachabteilungskontakt.json @@ -10,16 +10,16 @@ { "coding": [ { - "code": "operation", - "system": "http://fhir.de/CodeSystem/kontaktart-de" + "code": "abteilungskontakt", + "system": "http://fhir.de/CodeSystem/Kontaktebene" } ] }, { "coding": [ { - "code": "abteilungskontakt", - "system": "http://fhir.de/CodeSystem/Kontaktebene" + "system": "http://fhir.de/CodeSystem/kontaktart-de", + "code": "operation" } ] } diff --git a/Resources/fsh-generated/resources/Patient-DorisObsolet.json b/Resources/fsh-generated/resources/Patient-DorisObsolet.json new file mode 100644 index 00000000..7c57fa4c --- /dev/null +++ b/Resources/fsh-generated/resources/Patient-DorisObsolet.json @@ -0,0 +1,55 @@ +{ + "resourceType": "Patient", + "id": "DorisObsolet", + "meta": { + "profile": [ + "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKPatient" + ] + }, + "identifier": [ + { + "type": { + "coding": [ + { + "code": "MR", + "system": "http://terminology.hl7.org/CodeSystem/v2-0203" + } + ] + }, + "system": "https://fhir.krankenhaus.example/sid/PID", + "value": "654321" + }, + { + "type": { + "coding": [ + { + "code": "GKV", + "system": "http://fhir.de/CodeSystem/identifier-type-de-basis" + } + ] + }, + "system": "http://fhir.de/sid/gkv/kvid-10", + "value": "A123456789" + } + ], + "name": [ + { + "use": "official", + "family": "Duplikat", + "given": [ + "Doris" + ] + } + ], + "active": false, + "gender": "female", + "birthDate": "1964-08-12", + "link": [ + { + "other": { + "reference": "Patient/DorisResultat" + }, + "type": "replaced-by" + } + ] +} diff --git a/Resources/fsh-generated/resources/Patient-DorisQuelle.json b/Resources/fsh-generated/resources/Patient-DorisQuelle.json new file mode 100644 index 00000000..3fffa23e --- /dev/null +++ b/Resources/fsh-generated/resources/Patient-DorisQuelle.json @@ -0,0 +1,47 @@ +{ + "resourceType": "Patient", + "id": "DorisQuelle", + "meta": { + "profile": [ + "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKPatient" + ] + }, + "identifier": [ + { + "type": { + "coding": [ + { + "code": "MR", + "system": "http://terminology.hl7.org/CodeSystem/v2-0203" + } + ] + }, + "system": "https://fhir.krankenhaus.example/sid/PID", + "value": "654321" + }, + { + "type": { + "coding": [ + { + "code": "GKV", + "system": "http://fhir.de/CodeSystem/identifier-type-de-basis" + } + ] + }, + "system": "http://fhir.de/sid/gkv/kvid-10", + "value": "A123456789" + } + ], + "name": [ + { + "use": "official", + "family": "Duplikat", + "given": [ + "Doris" + ] + } + ], + "active": false, + "gender": "female", + "birthDate": "1964-08-12" +} diff --git a/Resources/fsh-generated/resources/Patient-DorisResultat.json b/Resources/fsh-generated/resources/Patient-DorisResultat.json new file mode 100644 index 00000000..e1b4a91b --- /dev/null +++ b/Resources/fsh-generated/resources/Patient-DorisResultat.json @@ -0,0 +1,55 @@ +{ + "resourceType": "Patient", + "id": "DorisResultat", + "meta": { + "profile": [ + "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKPatient" + ] + }, + "identifier": [ + { + "type": { + "coding": [ + { + "code": "MR", + "system": "http://terminology.hl7.org/CodeSystem/v2-0203" + } + ] + }, + "system": "https://fhir.krankenhaus.example/sid/PID", + "value": "123456" + }, + { + "type": { + "coding": [ + { + "code": "GKV", + "system": "http://fhir.de/CodeSystem/identifier-type-de-basis" + } + ] + }, + "system": "http://fhir.de/sid/gkv/kvid-10", + "value": "A123456789" + } + ], + "name": [ + { + "use": "official", + "family": "Duplikat", + "given": [ + "Doris" + ] + } + ], + "active": true, + "gender": "female", + "birthDate": "1964-08-12", + "link": [ + { + "other": { + "reference": "Patient/DorisObsolet" + }, + "type": "replaces" + } + ] +} diff --git a/Resources/fsh-generated/resources/Patient-DorisZiel.json b/Resources/fsh-generated/resources/Patient-DorisZiel.json new file mode 100644 index 00000000..f56be6bf --- /dev/null +++ b/Resources/fsh-generated/resources/Patient-DorisZiel.json @@ -0,0 +1,47 @@ +{ + "resourceType": "Patient", + "id": "DorisZiel", + "meta": { + "profile": [ + "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKPatient" + ] + }, + "identifier": [ + { + "type": { + "coding": [ + { + "code": "MR", + "system": "http://terminology.hl7.org/CodeSystem/v2-0203" + } + ] + }, + "system": "https://fhir.krankenhaus.example/sid/PID", + "value": "123456" + }, + { + "type": { + "coding": [ + { + "code": "GKV", + "system": "http://fhir.de/CodeSystem/identifier-type-de-basis" + } + ] + }, + "system": "http://fhir.de/sid/gkv/kvid-10", + "value": "A123456789" + } + ], + "name": [ + { + "use": "official", + "family": "Duplikat", + "given": [ + "Doris" + ] + } + ], + "active": true, + "gender": "female", + "birthDate": "1964-08-12" +} diff --git a/Resources/fsh-generated/resources/Patient-PatientinMusterfrau.json b/Resources/fsh-generated/resources/Patient-PatientinMusterfrau.json index 4c7f24ab..40ed7ceb 100644 --- a/Resources/fsh-generated/resources/Patient-PatientinMusterfrau.json +++ b/Resources/fsh-generated/resources/Patient-PatientinMusterfrau.json @@ -32,6 +32,7 @@ "value": "A123456789" }, { + "use": "secondary", "type": { "coding": [ { @@ -40,7 +41,6 @@ } ] }, - "use": "secondary", "value": "1234567890", "assigner": { "display": "Test PKV AG" diff --git a/Resources/fsh-generated/resources/SearchParameter-Encounter-date-start.json b/Resources/fsh-generated/resources/SearchParameter-Encounter-date-start.json index 44a3e57e..1485dbfa 100644 --- a/Resources/fsh-generated/resources/SearchParameter-Encounter-date-start.json +++ b/Resources/fsh-generated/resources/SearchParameter-Encounter-date-start.json @@ -3,11 +3,11 @@ "id": "Encounter-date-start", "url": "https://gematik.de/fhir/isik/v3/Basismodul/SearchParameter/Encounter-date-start", "description": "The actual start date of the Encounter (Backport from R5). The parameter cannot repeat or have multiple values.", - "status": "active", + "version": "4.0.0-rc", + "status": "draft", "experimental": false, - "version": "3.0.0", "publisher": "gematik GmbH", - "date": "2023-07-01", + "date": "2024-01-16", "name": "date-start", "code": "date-start", "base": [ diff --git a/Resources/fsh-generated/resources/SearchParameter-Encounter-end-date.json b/Resources/fsh-generated/resources/SearchParameter-Encounter-end-date.json index c9bd527a..3fb2b75d 100644 --- a/Resources/fsh-generated/resources/SearchParameter-Encounter-end-date.json +++ b/Resources/fsh-generated/resources/SearchParameter-Encounter-end-date.json @@ -3,11 +3,11 @@ "id": "Encounter-end-date", "url": "https://gematik.de/fhir/isik/v3/Basismodul/SearchParameter/Encounter-end-date", "description": "The actual end date of the Encounter (Backport from R5). The parameter cannot repeat or have multiple values.", - "status": "active", + "version": "4.0.0-rc", + "status": "draft", "experimental": false, - "version": "3.0.0", "publisher": "gematik GmbH", - "date": "2023-07-01", + "date": "2024-01-16", "name": "end-date", "code": "end-date", "base": [ diff --git a/Resources/fsh-generated/resources/StructureDefinition-ISiKAbrechnungsfall.json b/Resources/fsh-generated/resources/StructureDefinition-ISiKAbrechnungsfall.json index 684127e8..9333d711 100644 --- a/Resources/fsh-generated/resources/StructureDefinition-ISiKAbrechnungsfall.json +++ b/Resources/fsh-generated/resources/StructureDefinition-ISiKAbrechnungsfall.json @@ -2,11 +2,11 @@ "resourceType": "StructureDefinition", "id": "ISiKAbrechnungsfall", "url": "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKAbrechnungsfall", - "version": "3.0.0", + "version": "4.0.0-rc", "name": "ISiKAbrechnungsfall", - "status": "active", + "status": "draft", "experimental": false, - "date": "2023-07-01", + "date": "2024-01-16", "publisher": "gematik GmbH", "description": "Dieses Profil beschreibt die Gruppierung von medizinischen Leistungen in ISiK-Szenarien", "fhirVersion": "4.0.1", diff --git a/Resources/fsh-generated/resources/StructureDefinition-ISiKAngehoeriger.json b/Resources/fsh-generated/resources/StructureDefinition-ISiKAngehoeriger.json index 0125f1d2..b54251f2 100644 --- a/Resources/fsh-generated/resources/StructureDefinition-ISiKAngehoeriger.json +++ b/Resources/fsh-generated/resources/StructureDefinition-ISiKAngehoeriger.json @@ -2,11 +2,11 @@ "resourceType": "StructureDefinition", "id": "ISiKAngehoeriger", "url": "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKAngehoeriger", - "version": "3.0.0", + "version": "4.0.0-rc", "name": "ISiKAngehoeriger", - "status": "active", + "status": "draft", "experimental": false, - "date": "2023-07-01", + "date": "2024-01-16", "publisher": "gematik GmbH", "description": "Dieses Profil ermöglicht die Nutzung von Angehörigen in ISiK Szenarien.", "fhirVersion": "4.0.1", @@ -120,6 +120,15 @@ "patternAddress": { "type": "both" }, + "constraint": [ + { + "key": "address-cnt-2or3-char", + "severity": "warning", + "human": "The content of the country element (if present) SHALL be selected EITHER from ValueSet ISO Country Alpha-2 http://hl7.org/fhir/ValueSet/iso3166-1-2 OR MAY be selected from ISO Country Alpha-3 Value Set http://hl7.org/fhir/ValueSet/iso3166-1-3, IF the country is not specified in value Set ISO Country Alpha-2 http://hl7.org/fhir/ValueSet/iso3166-1-2.", + "expression": "country.empty() or (country.memberOf('http://hl7.org/fhir/ValueSet/iso3166-1-2') or country.memberOf('http://hl7.org/fhir/ValueSet/iso3166-1-3'))", + "source": "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKAngehoeriger" + } + ], "mustSupport": true }, { @@ -180,15 +189,6 @@ "id": "RelatedPerson.address:Strassenanschrift.country", "path": "RelatedPerson.address.country", "min": 1, - "constraint": [ - { - "key": "address-cnt-2or3-char", - "severity": "warning", - "human": "The content of the country element (if present) SHALL be selected EITHER from ValueSet ISO Country Alpha-2 http://hl7.org/fhir/ValueSet/iso3166-1-2 OR MAY be selected from ISO Country Alpha-3 Value Set http://hl7.org/fhir/ValueSet/iso3166-1-3, IF the country is not specified in value Set ISO Country Alpha-2 http://hl7.org/fhir/ValueSet/iso3166-1-2.", - "expression": "country.empty() or (country.memberOf('http://hl7.org/fhir/ValueSet/iso3166-1-2') or country.memberOf('http://hl7.org/fhir/ValueSet/iso3166-1-3'))", - "source": "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKAngehoeriger" - } - ], "mustSupport": true }, { @@ -208,6 +208,15 @@ "patternAddress": { "type": "postal" }, + "constraint": [ + { + "key": "address-cnt-2or3-char", + "severity": "warning", + "human": "The content of the country element (if present) SHALL be selected EITHER from ValueSet ISO Country Alpha-2 http://hl7.org/fhir/ValueSet/iso3166-1-2 OR MAY be selected from ISO Country Alpha-3 Value Set http://hl7.org/fhir/ValueSet/iso3166-1-3, IF the country is not specified in value Set ISO Country Alpha-2 http://hl7.org/fhir/ValueSet/iso3166-1-2.", + "expression": "country.empty() or (country.memberOf('http://hl7.org/fhir/ValueSet/iso3166-1-2') or country.memberOf('http://hl7.org/fhir/ValueSet/iso3166-1-3'))", + "source": "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKAngehoeriger" + } + ], "mustSupport": true }, { @@ -262,15 +271,6 @@ "id": "RelatedPerson.address:Postfach.country", "path": "RelatedPerson.address.country", "min": 1, - "constraint": [ - { - "key": "address-cnt-2or3-char", - "severity": "warning", - "human": "The content of the country element (if present) SHALL be selected EITHER from ValueSet ISO Country Alpha-2 http://hl7.org/fhir/ValueSet/iso3166-1-2 OR MAY be selected from ISO Country Alpha-3 Value Set http://hl7.org/fhir/ValueSet/iso3166-1-3, IF the country is not specified in value Set ISO Country Alpha-2 http://hl7.org/fhir/ValueSet/iso3166-1-2.", - "expression": "country.empty() or (country.memberOf('http://hl7.org/fhir/ValueSet/iso3166-1-2') or country.memberOf('http://hl7.org/fhir/ValueSet/iso3166-1-3'))", - "source": "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKAngehoeriger" - } - ], "mustSupport": true } ] diff --git a/Resources/fsh-generated/resources/StructureDefinition-ISiKBerichtBundle.json b/Resources/fsh-generated/resources/StructureDefinition-ISiKBerichtBundle.json index 362972c6..785e8c59 100644 --- a/Resources/fsh-generated/resources/StructureDefinition-ISiKBerichtBundle.json +++ b/Resources/fsh-generated/resources/StructureDefinition-ISiKBerichtBundle.json @@ -2,12 +2,12 @@ "resourceType": "StructureDefinition", "id": "ISiKBerichtBundle", "url": "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKBerichtBundle", - "version": "3.0.0", + "version": "4.0.0-rc", "name": "ISiKBerichtBundle", "title": "ISiKBerichtBundle", - "status": "active", + "status": "draft", "experimental": false, - "date": "2023-07-01", + "date": "2024-01-16", "publisher": "gematik GmbH", "description": "A document style representation of the receipt (complete, self-contained, signed)", "fhirVersion": "4.0.1", diff --git a/Resources/fsh-generated/resources/StructureDefinition-ISiKBerichtSubSysteme.json b/Resources/fsh-generated/resources/StructureDefinition-ISiKBerichtSubSysteme.json index 630bc371..f06f7975 100644 --- a/Resources/fsh-generated/resources/StructureDefinition-ISiKBerichtSubSysteme.json +++ b/Resources/fsh-generated/resources/StructureDefinition-ISiKBerichtSubSysteme.json @@ -2,11 +2,11 @@ "resourceType": "StructureDefinition", "id": "ISiKBerichtSubSysteme", "url": "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKBerichtSubSysteme", - "version": "3.0.0", + "version": "4.0.0-rc", "name": "ISiKBerichtSubSysteme", - "status": "active", + "status": "draft", "experimental": false, - "date": "2023-07-01", + "date": "2024-01-16", "publisher": "gematik GmbH", "description": "Dieses Profil ermöglicht die Krankenhaus-interne Übermittlung eines Berichtes in Form eines Dokumentes, die in ISiK Szenarien von Subsystemen an Primärsysteme gesendet werden.", "fhirVersion": "4.0.1", diff --git a/Resources/fsh-generated/resources/StructureDefinition-ISiKBinary.json b/Resources/fsh-generated/resources/StructureDefinition-ISiKBinary.json index 539486de..85ed61c7 100644 --- a/Resources/fsh-generated/resources/StructureDefinition-ISiKBinary.json +++ b/Resources/fsh-generated/resources/StructureDefinition-ISiKBinary.json @@ -2,12 +2,12 @@ "resourceType": "StructureDefinition", "id": "ISiKBinary", "url": "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKBinary", - "version": "3.0.0", + "version": "4.0.0-rc", "name": "ISiKBinary", "title": "ISiKBinary", - "status": "active", + "status": "draft", "experimental": false, - "date": "2023-07-01", + "date": "2024-01-16", "publisher": "gematik GmbH", "description": "Die Binary-Ressource erlaubt den Umgang mit FHIR-fremden Formaten (z.B. PDFs, Bilder, CDA) innerhalb des FHIR-Frameworks.\r\nDazu werden die Daten base64-codiert in der Binary-Ressource (in XML oder JSON) transportiert oder \r\nüber die REST-API am Binary-Endpunkt in ihrem nativen Format bereitgestellt. \r\nBinary-Ressourcen werden von Attachment-Elementen in DocumentReference-Ressourcen verlinkt und damit in den Kontext anderer FHIR-Ressourcen\r\n(z.B. Patient und Encounter) gestellt. ", "fhirVersion": "4.0.1", diff --git a/Resources/fsh-generated/resources/StructureDefinition-ISiKCodeSystem.json b/Resources/fsh-generated/resources/StructureDefinition-ISiKCodeSystem.json index bb2ab95d..abb7a074 100644 --- a/Resources/fsh-generated/resources/StructureDefinition-ISiKCodeSystem.json +++ b/Resources/fsh-generated/resources/StructureDefinition-ISiKCodeSystem.json @@ -2,11 +2,11 @@ "resourceType": "StructureDefinition", "id": "ISiKCodeSystem", "url": "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKCodeSystem", - "version": "3.0.0", + "version": "4.0.0-rc", "name": "ISiKCodeSystem", - "status": "active", + "status": "draft", "experimental": false, - "date": "2023-07-01", + "date": "2024-01-16", "publisher": "gematik GmbH", "description": "Dieses Profil beschreibt die maschinenlesbare Repräsentation von system-sepzifischen Kodierungen in ISiK-Szenarien", "fhirVersion": "4.0.1", diff --git a/Resources/fsh-generated/resources/StructureDefinition-ISiKDiagnose.json b/Resources/fsh-generated/resources/StructureDefinition-ISiKDiagnose.json index f80b7e39..011ef373 100644 --- a/Resources/fsh-generated/resources/StructureDefinition-ISiKDiagnose.json +++ b/Resources/fsh-generated/resources/StructureDefinition-ISiKDiagnose.json @@ -2,11 +2,11 @@ "resourceType": "StructureDefinition", "id": "ISiKDiagnose", "url": "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKDiagnose", - "version": "3.0.0", + "version": "4.0.0-rc", "name": "ISiKDiagnose", - "status": "active", + "status": "draft", "experimental": false, - "date": "2023-07-01", + "date": "2024-01-16", "publisher": "gematik GmbH", "description": "Dieses Profil ermöglicht die Nutzung von Diagnosen in ISiK Szenarien.", "fhirVersion": "4.0.1", @@ -275,8 +275,9 @@ ] }, { - "id": "Condition.onsetPeriod", - "path": "Condition.onsetPeriod", + "id": "Condition.onset[x]:onsetPeriod", + "path": "Condition.onset[x]", + "sliceName": "onsetPeriod", "min": 0, "max": "1", "type": [ @@ -286,8 +287,8 @@ ] }, { - "id": "Condition.onsetPeriod.start.extension:Lebensphase-Start", - "path": "Condition.onsetPeriod.start.extension", + "id": "Condition.onset[x]:onsetPeriod.start.extension:Lebensphase-Start", + "path": "Condition.onset[x].start.extension", "sliceName": "Lebensphase-Start", "min": 0, "max": "1", @@ -301,8 +302,8 @@ ] }, { - "id": "Condition.onsetPeriod.end.extension:Lebensphase-Ende", - "path": "Condition.onsetPeriod.end.extension", + "id": "Condition.onset[x]:onsetPeriod.end.extension:Lebensphase-Ende", + "path": "Condition.onset[x].end.extension", "sliceName": "Lebensphase-Ende", "min": 0, "max": "1", @@ -316,8 +317,9 @@ ] }, { - "id": "Condition.onsetDateTime", - "path": "Condition.onsetDateTime", + "id": "Condition.onset[x]:onsetDateTime", + "path": "Condition.onset[x]", + "sliceName": "onsetDateTime", "min": 0, "max": "1", "type": [ diff --git a/Resources/fsh-generated/resources/StructureDefinition-ISiKKontaktGesundheitseinrichtung.json b/Resources/fsh-generated/resources/StructureDefinition-ISiKKontaktGesundheitseinrichtung.json index 61431bdd..2ca5e55b 100644 --- a/Resources/fsh-generated/resources/StructureDefinition-ISiKKontaktGesundheitseinrichtung.json +++ b/Resources/fsh-generated/resources/StructureDefinition-ISiKKontaktGesundheitseinrichtung.json @@ -2,11 +2,11 @@ "resourceType": "StructureDefinition", "id": "ISiKKontaktGesundheitseinrichtung", "url": "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKKontaktGesundheitseinrichtung", - "version": "3.0.0", + "version": "4.0.0-rc", "name": "ISiKKontaktGesundheitseinrichtung", - "status": "active", + "status": "draft", "experimental": false, - "date": "2023-07-01", + "date": "2024-01-16", "publisher": "gematik GmbH", "description": "Dieses Profil ermöglicht die Herstellung eines Fallbezuges welcher in der Mehrheit der ISiK Szenarien im Krankenhaus essentiell ist.", "fhirVersion": "4.0.1", diff --git a/Resources/fsh-generated/resources/StructureDefinition-ISiKPatient.json b/Resources/fsh-generated/resources/StructureDefinition-ISiKPatient.json index c12b8b9c..427e300e 100644 --- a/Resources/fsh-generated/resources/StructureDefinition-ISiKPatient.json +++ b/Resources/fsh-generated/resources/StructureDefinition-ISiKPatient.json @@ -2,11 +2,11 @@ "resourceType": "StructureDefinition", "id": "ISiKPatient", "url": "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKPatient", - "version": "3.0.0", + "version": "4.0.0-rc", "name": "ISiKPatient", - "status": "active", + "status": "draft", "experimental": false, - "date": "2023-07-01", + "date": "2024-01-16", "publisher": "gematik GmbH", "description": "Dieses Profil beschreibt die Nutzung von administrativen Patientendaten in ISiK-Szenarien.", "fhirVersion": "4.0.1", @@ -466,6 +466,15 @@ "patternAddress": { "type": "both" }, + "constraint": [ + { + "key": "address-cnt-2or3-char", + "severity": "warning", + "human": "The content of the country element (if present) SHALL be selected EITHER from ValueSet ISO Country Alpha-2 http://hl7.org/fhir/ValueSet/iso3166-1-2 OR MAY be selected from ISO Country Alpha-3 Value Set http://hl7.org/fhir/ValueSet/iso3166-1-3, IF the country is not specified in value Set ISO Country Alpha-2 http://hl7.org/fhir/ValueSet/iso3166-1-2.", + "expression": "country.empty() or (country.memberOf('http://hl7.org/fhir/ValueSet/iso3166-1-2') or country.memberOf('http://hl7.org/fhir/ValueSet/iso3166-1-3'))", + "source": "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKPatient" + } + ], "mustSupport": true }, { @@ -526,15 +535,6 @@ "id": "Patient.address:Strassenanschrift.country", "path": "Patient.address.country", "min": 1, - "constraint": [ - { - "key": "address-cnt-2or3-char", - "severity": "warning", - "human": "The content of the country element (if present) SHALL be selected EITHER from ValueSet ISO Country Alpha-2 http://hl7.org/fhir/ValueSet/iso3166-1-2 OR MAY be selected from ISO Country Alpha-3 Value Set http://hl7.org/fhir/ValueSet/iso3166-1-3, IF the country is not specified in value Set ISO Country Alpha-2 http://hl7.org/fhir/ValueSet/iso3166-1-2.", - "expression": "country.empty() or (country.memberOf('http://hl7.org/fhir/ValueSet/iso3166-1-2') or country.memberOf('http://hl7.org/fhir/ValueSet/iso3166-1-3'))", - "source": "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKPatient" - } - ], "mustSupport": true }, { @@ -554,6 +554,15 @@ "patternAddress": { "type": "postal" }, + "constraint": [ + { + "key": "address-cnt-2or3-char", + "severity": "warning", + "human": "The content of the country element (if present) SHALL be selected EITHER from ValueSet ISO Country Alpha-2 http://hl7.org/fhir/ValueSet/iso3166-1-2 OR MAY be selected from ISO Country Alpha-3 Value Set http://hl7.org/fhir/ValueSet/iso3166-1-3, IF the country is not specified in value Set ISO Country Alpha-2 http://hl7.org/fhir/ValueSet/iso3166-1-2.", + "expression": "country.empty() or (country.memberOf('http://hl7.org/fhir/ValueSet/iso3166-1-2') or country.memberOf('http://hl7.org/fhir/ValueSet/iso3166-1-3'))", + "source": "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKPatient" + } + ], "mustSupport": true }, { @@ -608,15 +617,22 @@ "id": "Patient.address:Postfach.country", "path": "Patient.address.country", "min": 1, - "constraint": [ - { - "key": "address-cnt-2or3-char", - "severity": "warning", - "human": "The content of the country element (if present) SHALL be selected EITHER from ValueSet ISO Country Alpha-2 http://hl7.org/fhir/ValueSet/iso3166-1-2 OR MAY be selected from ISO Country Alpha-3 Value Set http://hl7.org/fhir/ValueSet/iso3166-1-3, IF the country is not specified in value Set ISO Country Alpha-2 http://hl7.org/fhir/ValueSet/iso3166-1-2.", - "expression": "country.empty() or (country.memberOf('http://hl7.org/fhir/ValueSet/iso3166-1-2') or country.memberOf('http://hl7.org/fhir/ValueSet/iso3166-1-3'))", - "source": "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKPatient" - } - ], + "mustSupport": true + }, + { + "id": "Patient.link", + "path": "Patient.link", + "comment": "Dieses und untergoerdnete Elemente MÜSSEN bei einem erfolgten Patient merge entsprechend der Festlegungen im Implementation Guide befüllt werden.", + "mustSupport": true + }, + { + "id": "Patient.link.other", + "path": "Patient.link.other", + "mustSupport": true + }, + { + "id": "Patient.link.type", + "path": "Patient.link.type", "mustSupport": true } ] diff --git a/Resources/fsh-generated/resources/StructureDefinition-ISiKPersonImGesundheitsberuf.json b/Resources/fsh-generated/resources/StructureDefinition-ISiKPersonImGesundheitsberuf.json index 59664b36..3adcd72d 100644 --- a/Resources/fsh-generated/resources/StructureDefinition-ISiKPersonImGesundheitsberuf.json +++ b/Resources/fsh-generated/resources/StructureDefinition-ISiKPersonImGesundheitsberuf.json @@ -2,11 +2,11 @@ "resourceType": "StructureDefinition", "id": "ISiKPersonImGesundheitsberuf", "url": "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKPersonImGesundheitsberuf", - "version": "3.0.0", + "version": "4.0.0-rc", "name": "ISiKPersonImGesundheitsberuf", - "status": "active", + "status": "draft", "experimental": false, - "date": "2023-07-01", + "date": "2024-01-16", "publisher": "gematik GmbH", "description": "Dieses Profil ermöglicht die Nutzung von in Gesundheitsberufen tätigen Personen in ISiK Szenarien.", "fhirVersion": "4.0.1", diff --git a/Resources/fsh-generated/resources/StructureDefinition-ISiKProzedur.json b/Resources/fsh-generated/resources/StructureDefinition-ISiKProzedur.json index e6fc9f75..3fdff072 100644 --- a/Resources/fsh-generated/resources/StructureDefinition-ISiKProzedur.json +++ b/Resources/fsh-generated/resources/StructureDefinition-ISiKProzedur.json @@ -2,11 +2,11 @@ "resourceType": "StructureDefinition", "id": "ISiKProzedur", "url": "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKProzedur", - "version": "3.0.0", + "version": "4.0.0-rc", "name": "ISiKProzedur", - "status": "active", + "status": "draft", "experimental": false, - "date": "2023-07-01", + "date": "2024-01-16", "publisher": "gematik GmbH", "description": "Diese Profil ermöglicht die Nutzung von Prozedur-bezogenen Informationen in ISiK Szenarien.", "fhirVersion": "4.0.1", diff --git a/Resources/fsh-generated/resources/StructureDefinition-ISiKValueSet.json b/Resources/fsh-generated/resources/StructureDefinition-ISiKValueSet.json index f06314e8..7e0f3850 100644 --- a/Resources/fsh-generated/resources/StructureDefinition-ISiKValueSet.json +++ b/Resources/fsh-generated/resources/StructureDefinition-ISiKValueSet.json @@ -2,11 +2,11 @@ "resourceType": "StructureDefinition", "id": "ISiKValueSet", "url": "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKValueSet", - "version": "3.0.0", + "version": "4.0.0-rc", "name": "ISiKValueSet", - "status": "active", + "status": "draft", "experimental": false, - "date": "2023-07-01", + "date": "2024-01-16", "publisher": "gematik GmbH", "description": "Dieses Profil beschreibt die maschinenlesbare Auswahl von Codes für die Kodierung spezifischer FHIR-Elemente in ISiK-Szenarien", "fhirVersion": "4.0.1", diff --git a/Resources/fsh-generated/resources/StructureDefinition-ISiKVersicherungsverhaeltnisGesetzlich.json b/Resources/fsh-generated/resources/StructureDefinition-ISiKVersicherungsverhaeltnisGesetzlich.json index f25c0b3b..567d0685 100644 --- a/Resources/fsh-generated/resources/StructureDefinition-ISiKVersicherungsverhaeltnisGesetzlich.json +++ b/Resources/fsh-generated/resources/StructureDefinition-ISiKVersicherungsverhaeltnisGesetzlich.json @@ -2,11 +2,11 @@ "resourceType": "StructureDefinition", "id": "ISiKVersicherungsverhaeltnisGesetzlich", "url": "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKVersicherungsverhaeltnisGesetzlich", - "version": "3.0.0", + "version": "4.0.0-rc", "name": "ISiKVersicherungsverhaeltnisGesetzlich", - "status": "active", + "status": "draft", "experimental": false, - "date": "2023-07-01", + "date": "2024-01-16", "publisher": "gematik GmbH", "description": "Dieses Profil ermöglicht die Darstellung eines gesetzlichen Versicherungsverhältnisses in ISiK Szenarien.", "fhirVersion": "4.0.1", @@ -35,15 +35,48 @@ "rules": "open" }, "short": "Primärer Identifier der Versicherung", - "definition": "Ein gesetzliches Versicherungsverhältnis sollte stets durch die eindeutige 30-stellige Versichertennummer identifiziert werden. Ist diese nicht bekannt, so wird die 10-stellige VersichertenID statt dessen verwendet.", + "definition": "Ein gesetzliches Versicherungsverhältnis sollte stets durch die eindeutige 30-stellige Versicherungsnummer identifiziert werden. Ist diese nicht bekannt, so kann die 10-stellige KrankenversichertenID stattdessen verwendet werden. Diese ist aber nur in Verbindung mit dem Payor eindeutig einem Versicherungsverhältnis zuordenbar", + "mustSupport": true + }, + { + "id": "Coverage.identifier:Versicherungsnummer", + "path": "Coverage.identifier", + "sliceName": "Versicherungsnummer", + "min": 0, + "max": "1", + "patternIdentifier": { + "type": { + "coding": [ + { + "code": "GKV", + "system": "http://fhir.de/CodeSystem/identifier-type-de-basis" + } + ] + }, + "system": "http://fhir.de/sid/gkv/kvnr-30" + } + }, + { + "id": "Coverage.identifier:Versicherungsnummer.type", + "path": "Coverage.identifier.type", "min": 1, "mustSupport": true }, + { + "id": "Coverage.identifier:Versicherungsnummer.system", + "path": "Coverage.identifier.system", + "mustSupport": true + }, + { + "id": "Coverage.identifier:Versicherungsnummer.value", + "path": "Coverage.identifier.value", + "mustSupport": true + }, { "id": "Coverage.identifier:KrankenversichertenID", "path": "Coverage.identifier", "sliceName": "KrankenversichertenID", - "min": 1, + "min": 0, "max": "1", "type": [ { @@ -61,9 +94,9 @@ "system": "http://fhir.de/CodeSystem/identifier-type-de-basis" } ] - } - }, - "mustSupport": true + }, + "system": "http://fhir.de/sid/gkv/kvid-10" + } }, { "id": "Coverage.identifier:KrankenversichertenID.type", @@ -130,7 +163,8 @@ "http://hl7.org/fhir/StructureDefinition/RelatedPerson" ] } - ] + ], + "mustSupport": true }, { "id": "Coverage.subscriber.identifier", @@ -147,7 +181,8 @@ ], "patternIdentifier": { "system": "http://fhir.de/sid/gkv/kvid-10" - } + }, + "mustSupport": true }, { "id": "Coverage.subscriber.display", @@ -158,7 +193,7 @@ "id": "Coverage.beneficiary", "path": "Coverage.beneficiary", "definition": "Benennt die versicherte Person.", - "comment": "Die Angabe der 10-stelligen Krankenversichertennummer ist verpflichtend. Durch die Referenz auf eine Patient-Resource können weitere Informationen zum Patienten hinterlegt werden.", + "comment": "Die Angabe der Reference ist verpflichtend. Durch die Referenz auf eine Patient-Resource können weitere Informationen zum Patienten hinterlegt werden.", "mustSupport": true }, { @@ -179,7 +214,7 @@ "id": "Coverage.beneficiary.display", "path": "Coverage.beneficiary.display", "short": "Name der Versicherten Person", - "definition": "Die Angabe des Namens des Versicherten dient der geeigenten Darstellung für den Benutzer und hat keine technische Bedeutung." + "definition": "Die Angabe des Namens des Versicherten dient der geeigneten Darstellung für den Benutzer und hat keine technische Bedeutung." }, { "id": "Coverage.payor", diff --git a/Resources/fsh-generated/resources/StructureDefinition-ISiKVersicherungsverhaeltnisSelbstzahler.json b/Resources/fsh-generated/resources/StructureDefinition-ISiKVersicherungsverhaeltnisSelbstzahler.json index 514ee3fa..f05e0cfa 100644 --- a/Resources/fsh-generated/resources/StructureDefinition-ISiKVersicherungsverhaeltnisSelbstzahler.json +++ b/Resources/fsh-generated/resources/StructureDefinition-ISiKVersicherungsverhaeltnisSelbstzahler.json @@ -2,11 +2,11 @@ "resourceType": "StructureDefinition", "id": "ISiKVersicherungsverhaeltnisSelbstzahler", "url": "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKVersicherungsverhaeltnisSelbstzahler", - "version": "3.0.0", + "version": "4.0.0-rc", "name": "ISiKVersicherungsverhaeltnisSelbstzahler", - "status": "active", + "status": "draft", "experimental": false, - "date": "2023-07-01", + "date": "2024-01-16", "publisher": "gematik GmbH", "description": "Dieses Profil ermöglicht Selbstzahler Szenarien in ISiK.", "fhirVersion": "4.0.1", diff --git a/Resources/fsh-generated/resources/StructureDefinition-PlannedEndDate.json b/Resources/fsh-generated/resources/StructureDefinition-PlannedEndDate.json index 4b51ad77..7da1aa08 100644 --- a/Resources/fsh-generated/resources/StructureDefinition-PlannedEndDate.json +++ b/Resources/fsh-generated/resources/StructureDefinition-PlannedEndDate.json @@ -2,11 +2,11 @@ "resourceType": "StructureDefinition", "id": "PlannedEndDate", "url": "http://hl7.org/fhir/5.0/StructureDefinition/extension-Encounter.plannedEndDate", - "version": "3.0.0", + "version": "4.0.0-rc", "name": "PlannedEndDate", - "status": "active", + "status": "draft", "experimental": false, - "date": "2023-07-01", + "date": "2024-01-16", "publisher": "gematik GmbH", "fhirVersion": "4.0.1", "mapping": [ diff --git a/Resources/fsh-generated/resources/StructureDefinition-PlannedStartDate.json b/Resources/fsh-generated/resources/StructureDefinition-PlannedStartDate.json index b8813267..a829e8bb 100644 --- a/Resources/fsh-generated/resources/StructureDefinition-PlannedStartDate.json +++ b/Resources/fsh-generated/resources/StructureDefinition-PlannedStartDate.json @@ -2,11 +2,11 @@ "resourceType": "StructureDefinition", "id": "PlannedStartDate", "url": "http://hl7.org/fhir/5.0/StructureDefinition/extension-Encounter.plannedStartDate", - "version": "3.0.0", + "version": "4.0.0-rc", "name": "PlannedStartDate", - "status": "active", + "status": "draft", "experimental": false, - "date": "2023-07-01", + "date": "2024-01-16", "publisher": "gematik GmbH", "fhirVersion": "4.0.1", "mapping": [ diff --git a/Resources/fsh-generated/resources/StructureDefinition-identifier-abrechnungsnummer.json b/Resources/fsh-generated/resources/StructureDefinition-identifier-abrechnungsnummer.json index 5382ccbb..6404e751 100644 --- a/Resources/fsh-generated/resources/StructureDefinition-identifier-abrechnungsnummer.json +++ b/Resources/fsh-generated/resources/StructureDefinition-identifier-abrechnungsnummer.json @@ -2,10 +2,13 @@ "resourceType": "StructureDefinition", "id": "identifier-abrechnungsnummer", "url": "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/identifier-abrechnungsnummer", - "version": "3.0.0", + "version": "4.0.0-rc", "name": "IdentifierAbrechnungsnummer", "title": "Identifier-Profil für die Abbildung einer Abrechnungsnummer (\"Fallnummer\") ", - "status": "active", + "status": "draft", + "experimental": false, + "date": "2024-01-16", + "publisher": "gematik GmbH", "description": "Identifier-Profil für die Abbildung einer organisationsspezifischen Abrechnungsnummer (\"Fallnummer\")", "fhirVersion": "4.0.1", "mapping": [ diff --git a/Resources/fsh-generated/resources/StructureDefinition-patient-merge-subscription.json b/Resources/fsh-generated/resources/StructureDefinition-patient-merge-subscription.json new file mode 100644 index 00000000..391f3c51 --- /dev/null +++ b/Resources/fsh-generated/resources/StructureDefinition-patient-merge-subscription.json @@ -0,0 +1,76 @@ +{ + "resourceType": "StructureDefinition", + "id": "patient-merge-subscription", + "url": "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/patient-merge-subscription", + "name": "PatientMergeSubscription", + "title": "Patient Merge Subscription", + "status": "draft", + "description": "Patient Merge Subscription", + "fhirVersion": "4.3.0", + "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": "Subscription", + "baseDefinition": "http://hl7.org/fhir/uv/subscriptions-backport/StructureDefinition/backport-subscription", + "derivation": "constraint", + "differential": { + "element": [ + { + "id": "Subscription.status", + "path": "Subscription.status", + "mustSupport": true + }, + { + "id": "Subscription.criteria", + "path": "Subscription.criteria", + "patternString": "https://gematik.de/fhir/isik/v4/Basismodul/topic/patient-merge" + }, + { + "id": "Subscription.criteria.extension:filterCriteria", + "path": "Subscription.criteria.extension", + "sliceName": "filterCriteria", + "max": "0" + }, + { + "id": "Subscription.channel.type", + "path": "Subscription.channel.type", + "binding": { + "strength": "required", + "valueSet": "https://gematik.de/fhir/isik/v3/Basismodul/ValueSet/RestAndWSSubscriptionChannel" + } + }, + { + "id": "Subscription.channel.payload", + "path": "Subscription.channel.payload", + "patternCode": "application/fhir+json" + }, + { + "id": "Subscription.channel.payload.extension:content", + "path": "Subscription.channel.payload.extension", + "sliceName": "content" + }, + { + "id": "Subscription.channel.payload.extension:content.value[x]:valueCode", + "path": "Subscription.channel.payload.extension.value[x]", + "sliceName": "valueCode", + "type": [ + { + "code": "code" + } + ], + "patternCode": "id-only" + } + ] + } +} diff --git a/Resources/fsh-generated/resources/ValueSet-DiagnosesSCT.json b/Resources/fsh-generated/resources/ValueSet-DiagnosesSCT.json index 55aebb9c..21a0754b 100644 --- a/Resources/fsh-generated/resources/ValueSet-DiagnosesSCT.json +++ b/Resources/fsh-generated/resources/ValueSet-DiagnosesSCT.json @@ -1,14 +1,14 @@ { "resourceType": "ValueSet", - "status": "active", + "status": "draft", "name": "DiagnosesSCT", "id": "DiagnosesSCT", "description": "Enthaelt alle SNOMED Clinical finding, Event und Situation with explicit context codes", - "version": "3.0.0", "url": "https://gematik.de/fhir/isik/v3/Basismodul/ValueSet/DiagnosesSCT", + "version": "4.0.0-rc", "experimental": false, "publisher": "gematik GmbH", - "date": "2023-07-01", + "date": "2024-01-16", "compose": { "include": [ { diff --git a/Resources/fsh-generated/resources/ValueSet-ISiKAccountIdentifierType.json b/Resources/fsh-generated/resources/ValueSet-ISiKAccountIdentifierType.json index ca40c59f..8385a267 100644 --- a/Resources/fsh-generated/resources/ValueSet-ISiKAccountIdentifierType.json +++ b/Resources/fsh-generated/resources/ValueSet-ISiKAccountIdentifierType.json @@ -1,14 +1,14 @@ { "resourceType": "ValueSet", - "status": "active", + "status": "draft", "name": "ISiKAccountIdentifierType", "id": "ISiKAccountIdentifierType", "title": "ISiKAccountIdentifierType", - "version": "3.0.0", "url": "https://gematik.de/fhir/isik/v3/Basismodul/ValueSet/ISiKAccountIdentifierType", + "version": "4.0.0-rc", "experimental": false, "publisher": "gematik GmbH", - "date": "2023-07-01", + "date": "2024-01-16", "compose": { "include": [ { diff --git a/Resources/fsh-generated/resources/ValueSet-ISiKAccountType.json b/Resources/fsh-generated/resources/ValueSet-ISiKAccountType.json index 519d52ec..65aa313e 100644 --- a/Resources/fsh-generated/resources/ValueSet-ISiKAccountType.json +++ b/Resources/fsh-generated/resources/ValueSet-ISiKAccountType.json @@ -1,14 +1,14 @@ { "resourceType": "ValueSet", - "status": "active", + "status": "draft", "name": "ISiKAccountType", "id": "ISiKAccountType", "title": "ISiKAccountType", - "version": "3.0.0", "url": "https://gematik.de/fhir/isik/v3/Basismodul/ValueSet/ISiKAccountType", + "version": "4.0.0-rc", "experimental": false, "publisher": "gematik GmbH", - "date": "2023-07-01", + "date": "2024-01-16", "compose": { "include": [ { diff --git a/Resources/fsh-generated/resources/ValueSet-ISiKLocationPhysicalType.json b/Resources/fsh-generated/resources/ValueSet-ISiKLocationPhysicalType.json index 3a6e2c94..b5b67010 100644 --- a/Resources/fsh-generated/resources/ValueSet-ISiKLocationPhysicalType.json +++ b/Resources/fsh-generated/resources/ValueSet-ISiKLocationPhysicalType.json @@ -1,13 +1,13 @@ { "resourceType": "ValueSet", - "status": "active", + "status": "draft", "name": "ISiKLocationPhysicalType", "id": "ISiKLocationPhysicalType", - "version": "3.0.0", "url": "https://gematik.de/fhir/isik/v3/Basismodul/ValueSet/ISiKLocationPhysicalType", + "version": "4.0.0-rc", "experimental": false, "publisher": "gematik GmbH", - "date": "2023-07-01", + "date": "2024-01-16", "compose": { "include": [ { diff --git a/Resources/fsh-generated/resources/ValueSet-ProzedurenCodesSCT.json b/Resources/fsh-generated/resources/ValueSet-ProzedurenCodesSCT.json index ec67d7f8..0343b57c 100644 --- a/Resources/fsh-generated/resources/ValueSet-ProzedurenCodesSCT.json +++ b/Resources/fsh-generated/resources/ValueSet-ProzedurenCodesSCT.json @@ -1,14 +1,14 @@ { "resourceType": "ValueSet", - "status": "active", + "status": "draft", "name": "ProzedurenCodesSCT", "id": "ProzedurenCodesSCT", "description": "Enthaelt alle SNOMED Procedure Codes", - "version": "3.0.0", "url": "https://gematik.de/fhir/isik/v3/Basismodul/ValueSet/ProzedurenCodesSCT", + "version": "4.0.0-rc", "experimental": false, "publisher": "gematik GmbH", - "date": "2023-07-01", + "date": "2024-01-16", "compose": { "include": [ { diff --git a/Resources/fsh-generated/resources/ValueSet-ProzedurenKategorieSCT.json b/Resources/fsh-generated/resources/ValueSet-ProzedurenKategorieSCT.json index 9fdef936..cd455845 100644 --- a/Resources/fsh-generated/resources/ValueSet-ProzedurenKategorieSCT.json +++ b/Resources/fsh-generated/resources/ValueSet-ProzedurenKategorieSCT.json @@ -1,22 +1,22 @@ { "resourceType": "ValueSet", - "status": "active", + "status": "draft", "name": "ProzedurenKategorieSCT", "id": "ProzedurenKategorieSCT", "description": "Enthaelt alle SNOMED Codes für ein Mapping der OPS Klassentitel", - "version": "3.0.0", "url": "https://gematik.de/fhir/isik/v3/Basismodul/ValueSet/ProzedurenKategorieSCT", + "version": "4.0.0-rc", "experimental": false, "publisher": "gematik GmbH", - "date": "2023-07-01", + "date": "2024-01-16", "compose": { "include": [ { "system": "http://snomed.info/sct", "concept": [ { - "code": "103693007", - "display": "Diagnostic procedure" + "code": "165197003", + "display": "Diagnostic assessment" }, { "code": "363679005", diff --git a/Resources/fsh-generated/resources/ValueSet-RestAndWSSubscriptionChannel.json b/Resources/fsh-generated/resources/ValueSet-RestAndWSSubscriptionChannel.json new file mode 100644 index 00000000..32a4decc --- /dev/null +++ b/Resources/fsh-generated/resources/ValueSet-RestAndWSSubscriptionChannel.json @@ -0,0 +1,24 @@ +{ + "resourceType": "ValueSet", + "status": "draft", + "name": "RestAndWSSubscriptionChannel", + "id": "RestAndWSSubscriptionChannel", + "title": "RestAndWSSubscriptionChannel", + "description": "Subscription Channel for ISiK", + "url": "https://gematik.de/fhir/isik/v3/Basismodul/ValueSet/RestAndWSSubscriptionChannel", + "compose": { + "include": [ + { + "system": "http://hl7.org/fhir/subscription-channel-type", + "concept": [ + { + "code": "rest-hook" + }, + { + "code": "websocket" + } + ] + } + ] + } +} diff --git a/Resources/input/fsh/ISiKAbrechnungsfall.fsh b/Resources/input/fsh/ISiKAbrechnungsfall.fsh index 590d2814..79a951d8 100644 --- a/Resources/input/fsh/ISiKAbrechnungsfall.fsh +++ b/Resources/input/fsh/ISiKAbrechnungsfall.fsh @@ -31,6 +31,7 @@ Parent: Identifier Id: identifier-abrechnungsnummer Title: "Identifier-Profil für die Abbildung einer Abrechnungsnummer (\"Fallnummer\") " Description: "Identifier-Profil für die Abbildung einer organisationsspezifischen Abrechnungsnummer (\"Fallnummer\")" +* insert Meta * type 1.. * type = $v2-0203#AN * type from ISiKAccountIdentifierType (required) @@ -40,9 +41,9 @@ Description: "Identifier-Profil für die Abbildung einer organisationsspezifisch Instance: AbrechnungsfallAmbulant InstanceOf: ISiKAbrechnungsfall Usage: #example -* identifier.type = $v2-0203#AN -* identifier.system = "https://test.krankenhaus.de/fhir/sid/abrechnungsnummer" -* identifier.value = "0123456789" +* identifier[Abrechnungsnummer] + * system = "https://test.krankenhaus.de/fhir/sid/abrechnungsnummer" + * value = "0123456789" * status = #active * type = $v3-ActCode#AMB * subject = Reference(PatientinMusterfrau) diff --git a/Resources/input/fsh/ISiKAngehoeriger.fsh b/Resources/input/fsh/ISiKAngehoeriger.fsh index 85f70e64..a1069ca0 100644 --- a/Resources/input/fsh/ISiKAngehoeriger.fsh +++ b/Resources/input/fsh/ISiKAngehoeriger.fsh @@ -19,6 +19,7 @@ Description: "Dieses Profil ermöglicht die Nutzung von Angehörigen in ISiK Sze Strassenanschrift 0..* MS and Postfach 0..* MS * address[Postfach] only AddressDeBasis + * obeys address-cnt-2or3-char * ^patternAddress.type = #postal * type 1.. MS * line 1.. MS @@ -29,9 +30,8 @@ Description: "Dieses Profil ermöglicht die Nutzung von Angehörigen in ISiK Sze * city 1.. MS * postalCode 1.. MS * country 1.. MS - * obeys address-cnt-2or3-char - * ^constraint[1].source = Canonical(ISiKAngehoeriger) * address[Strassenanschrift] only AddressDeBasis + * obeys address-cnt-2or3-char * extension[Stadtteil] MS * ^patternAddress.type = #both * type 1.. MS @@ -43,8 +43,6 @@ Description: "Dieses Profil ermöglicht die Nutzung von Angehörigen in ISiK Sze * city 1.. MS * postalCode 1.. MS * country 1.. MS - * obeys address-cnt-2or3-char - * ^constraint[1].source = Canonical(ISiKAngehoeriger) Instance: ISiKAngehoerigerMustermann InstanceOf: ISiKAngehoeriger diff --git a/Resources/input/fsh/ISiKBerichtBundle.fsh b/Resources/input/fsh/ISiKBerichtBundle.fsh index ea799c52..2f151d51 100644 --- a/Resources/input/fsh/ISiKBerichtBundle.fsh +++ b/Resources/input/fsh/ISiKBerichtBundle.fsh @@ -60,7 +60,7 @@ Usage: #example * identifier.value = "0123456789" * status = #unknown * class = $v3-ActCode#IMP -* type[0] = $kontaktart-de#operation +* type[0] = $Kontaktart-de#operation * type[+] = $Kontaktebene#abteilungskontakt * serviceType = $FachabteilungsschluesselCS#0100 * subject.reference = "urn:uuid:3bada18a-6fd2-11ed-a1eb-0242ac112345" diff --git a/Resources/input/fsh/ISiKCapabilityStatement.fsh b/Resources/input/fsh/ISiKCapabilityStatement.fsh index ac4810a6..d2068cf6 100644 --- a/Resources/input/fsh/ISiKCapabilityStatement.fsh +++ b/Resources/input/fsh/ISiKCapabilityStatement.fsh @@ -138,6 +138,7 @@ Usage: #definition * rest.resource[=].searchRevInclude[+] = "Account:patient" * rest.resource[=].searchRevInclude[=].extension.url = $capabilitystatement-expectation * rest.resource[=].searchRevInclude[=].extension.valueCode = #SHALL + * rest.resource[+].extension.url = $capabilitystatement-expectation * rest.resource[=].extension.valueCode = #SHALL * rest.resource[=].type = #Encounter @@ -203,9 +204,6 @@ Usage: #definition * rest.resource[=].searchParam[=].name = "end-date" * rest.resource[=].searchParam[=].definition = "https://gematik.de/fhir/isik/v3/Basismodul/SearchParameter/Encounter-end-date" * rest.resource[=].searchParam[=].type = #date - - - * rest.resource[=].searchParam[+].extension.url = $capabilitystatement-expectation * rest.resource[=].searchParam[=].extension.valueCode = #MAY * rest.resource[=].searchParam[=].name = "location" @@ -248,6 +246,50 @@ Usage: #definition * rest.resource[=].searchRevInclude[+] = "Procedure:encounter" * rest.resource[=].searchRevInclude[=].extension.url = $capabilitystatement-expectation * rest.resource[=].searchRevInclude[=].extension.valueCode = #SHALL + + +* rest.resource[+].extension.url = $capabilitystatement-expectation +* rest.resource[=].extension.valueCode = #SHALL +* rest.resource[=].type = #Account +* rest.resource[=].supportedProfile = "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKAbrechnungsfall" +* rest.resource[=].interaction[0].extension.url = $capabilitystatement-expectation +* rest.resource[=].interaction[=].extension.valueCode = #SHALL +* rest.resource[=].interaction[=].code = #read +* rest.resource[=].interaction[+].extension.url = $capabilitystatement-expectation +* rest.resource[=].interaction[=].extension.valueCode = #SHALL +* rest.resource[=].interaction[=].code = #search-type +* rest.resource[=].searchParam[0].extension.url = $capabilitystatement-expectation +* rest.resource[=].searchParam[=].extension.valueCode = #SHALL +* rest.resource[=].searchParam[=].name = "_id" +* rest.resource[=].searchParam[=].definition = "http://hl7.org/fhir/SearchParameter/Resource-id" +* rest.resource[=].searchParam[=].type = #token +* rest.resource[=].searchParam[+].extension.url = $capabilitystatement-expectation +* rest.resource[=].searchParam[=].extension.valueCode = #SHALL +* rest.resource[=].searchParam[=].name = "identifier" +* rest.resource[=].searchParam[=].definition = "http://hl7.org/fhir/SearchParameter/clinical-identifier" +* rest.resource[=].searchParam[=].type = #token +* rest.resource[=].searchParam[+].extension.url = $capabilitystatement-expectation +* rest.resource[=].searchParam[=].extension.valueCode = #SHALL +* rest.resource[=].searchParam[=].name = "status" +* rest.resource[=].searchParam[=].definition = "http://hl7.org/fhir/SearchParameter/Account-status" +* rest.resource[=].searchParam[=].type = #token +* rest.resource[=].searchParam[+].extension.url = $capabilitystatement-expectation +* rest.resource[=].searchParam[=].extension.valueCode = #SHALL +* rest.resource[=].searchParam[=].name = "type" +* rest.resource[=].searchParam[=].definition = "http://hl7.org/fhir/SearchParameter/clinical-type" +* rest.resource[=].searchParam[=].type = #token +* rest.resource[=].searchParam[+].extension.url = $capabilitystatement-expectation +* rest.resource[=].searchParam[=].extension.valueCode = #SHALL +* rest.resource[=].searchParam[=].name = "patient" +* rest.resource[=].searchParam[=].definition = "http://hl7.org/fhir/SearchParameter/clinical-patient" +* rest.resource[=].searchParam[=].type = #reference +* rest.resource[=].searchParam[+].extension.url = $capabilitystatement-expectation +* rest.resource[=].searchParam[=].extension.valueCode = #MAY +* rest.resource[=].searchParam[=].name = "_profile" +* rest.resource[=].searchParam[=].definition = "http://hl7.org/fhir/SearchParameter/Resource-profile" +* rest.resource[=].searchParam[=].type = #uri + + * rest.resource[+].extension.url = $capabilitystatement-expectation * rest.resource[=].extension.valueCode = #SHALL * rest.resource[=].type = #Condition @@ -475,6 +517,26 @@ Usage: #definition * rest.resource[=].searchParam[=].name = "_profile" * rest.resource[=].searchParam[=].definition = "http://hl7.org/fhir/SearchParameter/Resource-profile" * rest.resource[=].searchParam[=].type = #uri +* rest.resource[=].searchParam[+].extension.url = $capabilitystatement-expectation +* rest.resource[=].searchParam[=].extension.valueCode = #MAY +* rest.resource[=].searchParam[=].name = "address" +* rest.resource[=].searchParam[=].definition = "http://hl7.org/fhir/SearchParameter/individual-address" +* rest.resource[=].searchParam[=].type = #string +* rest.resource[=].searchParam[+].extension.url = $capabilitystatement-expectation +* rest.resource[=].searchParam[=].extension.valueCode = #MAY +* rest.resource[=].searchParam[=].name = "address-city" +* rest.resource[=].searchParam[=].definition = "http://hl7.org/fhir/SearchParameter/individual-address-city" +* rest.resource[=].searchParam[=].type = #string +* rest.resource[=].searchParam[+].extension.url = $capabilitystatement-expectation +* rest.resource[=].searchParam[=].extension.valueCode = #MAY +* rest.resource[=].searchParam[=].name = "address-country" +* rest.resource[=].searchParam[=].definition = "http://hl7.org/fhir/SearchParameter/individual-address-country" +* rest.resource[=].searchParam[=].type = #string +* rest.resource[=].searchParam[+].extension.url = $capabilitystatement-expectation +* rest.resource[=].searchParam[=].extension.valueCode = #MAY +* rest.resource[=].searchParam[=].name = "address-postalcode" +* rest.resource[=].searchParam[=].definition = "http://hl7.org/fhir/SearchParameter/individual-address-postalcode" +* rest.resource[=].searchParam[=].type = #string * rest.resource[=].searchInclude = "RelatedPerson:patient" * rest.resource[=].searchInclude[=].extension.url = $capabilitystatement-expectation * rest.resource[=].searchInclude[=].extension.valueCode = #SHALL @@ -616,19 +678,45 @@ Usage: #definition * rest.resource[=].searchParam[=].type = #composite * rest.resource[+].extension.url = $capabilitystatement-expectation * rest.resource[=].extension.valueCode = #MAY -* rest.resource[=].type = #Binary -* rest.resource[=].supportedProfile = "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKBinary" -* rest.resource[=].interaction[0].extension.url = $capabilitystatement-expectation -* rest.resource[=].interaction[=].extension.valueCode = #SHALL -* rest.resource[=].interaction[=].code = #read -* rest.resource[+].extension.url = $capabilitystatement-expectation -* rest.resource[=].extension.valueCode = #MAY * rest.resource[=].type = #Composition * rest.resource[=].supportedProfile = "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKBerichtSubSysteme" * rest.resource[+].extension.url = $capabilitystatement-expectation * rest.resource[=].extension.valueCode = #SHALL * rest.resource[=].type = #Bundle * rest.resource[=].supportedProfile = "https://gematik.de/fhir/isik/v3/Basismodul/StructureDefinition/ISiKBerichtBundle" + +//TopicBased Subscription Backport (https://hl7.org/fhir/uv/subscriptions-backport/) +* rest.resource[+].extension.url = "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation" +* rest.resource[=].extension.valueCode = #SHALL +* rest.resource[=].extension.url = Canonical(CapabilityStatementSubscriptionTopic) +* rest.resource[=].extension.valueCanonical = $patient-merge-topic +* rest.resource[=].type = #Subscription +* rest.resource[=].supportedProfile = Canonical(PatientMergeSubscription) +* rest.resource[=].supportedProfile.extension.url = "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation" +* rest.resource[=].supportedProfile.extension.valueCode = #SHOULD +* rest.resource[=].interaction[+].extension.url = "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation" +* rest.resource[=].interaction[=].extension.valueCode = #SHALL +* rest.resource[=].interaction[=].code = #read +* rest.resource[=].interaction[+].extension.url = "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation" +* rest.resource[=].interaction[=].extension.valueCode = #SHOULD +* rest.resource[=].interaction[=].code = #create +* rest.resource[=].interaction[+].extension.url = "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation" +* rest.resource[=].interaction[=].extension.valueCode = #SHOULD +* rest.resource[=].interaction[=].code = #update +* rest.resource[=].interaction[+].extension.url = "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation" +* rest.resource[=].interaction[=].extension.valueCode = #SHOULD +* rest.resource[=].interaction[=].code = #delete +* rest.resource[=].searchParam[+].extension.url = "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation" +* rest.resource[=].searchParam[=].extension.valueCode = #SHALL +* rest.resource[=].searchParam[=].name = "url" +* rest.resource[=].searchParam[=].definition = "http://hl7.org/fhir/SearchParameter/Subscription-url" +* rest.resource[=].searchParam[=].type = #uri +* rest.resource[=].searchParam[+].extension.url = "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation" +* rest.resource[=].searchParam[=].extension.valueCode = #SHOULD +* rest.resource[=].searchParam[=].name = "status" +* rest.resource[=].searchParam[=].definition = "http://hl7.org/fhir/SearchParameter/Subscription-status" +* rest.resource[=].searchParam[=].type = #token + * document.extension.url = $capabilitystatement-expectation * document.extension.valueCode = #SHALL * document.mode = #consumer diff --git a/Resources/input/fsh/ISiKCodeSystem.fsh b/Resources/input/fsh/ISiKCodeSystem.fsh index 6062c792..5e59b101 100644 --- a/Resources/input/fsh/ISiKCodeSystem.fsh +++ b/Resources/input/fsh/ISiKCodeSystem.fsh @@ -17,8 +17,8 @@ Description: "Dieses Profil beschreibt die maschinenlesbare Repräsentation von Instance: CodeSystemExample InstanceOf: ISiKCodeSystem Usage: #example +* insert MetaInstance * url = "http://example.org/fhir/CodeSystem/TestKatalog" -* version = "2.0.2" * name = "TestKatalog" * status = #active * content = #complete diff --git a/Resources/input/fsh/ISiKKontaktGesundheitseinrichtung.fsh b/Resources/input/fsh/ISiKKontaktGesundheitseinrichtung.fsh index 606a6f83..fcdd22ba 100644 --- a/Resources/input/fsh/ISiKKontaktGesundheitseinrichtung.fsh +++ b/Resources/input/fsh/ISiKKontaktGesundheitseinrichtung.fsh @@ -145,8 +145,8 @@ Usage: #example * identifier.value = "0123456789" * status = #finished * class = $v3-ActCode#IMP -* type[0] = $kontaktart-de#operation -* type[+] = $Kontaktebene#abteilungskontakt +* type[Kontaktebene] = $Kontaktebene#abteilungskontakt +* type[KontaktArt] = $Kontaktart-de#operation * serviceType = $FachabteilungsschluesselCS#0100 * subject = Reference(PatientinMusterfrau) * period.start = "2021-02-12" diff --git a/Resources/input/fsh/ISiKPatient.fsh b/Resources/input/fsh/ISiKPatient.fsh index 2a4bfd4f..437f2dc1 100644 --- a/Resources/input/fsh/ISiKPatient.fsh +++ b/Resources/input/fsh/ISiKPatient.fsh @@ -80,6 +80,7 @@ Description: "Dieses Profil beschreibt die Nutzung von administrativen Patienten Strassenanschrift 0..* MS and Postfach 0..* MS * address[Postfach] only AddressDeBasis + * obeys address-cnt-2or3-char * ^patternAddress.type = #postal * type 1.. MS * line 1.. MS @@ -90,9 +91,8 @@ Description: "Dieses Profil beschreibt die Nutzung von administrativen Patienten * city 1.. MS * postalCode 1.. MS * country 1.. MS - * obeys address-cnt-2or3-char - * ^constraint[1].source = Canonical(ISiKPatient) * address[Strassenanschrift] only AddressDeBasis + * obeys address-cnt-2or3-char * extension[Stadtteil] MS * ^patternAddress.type = #both * type 1.. MS @@ -104,8 +104,10 @@ Description: "Dieses Profil beschreibt die Nutzung von administrativen Patienten * city 1.. MS * postalCode 1.. MS * country 1.. MS - * obeys address-cnt-2or3-char - * ^constraint[1].source = Canonical(ISiKPatient) +* link MS + * ^comment = "Dieses und untergoerdnete Elemente MÜSSEN bei einem erfolgten Patient merge entsprechend der Festlegungen im Implementation Guide befüllt werden." + * other MS + * type MS Instance: PatientinMusterfrau InstanceOf: ISiKPatient @@ -121,22 +123,22 @@ Usage: #example * identifier[Versichertennummer_PKV].value = "1234567890" * identifier[Versichertennummer_PKV].assigner.display = "Test PKV AG" * active = true -* name[0].use = #official -* name[=].family = "Fürstin von Musterfrau" - * extension[0].url = "http://fhir.de/StructureDefinition/humanname-namenszusatz" - * extension[=].valueString = "Fürstin" - * extension[+].url = "http://hl7.org/fhir/StructureDefinition/humanname-own-name" - * extension[=].valueString = "Musterfrau" - * extension[+].url = "http://hl7.org/fhir/StructureDefinition/humanname-own-prefix" - * extension[=].valueString = "von" -* name[=].given = "Erika" -* name[=].prefix = "Dr." - * extension.url = "http://hl7.org/fhir/StructureDefinition/iso21090-EN-qualifier" - * extension.valueCode = #AC -* name[+].use = #maiden -* name[=].family = "Gabler" - * extension.url = "http://hl7.org/fhir/StructureDefinition/humanname-own-name" - * extension.valueString = "Gabler" +* name[Name] + * family = "Fürstin von Musterfrau" + * extension[0].url = "http://fhir.de/StructureDefinition/humanname-namenszusatz" + * extension[=].valueString = "Fürstin" + * extension[+].url = "http://hl7.org/fhir/StructureDefinition/humanname-own-name" + * extension[=].valueString = "Musterfrau" + * extension[+].url = "http://hl7.org/fhir/StructureDefinition/humanname-own-prefix" + * extension[=].valueString = "von" + * given = "Erika" + * prefix = "Dr." + * extension.url = "http://hl7.org/fhir/StructureDefinition/iso21090-EN-qualifier" + * extension.valueCode = #AC +* name[Geburtsname] + * family = "Gabler" + * extension.url = "http://hl7.org/fhir/StructureDefinition/humanname-own-name" + * extension.valueString = "Gabler" * gender = #female * birthDate = "1964-08-12" * address[0].type = #both @@ -160,6 +162,8 @@ Usage: #example * address[=].country = "DE" + + Invariant: isik-pat-1 Description: "Falls die Geschlechtsangabe 'other' gewählt wird, muss die amtliche Differenzierung per Extension angegeben werden" Severity: #error diff --git a/Resources/input/fsh/ISiKPersonImGesundheitsberuf.fsh b/Resources/input/fsh/ISiKPersonImGesundheitsberuf.fsh index c2408fba..b6cea8bf 100644 --- a/Resources/input/fsh/ISiKPersonImGesundheitsberuf.fsh +++ b/Resources/input/fsh/ISiKPersonImGesundheitsberuf.fsh @@ -100,17 +100,17 @@ Usage: #example * identifier[=].system = "http://fhir.de/sid/bundesaerztekammer/efn" * identifier[=].value = "123456789123456" * active = true -* name[0].use = #official -* name[=].text = "Walter Arzt" -* name[=].family = "Arzt" - * extension.url = "http://hl7.org/fhir/StructureDefinition/humanname-own-name" - * extension.valueString = "Arzt" -* name[=].given = "Walter" -* name[+].use = #maiden -* name[=].text = "Gross" -* name[=].family = "Gross" - * extension.url = "http://hl7.org/fhir/StructureDefinition/humanname-own-name" - * extension.valueString = "Gross" +* name[Name] + * text = "Walter Arzt" + * family = "Arzt" + * extension.url = "http://hl7.org/fhir/StructureDefinition/humanname-own-name" + * extension.valueString = "Arzt" + * given = "Walter" +* name[Geburtsname] + * text = "Gross" + * family = "Gross" + * extension.url = "http://hl7.org/fhir/StructureDefinition/humanname-own-name" + * extension.valueString = "Gross" * address.type = #both * address.line = "Schmiedegasse 16" * extension[0].url = "http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-houseNumber" diff --git a/Resources/input/fsh/ISiKVersicherungsverhaeltnisGesetzlich.fsh b/Resources/input/fsh/ISiKVersicherungsverhaeltnisGesetzlich.fsh index 9e8c3887..7bd80e28 100644 --- a/Resources/input/fsh/ISiKVersicherungsverhaeltnisGesetzlich.fsh +++ b/Resources/input/fsh/ISiKVersicherungsverhaeltnisGesetzlich.fsh @@ -9,10 +9,17 @@ Description: "Dieses Profil ermöglicht die Darstellung eines gesetzlichen Versi * ^slicing.discriminator.path = "$this" * ^slicing.rules = #open * ^short = "Primärer Identifier der Versicherung" - * ^definition = "Ein gesetzliches Versicherungsverhältnis sollte stets durch die eindeutige 30-stellige Versichertennummer identifiziert werden. Ist diese nicht bekannt, so wird die 10-stellige VersichertenID statt dessen verwendet." -* identifier contains KrankenversichertenID 1..1 MS + * ^definition = "Ein gesetzliches Versicherungsverhältnis sollte stets durch die eindeutige 30-stellige Versicherungsnummer identifiziert werden. Ist diese nicht bekannt, so kann die 10-stellige KrankenversichertenID stattdessen verwendet werden. Diese ist aber nur in Verbindung mit dem Payor eindeutig einem Versicherungsverhältnis zuordenbar" +* identifier contains Versicherungsnummer ..1 and KrankenversichertenID ..1 +* identifier[Versicherungsnummer] + * ^patternIdentifier.type = $identifier-type-de-basis#GKV + * ^patternIdentifier.system = $kvnr30 + * type 1.. MS + * system MS + * value MS * identifier[KrankenversichertenID] only IdentifierKvid10 - * ^patternIdentifier.type = http://fhir.de/CodeSystem/identifier-type-de-basis#GKV + * ^patternIdentifier.type = $identifier-type-de-basis#GKV + * ^patternIdentifier.system = $kvid10 * type 1.. MS * system MS * value MS @@ -25,21 +32,22 @@ Description: "Dieses Profil ermöglicht die Darstellung eines gesetzlichen Versi * ^slicing.rules = #open * coding contains VersicherungsArtDeBasis 1..1 MS * coding[VersicherungsArtDeBasis] = http://fhir.de/CodeSystem/versicherungsart-de-basis#GKV +* subscriber MS * subscriber only Reference(RelatedPerson) * ^definition = "Hauptversicherte Person, wenn abweichend von beneficiary, z.B. bei Familienversicherung" - * identifier 1.. + * identifier 1.. MS // Das MS Flag dient der Übernahme von 'identifier' aus der Patienten-Instanz. * identifier only IdentifierKvid10 * ^short = "VersichertenID (10-stellig) des Hauptversicherten" * ^patternIdentifier.system = "http://fhir.de/sid/gkv/kvid-10" * display ^short = "Name des Hauptversicherten" * beneficiary MS * ^definition = "Benennt die versicherte Person." - * ^comment = "Die Angabe der 10-stelligen Krankenversichertennummer ist verpflichtend. Durch die Referenz auf eine Patient-Resource können weitere Informationen zum Patienten hinterlegt werden." + * ^comment = "Die Angabe der Reference ist verpflichtend. Durch die Referenz auf eine Patient-Resource können weitere Informationen zum Patienten hinterlegt werden." * reference 1.. MS * identifier ^short = "Identifier der versicherten Person" * ^patternIdentifier.system = "http://fhir.de/sid/gkv/kvid-10" * display ^short = "Name der Versicherten Person" - * ^definition = "Die Angabe des Namens des Versicherten dient der geeigenten Darstellung für den Benutzer und hat keine technische Bedeutung." + * ^definition = "Die Angabe des Namens des Versicherten dient der geeigneten Darstellung für den Benutzer und hat keine technische Bedeutung." * payor ..1 MS * payor only Reference(Organization) * ^definition = "Gibt den Kostenträger des Versicherten an. Die Angabe der IK-Nummer als logische Referenz sowie des Namens als Display ist zwingend erforderlich.\r\nDie Referenz auf eine Resource vom Typ Organization, die weitere Details zur Versicherung enthalten kann (z.B. Adresse, Kontaktdaten) ist optional.\r\nSofern eine zweite Referenz auf einen Kostenträger existiert, so handelt es sich hierbei um den abrechnenden Kostenträger" @@ -54,9 +62,9 @@ Description: "Dieses Profil ermöglicht die Darstellung eines gesetzlichen Versi Instance: CoverageGesetzlich InstanceOf: ISiKVersicherungsverhaeltnisGesetzlich Usage: #example -* identifier.type = $identifier-type-de-basis#GKV -* identifier.system = "http://fhir.de/sid/gkv/kvid-10" -* identifier.value = "A234567890" +* identifier[KrankenversichertenID] + * system = "http://fhir.de/sid/gkv/kvid-10" + * value = "A234567890" * status = #active * type = $versicherungsart-de-basis#GKV * beneficiary = Reference(PatientinMusterfrau) diff --git a/Resources/input/fsh/aliases.fsh b/Resources/input/fsh/aliases.fsh index 5fabccc1..0624ff14 100644 --- a/Resources/input/fsh/aliases.fsh +++ b/Resources/input/fsh/aliases.fsh @@ -12,7 +12,7 @@ Alias: $icd-10-gm-mehrfachcodierungs-kennzeichen-sd = http://fhir.de/StructureDe Alias: $AufnahmegrundErsteUndZweiteStelle = http://fhir.de/CodeSystem/dkgev/AufnahmegrundErsteUndZweiteStelle Alias: $AufnahmegrundDritteStelle = http://fhir.de/CodeSystem/dkgev/AufnahmegrundDritteStelle Alias: $AufnahmegrundVierteStelle = http://fhir.de/CodeSystem/dkgev/AufnahmegrundVierteStelle -Alias: $kontaktart-de = http://fhir.de/CodeSystem/kontaktart-de +Alias: $Kontaktart-de = http://fhir.de/CodeSystem/kontaktart-de Alias: $Kontaktebene = http://fhir.de/CodeSystem/Kontaktebene Alias: $FachabteilungsschluesselCS = http://fhir.de/CodeSystem/dkgev/Fachabteilungsschluessel Alias: $FachabteilungsschluesselVS = http://fhir.de/ValueSet/dkgev/Fachabteilungsschluessel @@ -33,4 +33,7 @@ Alias: $diagnosesSCT = https://gematik.de/fhir/isik/v3/Basismodul/ValueSet/Diagn Alias: $ProzedurenKategorieSCT = https://gematik.de/fhir/isik/v3/Basismodul/ValueSet/ProzedurenKategorieSCT Alias: $KBV_VS_Base_Practitioner_Speciality = https://fhir.kbv.de/ValueSet/KBV_VS_Base_Practitioner_Speciality Alias: $ProzedurenCodesSCT = https://gematik.de/fhir/isik/v3/Basismodul/ValueSet/ProzedurenCodesSCT -Alias: $capabilitystatement-expectation = http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation \ No newline at end of file +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 +Alias: $patient-merge-topic = https://gematik.de/fhir/isik/v4/Basismodul/topic/patient-merge \ No newline at end of file diff --git a/Resources/input/fsh/patient-merge.fsh b/Resources/input/fsh/patient-merge.fsh new file mode 100644 index 00000000..d5c8e2e7 --- /dev/null +++ b/Resources/input/fsh/patient-merge.fsh @@ -0,0 +1,90 @@ +Instance: DorisQuelle +InstanceOf: ISiKPatient +Usage: #example +* identifier[VersichertenId-GKV].type = $identifier-type-de-basis#GKV +* identifier[VersichertenId-GKV].system = "http://fhir.de/sid/gkv/kvid-10" +* identifier[VersichertenId-GKV].value = "A123456789" +* identifier[Patientennummer].type = $v2-0203#MR +* identifier[Patientennummer].system = "https://fhir.krankenhaus.example/sid/PID" +* identifier[Patientennummer].value = "654321" +* active = false +* name[Name] + * family = "Duplikat" + * given = "Doris" +* gender = #female +* birthDate = "1964-08-12" + +Instance: DorisZiel +InstanceOf: ISiKPatient +Usage: #example +* identifier[VersichertenId-GKV].type = $identifier-type-de-basis#GKV +* identifier[VersichertenId-GKV].system = "http://fhir.de/sid/gkv/kvid-10" +* identifier[VersichertenId-GKV].value = "A123456789" +* identifier[Patientennummer].type = $v2-0203#MR +* identifier[Patientennummer].system = "https://fhir.krankenhaus.example/sid/PID" +* identifier[Patientennummer].value = "123456" +* active = true +* name[Name] + * family = "Duplikat" + * given = "Doris" +* gender = #female +* birthDate = "1964-08-12" + +Instance: DorisObsolet +InstanceOf: ISiKPatient +Usage: #example +* identifier[VersichertenId-GKV].type = $identifier-type-de-basis#GKV +* identifier[VersichertenId-GKV].system = "http://fhir.de/sid/gkv/kvid-10" +* identifier[VersichertenId-GKV].value = "A123456789" +* identifier[Patientennummer].type = $v2-0203#MR +* identifier[Patientennummer].system = "https://fhir.krankenhaus.example/sid/PID" +* identifier[Patientennummer].value = "654321" +* active = false +* name[Name] + * family = "Duplikat" + * given = "Doris" +* gender = #female +* birthDate = "1964-08-12" +* link + * other = Reference(DorisResultat) + * type = #replaced-by + + +Instance: DorisResultat +InstanceOf: ISiKPatient +Usage: #example +* identifier[VersichertenId-GKV].type = $identifier-type-de-basis#GKV +* identifier[VersichertenId-GKV].system = "http://fhir.de/sid/gkv/kvid-10" +* identifier[VersichertenId-GKV].value = "A123456789" +* identifier[Patientennummer].type = $v2-0203#MR +* identifier[Patientennummer].system = "https://fhir.krankenhaus.example/sid/PID" +* identifier[Patientennummer].value = "123456" +* active = true +* name[Name] + * family = "Duplikat" + * given = "Doris" +* gender = #female +* birthDate = "1964-08-12" +* link + * other = Reference(DorisObsolet) + * type = #replaces + +Profile: PatientMergeSubscription +Parent: BackportSubscription +Id: patient-merge-subscription +Title: "Patient Merge Subscription" +Description: "Patient Merge Subscription" +* status MS +* criteria = $patient-merge-topic + * extension[filterCriteria] 0..0 +* channel + * type from RestAndWSSubscriptionChannel + * payload = #application/fhir+json + * extension[content].valueCode = #id-only + +ValueSet: RestAndWSSubscriptionChannel +Id: RestAndWSSubscriptionChannel +Title: "RestAndWSSubscriptionChannel" +Description: "Subscription Channel for ISiK" +* SubscriptionChannelType#rest-hook +* SubscriptionChannelType#websocket \ No newline at end of file diff --git a/Resources/input/fsh/ruleset.fsh b/Resources/input/fsh/ruleset.fsh index 4cef5d80..48b7edaf 100644 --- a/Resources/input/fsh/ruleset.fsh +++ b/Resources/input/fsh/ruleset.fsh @@ -1,21 +1,18 @@ -RuleSet: Meta -* ^status = #active -* ^experimental = false -* ^publisher = "gematik GmbH" -* ^date = "2023-07-01" - -RuleSet: Meta-CapabilityStatement -* status = #active -* experimental = false -* version = "3.0.0" -* publisher = "gematik GmbH" -* date = "2023-07-01" -* implementationGuide = "https://gematik.de/fhir/isik/v3/Basismodul/ImplementationGuide|3.0.0" -* url = "https://gematik.de/fhir/isik/v3/Basismodul/CapabilityStatement/basis-server" - -RuleSet: MetaInstance -* status = #active -* experimental = false -* version = "3.0.0" -* publisher = "gematik GmbH" -* date = "2023-07-01" \ No newline at end of file +RuleSet: Meta +* ^version = "4.0.0-rc" +* ^status = #draft +* ^experimental = false +* ^publisher = "gematik GmbH" +* ^date = "2024-01-16" + +RuleSet: MetaInstance +* version = "4.0.0-rc" +* status = #draft +* experimental = false +* publisher = "gematik GmbH" +* date = "2024-01-16" + +RuleSet: Meta-CapabilityStatement +* insert MetaInstance +* implementationGuide = "https://gematik.de/fhir/isik/v3/Basismodul/ImplementationGuide|4.0.0-rc" +* url = "https://gematik.de/fhir/isik/v3/Basismodul/CapabilityStatement/basis-server" \ No newline at end of file diff --git a/Resources/input/fsh/valueSets.fsh b/Resources/input/fsh/valueSets.fsh index 962e9e0f..ee585794 100644 --- a/Resources/input/fsh/valueSets.fsh +++ b/Resources/input/fsh/valueSets.fsh @@ -17,7 +17,7 @@ ValueSet: ProzedurenKategorieSCT Id: ProzedurenKategorieSCT Description: "Enthaelt alle SNOMED Codes für ein Mapping der OPS Klassentitel" * insert Meta -* SNOMED_CT#103693007 "Diagnostic procedure" +* SNOMED_CT#165197003 "Diagnostic assessment" * SNOMED_CT#363679005 "Imaging" * SNOMED_CT#387713003 "Surgical procedure" * SNOMED_CT#18629005 "Administration of medicine" diff --git a/Resources/sushi-config.yaml b/Resources/sushi-config.yaml index 4b7e5cd3..0b5d8f93 100644 --- a/Resources/sushi-config.yaml +++ b/Resources/sushi-config.yaml @@ -2,15 +2,8 @@ canonical: https://gematik.de/fhir/isik/v3/Basismodul fhirVersion: 4.0.1 FSHOnly: true applyExtensionMetadataToRoot: false -id: Implementierungsleitfaden ISiK-Basismodul Stufe 3 3.0.0 -name: Implementierungsleitfaden ISiK-Basismodul Stufe 3 3.0.0 -status: draft -version: "3.0.0" -publisher: - name: Gematik GmbH - url: https://www.gematik.de/ - email: ISiK@gematik.de dependencies: de.basisprofil.r4: 1.4.0 hl7.fhir.r4.core: 4.0.1 hl7.fhir.extensions.r5: 4.0.1 + hl7.fhir.uv.subscriptions-backport: 1.1.0 diff --git a/package.json b/package.json index 67f6a856..55add887 100644 --- a/package.json +++ b/package.json @@ -1,10 +1,10 @@ -{ - "name": "de.gematik.isik-basismodul", - "version": "3.0.0", - "fhirVersions": [ - "4.0.1" - ], - "dependencies": { - "de.basisprofil.r4": "1.4.0" - } +{ + "name": "de.gematik.isik-basismodul", + "version": "4.0.0-rc", + "fhirVersions": [ + "4.0.1" + ], + "dependencies": { + "de.basisprofil.r4": "1.4.0" + } } \ No newline at end of file diff --git a/scripts/config.yaml b/scripts/config.yaml new file mode 100644 index 00000000..ab23a178 --- /dev/null +++ b/scripts/config.yaml @@ -0,0 +1,26 @@ +package.json: + - type: version + regex: '("version":\s*")([\d\.]+.*)(")' +sushi-config.yaml: + - type: version + regex: '(version:\s*)(\d+\.\d+\.\d+.*)()' +ruleset.fsh: + - type: version + regex: + - '(\*\s*version\s*=\s*")([\d\.]+.*)(")' + - '(\*\s*\^version\s*=\s*")([\d\.]+.*)(")' + - '(\*\s*implementationGuide\s*=\s*".*\|)([\d\.]+.*)(")' + - type: date + regex: + - '(\*\s*date\s*=\s*")(\d+\-\d+\-\d+)(")' + - '(\*\s*\^date\s*=\s*")(\d+\-\d+\-\d+)(")' + format: '%Y-%m-%d' +Einfuehrung.md: + - type: version + regex: '(Version: \s*)(\d+\.\d+\.\d+.*)()' + - type: date + regex: '(Datum:\s*)(\d+\.\d+\.\d+.*)()' + format: '%d.%m.%Y' +ImplementierungsleitfadenIsiK_basismodul.json: + - type: version + regex: '("version":\s*")(\d+\.\d+\.\d+.*)(",)' \ No newline at end of file diff --git a/scripts/release_publish.py b/scripts/release_publish.py index 5eead5d5..86adfa52 100644 --- a/scripts/release_publish.py +++ b/scripts/release_publish.py @@ -7,7 +7,7 @@ import yaml -class FileToUpdate: +class FileTypeCombinationToUpdate: def __init__(self, filename, content_type, regex_list, format=None) -> None: self.filename = filename self.content_type = content_type @@ -33,7 +33,7 @@ def create_files_to_update_list(config): for filename, replacements in config.items(): for replacement in replacements: files_to_update.append( - FileToUpdate( + FileTypeCombinationToUpdate( filename, replacement["type"], replacement["regex"] if isinstance(replacement["regex"], list) else [replacement["regex"]], @@ -68,14 +68,14 @@ def replace_content_in_files(files: list, new_release_version: str, new_date: da print("Error: No files found!") return - for file in files: - if file.content_type == "version": - replace_version_in_file(file, new_release_version) - elif file.content_type == "date": - replace_date_in_file(file, new_date) + for FileTypeCombination in files: + if FileTypeCombination.content_type == "version": + replace_version_in_file(FileTypeCombination, new_release_version) + elif FileTypeCombination.content_type == "date": + replace_date_in_file(FileTypeCombination, new_date) -def replace_version_in_file(file: FileToUpdate, new_release_version: str): +def replace_version_in_file(file: FileTypeCombinationToUpdate, new_release_version: str): with open(file.location, 'r') as input_file: input_text = input_file.read() @@ -88,7 +88,7 @@ def replace_version_in_file(file: FileToUpdate, new_release_version: str): output_file.write(input_text) -def replace_date_in_file(file: FileToUpdate, new_date: datetime): +def replace_date_in_file(file: FileTypeCombinationToUpdate, new_date: datetime): with open(file.location, 'r') as input_file: input_text = input_file.read() diff --git a/scripts/update_version.sh b/scripts/update_version.sh deleted file mode 100644 index 2cbe628d..00000000 --- a/scripts/update_version.sh +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/bash -clear -# This script will download the latest validation script from the template source save it -# to the scripts_folder and execute it to validate your fhir ressources. -script_name=release_publish.py -script_path=. - -#parentdir="$(dirname "$script_path")" -#mkdir -p "$parentdir" - -curl https://raw.githubusercontent.com/gematik/spec-TemplateForSimplifierProjects/feature/release_publish/scripts/$script_name -o $script_path -chmod a+x $script_path -python3 $script_name \ No newline at end of file