Höchstens eine Länderunterregion der Käuferorganisation

Fehler FX-SCH-A-000701 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 dieser ram:PostalTradeAddress kommt ram:CountrySubDivisionName mehr als einmal vor.

Was die Regel bedeutet

Die Länderunterregion, beispielsweise ein Bundesland oder eine Provinz, wird in dieser Anschrift höchstens einmal angegeben.

Bitte geben Sie die Länderunterregion der Käuferorganisation höchstens einmal an

In der Postanschrift der Käuferorganisation ist die Länderunterregion mehrfach eingetragen. Sie können die Anschrift so anpassen, dass dieser Eintrag höchstens einmal vorkommt.

Was ist zu tun?
  1. Prüfen Sie die ram:PostalTradeAddress in ram:SpecifiedLegalOrganization des Käufers.
  2. Lassen Sie ram:CountrySubDivisionName dort höchstens einmal stehen.
  3. 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

Der XPath zählt die direkten ram:CountrySubDivisionName-Elemente im aktuellen ram:PostalTradeAddress und lässt höchstens eines zu.

Wo die Regel greift

Die Regel gilt für die Postanschrift innerhalb von ram:SpecifiedLegalOrganization des Käufers. Dort kann ram:CountrySubDivisionName höchstens einmal vorkommen.

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