BR-DE-22Das "filename"-Attribut aller "EmbeddedDocumentBinaryObject"-Elemente muss eindeutig sein
Offizieller Regeltext
KoSIT formuliert diese Regel in den beiden Dateien unterschiedlich. Oben steht die UBL-Fassung, hier die andere:
Wortlaut in CII
Not all filename attributes of the embeddedDocumentBinaryObject elements are unique
Alle eingebetteten Anlagen einer Rechnung müssen unterschiedliche Dateinamen tragen — unterschieden werden sie nur darüber. Der Empfänger legt sie unter genau diesem Namen ab.
- Schweregrad
- Fehler
- Gilt für
- CII, UBL
- Regelwerk
- v2026-08-31
- Geprüft am
Geschrieben und gegen das offizielle KoSIT-Regelwerk geprüft von Dmytro Yalanskyi, NormAPI.
Warum tritt BR-DE-22 auf?
Der Generator vergibt einen konstanten Namen — jede Anlage heißt „anlage.pdf“ oder „attachment.pdf“. Bei genau einer Anlage fällt das nie auf; die zweite löst den Fehler aus. Die beiden Syntaxen schauen dabei unterschiedlich weit: in UBL zählt der Ausdruck nur die Anlagen auf Dokumentebene, in CII sucht er mit // im ganzen Dokument und erfasst damit auch Belegverweise, die an einer Rechnungsposition hängen. Dieselbe Rechnung kann in CII also auffallen und in UBL nicht.
Was der Validator prüft
Der Ausdruck, den das offizielle KoSIT-Regelwerk auswertet — nicht paraphrasiert, sondern aus der ausgelieferten Schematron-Datei gelesen. UBL und CII adressieren verschiedene Dokumentbäume, deshalb steht dieselbe Regel je Syntax anders da.
- UBL
count(cac:AdditionalDocumentReference) = count(cac:AdditionalDocumentReference[not(./cac:Attachment/cbc:EmbeddedDocumentBinaryObject/@filename = preceding-sibling::cac:AdditionalDocumentReference/cac:Attachment/cbc:EmbeddedDocumentBinaryObject/@filename)])- CII
count(//ram:AdditionalReferencedDocument) = count(//ram:AdditionalReferencedDocument[not(./ram:AttachmentBinaryObject/@filename = preceding-sibling::ram:AdditionalReferencedDocument/ram:AttachmentBinaryObject/@filename)])
Quelle: Regelwerk v2026-08-31
Wie behebt man BR-DE-22?
Vergeben Sie je Anlage einen eindeutigen Dateinamen im filename-Attribut (UBL cac:Attachment/cbc:EmbeddedDocumentBinaryObject/@filename, CII ram:AttachmentBinaryObject/@filename) — am einfachsten den Originalnamen der Datei, notfalls mit laufender Nummer.
Im XML
Ausschnitt in UBL. Der CII-Pfad steht oben im Text — dieselbe Änderung, andere Elementnamen.
<cac:AdditionalDocumentReference>
<cbc:ID>1</cbc:ID>
<cac:Attachment>
<cbc:EmbeddedDocumentBinaryObject mimeCode="application/pdf" filename="anhang.pdf">JVBERi0=</cbc:EmbeddedDocumentBinaryObject>
</cac:Attachment>
</cac:AdditionalDocumentReference>
<cac:AdditionalDocumentReference>
<cbc:ID>2</cbc:ID>
<cac:Attachment>
<cbc:EmbeddedDocumentBinaryObject mimeCode="application/pdf" filename="anhang.pdf">JVBERi0=</cbc:EmbeddedDocumentBinaryObject>
</cac:Attachment>
</cac:AdditionalDocumentReference><cac:AdditionalDocumentReference>
<cbc:ID>1</cbc:ID>
<cac:Attachment>
<cbc:EmbeddedDocumentBinaryObject mimeCode="application/pdf" filename="stundennachweis.pdf">JVBERi0=</cbc:EmbeddedDocumentBinaryObject>
</cac:Attachment>
</cac:AdditionalDocumentReference>
<cac:AdditionalDocumentReference>
<cbc:ID>2</cbc:ID>
<cac:Attachment>
<cbc:EmbeddedDocumentBinaryObject mimeCode="application/pdf" filename="lieferschein.pdf">JVBERi0=</cbc:EmbeddedDocumentBinaryObject>
</cac:Attachment>
</cac:AdditionalDocumentReference>Verwandte Regeln
NormAPI liefert technische Validierung, keine Steuer- oder Rechtsberatung.