Höchstens ein CountrySubDivisionName

Fehler FX-SCH-A-000875 Factur-X

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

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

In PostalTradeAddress ist CountrySubDivisionName mehr als einmal enthalten. Dieses Element darf dort höchstens einmal vorkommen.

Was die Regel bedeutet

Die Regel begrenzt die Angabe der Untergliederung des Landes in der Postanschrift auf ein Element.

Bitte geben Sie in der Postanschrift des Rechnungsempfängers höchstens eine Länderuntergliederung an

In der Postanschrift des Rechnungsempfängers ist CountrySubDivisionName mehrfach enthalten. Sie können den Fehler beheben, indem Sie die Angabe auf höchstens ein Element begrenzen.

Was ist zu tun?
  1. Suchen Sie PostalTradeAddress in der Anschrift des Rechnungsempfängers.
  2. Prüfen Sie, wie oft CountrySubDivisionName darin vorkommt.
  3. Lassen Sie höchstens ein CountrySubDivisionName-Element stehen.
  4. Erzeugen Sie die Rechnung neu und prüfen Sie sie erneut.
So sieht es aus
✗ Führt zur Meldung
<ram:PostalTradeAddress>
  <ram:CountrySubDivisionName>Region A</ram:CountrySubDivisionName>
  <ram:CountrySubDivisionName>Region B</ram:CountrySubDivisionName>
</ram:PostalTradeAddress>
✓ In Ordnung
<ram:PostalTradeAddress>
  <ram:CountrySubDivisionName>Region A</ram:CountrySubDivisionName>
</ram:PostalTradeAddress>
Technische Details

Im Kontext von PostalTradeAddress wird die Anzahl der direkten CountrySubDivisionName-Elemente gezählt; der Test ist bei höchstens einem Element erfüllt.

Wo die Regel greift

Die Regel gilt für die Postanschrift des Rechnungsempfängers in InvoiceeTradeParty.

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