UBL-/CII-Vergleich und KoSIT-Referenzfälle Stand: 07.09.2026 Alle Rechnungsdaten sind synthetisch. Keine Datei ist zur Zahlung bestimmt. 1. KoSIT Validator 1.6.2 und Java bereitstellen. https://github.com/itplr-kosit/validator/releases/tag/v1.6.2 2. XRechnung-Konfiguration v2026-01-31 herunterladen und vollständig entpacken. https://github.com/itplr-kosit/validator-configuration-xrechnung/releases/tag/v2026-01-31 3. In einem Arbeitsordner den Validator als validator-1.6.2-standalone.jar ablegen. Den entpackten Konfigurationsinhalt in den Unterordner konfiguration legen. Dort müssen scenarios.xml und resources vorhanden sein. 4. rechnung-ubl.xml und rechnung-cii.xml aus dem Vergleich herunterladen. 5. Unterordner berichte anlegen und jeweils ausführen: java -jar validator-1.6.2-standalone.jar -s konfiguration/scenarios.xml -r konfiguration -o berichte -h rechnung-ubl.xml java -jar validator-1.6.2-standalone.jar -s konfiguration/scenarios.xml -r konfiguration -o berichte -h rechnung-cii.xml Erwartet bei diesem Regelstand: Schema und Schematron gültig, ACCEPTABLE, keine Fehler und keine Warnungen. Die Originalberichte enthalten einen SHA-256- Hash der Eingangsdatei in Base64. manifest.json enthält die Prüfsummen in Hex. Identische Rechnungswerte bedeuten nicht identische Dateihashes. Zusätzliche Referenzen unter /beispiele/kosit/: - korrigiert.xml: keine Meldungen, ACCEPTABLE. - br-de-15.xml: Käuferreferenz fehlt, BR-DE-15, REJECT. - warnung.xml: zusätzliches CopyIndicator-Element, UBL-CR-004, warning, ACCEPTABLE; das strenge report/@valid bleibt false. Die Dateien NAME-response.json dokumentieren lokale Tests des RechneX-Wrappers. Die Hülle provenance/http_status/body ist Testdokumentation, kein zusätzliches Produktformat. body enthält die Antwort ohne den separat verlinkten Bericht. Für die Rechnungsfälle wurden echte Originalberichte an der Daemon-Grenze wieder eingespielt. Laufzeiten sind nicht als Benchmark zu verstehen. ausfall-response.json entstand bei einem tatsächlichen Verbindungsversuch zu einem lokalen Port ohne laufenden Daemon. Es entstand kein Rechnungsprüfbericht. HTTP 503 und UNDEFINED bedeuten: Prüfung nicht abgeschlossen, erneut versuchen. Die Verbindung kann je nach Betriebssystem als TIMEOUT oder VALIDATOR_UNAVAILABLE enden. Beides ist ein technischer Fehler. Nach Änderungen an Rechnung oder Regelpaket immer neu prüfen. Ein alter Bericht bestätigt nicht die Gültigkeit einer bearbeiteten Datei oder eines neuen Exports.