Skip to content

medizininformatik-initiative/kerndatensatz-dokument

Repository files navigation

Medizininformatik-Initiative Erweiterungsmodul Dokument

Development Environment

Prerequisite

  1. Install git
  2. Clone this Github repository
  3. Change directory to the cloned Github repository (working tree)

Setup

Full Setup

  1. Install Node environment (e.g. using NodeJS Node Version Manager)
  2. Install Java Runtime Environment (e.g. using OpenJDK)
  3. Install Ruby and Jekyll using these OS-specific instructions
  4. Install Visual Studio Code and the FHIR Shorthand language extension
  5. Install SUSHI using these instructions

Dev Containers (Dockerized)

  1. Install Visual Studio Code and the FHIR Shorthand language extension
  2. Install Dev Containers Environment
  3. Open in Dev Container using Visual Studio Code command palette: > Dev Containers: Open Folder in Container...
  4. Select the cloned Github repository as folder, containing the Dev Container configuration

After following this instructions, a prepared docker image will be downloaded and configured, a container based on this images is created with the Github repository mounted into the container as working directory and a new Visual Studio Code window incl. a terminal (shell) opens, representing the development environment to perform the FHIR Profiling.

Usage

  1. Run sushi on command line to check if everything is setup correctly
  2. Create or edit your FHIR profiles using Visual Studio Code with proper extensions
  3. Compile your FHIR Shorthand files to FHIR JSON using sushi
  4. Repeat step 2 to 4 until your finished with your profiling task
  5. Optional: Run _updatePublisher.{sh,bat} to download the FHIR IG Publisher
  6. Run _genonce.{sh,bat} to create the implementation guide with the FHIR IG Publisher and check the generated report for warnings and errors
  7. Commit your changes and push them to the dev branch (or any other feature branch based on dev you have created to introduce your changes)
  8. Create a Pull Request to review and merge your work into main or master branch

Branch Model

Name Description
main Branch the Simplifier is based on and changes should be introduced via Pull Request and after review. Quality assurance checks are triggered on incoming changes.
dev Branch for the collaborative development of the implementation guide, profiles, etc. Quality assurance checks are triggerd on incoming changes.
[prefix/]<task-name> Task (or feature) branch based on dev for the development of single features (e.g. profiles), which is merged back into dev branch after finishing work.

Troubleshooting

SUSHI Errors and Warnings

Problem Description Possible Solution
SUSHI cannot generate or misses snapshots SUSHI claims a faulty or missing snapshot while processing your created FHIR Profile (StructureDefinition). Either you've missed to install expected dependencies: Check if the dependencies section in the sushi-config.yaml contains the required FHIR packages your FHIR Profile uses. Or the package your FHIR Profile uses does not contain the required snapshots to determine your modeled FHIR Profile constraints and build the resulting snapshot: The easiest way might be to install the Firely Terminal and install the dependent packages, including the snapshots, your FHIR Profile uses manually to the local FHIR cache.

Links

Specifications

Tools and Documentation

Additional Learning Materials

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •