Warum dieses System existiert
Punkt-zu-Punkt-Feeds werden fragil, wenn Mappings implizit bleiben, Fehler uneinheitlich behandelt werden oder nachgelagerte Ressourcen ihren Ursprung verlieren.
Grenze und Datenfluss
Transport, Parsing, Mapping und Persistenz sind getrennt. Jede akzeptierte Nachricht erhält eine unveränderliche Trace-ID; das Mapping erzeugt ein transaktionsfähiges FHIR-Bundle mit strukturierten Warnungen.
Abwägungen explizit machen
- Über ein typisiertes Zwischenmodell mappen, statt Strings direkt in FHIR-JSON umzuwandeln.
- Validierungsfehler von heilbaren Mapping-Warnungen trennen.
- Bundles erst ausgeben, wenn alle lokalen FHIR-Referenzen auflösbar sind.
HERAUSFORDERUNGEN
- Wiederholungen und optionale HL7-Felder erhalten, ohne Werte zu erfinden.
- Lokale Codes normalisieren und die Originalcodierung bewahren.
- Idempotente Wiederverarbeitung bei doppelter Zustellung sicherstellen.
Sichere Systemgrenzen
- Transportverschlüsselung vor der isolierten Integrationsgrenze terminieren.
- Payloads aus Logs entfernen, nicht-sensitive Trace-Metadaten behalten.
- Nachrichtengröße, Segmentanzahl, Encoding-Zeichen und Ressourcenausgabe validieren.
Was der Build gezeigt hat
ADT^A01- und ORU^R01-Beispiele erzeugen stabile Patient-, Encounter-, Location-, Observation- und RiskAssessment-Ressourcen mit prüfbarer Feldherkunft.
LEARNINGEin robuster Mapper lebt weniger von cleverer Konvertierungslogik als von Verträgen, Replay-Sicherheit, Terminologiegrenzen und beobachtbaren Fehlerzuständen.