updated schematrons
This commit is contained in:
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,5 +1,5 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?><schema xmlns="http://purl.oclc.org/dsdl/schematron" queryBinding="xslt2" schemaVersion="iso">
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?><schema xmlns="http://purl.oclc.org/dsdl/schematron" queryBinding="xslt2" schemaVersion="iso">
|
||||||
<title>Schema for Factur-X; 1.07.2; Accounting, MINIMUM</title>
|
<title>Schema for Factur-X; 1.07.3; Accounting, MINIMUM</title>
|
||||||
<ns prefix="rsm" uri="urn:un:unece:uncefact:data:standard:CrossIndustryInvoice:100"/>
|
<ns prefix="rsm" uri="urn:un:unece:uncefact:data:standard:CrossIndustryInvoice:100"/>
|
||||||
<ns prefix="qdt" uri="urn:un:unece:uncefact:data:standard:QualifiedDataType:100"/>
|
<ns prefix="qdt" uri="urn:un:unece:uncefact:data:standard:QualifiedDataType:100"/>
|
||||||
<ns prefix="ram" uri="urn:un:unece:uncefact:data:standard:ReusableAggregateBusinessInformationEntity:100"/>
|
<ns prefix="ram" uri="urn:un:unece:uncefact:data:standard:ReusableAggregateBusinessInformationEntity:100"/>
|
||||||
@@ -63,124 +63,82 @@
|
|||||||
<assert id="FX-SCH-A-000020" test="count(ram:TypeCode)=1">
|
<assert id="FX-SCH-A-000020" test="count(ram:TypeCode)=1">
|
||||||
Element 'ram:TypeCode' must occur exactly 1 times.</assert>
|
Element 'ram:TypeCode' must occur exactly 1 times.</assert>
|
||||||
</rule>
|
</rule>
|
||||||
</pattern>
|
<rule context="/rsm:CrossIndustryInvoice/rsm:ExchangedDocument/ram:ID">
|
||||||
<pattern>
|
<report test="@schemeID">
|
||||||
<rule context="/rsm:CrossIndustryInvoice/rsm:ExchangedDocument/ram:ID[@schemeID]">
|
|
||||||
<report test="true()">
|
|
||||||
Attribute @schemeID' marked as not used in the given context.</report>
|
Attribute @schemeID' marked as not used in the given context.</report>
|
||||||
</rule>
|
</rule>
|
||||||
</pattern>
|
|
||||||
<pattern>
|
|
||||||
<rule context="/rsm:CrossIndustryInvoice/rsm:ExchangedDocument/ram:IssueDateTime/udt:DateTimeString">
|
<rule context="/rsm:CrossIndustryInvoice/rsm:ExchangedDocument/ram:IssueDateTime/udt:DateTimeString">
|
||||||
<assert id="FX-SCH-A-000021" test="@format">
|
<assert id="FX-SCH-A-000021" test="@format">
|
||||||
Attribute '@format' is required in this context.</assert>
|
Attribute '@format' is required in this context.</assert>
|
||||||
</rule>
|
|
||||||
</pattern>
|
|
||||||
<pattern>
|
|
||||||
<rule context="/rsm:CrossIndustryInvoice/rsm:ExchangedDocument/ram:IssueDateTime/udt:DateTimeString[@format]">
|
|
||||||
<let name="codeValue3" value="@format"/>
|
<let name="codeValue3" value="@format"/>
|
||||||
<assert id="FX-SCH-A-000022" test="document('FACTUR-X_MINIMUM_codedb.xml')//cl[@id=3]/enumeration[@value=$codeValue3]">
|
<assert id="FX-SCH-A-000022" test="string-length($codeValue3)=0 or document('FACTUR-X_MINIMUM_codedb.xml')/codedb/cl[@id=3]/enumeration[@value=$codeValue3]">
|
||||||
Value of '@format' is not allowed.</assert>
|
Value of '@format' is not allowed.</assert>
|
||||||
</rule>
|
</rule>
|
||||||
</pattern>
|
|
||||||
<pattern>
|
|
||||||
<rule context="/rsm:CrossIndustryInvoice/rsm:ExchangedDocument/ram:TypeCode">
|
<rule context="/rsm:CrossIndustryInvoice/rsm:ExchangedDocument/ram:TypeCode">
|
||||||
<let name="codeValue2" value="."/>
|
<let name="codeValue2" value="."/>
|
||||||
<assert id="FX-SCH-A-000023" test="document('FACTUR-X_MINIMUM_codedb.xml')//cl[@id=2]/enumeration[@value=$codeValue2]">
|
<assert id="FX-SCH-A-000023" test="string-length($codeValue2)=0 or document('FACTUR-X_MINIMUM_codedb.xml')/codedb/cl[@id=2]/enumeration[@value=$codeValue2]">
|
||||||
Value of 'ram:TypeCode' is not allowed.</assert>
|
Value of 'ram:TypeCode' is not allowed.</assert>
|
||||||
</rule>
|
</rule>
|
||||||
</pattern>
|
|
||||||
<pattern>
|
|
||||||
<rule context="/rsm:CrossIndustryInvoice/rsm:ExchangedDocumentContext">
|
<rule context="/rsm:CrossIndustryInvoice/rsm:ExchangedDocumentContext">
|
||||||
<assert id="FX-SCH-A-000024" test="count(ram:BusinessProcessSpecifiedDocumentContextParameter)<=1">
|
<assert id="FX-SCH-A-000024" test="count(ram:BusinessProcessSpecifiedDocumentContextParameter)<=1">
|
||||||
Element 'ram:BusinessProcessSpecifiedDocumentContextParameter' may occur at maximum 1 times.</assert>
|
Element 'ram:BusinessProcessSpecifiedDocumentContextParameter' may occur at maximum 1 times.</assert>
|
||||||
<assert id="FX-SCH-A-000025" test="count(ram:GuidelineSpecifiedDocumentContextParameter)=1">
|
<assert id="FX-SCH-A-000025" test="count(ram:GuidelineSpecifiedDocumentContextParameter)=1">
|
||||||
Element 'ram:GuidelineSpecifiedDocumentContextParameter' must occur exactly 1 times.</assert>
|
Element 'ram:GuidelineSpecifiedDocumentContextParameter' must occur exactly 1 times.</assert>
|
||||||
</rule>
|
</rule>
|
||||||
</pattern>
|
|
||||||
<pattern>
|
|
||||||
<rule context="/rsm:CrossIndustryInvoice/rsm:ExchangedDocumentContext/ram:BusinessProcessSpecifiedDocumentContextParameter">
|
<rule context="/rsm:CrossIndustryInvoice/rsm:ExchangedDocumentContext/ram:BusinessProcessSpecifiedDocumentContextParameter">
|
||||||
<assert id="FX-SCH-A-000019" test="count(ram:ID)=1">
|
<assert id="FX-SCH-A-000019" test="count(ram:ID)=1">
|
||||||
Element 'ram:ID' must occur exactly 1 times.</assert>
|
Element 'ram:ID' must occur exactly 1 times.</assert>
|
||||||
</rule>
|
</rule>
|
||||||
</pattern>
|
<rule context="/rsm:CrossIndustryInvoice/rsm:ExchangedDocumentContext/ram:BusinessProcessSpecifiedDocumentContextParameter/ram:ID">
|
||||||
<pattern>
|
<report test="@schemeID">
|
||||||
<rule context="/rsm:CrossIndustryInvoice/rsm:ExchangedDocumentContext/ram:BusinessProcessSpecifiedDocumentContextParameter/ram:ID[@schemeID]">
|
|
||||||
<report test="true()">
|
|
||||||
Attribute @schemeID' marked as not used in the given context.</report>
|
Attribute @schemeID' marked as not used in the given context.</report>
|
||||||
</rule>
|
</rule>
|
||||||
</pattern>
|
|
||||||
<pattern>
|
|
||||||
<rule context="/rsm:CrossIndustryInvoice/rsm:ExchangedDocumentContext/ram:GuidelineSpecifiedDocumentContextParameter">
|
<rule context="/rsm:CrossIndustryInvoice/rsm:ExchangedDocumentContext/ram:GuidelineSpecifiedDocumentContextParameter">
|
||||||
<assert id="FX-SCH-A-000019" test="count(ram:ID)=1">
|
<assert id="FX-SCH-A-000019" test="count(ram:ID)=1">
|
||||||
Element 'ram:ID' must occur exactly 1 times.</assert>
|
Element 'ram:ID' must occur exactly 1 times.</assert>
|
||||||
</rule>
|
</rule>
|
||||||
</pattern>
|
|
||||||
<pattern>
|
|
||||||
<rule context="/rsm:CrossIndustryInvoice/rsm:ExchangedDocumentContext/ram:GuidelineSpecifiedDocumentContextParameter/ram:ID">
|
<rule context="/rsm:CrossIndustryInvoice/rsm:ExchangedDocumentContext/ram:GuidelineSpecifiedDocumentContextParameter/ram:ID">
|
||||||
<let name="codeValue1" value="."/>
|
<let name="codeValue1" value="."/>
|
||||||
<assert id="FX-SCH-A-000026" test="document('FACTUR-X_MINIMUM_codedb.xml')//cl[@id=1]/enumeration[@value=$codeValue1]">
|
<assert id="FX-SCH-A-000026" test="string-length($codeValue1)=0 or document('FACTUR-X_MINIMUM_codedb.xml')/codedb/cl[@id=1]/enumeration[@value=$codeValue1]">
|
||||||
Value of 'ram:ID' is not allowed.</assert>
|
Value of 'ram:ID' is not allowed.</assert>
|
||||||
</rule>
|
<report test="@schemeID">
|
||||||
</pattern>
|
|
||||||
<pattern>
|
|
||||||
<rule context="/rsm:CrossIndustryInvoice/rsm:ExchangedDocumentContext/ram:GuidelineSpecifiedDocumentContextParameter/ram:ID[@schemeID]">
|
|
||||||
<report test="true()">
|
|
||||||
Attribute @schemeID' marked as not used in the given context.</report>
|
Attribute @schemeID' marked as not used in the given context.</report>
|
||||||
</rule>
|
</rule>
|
||||||
</pattern>
|
|
||||||
<pattern>
|
|
||||||
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement">
|
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement">
|
||||||
<assert id="FX-SCH-A-000027" test="count(ram:SellerTradeParty)=1">
|
<assert id="FX-SCH-A-000027" test="count(ram:SellerTradeParty)=1">
|
||||||
Element 'ram:SellerTradeParty' must occur exactly 1 times.</assert>
|
Element 'ram:SellerTradeParty' must occur exactly 1 times.</assert>
|
||||||
<assert id="FX-SCH-A-000028" test="count(ram:BuyerTradeParty)=1">
|
<assert id="FX-SCH-A-000028" test="count(ram:BuyerTradeParty)=1">
|
||||||
Element 'ram:BuyerTradeParty' must occur exactly 1 times.</assert>
|
Element 'ram:BuyerTradeParty' must occur exactly 1 times.</assert>
|
||||||
</rule>
|
</rule>
|
||||||
</pattern>
|
|
||||||
<pattern>
|
|
||||||
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:BuyerOrderReferencedDocument">
|
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:BuyerOrderReferencedDocument">
|
||||||
<assert id="FX-SCH-A-000029" test="count(ram:IssuerAssignedID)=1">
|
<assert id="FX-SCH-A-000029" test="count(ram:IssuerAssignedID)=1">
|
||||||
Element 'ram:IssuerAssignedID' must occur exactly 1 times.</assert>
|
Element 'ram:IssuerAssignedID' must occur exactly 1 times.</assert>
|
||||||
</rule>
|
</rule>
|
||||||
</pattern>
|
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:BuyerOrderReferencedDocument/ram:IssuerAssignedID">
|
||||||
<pattern>
|
<report test="@schemeID">
|
||||||
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:BuyerOrderReferencedDocument/ram:IssuerAssignedID[@schemeID]">
|
|
||||||
<report test="true()">
|
|
||||||
Attribute @schemeID' marked as not used in the given context.</report>
|
Attribute @schemeID' marked as not used in the given context.</report>
|
||||||
</rule>
|
</rule>
|
||||||
</pattern>
|
|
||||||
<pattern>
|
|
||||||
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:BuyerTradeParty">
|
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:BuyerTradeParty">
|
||||||
<assert id="FX-SCH-A-000030" test="count(ram:Name)=1">
|
<assert id="FX-SCH-A-000030" test="count(ram:Name)=1">
|
||||||
Element 'ram:Name' must occur exactly 1 times.</assert>
|
Element 'ram:Name' must occur exactly 1 times.</assert>
|
||||||
</rule>
|
</rule>
|
||||||
</pattern>
|
|
||||||
<pattern>
|
|
||||||
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:BuyerTradeParty/ram:PostalTradeAddress">
|
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:BuyerTradeParty/ram:PostalTradeAddress">
|
||||||
<report test="true()">
|
<report test="true()">
|
||||||
Element 'ram:PostalTradeAddress' is marked as not used in the given context.</report>
|
Element 'ram:PostalTradeAddress' is marked as not used in the given context.</report>
|
||||||
</rule>
|
</rule>
|
||||||
</pattern>
|
|
||||||
<pattern>
|
|
||||||
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:BuyerTradeParty/ram:SpecifiedLegalOrganization">
|
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:BuyerTradeParty/ram:SpecifiedLegalOrganization">
|
||||||
<assert id="FX-SCH-A-000019" test="count(ram:ID)=1">
|
<assert id="FX-SCH-A-000019" test="count(ram:ID)=1">
|
||||||
Element 'ram:ID' must occur exactly 1 times.</assert>
|
Element 'ram:ID' must occur exactly 1 times.</assert>
|
||||||
</rule>
|
</rule>
|
||||||
</pattern>
|
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:BuyerTradeParty/ram:SpecifiedLegalOrganization/ram:ID">
|
||||||
<pattern>
|
|
||||||
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:BuyerTradeParty/ram:SpecifiedLegalOrganization/ram:ID[@schemeID]">
|
|
||||||
<let name="codeValue4" value="@schemeID"/>
|
<let name="codeValue4" value="@schemeID"/>
|
||||||
<assert id="FX-SCH-A-000031" test="document('FACTUR-X_MINIMUM_codedb.xml')//cl[@id=4]/enumeration[@value=$codeValue4]">
|
<assert id="FX-SCH-A-000031" test="string-length($codeValue4)=0 or document('FACTUR-X_MINIMUM_codedb.xml')/codedb/cl[@id=4]/enumeration[@value=$codeValue4]">
|
||||||
Value of '@schemeID' is not allowed.</assert>
|
Value of '@schemeID' is not allowed.</assert>
|
||||||
</rule>
|
</rule>
|
||||||
</pattern>
|
|
||||||
<pattern>
|
|
||||||
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:BuyerTradeParty/ram:SpecifiedTaxRegistration">
|
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:BuyerTradeParty/ram:SpecifiedTaxRegistration">
|
||||||
<report test="true()">
|
<report test="true()">
|
||||||
Element 'ram:SpecifiedTaxRegistration' is marked as not used in the given context.</report>
|
Element 'ram:SpecifiedTaxRegistration' is marked as not used in the given context.</report>
|
||||||
</rule>
|
</rule>
|
||||||
</pattern>
|
|
||||||
<pattern>
|
|
||||||
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:SellerTradeParty">
|
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:SellerTradeParty">
|
||||||
<assert id="FX-SCH-A-000030" test="count(ram:Name)=1">
|
<assert id="FX-SCH-A-000030" test="count(ram:Name)=1">
|
||||||
Element 'ram:Name' must occur exactly 1 times.</assert>
|
Element 'ram:Name' must occur exactly 1 times.</assert>
|
||||||
@@ -191,73 +149,51 @@
|
|||||||
<assert id="FX-SCH-A-000034" test="count(ram:SpecifiedTaxRegistration[ram:ID/@schemeID="FC"])<=1">
|
<assert id="FX-SCH-A-000034" test="count(ram:SpecifiedTaxRegistration[ram:ID/@schemeID="FC"])<=1">
|
||||||
Element variant 'ram:SpecifiedTaxRegistration[ram:ID/@schemeID="FC"]' may occur at maximum 1 times.</assert>
|
Element variant 'ram:SpecifiedTaxRegistration[ram:ID/@schemeID="FC"]' may occur at maximum 1 times.</assert>
|
||||||
</rule>
|
</rule>
|
||||||
</pattern>
|
|
||||||
<pattern>
|
|
||||||
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:SellerTradeParty/ram:PostalTradeAddress">
|
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:SellerTradeParty/ram:PostalTradeAddress">
|
||||||
<assert id="FX-SCH-A-000035" test="count(ram:CountryID)=1">
|
<assert id="FX-SCH-A-000035" test="count(ram:CountryID)=1">
|
||||||
Element 'ram:CountryID' must occur exactly 1 times.</assert>
|
Element 'ram:CountryID' must occur exactly 1 times.</assert>
|
||||||
</rule>
|
</rule>
|
||||||
</pattern>
|
|
||||||
<pattern>
|
|
||||||
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:SellerTradeParty/ram:PostalTradeAddress/ram:CountryID">
|
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:SellerTradeParty/ram:PostalTradeAddress/ram:CountryID">
|
||||||
<let name="codeValue5" value="."/>
|
<let name="codeValue5" value="."/>
|
||||||
<assert id="FX-SCH-A-000036" test="document('FACTUR-X_MINIMUM_codedb.xml')//cl[@id=5]/enumeration[@value=$codeValue5]">
|
<assert id="FX-SCH-A-000036" test="string-length($codeValue5)=0 or document('FACTUR-X_MINIMUM_codedb.xml')/codedb/cl[@id=5]/enumeration[@value=$codeValue5]">
|
||||||
Value of 'ram:CountryID' is not allowed.</assert>
|
Value of 'ram:CountryID' is not allowed.</assert>
|
||||||
</rule>
|
</rule>
|
||||||
</pattern>
|
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:SellerTradeParty/ram:SpecifiedLegalOrganization/ram:ID">
|
||||||
<pattern>
|
|
||||||
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:SellerTradeParty/ram:SpecifiedLegalOrganization/ram:ID[@schemeID]">
|
|
||||||
<let name="codeValue4" value="@schemeID"/>
|
<let name="codeValue4" value="@schemeID"/>
|
||||||
<assert id="FX-SCH-A-000031" test="document('FACTUR-X_MINIMUM_codedb.xml')//cl[@id=4]/enumeration[@value=$codeValue4]">
|
<assert id="FX-SCH-A-000031" test="string-length($codeValue4)=0 or document('FACTUR-X_MINIMUM_codedb.xml')/codedb/cl[@id=4]/enumeration[@value=$codeValue4]">
|
||||||
Value of '@schemeID' is not allowed.</assert>
|
Value of '@schemeID' is not allowed.</assert>
|
||||||
</rule>
|
</rule>
|
||||||
</pattern>
|
|
||||||
<pattern>
|
|
||||||
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:SellerTradeParty/ram:SpecifiedTaxRegistration[ not(ram:ID/@schemeID="VA") and not(ram:ID/@schemeID="FC")]">
|
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:SellerTradeParty/ram:SpecifiedTaxRegistration[ not(ram:ID/@schemeID="VA") and not(ram:ID/@schemeID="FC")]">
|
||||||
<report test="true()">
|
<report test="true()">
|
||||||
Element variant 'ram:SpecifiedTaxRegistration[ not(ram:ID/@schemeID="VA") and not(ram:ID/@schemeID="FC")]' is marked as not used in the given context.</report>
|
Element variant 'ram:SpecifiedTaxRegistration[ not(ram:ID/@schemeID="VA") and not(ram:ID/@schemeID="FC")]' is marked as not used in the given context.</report>
|
||||||
</rule>
|
</rule>
|
||||||
</pattern>
|
|
||||||
<pattern>
|
|
||||||
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:SellerTradeParty/ram:SpecifiedTaxRegistration[ram:ID/@schemeID="FC"]">
|
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:SellerTradeParty/ram:SpecifiedTaxRegistration[ram:ID/@schemeID="FC"]">
|
||||||
<assert id="FX-SCH-A-000019" test="count(ram:ID)=1">
|
<assert id="FX-SCH-A-000019" test="count(ram:ID)=1">
|
||||||
Element 'ram:ID' must occur exactly 1 times.</assert>
|
Element 'ram:ID' must occur exactly 1 times.</assert>
|
||||||
</rule>
|
</rule>
|
||||||
</pattern>
|
|
||||||
<pattern>
|
|
||||||
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:SellerTradeParty/ram:SpecifiedTaxRegistration[ram:ID/@schemeID="FC"]/ram:ID">
|
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:SellerTradeParty/ram:SpecifiedTaxRegistration[ram:ID/@schemeID="FC"]/ram:ID">
|
||||||
<assert id="FX-SCH-A-000037" test="@schemeID">
|
<assert id="FX-SCH-A-000037" test="@schemeID">
|
||||||
Attribute '@schemeID' is required in this context.</assert>
|
Attribute '@schemeID' is required in this context.</assert>
|
||||||
</rule>
|
</rule>
|
||||||
</pattern>
|
|
||||||
<pattern>
|
|
||||||
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:SellerTradeParty/ram:SpecifiedTaxRegistration[ram:ID/@schemeID="VA"]">
|
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:SellerTradeParty/ram:SpecifiedTaxRegistration[ram:ID/@schemeID="VA"]">
|
||||||
<assert id="FX-SCH-A-000019" test="count(ram:ID)=1">
|
<assert id="FX-SCH-A-000019" test="count(ram:ID)=1">
|
||||||
Element 'ram:ID' must occur exactly 1 times.</assert>
|
Element 'ram:ID' must occur exactly 1 times.</assert>
|
||||||
</rule>
|
</rule>
|
||||||
</pattern>
|
|
||||||
<pattern>
|
|
||||||
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:SellerTradeParty/ram:SpecifiedTaxRegistration[ram:ID/@schemeID="VA"]/ram:ID">
|
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:SellerTradeParty/ram:SpecifiedTaxRegistration[ram:ID/@schemeID="VA"]/ram:ID">
|
||||||
<assert id="FX-SCH-A-000037" test="@schemeID">
|
<assert id="FX-SCH-A-000037" test="@schemeID">
|
||||||
Attribute '@schemeID' is required in this context.</assert>
|
Attribute '@schemeID' is required in this context.</assert>
|
||||||
</rule>
|
</rule>
|
||||||
</pattern>
|
|
||||||
<pattern>
|
|
||||||
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement">
|
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement">
|
||||||
<assert id="FX-SCH-A-000038" test="count(ram:InvoiceCurrencyCode)=1">
|
<assert id="FX-SCH-A-000038" test="count(ram:InvoiceCurrencyCode)=1">
|
||||||
Element 'ram:InvoiceCurrencyCode' must occur exactly 1 times.</assert>
|
Element 'ram:InvoiceCurrencyCode' must occur exactly 1 times.</assert>
|
||||||
<assert id="FX-SCH-A-000039" test="count(ram:SpecifiedTradeSettlementHeaderMonetarySummation)=1">
|
<assert id="FX-SCH-A-000039" test="count(ram:SpecifiedTradeSettlementHeaderMonetarySummation)=1">
|
||||||
Element 'ram:SpecifiedTradeSettlementHeaderMonetarySummation' must occur exactly 1 times.</assert>
|
Element 'ram:SpecifiedTradeSettlementHeaderMonetarySummation' must occur exactly 1 times.</assert>
|
||||||
</rule>
|
</rule>
|
||||||
</pattern>
|
|
||||||
<pattern>
|
|
||||||
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:InvoiceCurrencyCode">
|
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:InvoiceCurrencyCode">
|
||||||
<let name="codeValue6" value="."/>
|
<let name="codeValue6" value="."/>
|
||||||
<assert id="FX-SCH-A-000040" test="document('FACTUR-X_MINIMUM_codedb.xml')//cl[@id=6]/enumeration[@value=$codeValue6]">
|
<assert id="FX-SCH-A-000040" test="string-length($codeValue6)=0 or document('FACTUR-X_MINIMUM_codedb.xml')/codedb/cl[@id=6]/enumeration[@value=$codeValue6]">
|
||||||
Value of 'ram:InvoiceCurrencyCode' is not allowed.</assert>
|
Value of 'ram:InvoiceCurrencyCode' is not allowed.</assert>
|
||||||
</rule>
|
</rule>
|
||||||
</pattern>
|
|
||||||
<pattern>
|
|
||||||
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:SpecifiedTradeSettlementHeaderMonetarySummation">
|
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:SpecifiedTradeSettlementHeaderMonetarySummation">
|
||||||
<assert id="FX-SCH-A-000041" test="count(ram:TaxBasisTotalAmount)=1">
|
<assert id="FX-SCH-A-000041" test="count(ram:TaxBasisTotalAmount)=1">
|
||||||
Element 'ram:TaxBasisTotalAmount' must occur exactly 1 times.</assert>
|
Element 'ram:TaxBasisTotalAmount' must occur exactly 1 times.</assert>
|
||||||
@@ -268,42 +204,28 @@
|
|||||||
<assert id="FX-SCH-A-000044" test="count(ram:DuePayableAmount)=1">
|
<assert id="FX-SCH-A-000044" test="count(ram:DuePayableAmount)=1">
|
||||||
Element 'ram:DuePayableAmount' must occur exactly 1 times.</assert>
|
Element 'ram:DuePayableAmount' must occur exactly 1 times.</assert>
|
||||||
</rule>
|
</rule>
|
||||||
</pattern>
|
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:SpecifiedTradeSettlementHeaderMonetarySummation/ram:DuePayableAmount">
|
||||||
<pattern>
|
<report test="@currencyID">
|
||||||
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:SpecifiedTradeSettlementHeaderMonetarySummation/ram:DuePayableAmount[@currencyID]">
|
|
||||||
<report test="true()">
|
|
||||||
Attribute @currencyID' marked as not used in the given context.</report>
|
Attribute @currencyID' marked as not used in the given context.</report>
|
||||||
</rule>
|
</rule>
|
||||||
</pattern>
|
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:SpecifiedTradeSettlementHeaderMonetarySummation/ram:GrandTotalAmount">
|
||||||
<pattern>
|
<report test="@currencyID">
|
||||||
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:SpecifiedTradeSettlementHeaderMonetarySummation/ram:GrandTotalAmount[@currencyID]">
|
|
||||||
<report test="true()">
|
|
||||||
Attribute @currencyID' marked as not used in the given context.</report>
|
Attribute @currencyID' marked as not used in the given context.</report>
|
||||||
</rule>
|
</rule>
|
||||||
</pattern>
|
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:SpecifiedTradeSettlementHeaderMonetarySummation/ram:TaxBasisTotalAmount">
|
||||||
<pattern>
|
<report test="@currencyID">
|
||||||
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:SpecifiedTradeSettlementHeaderMonetarySummation/ram:TaxBasisTotalAmount[@currencyID]">
|
|
||||||
<report test="true()">
|
|
||||||
Attribute @currencyID' marked as not used in the given context.</report>
|
Attribute @currencyID' marked as not used in the given context.</report>
|
||||||
</rule>
|
</rule>
|
||||||
</pattern>
|
|
||||||
<pattern>
|
|
||||||
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:SpecifiedTradeSettlementHeaderMonetarySummation/ram:TaxTotalAmount[ not(@currencyID=../../ram:InvoiceCurrencyCode) and not(@currencyID=../../ram:TaxCurrencyCode)]">
|
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:SpecifiedTradeSettlementHeaderMonetarySummation/ram:TaxTotalAmount[ not(@currencyID=../../ram:InvoiceCurrencyCode) and not(@currencyID=../../ram:TaxCurrencyCode)]">
|
||||||
<report test="true()">
|
<report test="true()">
|
||||||
Element variant 'ram:TaxTotalAmount[ not(@currencyID=../../ram:InvoiceCurrencyCode) and not(@currencyID=../../ram:TaxCurrencyCode)]' is marked as not used in the given context.</report>
|
Element variant 'ram:TaxTotalAmount[ not(@currencyID=../../ram:InvoiceCurrencyCode) and not(@currencyID=../../ram:TaxCurrencyCode)]' is marked as not used in the given context.</report>
|
||||||
</rule>
|
</rule>
|
||||||
</pattern>
|
|
||||||
<pattern>
|
|
||||||
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:SpecifiedTradeSettlementHeaderMonetarySummation/ram:TaxTotalAmount[@currencyID=../../ram:InvoiceCurrencyCode and @currencyID]">
|
|
||||||
<let name="codeValue7" value="@currencyID"/>
|
|
||||||
<assert id="FX-SCH-A-000045" test="document('FACTUR-X_MINIMUM_codedb.xml')//cl[@id=7]/enumeration[@value=$codeValue7]">
|
|
||||||
Value of '@currencyID' is not allowed.</assert>
|
|
||||||
</rule>
|
|
||||||
</pattern>
|
|
||||||
<pattern>
|
|
||||||
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:SpecifiedTradeSettlementHeaderMonetarySummation/ram:TaxTotalAmount[@currencyID=../../ram:InvoiceCurrencyCode]">
|
<rule context="/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:SpecifiedTradeSettlementHeaderMonetarySummation/ram:TaxTotalAmount[@currencyID=../../ram:InvoiceCurrencyCode]">
|
||||||
<assert id="FX-SCH-A-000046" test="@currencyID">
|
<assert id="FX-SCH-A-000046" test="@currencyID">
|
||||||
Attribute '@currencyID' is required in this context.</assert>
|
Attribute '@currencyID' is required in this context.</assert>
|
||||||
|
<let name="codeValue7" value="@currencyID"/>
|
||||||
|
<assert id="FX-SCH-A-000045" test="string-length($codeValue7)=0 or document('FACTUR-X_MINIMUM_codedb.xml')/codedb/cl[@id=7]/enumeration[@value=$codeValue7]">
|
||||||
|
Value of '@currencyID' is not allowed.</assert>
|
||||||
</rule>
|
</rule>
|
||||||
</pattern>
|
</pattern>
|
||||||
</schema>
|
</schema>
|
||||||
Reference in New Issue
Block a user