Use an allowed value for the global identifier’s scheme

Error FX-SCH-A-000895 Factur-X

Value of '@schemeID' is not allowed.

Mandatory rule: As long as it is violated, the invoice is invalid and will be rejected by validators.
What is wrong

If schemeID has a non-empty value, that value must appear in the enumeration with code-list ID 11 in FACTUR-X_EXTENDED_codedb.xml. A value not listed there is not allowed.

What the rule means

This check restricts non-empty schemeID values to the scheme identifiers registered for this global identifier. An empty value passes this specific value check.

Please use an allowed scheme identifier for the global identifier

The non-empty schemeID value for ram:GlobalID is not in the allowed value list. Use a value listed there or leave the attribute empty.

What to do
  1. Locate ram:GlobalID under InvoicerTradeParty.
  2. Compare the schemeID value with the enumeration for code-list ID 11 in FACTUR-X_EXTENDED_codedb.xml.
  3. Use a value listed there or leave schemeID empty.
  4. Generate the invoice again and validate it.
Technical details

The test accepts an empty string or a value present in codedb/cl[@id=11]/enumeration.

Where the rule applies

The rule checks the value of the schemeID attribute on the invoicer’s ram:GlobalID element.

Context (rule/@context)
/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ ram:InvoicerTradeParty/ram:GlobalID
Test expression (assert/@test)
string-length($codeValue11)=0 or document('FACTUR-X_EXTENDED_codedb.xml')/codedb/cl[@id=11]/enumeration[@value=$codeValue11]