Utiliser une valeur autorisée pour le schéma de l’identifiant global

Erreur FX-SCH-A-000895 Factur-X

La valeur de '@schemeID' n'est pas autorisée.

Règle obligatoire : tant qu'elle n'est pas respectée, la facture est invalide et sera rejetée par les validateurs.
Ce qui ne va pas

Si schemeID contient une valeur non vide, celle-ci doit figurer dans l’énumération de l’identifiant de liste 11 de FACTUR-X_EXTENDED_codedb.xml. Toute valeur qui n’y figure pas est interdite.

Ce que signifie la règle

Cette vérification limite les valeurs non vides de schemeID aux identifiants de schéma répertoriés pour cet identifiant global. Une valeur vide satisfait ce contrôle de valeur précis.

Veuillez utiliser un identifiant de schéma autorisé pour l’identifiant global

La valeur non vide de schemeID pour ram:GlobalID ne figure pas dans la liste des valeurs autorisées. Utilisez une valeur qui y figure ou laissez l’attribut vide.

Que faire ?
  1. Repérez ram:GlobalID sous InvoicerTradeParty.
  2. Comparez la valeur de schemeID avec l’énumération de l’identifiant de liste 11 dans FACTUR-X_EXTENDED_codedb.xml.
  3. Utilisez une valeur qui y figure ou laissez schemeID vide.
  4. Générez de nouveau la facture et vérifiez-la.
Détails techniques

Le test accepte une chaîne vide ou une valeur présente dans codedb/cl[@id=11]/enumeration.

Où la règle s'applique

La règle vérifie la valeur de l’attribut schemeID sur l’élément ram:GlobalID de l’émetteur de la facture.

Message d'origine du Schematron
Value of '@schemeID' is not allowed.
Contexte (rule/@context)
/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ ram:InvoicerTradeParty/ram:GlobalID
Expression de contrôle (assert/@test)
string-length($codeValue11)=0 or document('FACTUR-X_EXTENDED_codedb.xml')/codedb/cl[@id=11]/enumeration[@value=$codeValue11]