Use an allowed URI identification scheme value

Error FX-SCH-A-001107 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

The non-empty value of @schemeID is not included in the value list defined for this URI identifier. An empty value passes this particular value check.

What the rule means

The value list restricts @schemeID to values defined for this URI identifier. This preserves the intended identification context.

Please use an allowed value for the URI identification scheme

The value entered for @schemeID on ram:URIID is not in the value list defined for it. You can resolve this by using a value from that list.

What to do
  1. Check the value of @schemeID on ram:URIID.
  2. Use a value from the code list defined for this URI identifier.
  3. Generate the invoice again and validate it once more.
What it looks like
✗ Triggers the message
<ram:URIID schemeID="UNKNOWN">https://example.org</ram:URIID>
✓ Correct
<ram:URIID schemeID="">https://example.org</ram:URIID>
Technical details

The check accepts an empty value or a value present in code list 13 in FACTUR-X_EXTENDED_codedb.xml.

Where the rule applies

The rule applies to @schemeID on the ram:URIID element inside ram:URIUniversalCommunication of the ram:ShipToTradeParty party on an invoice line.

Context (rule/@context)
/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:IncludedSupplyChainTradeLineItem/ ram:SpecifiedLineTradeDelivery/ram:ShipToTradeParty/ram:URIUniversalCommunication/ ram:URIID
Test expression (assert/@test)
string-length($codeValue13)=0 or document('FACTUR-X_EXTENDED_codedb.xml')/codedb/cl[@id=13]/enumeration[@value=$codeValue13]