-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
eca0543
commit 364cda9
Showing
10 changed files
with
364 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,50 @@ | ||
# This is a basic workflow to help you get started with Actions | ||
|
||
name: CI (FHIR Validation) | ||
|
||
# Controls when the action will run. | ||
on: | ||
# Triggers the workflow on push or pull request events but only for the master branch | ||
push: | ||
branches: [ master ] | ||
pull_request: | ||
branches: [ master ] | ||
|
||
# Allows you to run this workflow manually from the Actions tab | ||
workflow_dispatch: | ||
|
||
# A workflow run is made up of one or more jobs that can run sequentially or in parallel | ||
jobs: | ||
|
||
# Validate all resources using Firely Terminal | ||
CI_FHIR_VALIDATION: | ||
# The type of runner that the job will run on | ||
runs-on: ubuntu-latest | ||
|
||
# Steps represent a sequence of tasks that will be executed as part of the job | ||
steps: | ||
- name: Checkout code | ||
uses: actions/checkout@v2 | ||
|
||
# Java and .NET are already installed on ubuntu-latest | ||
|
||
- name: Firely.Terminal (GitHub Actions) | ||
uses: FirelyTeam/[email protected] | ||
with: | ||
PATH_TO_CONFORMANCE_RESOURCES: Resources/fsh-generated/resources/ | ||
#PATH_TO_EXAMPLES: Examples | ||
PATH_TO_QUALITY_CONTROL_RULES: qc/custom | ||
DOTNET_VALIDATION_ENABLED: true | ||
JAVA_VALIDATION_ENABLED: true | ||
OUTPUT_FORMAT: RAW | ||
JAVA_VALIDATION_OPTIONS: -allow-example-urls true | ||
SIMPLIFIER_USERNAME: ${{ secrets.SIMPLIFIER_USERNAME }} | ||
SIMPLIFIER_PASSWORD: ${{ secrets.SIMPLIFIER_PASSWORD }} | ||
SUSHI_ENABLED: true | ||
SUSHI_OPTIONS: Resources/ | ||
EXPECTED_FAILS: VALIDATION_CONFORMANCE_DOTNET VALIDATION_CONFORMANCE_JAVA VALIDATION_EXAMPLES_JAVA | ||
|
||
- name: Add & Commit | ||
uses: EndBug/add-and-commit@v7 | ||
with: | ||
add: 'Resources/fsh-generated/resources/' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
1. Create GitHub Repsitory | ||
2. Follow the instructions to create the first project via GitHub webpage | ||
3. Settings > Actions > check "Allow all actions and reusable workflows" + "Require approval for first-time contributers" + "Read and write permissions" + "Allow GitHub Actions to create and approve pull requests" > save ;) | ||
4. Settings > Secrets > create repository secrets > "SIMPLIFIER_PASSWORD" + "SIMPLIFIER_USERNAME" + values | ||
5. Settings > Brances > Branch protection rule > Add rule > check "Require a pull request before merging" + "Require approvals" + "Require status checks to pass before merging" + "Require branches to be up to date before merging" > save ;) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,164 @@ | ||
Profile: ISiKPatient | ||
Parent: Patient | ||
Id: ISiKPatient | ||
Description: "Dieses Profil beschreibt die Nutzung von administrativen Patientendaten in ISiK-Szenarien." | ||
* insert Meta | ||
* obeys isik-pat-1 | ||
* . ^constraint[5].source = Canonical(ISiKPatient) | ||
* id 1.. MS | ||
* identifier MS | ||
* ^slicing.discriminator.type = #pattern | ||
* ^slicing.discriminator.path = "$this" | ||
* ^slicing.rules = #open | ||
* identifier contains | ||
VersichertenId-GKV 0..1 MS and | ||
Patientennummer 1..* MS and | ||
Versichertennummer_PKV 0..1 | ||
* identifier[VersichertenId-GKV] only IdentifierKvid10 | ||
* ^patternIdentifier.type = $identifier-type-de-basis#GKV | ||
* type 1.. MS | ||
* system MS | ||
* value MS | ||
* identifier[Patientennummer] only IdentifierPid | ||
* ^patternIdentifier.type = $v2-0203#MR | ||
* type MS | ||
* system MS | ||
* value MS | ||
* identifier[Versichertennummer_PKV] only IdentifierPkv | ||
* ^patternIdentifier.type = $identifier-type-de-basis#PKV | ||
* ^mustSupport = false | ||
* use MS | ||
* type 1.. MS | ||
* value MS | ||
* assigner MS | ||
* identifier.system MS | ||
* identifier.value MS | ||
* display MS | ||
* active MS | ||
* name MS | ||
* ^slicing.discriminator.type = #pattern | ||
* ^slicing.discriminator.path = "$this" | ||
* ^slicing.rules = #open | ||
* ^comment = "In order to maintain the differntiations of name parts as given in the VSDM dataset or qualify prefixes as academic titles, vendors can opt to support the extensions specified in the German HumanName Base Profile https://simplifier.net/basisprofil-de-r4/humannamedebasis\r\nThis is however not required within the scope of this specification." | ||
* name contains | ||
Name 1..1 MS and | ||
Geburtsname 0..1 MS | ||
* name[Name] only HumannameDeBasis | ||
* ^patternHumanName.use = #official | ||
* use 1.. MS | ||
* family 1.. MS | ||
* extension[namenszusatz] 0..1 MS | ||
* extension[nachname] 0..1 MS | ||
* extension[vorsatzwort] 0..1 MS | ||
* given 1.. MS | ||
* prefix MS | ||
* extension[prefix-qualifier] 0..1 MS | ||
* extension[prefix-qualifier].value[x] = #AC (exactly) | ||
* name[Geburtsname] only HumannameDeBasis | ||
* ^patternHumanName.use = #maiden | ||
* use 1.. MS | ||
* family 1.. MS | ||
* extension[namenszusatz] 0..1 MS | ||
* extension[nachname] 0..1 MS | ||
* extension[vorsatzwort] 0..1 MS | ||
* given ..0 | ||
* prefix ..0 | ||
* telecom.system 1.. | ||
* telecom.value 1.. | ||
* gender 1.. MS | ||
* extension contains GenderOtherDE named Geschlecht-Administrativ 0..1 MS | ||
* birthDate 1.. MS | ||
* extension contains $data-absent-reason named Data-Absent-Reason 0..1 MS | ||
* extension[Data-Absent-Reason].value[x] = #unknown (exactly) | ||
* extension[Data-Absent-Reason].value[x] MS | ||
* address MS | ||
* ^slicing.discriminator.type = #pattern | ||
* ^slicing.discriminator.path = "$this" | ||
* ^slicing.rules = #open | ||
* ^comment = "In order to differentiate between post box addresses and physical addresses, street names and house numbers, and to add city district names, vendors can opt to support the extensions as suggested in the German Address Base Profile http://fhir.de/StructureDefinition/address-de-basis.\r\nSuch differentiations are however not required within the scope of this specification." | ||
* address contains | ||
Strassenanschrift 0..* MS and | ||
Postfach 0..* MS | ||
* address[Postfach] only AddressDeBasis | ||
* ^patternAddress.type = #postal | ||
* type 1.. MS | ||
* line 1.. MS | ||
* extension[Strasse] 0..0 | ||
* extension[Hausnummer] 0..0 | ||
* extension[Adresszusatz] 0..0 | ||
* extension[Postfach] 0..1 MS | ||
* city 1.. MS | ||
* postalCode 1.. MS | ||
* country 1.. MS | ||
* obeys address-cnt-2or3-char | ||
* ^constraint[1].source = Canonical(ISiKPatient) | ||
* address[Strassenanschrift] only AddressDeBasis | ||
* ^patternAddress.type = #both | ||
* type 1.. MS | ||
* line 1.. MS | ||
* extension[Strasse] 0..1 MS | ||
* extension[Hausnummer] 0..1 MS | ||
* extension[Adresszusatz] 0..1 MS | ||
* extension[Postfach] 0..0 | ||
* city 1.. MS | ||
* postalCode 1.. MS | ||
* country 1.. MS | ||
* obeys address-cnt-2or3-char | ||
* ^constraint[1].source = Canonical(ISiKPatient) | ||
|
||
Instance: PatientinMusterfrau | ||
InstanceOf: ISiKPatient | ||
Usage: #example | ||
* identifier[0].type = $identifier-type-de-basis#GKV | ||
* identifier[=].system = "http://fhir.de/sid/gkv/kvid-10" | ||
* identifier[=].value = "A123456789" | ||
* identifier[+].type = $v2-0203#MR | ||
* identifier[=].system = "https://fhir.krankenhaus.example/NamingSystem/PID" | ||
* identifier[=].value = "TestPID" | ||
* identifier[+].use = #secondary | ||
* identifier[=].type = $identifier-type-de-basis#PKV | ||
* identifier[=].value = "1234567890" | ||
* identifier[=].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 = "Graf" | ||
* 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" | ||
* gender = #female | ||
* birthDate = "1964-08-12" | ||
* address[0].type = #both | ||
* address[=].line[0] = "Musterweg 2" | ||
* address[=].line[+] = "3. Etage" | ||
* address[=].line[0].extension[0].url = "http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-streetName" | ||
* address[=].line[=].extension[=].valueString = "Musterweg" | ||
* address[=].line[=].extension[+].url = "http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-houseNumber" | ||
* address[=].line[=].extension[=].valueString = "2" | ||
* address[=].line[+].extension.url = "http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-additionalLocator" | ||
* address[=].line[=].extension.valueString = "3. Etage" | ||
* address[=].city = "Musterhausen" | ||
* address[=].postalCode = "98764" | ||
* address[=].country = "DE" | ||
* address[+].type = #postal | ||
* address[=].line = "Postfach 8 15" | ||
* extension.url = "http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-postBox" | ||
* extension.valueString = "Postfach 8 15" | ||
* address[=].city = "Musterhausen" | ||
* address[=].postalCode = "98764" | ||
* 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 | ||
Expression: "gender.exists() and gender='other' implies gender.extension('http://fhir.de/StructureDefinition/gender-amtlich-de').exists()" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,37 @@ | ||
Profile: ISiKValueSet | ||
Parent: ValueSet | ||
Id: ISiKValueSet | ||
Description: "Dieses Profil beschreibt die maschinenlesbare Auswahl von Codes für die Kodierung spezifischer FHIR-Elemente in ISiK-Szenarien" | ||
* insert Meta | ||
* id 1.. MS | ||
* url 1.. MS | ||
* version 1.. MS | ||
* name 1.. MS | ||
* status MS | ||
* useContext 1.. MS | ||
* useContext.code = http://terminology.hl7.org/CodeSystem/usage-context-type#focus | ||
* useContext.value[x] only CodeableConcept | ||
* useContext.value[x] from ResourceType (required) | ||
* useContext.value[x] ^binding.description = "One of the resource types defined as part of this version of FHIR." | ||
* expansion 1.. MS | ||
* expansion.timestamp MS | ||
* expansion.contains 1.. MS | ||
* expansion.contains.system 1.. MS | ||
* expansion.contains.version 1.. MS | ||
* expansion.contains.code 1.. MS | ||
* expansion.contains.display 1.. MS | ||
|
||
Instance: ISiKValueSetExample | ||
InstanceOf: ISiKValueSet | ||
Usage: #example | ||
* url = "http://example.org/fhir/ValueSet/TestValueSet" | ||
* version = "1.0.0" | ||
* name = "TestValueSet" | ||
* status = #active | ||
* useContext.code = http://terminology.hl7.org/CodeSystem/usage-context-type#focus | ||
* useContext.valueCodeableConcept = http://hl7.org/fhir/resource-types#Encounter | ||
* expansion.timestamp = "2022-03-30" | ||
* expansion.contains.system = "http://example.org/fhir/CodeSystem/TestKatalog" | ||
* expansion.contains.version = "1.0.0" | ||
* expansion.contains.code = #test | ||
* expansion.contains.display = "Test" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
Alias: $v2-0203 = http://terminology.hl7.org/CodeSystem/v2-0203 | ||
Alias: $identifier-type-de-basis = http://fhir.de/CodeSystem/identifier-type-de-basis | ||
Alias: $data-absent-reason = http://hl7.org/fhir/StructureDefinition/data-absent-reason | ||
|
||
/* | ||
// Backup | ||
Alias: $loinc = http://loinc.org | ||
Alias: $sct = http://snomed.info/sct | ||
Alias: $condition-clinical = http://terminology.hl7.org/CodeSystem/condition-clinical | ||
Alias: $diagnosis-role = http://terminology.hl7.org/CodeSystem/diagnosis-role | ||
Alias: $v3-ActCode = http://terminology.hl7.org/CodeSystem/v3-ActCode | ||
Alias: $DiagnosisRole = http://terminology.hl7.org/CodeSystem/diagnosis-role | ||
Alias: $LocationPhysicalType = http://terminology.hl7.org/CodeSystem/location-physical-type | ||
Alias: $icd-10-gm = http://fhir.de/CodeSystem/bfarm/icd-10-gm | ||
Alias: $icd-10-gm-mehrfachcodierungs-kennzeichen-cs = http://fhir.de/CodeSystem/icd-10-gm-mehrfachcodierungs-kennzeichen | ||
Alias: $icd-10-gm-mehrfachcodierungs-kennzeichen-sd = http://fhir.de/StructureDefinition/icd-10-gm-mehrfachcodierungs-kennzeichen | ||
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: $Kontaktebene = http://fhir.de/CodeSystem/Kontaktebene | ||
Alias: $FachabteilungsschluesselCS = http://fhir.de/CodeSystem/dkgev/Fachabteilungsschluessel | ||
Alias: $FachabteilungsschluesselVS = http://fhir.de/ValueSet/dkgev/Fachabteilungsschluessel | ||
Alias: $FachabteilungsschluesselErweitertCS = http://fhir.de/CodeSystem/dkgev/Fachabteilungsschluessel-erweitert | ||
Alias: $FachabteilungsschluesselErweitertVS = http://fhir.de/ValueSet/dkgev/Fachabteilungsschluessel-erweitert | ||
Alias: $Aufnahmeanlass = http://fhir.de/CodeSystem/dgkev/Aufnahmeanlass | ||
Alias: $EntlassungsgrundErsteUndZweiteStelle = http://fhir.de/CodeSystem/dkgev/EntlassungsgrundErsteUndZweiteStelle | ||
Alias: $EntlassungsgrundDritteStelle = http://fhir.de/CodeSystem/dkgev/EntlassungsgrundDritteStelle | ||
Alias: $ops = http://fhir.de/CodeSystem/bfarm/ops | ||
Alias: $versicherungsart-de-basis = http://fhir.de/CodeSystem/versicherungsart-de-basis | ||
Alias: $WahlleistungExtension = http://fhir.de/StructureDefinition/Wahlleistung | ||
Alias: $Abrechnungsart = http://fhir.de/CodeSystem/dkgev/Abrechnungsart | ||
Alias: $alpha-id = http://fhir.de/ValueSet/bfarm/alpha-id | ||
Alias: $condition-related = http://hl7.org/fhir/StructureDefinition/condition-related | ||
Alias: $data-absent-reason = http://hl7.org/fhir/StructureDefinition/data-absent-reason | ||
Alias: $diagnosesSCT = https://gematik.de/fhir/isik/v2/Basismodul/ValueSet/DiagnosesSCT | ||
Alias: $ProzedurenKategorieSCT = https://gematik.de/fhir/isik/v2/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/v2/Basismodul/ValueSet/ProzedurenCodesSCT | ||
Alias: $capabilitystatement-expectation = http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation | ||
*/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
Invariant: address-cnt-2or3-char | ||
Description: "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." | ||
Severity: #warning | ||
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'))" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
RuleSet: Meta | ||
* ^status = #active | ||
* ^experimental = false | ||
* ^publisher = "gematik GmbH" | ||
* ^date = "2022-06-30" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
ValueSet: DiagnosesSCT | ||
Id: DiagnosesSCT | ||
Description: "Enthaelt alle SNOMED Clinical finding, Event und Situation with explicit context codes" | ||
* insert Meta | ||
* include codes from system SNOMED_CT | ||
where concept is-a #404684003 and | ||
concept is-a #272379006 and | ||
concept is-a #243796009 | ||
|
||
ValueSet: ProzedurenCodesSCT | ||
Id: ProzedurenCodesSCT | ||
Description: "Enthaelt alle SNOMED Procedure Codes" | ||
* insert Meta | ||
* include codes from system SNOMED_CT where concept descendent-of #71388002 | ||
|
||
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#363679005 "Imaging" | ||
* SNOMED_CT#387713003 "Surgical procedure" | ||
* SNOMED_CT#18629005 "Administration of medicine" | ||
* SNOMED_CT#277132007 "Therapeutic procedure" | ||
* SNOMED_CT#394841004 "Other category" | ||
|
||
ValueSet: ISiKLocationPhysicalType | ||
Id: ISiKLocationPhysicalType | ||
* insert Meta | ||
* LocationType#bd "Bed" | ||
* LocationType#ro "Room" | ||
* LocationType#wa "Ward" | ||
|
||
|
||
ValueSet: ISiKAccountType | ||
Id: ISiKAccountType | ||
Title: "ISiKAccountType" | ||
* insert Meta | ||
* $v3-ActCode#AMB "ambulatory" | ||
* $v3-ActCode#IMP "inpatient encounter" | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
canonical: https://gematik.de/fhir/isik/v2/Basismodul | ||
fhirVersion: 4.0.1 | ||
FSHOnly: true | ||
applyExtensionMetadataToRoot: false | ||
id: # Implementierungsleitfaden gematik-Basismodul Stufe 1 1.0.0 | ||
name: # Implementierungsleitfaden gematik-Basismodul Stufe 1 1.0.0 | ||
status: active | ||
version: # "1.0.0" | ||
publisher: | ||
name: Gematik GmbH | ||
url: https://www.gematik.de/ | ||
email: [email protected] | ||
dependencies: | ||
de.basisprofil.r4: 1.4.0 | ||
hl7.fhir.r4.core: 4.0.1 | ||
hl7.fhir.extensions.r5: 4.0.1 |