Technisches Design
Methodik und Sicherheitsgrenzen
Die Implementierung bevorzugt Datenherkunft, minimale Mutation, explizite Unsicherheit und wiederholbare Überprüfung gegenüber einer reinen Konvertierung.
1. Eingabeidentifikation
Der Parser verlässt sich nicht ausschließlich auf den Dateinamen. Es überprüft ZIP-, OLE-, JSON-, XML- und Textsignaturen und überprüft dann ggf. Paketmitglieder. Die Pfadnormalisierung lehnt absolute Pfade, Backslashes, Traversal-Komponenten, doppelte normalisierte Namen, Verschlüsselung, nicht unterstützte Komprimierung, Multi-Disk-Archive, ZIP64, übermäßige Eintragszahlen, übermäßig erweiterte Größe und verdächtige Komprimierungsraten ab.
2. Redundantes Lesen
Getrennter Text
Eine byteorientierte Zustandsmaschine zeichnet die Rohwertspanne jedes Felds auf und berücksichtigt dabei Trennzeichen in Anführungszeichen, Escape-Anführungszeichen und eingebettete Zeilenenden. Eine separate Zustandsmaschine für dekodierte Zeichenfolgen analysiert dieselbe Eingabe. Ihre Matrizen werden verglichen, bevor eine byteerhaltende Ausgabe zulässig ist.
OOXML
Der Paketreader löst Arbeitsmappen- und Arbeitsblattbeziehungen, gemeinsame Zeichenfolgen, Stile, Datumssysteme und Inhaltsinventare auf. Jedes ausgewählte Arbeitsblatt wird einmal über die XML-DOM-APIs des Browsers und erneut über einen Roh-XML-Zellenscanner analysiert. Werte, Formeltexte und Speichertypen werden abgeglichen.
3. Gen-Symbol-Matching
Referenzdatensätze werden nach genehmigtem Symbol, vorherigen Symbolen, Aliasnamen und stabilen Bezeichnern indiziert. Die Übereinstimmung wird klassifiziert und nicht auf eine einzelne Ersetzung reduziert:
- genehmigte exakte Übereinstimmung;
- genehmigtes Symbol mit Groß- und Kleinschreibungsunterschied;
- eindeutige oder mehrdeutige Übereinstimmung mit dem vorherigen Symbol;
- eindeutige oder mehrdeutige Alias-Übereinstimmung;
- eindeutige oder mehrdeutige Datums-Wiederherstellungsübereinstimmung;
- unübertroffene Eingabe.
Nur eindeutig unterstützte Zuordnungen kommen für eine Standardempfehlung in Frage. Alias-Zuordnungen sind standardmäßig deaktiviert, da Aliase oft eine schwächere Semantik als frühere Symbole haben.
4. Excel-Risikoklassifizierung
Die Schutzregeln beziehen sich nach Möglichkeit auf die ursprüngliche Zeichenfolge und nicht auf eine JavaScript-Nummer. Sie erkennen führende Nullen, lange ganze Zahlen, wissenschaftliche Notationsmuster, Monats-/Datums-/Uhrzeitformen, Formelpräfixe, problematische Kommaplatzierung, Leerzeichen an den Rändern, Anführungszeichenmuster, Steuerzeichen und die alte Formellängenbeschränkung Excel.
5. Ausgabepfade
| Quelle | Bevorzugter Autor | Überprüfung |
|---|---|---|
| UTF-8 CSV/TSV/TXT | Roher Byte-Span-Ersatz für genehmigte Felder | Leservereinbarung und unveränderte Bytes außerhalb der Patch-Bereiche |
| XLSX/XLSM | Arbeitsblatt-XML-Zellenersetzung innerhalb des vorhandenen Pakets | Öffnen Sie die Ausgabe erneut, bestätigen Sie geänderte Zellen, vergleichen Sie alle unveränderten, unkomprimierten Paketteile und vergleichen Sie Makrobytes |
| JSON/ODS oder nicht byteerhaltender Text | Neues minimales XLSX mit explizitem Text und konservativen numerischen Zellen | Paketrücklesung und Änderungsmanifest; wird eher als Konvertierung als als Quellenerhaltung bezeichnet |
| Nur scannen | Keine Datenausgabe | Prüfpaket mit Inventar, Feststellungen, Warnungen und Abgleichsmetadaten |
6. Blockierte oder eingeschränkte Fälle
- Verschlüsselte ZIP/OOXML-Dateien werden blockiert.
- Signierte OOXML-Arbeitsmappen können überprüft, aber nicht geändert werden.
- Formelzellen werden nicht automatisch ersetzt.
- Ältere OLE XLS-Dateien müssen vor der Verarbeitung in einer vertrauenswürdigen Tabellenkalkulationsanwendung konvertiert werden.
- Nicht unterstützte XML-Codierungen und fehlerhafte Beziehungen schlagen beim Schließen fehl.
- In dieser ersten statischen Version wird nur das ausgewählte Arbeitsblatt für Matrix-basierte Formate exportiert.
- Die Standardreferenz HGNC ist bewusst kompakt; Bei der breiten Symbolmigration sollte eine vollständige lokal geladene HGNC-Datei verwendet werden.
7. Reproduzierbarkeitsartefakte
Die Prüfung ZIP umfasst ein maschinenlesbares JSON-Manifest, CSV- und JSON-Änderungssätze, Warnungen und die primäre Ausgabe, sofern vorhanden. Das Manifest zeichnet den Eingabe-Hash, den Ausgabe-Hash, die Anwendungsversion, den Workflow, die Referenzversion, die Namen der Leser, den Abgleichsstatus, die Anzahl der Änderungen, die Anzahl der ungelösten Mehrdeutigkeiten und das Überprüfungsergebnis auf.
