Feature sks cleanup#221
Draft
jkiddo wants to merge 12 commits into
Draft
Conversation
Every branch now terminates at a single-letter main-group (hovedgruppe) root. A/B/F/K/N/R/U/W are real SKS codes already topping their branch; D/E/Z (which SKS publishes only as deeper codes) get a synthetic root concept and their former branch roots are reparented under it. M (ATC) is out of scope; T/V/Y are not hovedgrupper and stay as their own roots. Adds 3 synthetic concepts (38090 -> 38093). Output stays deterministic and parent/child references remain internally consistent (0 dangling). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Adds a third generated artifact, CodeSystem-icd10-da.json: a content=supplement CodeSystem that supplements http://hl7.org/fhir/sid/icd-10 with the Danish display from the SKS diagnosis register, for only the codes that actually exist in ICD-10 (SKS rows classified icd10_standard, ~10.5k). Danish text is carried as both display and a 'da' designation. Danish extensions / Danish-only blocks are excluded (not ICD-10 codes; they live in sks-icd10-deviations). Reuses the existing download + classify pipeline; version/date default to the SKS source revision date, output is deterministic. Wired into the quarterly update workflow (regenerate, diff, PR add-paths). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The SKS/ICD-10/ICPC CodeSystems, the ICPC-2->ICD-10 ConceptMap, the generation scripts, and the quarterly update Action now live in the dk-sks-terminology- automation repo. They are uploaded to the Nordic terminology server, so DK Core resolves them by canonical URL at build time and no longer carries them. Removed: scripts/, .github/workflows/sks-update.yml, and the generated input/resources/CodeSystem-sks*.json / CodeSystem-icd10-da.json / ConceptMap-icpc2-icd10.json. Only ValueSets/profiles remain (the $icd10, $icpc2, $sks-icd10-deviations and $SKS aliases still reference these systems). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or 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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request introduces significant improvements to the handling of diagnosis codes in the HL7 Denmark FHIR implementation guide. The main focus is on distinguishing between standard ICD-10 codes and Danish SKS-specific diagnosis code extensions/deviations, ensuring more precise and standards-compliant modeling. Additionally, new value sets are introduced to support this separation, and a utility script is documented to help maintain the mapping between SKS and ICD-10. There are also enhancements to the observation and document reference profiles to use more specific value sets.
Diagnosis coding improvements:
Introduced separate elements for
ICD10DiagnosisandSKSDeviationDiagnosisin bothDkCoreConditionandDkCoreServiceRequestprofiles, replacing the previous generic SKS code element. This allows clear distinction between standard ICD-10 and Danish-specific diagnosis codes. Example instances have been updated accordingly. [1] [2] [3] [4] [5] [6] [7] [8]Added new aliases for
$icd10and$sks-icd10-deviationstoaliases.fshfor use in profiles and value sets.Defined a new value set
DkCoreDiagnosisCodesto include both ICD-10 codes and Danish SKS-specific deviations/extensions, while excluding non-codable ICD-10 groupings.Observation and document reference enhancements:
Introduced
DkCoreSksObservationCodesvalue set, restricting SKS codes for observations to relevant registers only, and updatedDkCoreObservationto reference this value set for both main and component SKS codes. [1] [2] [3]Updated
DkCoreMinimalDocumentReferenceto use a new extensible value setDkCoreDocumentEventCodesforcontext.event, focusing on SKS 'Forløbselement label' codes. [1] [2]Supporting tooling and documentation:
README.mdfor thescriptsdirectory, documenting thesks_icd10_diff.pyutility script. This script maps Danish SKS diagnosis codes to ICD-10, identifies Danish-specific extensions, and generates FHIR CodeSystems and value sets to support the new coding model.These changes collectively improve the accuracy, maintainability, and clarity of diagnosis coding in the Danish FHIR profiles, aligning them better with both international standards and national requirements.