Höchstens ein ram:RoleCode für ProductEndUserTradeParty

Fehler FX-SCH-A-000710 Factur-X

Das Element 'ram:RoleCode' darf höchstens einmal vorkommen.

Pflichtregel: Solange sie verletzt ist, ist die Rechnung ungültig und wird von Validatoren abgewiesen.
Was nicht stimmt

Im ram:ProductEndUserTradeParty kommt ram:RoleCode mehr als einmal vor. Dieses Element darf dort höchstens einmal vorhanden sein.

Was die Regel bedeutet

Die XML-Struktur begrenzt die Rollenangabe für ProductEndUserTradeParty auf einen einzelnen Eintrag. Mehrere Einträge entsprechen nicht der vorgegebenen Struktur.

Bitte verwenden Sie höchstens einen `ram:RoleCode` für `ProductEndUserTradeParty`

Für ProductEndUserTradeParty enthält die Rechnung mehrere ram:RoleCode-Elemente. Sie können die XML-Struktur anpassen, indem Sie die Einträge auf höchstens eines begrenzen.

Was ist zu tun?
  1. Suchen Sie ram:RoleCode innerhalb von ram:ProductEndUserTradeParty.
  2. Entfernen Sie zusätzliche ram:RoleCode-Elemente, sodass höchstens eines verbleibt.
  3. Erzeugen Sie die Rechnung neu und prüfen Sie sie erneut.
So sieht es aus
✗ Führt zur Meldung
<ram:ProductEndUserTradeParty>
  <ram:RoleCode>1</ram:RoleCode>
  <ram:RoleCode>2</ram:RoleCode>
</ram:ProductEndUserTradeParty>
✓ In Ordnung
<ram:ProductEndUserTradeParty>
  <ram:RoleCode>1</ram:RoleCode>
</ram:ProductEndUserTradeParty>
Technische Details

Geprüft wird, ob die Anzahl der direkten ram:RoleCode-Elemente im Regelkontext höchstens eins beträgt.

Wo die Regel greift

Die Regel gilt für ram:RoleCode im XML-Element ram:ProductEndUserTradeParty der Vereinbarung auf Kopfebene.

Originalmeldung aus dem Schematron
Element 'ram:RoleCode' may occur at maximum 1 times.
Kontext (rule/@context)
/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ ram:ProductEndUserTradeParty
Prüfausdruck (assert/@test)
count(ram:RoleCode)<=1