MII IG Kerndatensatz-Modul Seltene Erkrankungen
2027.0.0-ballot -
Germany
This page is part of the MII Implementation Guide Seltene Erkrankungen (v2027.0.0-ballot: 2027 Ballot 1) based on FHIR (HL7® FHIR® Standard) R4. This is the current published version in its permanent home (it will always be available at this URL). For a full list of available versions, see the Directory of published versions
This page tracks the differences between versions, beginning with the differences between the ballot version and the final 2026 version.
feat JARDIN data points from the comparison of the European minimum data set with this module (issues #35, #36, #38). All three are concrete data requirements of a European reference network, and none of them is specific to rare diseases — the profiles say so in their own header comments
feat pre-/perinatal data: mii-pr-seltene-gestationsalter, mii-pr-seltene-geburtsgewicht, mii-pr-seltene-geburtslaenge. No connected MII module covered them; multiple births and prenatally diagnosed malformations were deliberately not profiled, because Patient.multipleBirth[x] and the existing Condition profiles with HPO onset already carry themfeat mii-pr-seltene-icf-assessment with a code system and value sets for the qualifiers. The WHO qualifiers live in component, not in value[x], because their number differs per ICF chapter — body structures take three, activities and participation take two (capacity and performance). Five invariants enforce chapter coherencefeat mii-pr-seltene-registerteilnahme for participation in ERN registries, derived from ResearchSubjectfeat Consanguinity (mii-pr-seltene-consanguinity) with value set — parental consanguinity per RD-CDM v2.0.0 §6.4.4 (issue #37)feat Newborn screening: seven value sets, five derived from the LOINC-SNOMED ontology via ECL, one curated against the G-BA Kinder-Richtlinie and one defined intensionally over LOINC's own SYSTEM property (608 dried blood spot codes), plus a dedicated terminology pagefeat logical model mii-lm-seltene back in the build and rendered in full as a table on the data set pagefeat 13 new example instances, anchored on the existing SMA case exampleremove extension mii-ex-seltene-empfehlung-evidenzgraduierung removed, along with its use in the three Therapieempfehlung profiles. It was a copy from the MTB module whose system discriminator never carried a value — the mandatory Evidenzgrad 1..1 slice could not be satisfied by any instance. Published but unusable, and used by no example. Which evidence scale applies is tracked in ballot ticket HDB-543 and framed in oncological terms; for rare diseases it was never answeredremove six extensions removed that were never wired into any profile: mii-ex-seltene-age-of-onset, mii-ex-seltene-genetic-basis, mii-ex-seltene-inheritance-pattern, mii-ext-seltene-onset-age, mii-ext-seltene-phenotypic-pattern, mii-ext-seltene-syndrome-category. The git history contains no commit that took any of them into a profile via named; they were published in 2026.0.1 nonetheless. age-of-onset and onset-age were also the same concept under two ids — created on 2025-07-31 and 2025-08-07, a week apart, the second batch recreating the first under the mii-ex- convention without removing it. Eleven extensions become five, and all five are in use. Their value sets remain, being useful on their ownchange element names of the logical model moved to lowerCamelCase. PascalCase violates the FHIR rule eld-20 and produced 195 warnings. 62 segment names renamed with acronyms handled correctly (HPOTerm → hpoTerm, BMI → bmi), and the 90 mapping targets in 11 profiles moved with them. Element paths therefore changedchange codes of mii-pr-seltene-taillenumfang (LOINC 8280-0 → SNOMED 276361009) and mii-pr-seltene-hueftumfang (LOINC 56063-1 → SNOMED 284472007). Consumers querying by the old codes will no longer matchchange naming brought in line with the module convention throughout. The rules in qc/custom.rules.yaml require mii-<type>-seltene-… for ids and MII_<TYPE>_Seltene_… for names; both were only partly applied. Affected:
HPOSeverity → MII_VS_Seltene_HPOSeverity, PenetranceValueSet → MII_VS_Seltene_Penetrance, MII_LM_SE → MII_LM_Seltene and MII_CPS_SE_CapabilityStatement → MII_CPS_Seltene_CapabilityStatement. Names are not part of the canonical — no URL changes herevon-seltene-betroffen (briefly mii-ex-von-se-betroffen on 2026-09-02) is now mii-ex-seltene-von-se-betroffen, and its value set von-seltene-betroffen-vs is now mii-vs-seltene-von-se-betroffen. Both canonicals changemii-exa-seltene- prefix, with all 281 cross-references and case-example page references carried alongThe break is deliberate: the module is not implemented anywhere yet, and the run-up to the ballot is the last moment at which it is cheap
change example instance example renamed to mii-exa-seltene-patient, profiled on MII_PR_Person_Patientchange all conformance resources now carry 2027.0.0-ballot.rc1. sushi-config.yaml, input/fsh/rulesets/version.fsh and package.json each claimed a different value; 56 resources carried the version of the already published predecessor 2026.0.1, nine carried none at all. The meta.profile claims of the examples followfix two examples contradicted each other clinically. The deletion of exons 45-47 in the DMD gene was documented once as "out-of-frame … Duchenne muscular dystrophy" and, in the exclusion example, as "in-frame … consistent with Becker, NOT Duchenne". The arithmetic settles it: c.6439–c.6912 spans 474 bases, 474 ÷ 3 = 158 — the reading frame is preserved. The deletion is in-frame and causes Becker. Variant and diagnostic report corrected (conclusionCode now OMIM 300376 Becker); the confirmed Duchenne example received a genuine out-of-frame finding, the deletion of exon 45 (176 bases, not divisible by three)fix 13 references pointed at nothing. Examples referenced resources that never existed — including all five pieces of evidence in the exclusion examples, on the very page that presents documenting exclusions as mandatory. Eight references were repointed to existing examples; for the rest the missing resources were created: lens finding and Beighton score as excluded HPO phenotypes (component[status] = Absent), lactate, muscle biopsy, CFTR carrier status, PAH variant, two generic encounters, and an example for the study-inclusion request, until now the only profile without one. Every new code checked against tx.fhir.org, the HPO API and genenames.org — four were wrong on the first attemptfix the waist circumference profile carried a code for the abdominal circumference. LOINC offers waist circumference only measured at the umbilicus (8280-0, 8281-8) — the landmark of the abdominal circumference, not the waist, which is defined at the narrowest point or at the midpoint between the lowest rib and the iliac crest. The profile therefore said something other than its name. SNOMED separates the two; 1162535003 and 1162536002 remain available for a landmark-specific statement. This matters because the module models a waist-to-hip ratio: using the abdominal circumference as the numerator yields a wrong ratiofix the logical model gained a taillenumfang element. It knew only bauchumfang, so the waist circumference profile mapped onto the abdominal circumferencefix the (commented-out) profile mii-pr-seltene-waist-to-hip-ratio carried LOINC 8280-0, wrong twice over — the circumference instead of the ratio, and the same code as the waist profile. Corrected to SNOMED 248367009 |Waist/hip ratio|. The profile remains inactive; that the ratio of all things is commented out explains why the confusion went unnoticed for so longremove value set mii-vs-seltene-clinical-diagnosis-category set to retired. It had never been bound since 2025-08-07; the attempt to fix that revealed two things. First, four of its eight codes were wrong or non-existent — 363358000 stood for "Clinical finding" and is Malignant neoplasm of lung, 47367009 stood for "Syndrome" and is Exocrine pancreatic insufficiency, 84757009 stood for "Rare disease" and is Epilepsy, 381406004 does not exist. Second, and decisively: it answers the wrong question. Condition.category denotes the role a condition plays in the record — its short text reads problem-list-item | encounter-diagnosis — not the kind of disease. After correcting the codes, what remained were three tautologies and three disease classifications that belong in Condition.code. Retired rather than deleted: the URL is published and stays resolvablefix systematic verification of every enumerated value set code against the terminology server and the HPO API (scripts/verify-valueset-codes.py). It surfaced two further damaged value sets.
fix mii-vs-seltene-hpo-age-of-onset: four codes were systematically shifted. HP:0003596 stood for "Neonatal onset" and means Middle age onset — in this module the inversion of the statement; neonatal onset is HP:0003623. Likewise HP:0025708, HP:0034198 and HP:0034199; fetal and embryonal onset are HP:0011461 and HP:0011460fix mii-vs-seltene-hpo-inheritance-pattern: four displays corrected, among them HP:0001428 ("Somatic mutation" → Typified by somatic mosaicism) and HP:0001426 ("Multifactorial inheritance" → Non-Mendelian inheritance; HPO has no "Multifactorial inheritance" concept)fix mii-vs-seltene-syndrome-category: 32895009 carried the outdated display "Genetic disorder" instead of Hereditary disease — the same thing the IG Publisher had flagged. 371097004 and 254829008 do not exist; the intended concepts are 5294002 and 362975008remove value set mii-vs-seltene-genetic-basis set to retired. Of nine SNOMED codes, one was correct. 16402000 stood for "Mitochondrial disorder" and is Sickle cell trait, 416010008 stood for "Disorder due to uniparental disomy" and is Hypospadias, three others do not exist at all. This cannot be repaired, only rebuilt; the extension that bound it was removed the same dayfix value set mii-vs-seltene-penetrance corrected — three of four codes were wrong (issue #31). HP:0025169, published as "Complete penetrance", is Left ventricular systolic dysfunction; HP:0003828, published as "Variable penetrance", is Variable expressivity. All codes verified against the HPO API. Note that the graded terms are subtypes of incomplete penetrancefix slicing discriminators on mii-pr-seltene-blutgruppe and on category in both Therapieempfehlung profiles. The slices differed only by .system or by a required binding — neither is something the discriminator in place could evaluatefix logical model reactivated; its canonical is the target of the mapping every profile carries, so 22 unresolvable links disappearfix 31 mapping targets pointed at elements that do not exist, and the targets for valueQuantity.value and effectiveDateTime pointed at the backbone element instead of the value or the date. All 102 now resolvefix the logical model gained familienanamnese.todDurchSE and familienanamnese.dokumentationsdatum — both data points are carried by the family history profile, the model did not define themfix five references to Patient/example-patient, an instance that was never defineddocs the clinical-versus-genetic diagnosis guide now shows three diagrams instead of FSH blocks (structural comparison, parallel model, decision tree). The previous plantuml block was never rendered and was syntactically broken besides; the English version had no decision tree at alldocs the data set page renders the logical model as a table of 71 data elements, generated by scripts/generate-lm-table.pydocs new page on newborn screeningchore licence declared as CC-BY-4.0 at IG level (Gate A decision). The module previously declared no licence anywhere in sushi-config.yaml, package.json or a LICENSE file; the artefact level already applied CC-BY-4.0 through LicenseCodeableCCBY40chore dependency on module Studie updated from 2026.0.0-ballot to 2026.0.2chore dependency on module ICU updated to 2026.0.x (resolved: 2026.0.2)fix ICU head circumference alias updated to the renamed profile mii-pr-icu-muv-kopfumfangfix correct SNOMED code for head circumference (363812007 instead of 363811000)fix SNOMED display in English (Head circumference) for validator compatibilityfix FamilyMemberHistory.condition added to the penetrance extension contextfix CPS version via RuleSet instead of hardcoding, SupportProfile without version suffixfeat validation rules (qc/custom.rules.yaml) for resource validation addedfeat centralized /build-package command addedfeat FHIR restore step added to the build processfeat mii-shared submodule and fix-ig-export-links skill addedrefactor IG pages converted to tabs format and local Studie profile removedfix terminology codes and display names in therapy examples correctedfix MII IG naming conventions applied for the 2026 releasefix 'Erweiterungsmodul' replaced by 'KDS-Modul' according to MII guidelinesThis version is the final publication of the MII Rare Diseases module after a successful ballot procedure.
chore all resources set to status "active"refactor Diagnose dependency replaced by the Base module for better modularitychore bake source path for package builds correctedfeat MetaProfile RuleSet for all example instances with versioned profile URL addedfeat therapy type category (causal/symptomatic) for therapy recommendations addeddocs HPO phenotyping documentation updated according to the HL7 Phenomics IG pattern (HDB-755, HDB-737)docs clarification: one FamilyMemberHistory resource per family member (HDB-750)docs rare disease definitions in the module description updated (HDB-757)docs Orpha coding → ORPHAcode coding terminology corrected (HDB-764)docs HPO vs. symptom distinction documented with the Marfan example (HDB-738)docs documentation clarifications (HDB-741, HDB-739)fix incorrect oBDS mappings removed from the therapy plan page (HDB-751)fix incorrect oBDS mappings removed from the measurement profiles (HDB-751)fix death-by-RD extension replaced by the standard contributedToDeath elementfix body measurement profiles added and validation errors fixedfix 21 SUSHI compilation errors fixed and HPO profile design improvedfix 21 validation errors fixed with terminology and example correctionsfix HPO assessment profile refactored according to the HL7 Phenomics IG patternfix SNOMED CT-based ValueSet for "affected by RD" created with codes 373066001 "Yes", 373067005 "No", 261665006 "Unknown". HL7 v2 codes retained for backwards compatibility.fix combined symptom change status ValueSet created: MVGenomSeq codes (newly-added, improved, degraded, no-longer-observed, unchanged) with SNOMED CT mapping (385425000 Improved, 231877006 Worse, 385630006 Maintained, 2667000 Absent)fix FamilyMemberHistory examples corrected: ICD-10-GM version 2004→2009, display names (Natural Mother→Natural mother), invalid code E11.X→E11.9fix invalid LOINC code 79992-2 replaced by 78176-5 "Aorta root Diameter by US 2D"fix invalid SNOMED code 249374003 "Anteverted nares" removed from the HPO observation example (HPO code HP:0000463 retained)fix patient identifier changed from http://example.org to http://test-krankenhaus.de/fhir/sid/patienten