2.7 KiB
Universelles Import-Zwischenmodell
Stand: 2026-07-17
Schema-Version: 1
Zweck
Das Import-Zwischenmodell ist die gemeinsame technische Ausgabe aller Dateiparser. CSV, HTML, Excel, JSON und XML werden zunächst ausschließlich dekodiert und strukturell beschrieben. Werkzeugerkennung, Feldzuordnung, Normalisierung und Darstellung bauen erst danach auf diesem Ergebnis auf.
Damit bleibt die Dateidekodierung unabhängig von Purple Knight, PingCastle, CIS-CAT, Maester oder zukünftigen Quellenprofilen.
Verarbeitungskette
Quelldatei
-> formatspezifischer Parser
-> ImportDocument
-> gemeinsamer Kompatibilitätsadapter
-> bestehende Tabellenanalyse und Oberfläche
-> künftig: Erkennungs- und Mapping-Engine
Kernstruktur
Ein ImportDocument enthält:
- Datei- und Formatmetadaten
- Status
complete,partialoderfailed - Tabellen beziehungsweise Sheets
- explizite Spalten, Zeilen und Zellen
- unveränderte JSON-fähige Rohwerte und dekodierte Textwerte
- erkannte Zelltypen
- Kopfzeilenkandidaten mit Konfidenz und Begründung
- Quellpositionen wie Zeile, Spalte, Excel-Zellreferenz, Objektpfad oder HTML-Selektor
- strukturierte Parserdiagnosen
- bewusst verworfene Inhalte mit Begründung
Das verbindliche TypeScript-Schema steht in src/domain/import-intermediate.ts. Gemeinsame Erzeugung und Rückwärtskompatibilität liegen in src/importers/intermediate.ts.
Formatbesonderheiten
- CSV hält Trennzeichen und ursprüngliche Textwerte fest. Nicht geschlossene Anführungszeichen ergeben einen Teilimport mit Warnung.
- HTML entfernt aktive beziehungsweise nicht benötigte Elemente vor der Tabellenauswertung und dokumentiert deren Anzahl als verworfenen Inhalt.
- Excel verarbeitet keine VBA-Inhalte und gibt keine Formeln als importierten Zellinhalt weiter. Rohwerte, formatierte Werte, Sheet-Sichtbarkeit und Zellreferenzen bleiben getrennt erhalten.
- JSON hält den vollständigen Originaltext fest und überführt Objekte, Arrays oder Einzelwerte in eine gemeinsame Tabellenansicht.
- XML gibt Elementpfade, Attribute und direkte Textwerte aus. Nicht wohlgeformtes XML erzeugt eine strukturierte Fehlerdiagnose.
Kompatibilität
Die bestehende Anwendung erwartet weiterhin ImportedDataset und DatasetSheet. Der zentrale Adapter erzeugt diese Sicht aus dem ImportDocument; das Zwischenmodell bleibt zusätzlich im Feld intermediate erhalten. Dadurch funktionieren Oberfläche, Profile, Filter und Exporte weiter, ohne dass Parser Fach- oder React-Logik enthalten.
Abgrenzung
Das Zwischenmodell ist weder das kanonische Finding-Modell noch ein Datenbankschema. Es beschreibt, was technisch in einer Datei gefunden wurde. Semantische Rollen, Scannererkennung, normalisierte Findings und Persistenz folgen in späteren Phasen.