Kerndatensatz Senologie
0.9.0 - ci-build

Kerndatensatz Senologie - Local Development build (v0.9.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

StructureMap: SenologieToOncoBoxBrust

Official URL: https://www.senologie.org/fhir/StructureMap/SenologieToOncoBoxBrust Version: 0.9.0
Draft as of 2026-05-04 Computable Name: SenologieToOncoBoxBrust

title: Senologie FHIR Bundle to OncoBox Brust N1.1.1 (Orchestrator) status: draft

map "https://www.senologie.org/fhir/StructureMap/SenologieToOncoBoxBrust" = "SenologieToOncoBoxBrust"

// title: Senologie FHIR Bundle to OncoBox Brust N1.1.1 (Orchestrator)
// status: draft

uses "http://hl7.org/fhir/StructureDefinition/Bundle" alias Bundle as source
uses "http://hl7.org/fhir/StructureDefinition/Patient" alias Patient as source
uses "http://hl7.org/fhir/StructureDefinition/Encounter" alias Encounter as source
uses "http://hl7.org/fhir/StructureDefinition/Condition" alias Condition as source
uses "http://hl7.org/fhir/StructureDefinition/Procedure" alias Procedure as source
uses "http://hl7.org/fhir/StructureDefinition/Observation" alias Observation as source
uses "http://hl7.org/fhir/StructureDefinition/Specimen" alias Specimen as source
uses "http://hl7.org/fhir/StructureDefinition/Organization" alias Organization as source
uses "http://hl7.org/fhir/StructureDefinition/CarePlan" alias CarePlan as source
uses "http://hl7.org/fhir/StructureDefinition/ResearchSubject" alias ResearchSubject as source
uses "https://www.senologie.org/fhir/StructureDefinition/oncobox-brust-meldung" alias OncoBoxBrust as target

imports "https://www.senologie.org/fhir/StructureMap/SenologieToOncoBoxBrustZentrum"
imports "https://www.senologie.org/fhir/StructureMap/SenologieToOncoBoxBrustPrimaerfall"
imports "https://www.senologie.org/fhir/StructureMap/SenologieToOncoBoxBrustOperation"
imports "https://www.senologie.org/fhir/StructureMap/SenologieToOncoBoxBrustTherapie"
imports "https://www.senologie.org/fhir/StructureMap/SenologieToOncoBoxBrustVerlauf"
imports "https://www.senologie.org/fhir/StructureMap/SenologieToOncoBoxBrustKennzahlen"
imports "https://www.senologie.org/fhir/StructureMap/SenologieToOncoBoxBrustVerlauf"

// ============================================================================
// Master Orchestrator: Bundle -> OncoBox Brust N1.1.1 Meldung
// Erzeugt aus einem FHIR-Bundle mit Senologie-Ressourcen eine OncoBox-Brust-
// Meldung. Pro Patientin/Fall wird ein Primaerfall-Block erzeugt. Die Kennzahlen
// (KB-1 bis KB-20) werden ueber eine separate Sub-Map aggregiert befuellt.
// Scope: OncoBox Brust N1.1.1 + OncoBox 2.0 FM-Erweiterung (J03-J05)
// (DKG/OnkoZert-Zertifizierung Brustzentren)
// ============================================================================
group SenologieToOncoBoxBrust(source src : Bundle, target tgt : OncoBoxBrust) {
  // --- Zentrum / Meldungs-Metadaten ---
  src -> tgt.zentrum as zentrum then MapZentrum(src, zentrum) "CallMapZentrum";
  // --- Primaerfall: pro Brust-Diagnose ein Primaerfall-Block ---
  // Ein Bundle sollte typischerweise einen Primaerfall enthalten (eine Patientin,
  // eine Erstdiagnose). Bei Bundles mit mehreren Faellen (z.B. Rezidiven) wird
  // pro Condition (C50.* / D05.* / Z40.* / Z42.*) ein Block erzeugt.
  // Primaerfall: MapPrimaerfall now takes Bundle as single source
  src -> tgt.primaerfall as pf then MapPrimaerfall(src, pf) "CallMapPrimaerfall";
  // --- Kennzahlen KB-1 bis KB-20 aggregieren ---
  src -> tgt then MapKennzahlen(src, tgt) "CallMapKennzahlen";
}