# PEPPOL-EN16931-R008 Das Dokument darf keine leeren Elemente enthalten

PEPPOL-EN16931-R008 meldet jedes XML-Element, das weder Text noch Unterelemente enthält, zum Beispiel <cbc:Note/> oder <cbc:Telephone> </cbc:Telephone>. Attribute zählen nicht als Inhalt, daher ist auch <cbc:EndpointID schemeID="EM"/> leer. Die KoSIT-Konfiguration für XRechnung 3.0.2 prüft die Regel für UBL und CII als fatalen Fehler. Ausgenommen sind nur ein leeres cbc:ID in cac:OrderReference (UBL) und ram:ApplicableHeaderTradeDelivery, das das CII-Schema verlangt.

## Problembeschreibung

> **FEHLER**: Regel von Peppol BIS Billing 3.0 (OpenPeppol)

> **Wo PEPPOL-EN16931-R008 geprüft wird**
>
> Ein Validator prüft eine E-Rechnung in Stufen. Zuerst muss die Datei wohlgeformtes XML sein und zum UBL- oder CII-Schema (XSD) passen. Dann laufen die Geschäftsregeln der EN 16931: BR-Kernregeln, BR-CO-Berechnungen, BR-CL-Codelisten, BR-DEC-Nachkommastellen und Regeln je Umsatzsteuerkategorie wie BR-S. Danach folgen die nationalen oder Netzwerk-Regeln, die BT-24 auswählt: BR-DE für XRechnung, PEPPOL-EN16931 für Peppol BIS Billing. Der Bericht nennt jede verletzte Regel: Ein Fehler bedeutet Ablehnung, nur Warnungen bedeuten weiterhin Annahme. PEPPOL-EN16931-R008: Regel von Peppol BIS Billing, gemeldet in der Stufe „Nationale Regeln (CIUS)“.

## Kontext und Bedeutung

Leere Elemente stammen meist aus Exportvorlagen, die jedes Feld schreiben, auch wenn die Quelle keinen Wert hat: eine leere Bemerkung, ein Kontaktfeld, eine Adresszeile oder ein Parteiblock. Ein Platzhalter verdeckt den Strukturfehler, schreibt aber falsche Daten in die Rechnung.

## Lösung

Entfernen Sie das leere Element. Enthält die übergeordnete Gruppe danach keine Daten mehr, entfernen Sie auch die Gruppe. Ist das Feld Pflicht, tragen Sie den echten Wert aus dem Quelldokument ein. Füllen Sie das Element nicht mit Platzhaltern wie „-“ oder „n/a“. Die Position im Validator-Bericht (ein XPath) nennt das Element.

- [XML validieren](/de/xrechnung-validator?source=resource&rule=PEPPOL-EN16931-R008)
- [Rechnung konvertieren](/de/pdf-to-xrechnung?source=resource&rule=PEPPOL-EN16931-R008)

## Gültige Beispiele

- <cbc:Telephone>+49 30 1234567</cbc:Telephone>
- Kein cbc:Note-Element, wenn die Rechnung keine Bemerkung hat

## Ungültige Beispiele

- <cbc:Note/>
- <cbc:Telephone></cbc:Telephone>
- <cbc:EndpointID schemeID="EM"/>

## Code-Beispiele

### Gültiges XML
```
<cac:Contact>
  <cbc:Name>Accounts receivable</cbc:Name>
  <cbc:Telephone>+49 30 1234567</cbc:Telephone>
  <cbc:ElectronicMail>billing@example.com</cbc:ElectronicMail>
</cac:Contact>
```

### Ungültiges XML
```
<cac:Contact>
  <cbc:Name>Accounts receivable</cbc:Name>
  <cbc:Telephone/>
  <cbc:ElectronicMail>billing@example.com</cbc:ElectronicMail>
</cac:Contact>
```

## Betroffene Felder

- [BT-22 Bemerkung zur Rechnung](/resources/xrechnung/bt-22-invoice-note)
- [BT-34 Elektronische Adresse des Verkäufers](/resources/xrechnung/bt-34-seller-electronic-address)
- [BT-42 Telefonnummer des Verkäuferkontakts](/resources/xrechnung/bt-42-seller-contact-telephone-number)

## Validierungstools

- [Offizieller KoSIT Validator](https://github.com/itplr-kosit/validator): Führen Sie den offiziellen KoSIT-Validator mit der XRechnung-Konfiguration aus, um EN-16931- und XRechnung-Regeln zu prüfen.
- [PDF zu XRechnung konvertieren](/pdf-to-xrechnung): Validierungsfehler beim Konvertieren erkennen, prüfen und gezielt beheben.

## Verwandte Ressourcen

- [Offizielle Spezifikation](https://docs.peppol.eu/poacc/billing/3.0/rules/ubl-peppol/)
- [Testsuite](https://github.com/itplr-kosit/xrechnung-testsuite)
- [Alle Validierungsfehler](/resources/kosit-validator-errors): Übersicht der hier erklärten Validierungsregeln aus EN 16931, XRechnung und Peppol.
