diff --git a/.gitignore b/.gitignore index dc9f69557..22b06d6d2 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,6 @@ publisher.jar fsh-generated *.DS_Store .idea +.sks-cache +sks-icd10-out +.icpc-cache diff --git a/input/fsh/DkCoreCondition.fsh b/input/fsh/DkCoreCondition.fsh index faeaeb3b8..c96eed0b9 100644 --- a/input/fsh/DkCoreCondition.fsh +++ b/input/fsh/DkCoreCondition.fsh @@ -20,7 +20,8 @@ Description: "HL7 Denmark core profile for professionally asserted conditions, a FSIIIConditionCode 0..1 and SCTConditionCode 0..1 and FFBConditionCode 0..1 and - SKS-D 0..1 and + ICD10Diagnosis 0..1 and + SKSDeviationDiagnosis 0..1 and ICPC2code 0..1 * code.coding[FSIIIConditionCode] ^short = "[DA] FSIII tilstandskode" * system 1.. @@ -32,9 +33,14 @@ Description: "HL7 Denmark core profile for professionally asserted conditions, a * code.coding[FFBConditionCode] ^short = "[DA] FFB undertemakode" * system 1.. * system = "urn:oid:1.2.208.176.2.22" -* code.coding[SKS-D] ^short = "[DA] Kode fra D-hierarkiet i SKS" +* code.coding[ICD10Diagnosis] from DkCoreDiagnosisCodes (required) + * ^short = "ICD-10 diagnosis code" * system 1.. - * system = "urn:oid:1.2.208.176.2.4.12" + * system = $icd10 +* code.coding[SKSDeviationDiagnosis] from DkCoreDiagnosisCodes (required) + * ^short = "[DA] Dansk SKS-specifik diagnosekode (afvigelse/tilføjelse ift. ICD-10)" + * system 1.. + * system = $sks-icd10-deviations * code.coding[ICPC2code] ^short = "ICPC2 code" * system 1.. * system = "urn:oid:1.2.208.176.2.31" @@ -62,7 +68,7 @@ InstanceOf: DkCoreCondition Title: "Else Graviditet" Description: "Else Graviditet, tilstandskode som indberettes ifm Elses ambulante forløb (fx jordemoder), og ved eventuel indlæggelse i graviditeten" Usage: #example -* code = urn:oid:1.2.208.176.2.4.12#DZ340 "Graviditet, førstegangsfødende" +* code.coding[ICD10Diagnosis] = $icd10#Z34.0 "Graviditet, førstegangsfødende" * subject.reference = "Patient/else" * category = $condition-category#encounter-diagnosis * recordedDate = "2021-07-03" @@ -74,7 +80,7 @@ InstanceOf: DkCoreCondition Title: "John diabetes" Description: "Johns diabetes-diagnose, udskrivningsdiagnose fra hospitalet fx til brug i indberetning og epikrise" Usage: #example -* code = urn:oid:1.2.208.176.2.4.12#DE11 "Type 2-diabetes" +* code.coding[ICD10Diagnosis] = $icd10#E11 "Type 2-diabetes" * subject.reference = "Patient/john" * asserter.reference = "Practitioner/AbrahamLaege" * recorder.reference = "Practitioner/AbrahamLaege" @@ -89,7 +95,8 @@ InstanceOf: DkCoreCondition Title: "John fraktur" Description: "Johns fraktur-diagnose, udskrivningsdiagnose fra hospitalet med tillægskode" Usage: #example -* code.coding[SKS-D] = urn:oid:1.2.208.176.2.4.12#DS721+TUL1 "Pertrokantær femurfraktur, højresidig" +* code.coding[ICD10Diagnosis] = $icd10#S72.1 "Pertrokantær femurfraktur" +* code.text = "Pertrokantær femurfraktur, højresidig" * subject.reference = "Patient/john" * asserter.reference = "Practitioner/AbrahamLaege" * recorder.reference = "Practitioner/AbrahamLaege" @@ -105,7 +112,7 @@ InstanceOf: DkCoreCondition Title: "John mistanke om Modermærkekræft" Description: "Johns mistanke om modermærkekræft i huden, kan fx bruges som henvisningsdiagnosese" Usage: #example -* code = urn:oid:1.2.208.176.2.4.12#DC43 "Modermærkekræft i huden" +* code.coding[ICD10Diagnosis] = $icd10#C43 "Modermærkekræft i huden" * subject.reference = "Patient/john" * asserter.reference = "Practitioner/AbrahamLaege" * recorder.reference = "Practitioner/AbrahamLaege" diff --git a/input/fsh/DkCoreMinimalDocumentReference.fsh b/input/fsh/DkCoreMinimalDocumentReference.fsh index f37d049aa..ac9dee430 100644 --- a/input/fsh/DkCoreMinimalDocumentReference.fsh +++ b/input/fsh/DkCoreMinimalDocumentReference.fsh @@ -7,7 +7,7 @@ Description: "HL7 Denmark core profile for a Minimal DocumentReference inherited * extension[versionid] ^short = "Specifies the version of the DocumentReference profile for a standard." * context.facilityType from SorOrganizationType (extensible) * context.practiceSetting from SorPracticeSettingCode (extensible) -* context.event from $v3-ActCode3.0.0 (example) +* context.event from DkCoreDocumentEventCodes (extensible) * author 1..* * author only Reference(DkCorePatient or DkCorePractitioner or DkCorePractitionerRole or DkCoreRelatedPerson or DkCoreOrganization or Device) * authenticator only Reference(DkCorePractitioner or DkCorePractitionerRole or DkCoreOrganization) diff --git a/input/fsh/DkCoreObservation.fsh b/input/fsh/DkCoreObservation.fsh index 17a25aabf..68f63cb91 100644 --- a/input/fsh/DkCoreObservation.fsh +++ b/input/fsh/DkCoreObservation.fsh @@ -39,7 +39,7 @@ Description: "HL7 Denmark core profile for observations" * system 1.. * system = $IEEEx73 (exactly) * code 1.. -* code.coding[SKS] +* code.coding[SKS] from DkCoreSksObservationCodes (required) * ^short = "SKS code for the observation" * system 1.. * system = $SKS (exactly) @@ -84,7 +84,7 @@ Description: "HL7 Denmark core profile for observations" * system 1.. * system = $IEEEx73 (exactly) * code 1.. -* component.code.coding[SKS] +* component.code.coding[SKS] from DkCoreSksObservationCodes (required) * ^short = "SKS code for the observation." * system 1.. * system = $SKS (exactly) diff --git a/input/fsh/DkCoreServiceRequest.fsh b/input/fsh/DkCoreServiceRequest.fsh index c0620d996..09e7273f5 100644 --- a/input/fsh/DkCoreServiceRequest.fsh +++ b/input/fsh/DkCoreServiceRequest.fsh @@ -19,7 +19,8 @@ Description: "HL7 Denmark core profile for requesting a service, such as diagnos FSIIIConditionCode 0..1 and SCTCode 0..1 and FFBConditionCode 0..1 and - SKS 0..1 and + ICD10Diagnosis 0..1 and + SKSDeviationDiagnosis 0..1 and ICPC2code 0..1 * reasonCode.coding[FSIIIConditionCode] ^short = "[DA] FSIII tilstandskode" * system 1.. @@ -31,9 +32,14 @@ Description: "HL7 Denmark core profile for requesting a service, such as diagnos * reasonCode.coding[FFBConditionCode] ^short = "[DA] FFB undertemakode" * system 1.. * system = "urn:oid:1.2.208.176.2.22" -* reasonCode.coding[SKS] ^short = "[DA] Kode fra SKS, typisk diagnose eller procedure" +* reasonCode.coding[ICD10Diagnosis] from DkCoreDiagnosisCodes (required) + * ^short = "ICD-10 diagnosis code" * system 1.. - * system = "urn:oid:1.2.208.176.2.4.12" + * system = $icd10 +* reasonCode.coding[SKSDeviationDiagnosis] from DkCoreDiagnosisCodes (required) + * ^short = "[DA] Dansk SKS-specifik diagnosekode (afvigelse/tilføjelse ift. ICD-10)" + * system 1.. + * system = $sks-icd10-deviations * reasonCode.coding[ICPC2code] ^short = "ICPC2 code" * system 1.. * system = "urn:oid:1.2.208.176.2.31" diff --git a/input/fsh/aliases.fsh b/input/fsh/aliases.fsh index 93b051260..07e0a69cf 100644 --- a/input/fsh/aliases.fsh +++ b/input/fsh/aliases.fsh @@ -18,6 +18,9 @@ Alias: $ucum = http://unitsofmeasure.org Alias: $NPU = http://npu-terminology.org Alias: $Medcom = http://medcomfhir.dk/ig/terminology/CodeSystem/medcom-observation-codes Alias: $SKS = urn:oid:1.2.208.176.2.4 +Alias: $icd10 = http://hl7.org/fhir/sid/icd-10 +Alias: $icpc2 = http://hl7.org/fhir/sid/icpc-2 +Alias: $sks-icd10-deviations = http://hl7.dk/fhir/core/CodeSystem/sks-icd10-deviations Alias: $LOINC = http://loinc.org Alias: $IEEEx73 = urn:iso:std:iso:11073:10101 Alias: $observation-category = http://terminology.hl7.org/CodeSystem/observation-category diff --git a/input/fsh/valueSets.fsh b/input/fsh/valueSets.fsh index da93c2144..387bea34c 100644 --- a/input/fsh/valueSets.fsh +++ b/input/fsh/valueSets.fsh @@ -956,4 +956,33 @@ Description: "Values used for Practice Setting, as described in the SOR registry * ^experimental = false * ^copyright = "This value set includes content from SNOMED CT, which is copyright © 2002+ International Health Terminology Standards Development Organisation (IHTSDO), and distributed by agreement between IHTSDO and HL7. Implementer use of SNOMED CT is not covered by this agreement" * include codes from valueset SorPracticeSettingCode -* exclude codes from valueset SCTLaboratorySpecialities \ No newline at end of file +* exclude codes from valueset SCTLaboratorySpecialities + +ValueSet: DkCoreDiagnosisCodes +Id: dk-core-diagnosis-codes +Title: "DK Core Diagnosis Codes" +Description: "Diagnosis codes usable in Denmark: international ICD-10 together with the Danish SKS-specific deviations and extensions to ICD-10 (codes that are not part of plain ICD-10). Excludes the non-codable ICD-10 grouping concepts (chapters and blocks)." +* ^status = #active +* ^experimental = false +* include codes from system $icd10 +* exclude codes from system $icd10 where kind = #chapter +* exclude codes from system $icd10 where kind = #block +* include codes from system $sks-icd10-deviations + +ValueSet: DkCoreSksObservationCodes +Id: dk-core-sks-observation-codes +Title: "DK Core SKS Observation Codes" +Description: "SKS codes usable as observation/investigation codes: the procedure (pro), investigation (und) and result (res) registers of the Danish SKS classification. Diagnosis (dia) and ATC registers are deliberately excluded." +* ^status = #active +* ^experimental = false +* include codes from system $SKS where register = #pro +* include codes from system $SKS where register = #und +* include codes from system $SKS where register = #res + +ValueSet: DkCoreDocumentEventCodes +Id: dk-core-document-event-codes +Title: "DK Core Document Event Codes" +Description: "SKS 'Forløbselement label' codes (the ALAL hierarchy) identifying the clinical area / care pathway a document relates to, for use in DocumentReference.context.event." +* ^status = #active +* ^experimental = false +* include codes from system $SKS where concept is-a #ALAL \ No newline at end of file diff --git a/input/pagecontent/terminology.xml b/input/pagecontent/terminology.xml index 002b681b1..3b1333137 100644 --- a/input/pagecontent/terminology.xml +++ b/input/pagecontent/terminology.xml @@ -1,6 +1,17 @@
+

SKS terminology

+
+

+ The Danish health classification system SKS (Sundhedsvæsenets Klassifikations System) is now + available as FHIR resources, hosted on the Nordic terminology server + (https://tx-nordics.fhir.org/fhir), which serves + the SKS CodeSystem and its associated ValueSets. Resources in this guide that need to reference + SKS concepts should bind to and resolve them against the Nordic terminology server. +

+
+

ValueSets

{% include list-simple-valuesets.xhtml %}