From 42795b17cc0c57a6b6e46ceadf774e8dd0d42c8a Mon Sep 17 00:00:00 2001 From: jstaerk Date: Sun, 9 May 2021 13:42:20 +0200 Subject: [PATCH] be able to rudimentary validate ox comfort, ubl preps --- History.md | 2 + .../validator/PDFValidator.java | 4 +- .../validator/ValidationContext.java | 21 +- .../validator/XMLValidator.java | 107 +- .../validator/ZUGFeRDValidator.java | 3 +- ...SCRDMCCBDACIOMessageStructure_100pD20B.xsd | 2 +- ...d_ISO_ISO3AlphaCurrencyCode_2012-08-31.xsd | 0 ...odelist_standard_UNECE_ActionCode_D20A.xsd | 0 ..._standard_UNECE_DeliveryTermsCode_2010.xsd | 0 ...d_UNECE_DeliveryTermsFunctionCode_D20A.xsd | 0 ...t_standard_UNECE_DocumentNameCode_D20A.xsd | 0 ...standard_UNECE_DocumentStatusCode_D20A.xsd | 0 ...tandard_UNECE_MessageFunctionCode_D20A.xsd | 0 ...ct_data_standard_QualifiedDataType_128.xsd | 0 ...AggregateBusinessInformationEntity_128.xsd | 2 +- ..._data_standard_UnqualifiedDataType_128.xsd | 0 ...wo-letterCountryCode_SecondEdition2006.xsd | 0 ...SCRDMCCBDACIOMessageStructure_100pD20B.xsd | 2 +- ...EDIFICAS-EU_AccountingAccountType_D11A.xsd | 0 ...EN16931_AllowanceChargeReasonCode_D20A.xsd | 0 ...d_ISO_ISO3AlphaCurrencyCode_2012-08-31.xsd | 0 ...odelist_standard_UNECE_ActionCode_D20A.xsd | 0 ...tandard_UNECE_ContactFunctionCode_D20A.xsd | 0 ..._standard_UNECE_DeliveryTermsCode_2010.xsd | 0 ...d_UNECE_DeliveryTermsFunctionCode_D20A.xsd | 0 ...t_standard_UNECE_DocumentNameCode_D20A.xsd | 0 ...standard_UNECE_DocumentStatusCode_D20A.xsd | 0 ...standard_UNECE_DutyTaxFeeTypeCode_D20A.xsd | 0 ..._UNECE_DutyorTaxorFeeCategoryCode_D20A.xsd | 0 ...tandard_UNECE_MessageFunctionCode_D20A.xsd | 0 ...st_standard_UNECE_PackageTypeCode_2006.xsd | 0 ...t_standard_UNECE_PaymentMeansCode_D20A.xsd | 0 ..._standard_UNECE_ReferenceTypeCode_D20A.xsd | 0 ...ct_data_standard_QualifiedDataType_128.xsd | 4 - ...AggregateBusinessInformationEntity_128.xsd | 7 +- ..._data_standard_UnqualifiedDataType_128.xsd | 2 +- ...wo-letterCountryCode_SecondEdition2006.xsd | 0 ...SCRDMCCBDACIOMessageStructure_100pD20B.xsd | 2 +- ...EDIFICAS-EU_AccountingAccountType_D11A.xsd | 0 ...EN16931_AllowanceChargeReasonCode_D20A.xsd | 0 ...d_ISO_ISO3AlphaCurrencyCode_2012-08-31.xsd | 0 ...odelist_standard_UNECE_ActionCode_D20A.xsd | 0 ...tandard_UNECE_ContactFunctionCode_D20A.xsd | 0 ..._standard_UNECE_DeliveryTermsCode_2010.xsd | 0 ...d_UNECE_DeliveryTermsFunctionCode_D20A.xsd | 0 ...t_standard_UNECE_DocumentNameCode_D20A.xsd | 0 ...standard_UNECE_DocumentStatusCode_D20A.xsd | 0 ...standard_UNECE_DutyTaxFeeTypeCode_D20A.xsd | 0 ..._UNECE_DutyorTaxorFeeCategoryCode_D20A.xsd | 0 ...dard_UNECE_EventTimeReferenceCode_D20A.xsd | 0 ...tandard_UNECE_MessageFunctionCode_D20A.xsd | 0 ...st_standard_UNECE_PackageTypeCode_2006.xsd | 0 ...t_standard_UNECE_PaymentMeansCode_D20A.xsd | 0 ..._standard_UNECE_ReferenceTypeCode_D20A.xsd | 0 ...tandard_UNECE_TimePointFormatCode_D19B.xsd | 0 ...ct_data_standard_QualifiedDataType_128.xsd | 4 - ...AggregateBusinessInformationEntity_128.xsd | 0 ..._data_standard_UnqualifiedDataType_128.xsd | 0 ...wo-letterCountryCode_SecondEdition2006.xsd | 0 .../common/CCTS_CCT_SchemaModule-2.1.xsd | 731 + .../UBL-CommonAggregateComponents-2.1.xsd | 4156 +++++ .../common/UBL-CommonBasicComponents-2.1.xsd | 5385 ++++++ .../UBL-CommonExtensionComponents-2.1.xsd | 223 + .../UBL-CommonSignatureComponents-2.1.xsd | 71 + .../UBL-CoreComponentParameters-2.1.xsd | 63 + .../UBL-ExtensionContentDataType-2.1.xsd | 89 + .../common/UBL-QualifiedDataTypes-2.1.xsd | 69 + .../UBL-SignatureAggregateComponents-2.1.xsd | 92 + .../UBL-SignatureBasicComponents-2.1.xsd | 74 + .../common/UBL-UnqualifiedDataTypes-2.1.xsd | 553 + .../UBL_21/common/UBL-XAdESv132-2.1.xsd | 476 + .../UBL_21/common/UBL-XAdESv141-2.1.xsd | 25 + .../common/UBL-xmldsig-core-schema-2.1.xsd | 330 + .../maindoc/UBL-ApplicationResponse-2.1.xsd | 93 + .../maindoc/UBL-AttachedDocument-2.1.xsd | 98 + .../maindoc/UBL-AwardedNotification-2.1.xsd | 100 + .../UBL_21/maindoc/UBL-BillOfLading-2.1.xsd | 103 + .../UBL_21/maindoc/UBL-CallForTenders-2.1.xsd | 106 + .../UBL_21/maindoc/UBL-Catalogue-2.1.xsd | 105 + .../maindoc/UBL-CatalogueDeletion-2.1.xsd | 99 + ...L-CatalogueItemSpecificationUpdate-2.1.xsd | 106 + .../UBL-CataloguePricingUpdate-2.1.xsd | 105 + .../maindoc/UBL-CatalogueRequest-2.1.xsd | 109 + .../maindoc/UBL-CertificateOfOrigin-2.1.xsd | 98 + .../maindoc/UBL-ContractAwardNotice-2.1.xsd | 105 + .../UBL_21/maindoc/UBL-ContractNotice-2.1.xsd | 101 + .../UBL_21/maindoc/UBL-CreditNote-2.1.xsd | 143 + .../UBL_21/maindoc/UBL-DebitNote-2.1.xsd | 139 + .../UBL_21/maindoc/UBL-DespatchAdvice-2.1.xsd | 102 + .../UBL_21/maindoc/UBL-DocumentStatus-2.1.xsd | 94 + .../maindoc/UBL-DocumentStatusRequest-2.1.xsd | 92 + .../maindoc/UBL-ExceptionCriteria-2.1.xsd | 96 + .../maindoc/UBL-ExceptionNotification-2.1.xsd | 97 + .../UBL_21/maindoc/UBL-Forecast-2.1.xsd | 100 + .../maindoc/UBL-ForecastRevision-2.1.xsd | 100 + .../UBL-ForwardingInstructions-2.1.xsd | 102 + .../UBL_21/maindoc/UBL-FreightInvoice-2.1.xsd | 136 + .../UBL-FulfilmentCancellation-2.1.xsd | 105 + .../maindoc/UBL-GoodsItemItinerary-2.1.xsd | 101 + .../maindoc/UBL-GuaranteeCertificate-2.1.xsd | 102 + .../maindoc/UBL-InstructionForReturns-2.1.xsd | 96 + .../maindoc/UBL-InventoryReport-2.1.xsd | 95 + .../schema/UBL_21/maindoc/UBL-Invoice-2.1.xsd | 146 + .../UBL-ItemInformationRequest-2.1.xsd | 97 + .../schema/UBL_21/maindoc/UBL-Order-2.1.xsd | 128 + .../maindoc/UBL-OrderCancellation-2.1.xsd | 98 + .../UBL_21/maindoc/UBL-OrderChange-2.1.xsd | 125 + .../UBL_21/maindoc/UBL-OrderResponse-2.1.xsd | 132 + .../maindoc/UBL-OrderResponseSimple-2.1.xsd | 102 + .../UBL_21/maindoc/UBL-PackingList-2.1.xsd | 97 + .../UBL-PriorInformationNotice-2.1.xsd | 100 + .../maindoc/UBL-ProductActivity-2.1.xsd | 96 + .../UBL_21/maindoc/UBL-Quotation-2.1.xsd | 110 + .../UBL_21/maindoc/UBL-ReceiptAdvice-2.1.xsd | 104 + .../UBL_21/maindoc/UBL-Reminder-2.1.xsd | 122 + .../maindoc/UBL-RemittanceAdvice-2.1.xsd | 107 + .../maindoc/UBL-RequestForQuotation-2.1.xsd | 106 + .../UBL_21/maindoc/UBL-RetailEvent-2.1.xsd | 104 + .../maindoc/UBL-SelfBilledCreditNote-2.1.xsd | 141 + .../maindoc/UBL-SelfBilledInvoice-2.1.xsd | 142 + .../UBL_21/maindoc/UBL-Statement-2.1.xsd | 109 + .../UBL-StockAvailabilityReport-2.1.xsd | 97 + .../schema/UBL_21/maindoc/UBL-Tender-2.1.xsd | 101 + .../UBL_21/maindoc/UBL-TenderReceipt-2.1.xsd | 97 + .../maindoc/UBL-TendererQualification-2.1.xsd | 99 + .../UBL-TendererQualificationResponse-2.1.xsd | 98 + .../UBL-TradeItemLocationProfile-2.1.xsd | 96 + .../UBL-TransportExecutionPlan-2.1.xsd | 134 + .../UBL-TransportExecutionPlanRequest-2.1.xsd | 125 + .../UBL-TransportProgressStatus-2.1.xsd | 97 + ...UBL-TransportProgressStatusRequest-2.1.xsd | 93 + .../UBL-TransportServiceDescription-2.1.xsd | 100 + ...TransportServiceDescriptionRequest-2.1.xsd | 96 + .../maindoc/UBL-TransportationStatus-2.1.xsd | 109 + .../UBL-TransportationStatusRequest-2.1.xsd | 105 + .../maindoc/UBL-UnawardedNotification-2.1.xsd | 98 + .../maindoc/UBL-UtilityStatement-2.1.xsd | 102 + .../schema/UBL_21/maindoc/UBL-Waybill-2.1.xsd | 101 + .../schema/{zf1 => ZF_10}/ZUGFeRD1p0.xsd | 0 ...act_data_standard_QualifiedDataType_12.xsd | 0 ...eAggregateBusinessInformationEntity_12.xsd | 0 ...t_data_standard_UnqualifiedDataType_15.xsd | 0 .../BASIC-WL/FACTUR-X_BASIC-WL.xsd | 40 +- ...ct_data_standard_QualifiedDataType_100.xsd | 1576 +- ...AggregateBusinessInformationEntity_100.xsd | 388 +- ..._data_standard_UnqualifiedDataType_100.xsd | 108 +- .../{zf2 => ZF_211}/BASIC/FACTUR-X_BASIC.xsd | 40 +- ...ct_data_standard_QualifiedDataType_100.xsd | 1576 +- ...AggregateBusinessInformationEntity_100.xsd | 484 +- ..._data_standard_UnqualifiedDataType_100.xsd | 122 +- .../EN16931/FACTUR-X_EN16931.xsd | 40 +- ...ct_data_standard_QualifiedDataType_100.xsd | 3482 ++-- ...AggregateBusinessInformationEntity_100.xsd | 636 +- ..._data_standard_UnqualifiedDataType_100.xsd | 170 +- .../EXTENDED/FACTUR-X_EXTENDED.xsd | 40 +- ...ct_data_standard_QualifiedDataType_100.xsd | 4980 ++--- ...AggregateBusinessInformationEntity_100.xsd | 866 +- ..._data_standard_UnqualifiedDataType_100.xsd | 206 +- .../MINIMUM/FACTUR-X_MINIMUM.xsd | 40 +- ...ct_data_standard_QualifiedDataType_100.xsd | 1014 +- ...AggregateBusinessInformationEntity_100.xsd | 184 +- ..._data_standard_UnqualifiedDataType_100.xsd | 88 +- ...d_UNECE_AllowanceChargeReasonCode_D20A.xsd | 116 - ...d_UNECE_AllowanceChargeReasonCode_D20A.xsd | 116 - ...CBDACIOMessageStructure_100pD20B_BASIC.sch | 555 + ...DACIOMessageStructure_100pD20B_COMFORT.sch | 805 + ...ACIOMessageStructure_100pD20B_EXTENDED.sch | 1243 ++ ...ssageStructure_100pD20B_BASIC-compiled.xsl | 1796 ++ ...BDACIOMessageStructure_100pD20B_BASIC.xslt | 2591 +++ ...ageStructure_100pD20B_COMFORT-compiled.xsl | 2721 +++ ...ACIOMessageStructure_100pD20B_COMFORT.xslt | 4021 ++++ ...geStructure_100pD20B_EXTENDED-compiled.xsl | 4317 +++++ ...CIOMessageStructure_100pD20B_EXTENDED.xslt | 6487 +++++++ .../xslt/UBL_21/EN16931-UBL-validation.xsl | 15378 ++++++++++++++++ .../ORDER-X_EX01_ORDER_FULL_DATA-COMFORT.pdf | Bin 0 -> 239358 bytes .../src/test/resources/xrechnung-ubl.xml | 530 + 176 files changed, 67854 insertions(+), 8343 deletions(-) rename validator/src/main/resources/schema/{ox09 => OX_10}/basic/SCRDMCCBDACIOMessageStructure_100pD20B.xsd (95%) rename validator/src/main/resources/schema/{ox09 => OX_10}/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_ISO_ISO3AlphaCurrencyCode_2012-08-31.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_ActionCode_D20A.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DeliveryTermsCode_2010.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DeliveryTermsFunctionCode_D20A.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DocumentNameCode_D20A.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DocumentStatusCode_D20A.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_MessageFunctionCode_D20A.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_QualifiedDataType_128.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_128.xsd (99%) rename validator/src/main/resources/schema/{ox09 => OX_10}/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_128.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_identifierlist_standard_ISO_ISOTwo-letterCountryCode_SecondEdition2006.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/comfort/SCRDMCCBDACIOMessageStructure_100pD20B.xsd (94%) rename validator/src/main/resources/schema/{ox09 => OX_10}/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_EDIFICAS-EU_AccountingAccountType_D11A.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_EN16931_AllowanceChargeReasonCode_D20A.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_ISO_ISO3AlphaCurrencyCode_2012-08-31.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_ActionCode_D20A.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_ContactFunctionCode_D20A.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DeliveryTermsCode_2010.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DeliveryTermsFunctionCode_D20A.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DocumentNameCode_D20A.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DocumentStatusCode_D20A.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DutyTaxFeeTypeCode_D20A.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DutyorTaxorFeeCategoryCode_D20A.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_MessageFunctionCode_D20A.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_PackageTypeCode_2006.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_PaymentMeansCode_D20A.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_ReferenceTypeCode_D20A.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_QualifiedDataType_128.xsd (95%) rename validator/src/main/resources/schema/{ox09 => OX_10}/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_128.xsd (99%) rename validator/src/main/resources/schema/{ox09 => OX_10}/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_128.xsd (97%) rename validator/src/main/resources/schema/{ox09 => OX_10}/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_identifierlist_standard_ISO_ISOTwo-letterCountryCode_SecondEdition2006.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/extended/SCRDMCCBDACIOMessageStructure_100pD20B.xsd (96%) rename validator/src/main/resources/schema/{ox09 => OX_10}/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_EDIFICAS-EU_AccountingAccountType_D11A.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_EN16931_AllowanceChargeReasonCode_D20A.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_ISO_ISO3AlphaCurrencyCode_2012-08-31.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_ActionCode_D20A.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_ContactFunctionCode_D20A.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DeliveryTermsCode_2010.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DeliveryTermsFunctionCode_D20A.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DocumentNameCode_D20A.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DocumentStatusCode_D20A.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DutyTaxFeeTypeCode_D20A.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DutyorTaxorFeeCategoryCode_D20A.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_EventTimeReferenceCode_D20A.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_MessageFunctionCode_D20A.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_PackageTypeCode_2006.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_PaymentMeansCode_D20A.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_ReferenceTypeCode_D20A.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_TimePointFormatCode_D19B.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_QualifiedDataType_128.xsd (96%) rename validator/src/main/resources/schema/{ox09 => OX_10}/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_128.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_128.xsd (100%) rename validator/src/main/resources/schema/{ox09 => OX_10}/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_identifierlist_standard_ISO_ISOTwo-letterCountryCode_SecondEdition2006.xsd (100%) create mode 100644 validator/src/main/resources/schema/UBL_21/common/CCTS_CCT_SchemaModule-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/common/UBL-CommonAggregateComponents-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/common/UBL-CommonBasicComponents-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/common/UBL-CommonExtensionComponents-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/common/UBL-CommonSignatureComponents-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/common/UBL-CoreComponentParameters-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/common/UBL-ExtensionContentDataType-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/common/UBL-QualifiedDataTypes-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/common/UBL-SignatureAggregateComponents-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/common/UBL-SignatureBasicComponents-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/common/UBL-UnqualifiedDataTypes-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/common/UBL-XAdESv132-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/common/UBL-XAdESv141-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/common/UBL-xmldsig-core-schema-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-ApplicationResponse-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-AttachedDocument-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-AwardedNotification-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-BillOfLading-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-CallForTenders-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-Catalogue-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-CatalogueDeletion-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-CatalogueItemSpecificationUpdate-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-CataloguePricingUpdate-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-CatalogueRequest-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-CertificateOfOrigin-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-ContractAwardNotice-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-ContractNotice-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-CreditNote-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-DebitNote-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-DespatchAdvice-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-DocumentStatus-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-DocumentStatusRequest-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-ExceptionCriteria-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-ExceptionNotification-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-Forecast-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-ForecastRevision-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-ForwardingInstructions-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-FreightInvoice-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-FulfilmentCancellation-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-GoodsItemItinerary-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-GuaranteeCertificate-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-InstructionForReturns-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-InventoryReport-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-Invoice-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-ItemInformationRequest-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-Order-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-OrderCancellation-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-OrderChange-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-OrderResponse-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-OrderResponseSimple-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-PackingList-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-PriorInformationNotice-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-ProductActivity-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-Quotation-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-ReceiptAdvice-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-Reminder-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-RemittanceAdvice-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-RequestForQuotation-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-RetailEvent-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-SelfBilledCreditNote-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-SelfBilledInvoice-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-Statement-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-StockAvailabilityReport-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-Tender-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-TenderReceipt-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-TendererQualification-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-TendererQualificationResponse-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-TradeItemLocationProfile-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-TransportExecutionPlan-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-TransportExecutionPlanRequest-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-TransportProgressStatus-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-TransportProgressStatusRequest-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-TransportServiceDescription-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-TransportServiceDescriptionRequest-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-TransportationStatus-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-TransportationStatusRequest-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-UnawardedNotification-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-UtilityStatement-2.1.xsd create mode 100644 validator/src/main/resources/schema/UBL_21/maindoc/UBL-Waybill-2.1.xsd rename validator/src/main/resources/schema/{zf1 => ZF_10}/ZUGFeRD1p0.xsd (100%) rename validator/src/main/resources/schema/{zf1 => ZF_10}/ZUGFeRD1p0_urn_un_unece_uncefact_data_standard_QualifiedDataType_12.xsd (100%) rename validator/src/main/resources/schema/{zf1 => ZF_10}/ZUGFeRD1p0_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_12.xsd (100%) rename validator/src/main/resources/schema/{zf1 => ZF_10}/ZUGFeRD1p0_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_15.xsd (100%) rename validator/src/main/resources/schema/{zf2 => ZF_211}/BASIC-WL/FACTUR-X_BASIC-WL.xsd (98%) rename validator/src/main/resources/schema/{zf2 => ZF_211}/BASIC-WL/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd (97%) rename validator/src/main/resources/schema/{zf2 => ZF_211}/BASIC-WL/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd (98%) rename validator/src/main/resources/schema/{zf2 => ZF_211}/BASIC-WL/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd (97%) rename validator/src/main/resources/schema/{zf2 => ZF_211}/BASIC/FACTUR-X_BASIC.xsd (98%) rename validator/src/main/resources/schema/{zf2 => ZF_211}/BASIC/FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd (97%) rename validator/src/main/resources/schema/{zf2 => ZF_211}/BASIC/FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd (98%) rename validator/src/main/resources/schema/{zf2 => ZF_211}/BASIC/FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd (97%) rename validator/src/main/resources/schema/{zf2 => ZF_211}/EN16931/FACTUR-X_EN16931.xsd (98%) rename validator/src/main/resources/schema/{zf2 => ZF_211}/EN16931/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd (97%) rename validator/src/main/resources/schema/{zf2 => ZF_211}/EN16931/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd (98%) rename validator/src/main/resources/schema/{zf2 => ZF_211}/EN16931/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd (97%) rename validator/src/main/resources/schema/{zf2 => ZF_211}/EXTENDED/FACTUR-X_EXTENDED.xsd (98%) rename validator/src/main/resources/schema/{zf2 => ZF_211}/EXTENDED/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd (97%) rename validator/src/main/resources/schema/{zf2 => ZF_211}/EXTENDED/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd (98%) rename validator/src/main/resources/schema/{zf2 => ZF_211}/EXTENDED/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd (97%) rename validator/src/main/resources/schema/{zf2 => ZF_211}/MINIMUM/FACTUR-X_MINIMUM.xsd (98%) rename validator/src/main/resources/schema/{zf2 => ZF_211}/MINIMUM/FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd (97%) rename validator/src/main/resources/schema/{zf2 => ZF_211}/MINIMUM/FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd (98%) rename validator/src/main/resources/schema/{zf2 => ZF_211}/MINIMUM/FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd (97%) delete mode 100644 validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_AllowanceChargeReasonCode_D20A.xsd delete mode 100644 validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_AllowanceChargeReasonCode_D20A.xsd create mode 100644 validator/src/main/resources/schematron/OX_10/basic/SCRDMCCBDACIOMessageStructure_100pD20B_BASIC.sch create mode 100644 validator/src/main/resources/schematron/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_COMFORT.sch create mode 100644 validator/src/main/resources/schematron/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_EXTENDED.sch create mode 100644 validator/src/main/resources/xslt/OX_10/basic/SCRDMCCBDACIOMessageStructure_100pD20B_BASIC-compiled.xsl create mode 100644 validator/src/main/resources/xslt/OX_10/basic/SCRDMCCBDACIOMessageStructure_100pD20B_BASIC.xslt create mode 100644 validator/src/main/resources/xslt/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_COMFORT-compiled.xsl create mode 100644 validator/src/main/resources/xslt/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_COMFORT.xslt create mode 100644 validator/src/main/resources/xslt/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_EXTENDED-compiled.xsl create mode 100644 validator/src/main/resources/xslt/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_EXTENDED.xslt create mode 100644 validator/src/main/resources/xslt/UBL_21/EN16931-UBL-validation.xsl create mode 100644 validator/src/test/resources/ORDER-X_EX01_ORDER_FULL_DATA-COMFORT.pdf create mode 100644 validator/src/test/resources/xrechnung-ubl.xml diff --git a/History.md b/History.md index 9a72120c..b590eee3 100644 --- a/History.md +++ b/History.md @@ -2,6 +2,8 @@ - allow 1.2 and 2.0 in RDF versions for XRechnung 2.0 Referenzprofil - also use shortcut "t" for extended in zf1 #230 - falscher Text in Exception #237 +- pr 240 ignore input pdf errors when specfied on command line https://github.com/ZUGFeRD/mustangproject/pull/240 +- pr 241 use sepa transfer instead of bank transfer https://github.com/ZUGFeRD/mustangproject/pull/241 2.1.1 ======= diff --git a/validator/src/main/java/org/mustangproject/validator/PDFValidator.java b/validator/src/main/java/org/mustangproject/validator/PDFValidator.java index 37f506c5..22877660 100644 --- a/validator/src/main/java/org/mustangproject/validator/PDFValidator.java +++ b/validator/src/main/java/org/mustangproject/validator/PDFValidator.java @@ -199,7 +199,7 @@ public class PDFValidator extends Validator { boolean documentTypeValid=false; for (int i = 0; i < nodes.getLength(); i++) { - if (nodes.item(i).getTextContent().equals("INVOICE")) { + if (nodes.item(i).getTextContent().equals("INVOICE")||nodes.item(i).getTextContent().equals("ORDER")) { documentTypeValid=true; } } @@ -220,7 +220,7 @@ public class PDFValidator extends Validator { } boolean documentFilenameValid=false; for (int i = 0; i < nodes.getLength(); i++) { - String[] valueArray = { "factur-x.xml", "ZUGFeRD-invoice.xml", "zugferd-invoice.xml", "xrechnung.xml" }; + String[] valueArray = { "factur-x.xml", "ZUGFeRD-invoice.xml", "zugferd-invoice.xml", "xrechnung.xml" , "order-x.xml" }; if (stringArrayContains(valueArray, nodes.item(i).getTextContent())) { documentFilenameValid=true; } diff --git a/validator/src/main/java/org/mustangproject/validator/ValidationContext.java b/validator/src/main/java/org/mustangproject/validator/ValidationContext.java index 95e1267c..ab9fd8ae 100644 --- a/validator/src/main/java/org/mustangproject/validator/ValidationContext.java +++ b/validator/src/main/java/org/mustangproject/validator/ValidationContext.java @@ -8,7 +8,8 @@ import org.slf4j.Logger; public class ValidationContext { protected Vector results; protected String customXML = ""; - private String version = null; + private String format = "CII";// CII or UBL + private String generation = null; // generation 1 is ZF1, gen 2 is ZF2, XRechnung, Factur-X or UBL private String profile = null; private String signature = null; private boolean isValid = true; @@ -58,8 +59,12 @@ public class ValidationContext { return customXML; } - public ValidationContext setVersion(String version) { - this.version = version; + public void setFormat(String format) { + this.format=format; + } + + public ValidationContext setGeneration(String version) { + this.generation = version; return this; } @@ -73,8 +78,8 @@ public class ValidationContext { return this; } - public String getVersion() { - return version; + public String getGeneration() { + return generation; } public String getProfile() { @@ -93,7 +98,7 @@ public class ValidationContext { results.clear(); isValid = true; clearCustomXML(); - version = null; + generation = null; profile = null; signature = null; @@ -143,4 +148,8 @@ public class ValidationContext { return filename; } } + + public String getFormat() { + return format; + } } diff --git a/validator/src/main/java/org/mustangproject/validator/XMLValidator.java b/validator/src/main/java/org/mustangproject/validator/XMLValidator.java index 704ed669..fb852ad7 100644 --- a/validator/src/main/java/org/mustangproject/validator/XMLValidator.java +++ b/validator/src/main/java/org/mustangproject/validator/XMLValidator.java @@ -7,11 +7,8 @@ import java.nio.file.Paths; import java.util.Calendar; import java.util.List; -import javax.print.attribute.standard.Severity; import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; -import javax.xml.transform.*; -import javax.xml.transform.stream.StreamResult; import javax.xml.transform.stream.StreamSource; import javax.xml.xpath.XPath; import javax.xml.xpath.XPathConstants; @@ -187,16 +184,16 @@ public class XMLValidator extends Validator { // urn:cen.eu:en16931:2017 // urn:cen.eu:en16931:2017:compliant:factur-x.eu:1p0:basic if (root.getNodeName().equalsIgnoreCase("rsm:SCRDMCCBDACIOMessageStructure")) { - context.setVersion("1"); + context.setGeneration("1"); isOrderX=true; isBasic = context.getProfile().contains("basic"); isEN16931 = context.getProfile().contains("comfort"); isExtended = context.getProfile().contains("extended"); - validateSchema(zfXML.getBytes(StandardCharsets.UTF_8), "ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B.xsd", 99, EPart.ox); + validateSchema(zfXML.getBytes(StandardCharsets.UTF_8), "OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B.xsd", 99, EPart.ox); + xsltFilename = "/xslt/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_COMFORT.xslt"; - } - if (root.getNodeName().equalsIgnoreCase("rsm:CrossIndustryInvoice")) { // ZUGFeRD 2.0 or Factur-X - context.setVersion("2"); + } else if (root.getNodeName().equalsIgnoreCase("rsm:CrossIndustryInvoice")) { // ZUGFeRD 2.0 or Factur-X + context.setGeneration("2"); isMiniumum = context.getProfile().contains("minimum"); isBasic = context.getProfile().contains("basic"); @@ -215,27 +212,27 @@ public class XMLValidator extends Validator { } if (isMiniumum) { LOGGER.debug("is Minimum"); - validateSchema(zfXML.getBytes(StandardCharsets.UTF_8), "zf2/MINIMUM/FACTUR-X_MINIMUM.xsd", 18, EPart.fx); + validateSchema(zfXML.getBytes(StandardCharsets.UTF_8), "ZF_211/MINIMUM/FACTUR-X_MINIMUM.xsd", 18, EPart.fx); xsltFilename = "/xslt/ZF_211/FACTUR-X_MINIMUM.xslt"; } else if (isBasicWithoutLines) { LOGGER.debug("is Basic/WL"); - validateSchema(zfXML.getBytes(StandardCharsets.UTF_8), "zf2/BASIC-WL/FACTUR-X_BASIC-WL.xsd", 18, EPart.fx); + validateSchema(zfXML.getBytes(StandardCharsets.UTF_8), "ZF_211/BASIC-WL/FACTUR-X_BASIC-WL.xsd", 18, EPart.fx); xsltFilename = "/xslt/ZF_211/FACTUR-X_BASIC-WL.xslt"; } else if (isBasic) { LOGGER.debug("is Basic"); - validateSchema(zfXML.getBytes(StandardCharsets.UTF_8), "zf2/BASIC/FACTUR-X_BASIC.xsd", 18, EPart.fx); + validateSchema(zfXML.getBytes(StandardCharsets.UTF_8), "ZF_211/BASIC/FACTUR-X_BASIC.xsd", 18, EPart.fx); xsltFilename = "/xslt/ZF_211/FACTUR-X_BASIC.xslt"; } else if (isEN16931) { LOGGER.debug("is EN16931"); - validateSchema(zfXML.getBytes(StandardCharsets.UTF_8), "zf2/EN16931/FACTUR-X_EN16931.xsd", 18, EPart.fx); + validateSchema(zfXML.getBytes(StandardCharsets.UTF_8), "ZF_211/EN16931/FACTUR-X_EN16931.xsd", 18, EPart.fx); xsltFilename = "/xslt/ZF_211/FACTUR-X_EN16931.xslt"; } else if (isExtended) { LOGGER.debug("is EXTENDED"); - validateSchema(zfXML.getBytes(StandardCharsets.UTF_8), "zf2/EXTENDED/FACTUR-X_EXTENDED.xsd", 18, EPart.fx); + validateSchema(zfXML.getBytes(StandardCharsets.UTF_8), "ZF_211/EXTENDED/FACTUR-X_EXTENDED.xsd", 18, EPart.fx); xsltFilename = "/xslt/ZF_211/FACTUR-X_EXTENDED.xslt"; } else if (isXRechnung) { LOGGER.debug("is XRechnung"); - validateSchema(zfXML.getBytes(StandardCharsets.UTF_8), "zf2/EXTENDED/FACTUR-X_EXTENDED.xsd", 18, EPart.fx); + validateSchema(zfXML.getBytes(StandardCharsets.UTF_8), "ZF_211/EXTENDED/FACTUR-X_EXTENDED.xsd", 18, EPart.fx); xsltFilename = "/xslt/ZF_211/FACTUR-X_EN16931.xslt"; XrechnungSeverity = ESeverity.error; } /* @@ -250,8 +247,16 @@ public class XMLValidator extends Validator { // saxon java net.sf.saxon.Transform -o tcdl2.0.tsdtf.sch.tmp.xsl -s // tcdl2.0.tsdtf.sch iso_svrl.xsl + } else if (root.getNodeName().equalsIgnoreCase("Invoice")) { + context.setGeneration("2"); + context.setFormat("UBL"); + // UBL + LOGGER.debug("UBL"); + validateSchema(zfXML.getBytes(StandardCharsets.UTF_8), "UBL_21/maindoc/UBL-Invoice-2.1.xsd", 18, EPart.fx); + xsltFilename = "/xslt/UBL_21/EN16931-UBL-validation.xsl"; + XrechnungSeverity = ESeverity.error; } else { // ZUGFeRD 1.0 - context.setVersion("1"); + context.setGeneration("1"); // if ((!matchesURI(context.getProfile(), "urn:ferd:CrossIndustryDocument:invoice:1p0:basic")) && (!matchesURI(context.getProfile(), "urn:ferd:CrossIndustryDocument:invoice:1p0:comfort")) @@ -259,44 +264,62 @@ public class XMLValidator extends Validator { context.addResultItem(new ValidationResultItem(ESeverity.error, "Unsupported profile type") .setSection(25).setPart(EPart.fx)); } - validateSchema(zfXML.getBytes(StandardCharsets.UTF_8), "zf1/ZUGFeRD1p0.xsd", 18, EPart.fx); + validateSchema(zfXML.getBytes(StandardCharsets.UTF_8), "ZF_10/ZUGFeRD1p0.xsd", 18, EPart.fx); xsltFilename = "/xslt/ZUGFeRD_1p0.xslt"; } - if (context.getVersion().equals("2")) { - if ((!matchesURI(context.getProfile(), "urn:factur-x.eu:1p0:minimum")) - && (!matchesURI(context.getProfile(), "urn:zugferd.de:2p0:minimum")) - && (!matchesURI(context.getProfile(), "urn:factur-x.eu:1p0:basicwl")) - && (!matchesURI(context.getProfile(), "urn:zugferd.de:2p0:basicwl")) - && (!matchesURI(context.getProfile(), "urn:cen.eu:en16931:2017#compliant#urn:factur-x.eu:1p0:basic")) - && (!matchesURI(context.getProfile(), "urn:cen.eu:en16931:2017#compliant#urn:zugferd.de:2p0:basic")) - && (!matchesURI(context.getProfile(), "urn:cen.eu:en16931:2017")) - && (!matchesURI(context.getProfile(), "urn:cen.eu:en16931:2017#conformant#urn:factur-x.eu:1p0:extended")) - && (!matchesURI(context.getProfile(), "urn:cen.eu:en16931:2017#conformant#urn:zugferd.de:2p0:extended"))) { - context.addResultItem( - new ValidationResultItem(ESeverity.error, "Unsupported profile type " + context.getProfile()) + if (context.getFormat().equals("CII")) { + + if (context.getGeneration().equals("2")) { + if ((!matchesURI(context.getProfile(), "urn:factur-x.eu:1p0:minimum")) + && (!matchesURI(context.getProfile(), "urn:zugferd.de:2p0:minimum")) + && (!matchesURI(context.getProfile(), "urn:factur-x.eu:1p0:basicwl")) + && (!matchesURI(context.getProfile(), "urn:zugferd.de:2p0:basicwl")) + && (!matchesURI(context.getProfile(), "urn:cen.eu:en16931:2017#compliant#urn:factur-x.eu:1p0:basic")) + && (!matchesURI(context.getProfile(), "urn:cen.eu:en16931:2017#compliant#urn:zugferd.de:2p0:basic")) + && (!matchesURI(context.getProfile(), "urn:cen.eu:en16931:2017")) + && (!matchesURI(context.getProfile(), "urn:cen.eu:en16931:2017#conformant#urn:factur-x.eu:1p0:extended")) + && (!matchesURI(context.getProfile(), "urn:cen.eu:en16931:2017#conformant#urn:zugferd.de:2p0:extended"))) { + context.addResultItem( + new ValidationResultItem(ESeverity.error, "Unsupported profile type " + context.getProfile()) + .setSection(25).setPart(EPart.fx)); + + } + } else /** v1 */ { + if (isOrderX) { + //order-x 1.0 + if ((!matchesURI(context.getProfile(), "urn:order-x.eu:1p0:basic")) + && (!matchesURI(context.getProfile(), "urn:order-x.eu:1p0:comfort")) + && (!matchesURI(context.getProfile(), "urn:order-x.eu:1p0:extended"))) { + //zf 1.0 + context.addResultItem(new ValidationResultItem(ESeverity.error, "Unsupported profile type") .setSection(25).setPart(EPart.fx)); - } - } else /** v1 */ {//urn:ferd:invoice:rc:comfort - if ((!matchesURI(context.getProfile(), "urn:ferd:CrossIndustryDocument:invoice:1p0:basic")) - && (!matchesURI(context.getProfile(), "urn:ferd:CrossIndustryDocument:invoice:1p0:comfort")) - && (!matchesURI(context.getProfile(), "urn:ferd:CrossIndustryDocument:invoice:1p0:extended"))) { - context.addResultItem(new ValidationResultItem(ESeverity.error, "Unsupported profile type") - .setSection(25).setPart(EPart.fx)); + } + } else + if ((!matchesURI(context.getProfile(), "urn:ferd:CrossIndustryDocument:invoice:1p0:basic")) + && (!matchesURI(context.getProfile(), "urn:ferd:CrossIndustryDocument:invoice:1p0:comfort")) + && (!matchesURI(context.getProfile(), "urn:ferd:CrossIndustryDocument:invoice:1p0:extended"))) { + //zf 1.0 + context.addResultItem(new ValidationResultItem(ESeverity.error, "Unsupported profile type") + .setSection(25).setPart(EPart.fx)); + } } } // main schematron validation validateSchematron(zfXML, xsltFilename, 4, ESeverity.error); - if (context.getVersion().equals("2") - && (isEN16931 || isXRechnung)) { - //additionally validate against CEN - validateSchematron(zfXML, "/xslt/cii16931schematron/EN16931-CII-validation.xslt", 24, ESeverity.error); - if (!disableNotices || XrechnungSeverity != ESeverity.notice) { - validateXR(zfXML, XrechnungSeverity); + if (context.getFormat().equals("CII")) { + + if (context.getGeneration().equals("2") + && (isEN16931 || isXRechnung)) { + //additionally validate against CEN + validateSchematron(zfXML, "/xslt/cii16931schematron/EN16931-CII-validation.xslt", 24, ESeverity.error); + if (!disableNotices || XrechnungSeverity != ESeverity.notice) { + validateXR(zfXML, XrechnungSeverity); + } } } @@ -316,7 +339,7 @@ public class XMLValidator extends Validator { } long endTime = Calendar.getInstance().getTimeInMillis(); - context.addCustomXML("" + ((context.getVersion() != null) ? context.getVersion() : "invalid") + context.addCustomXML("" + ((context.getGeneration() != null) ? context.getGeneration() : "invalid") + "" + ((context.getProfile() != null) ? context.getProfile() : "invalid") + "" + firedRules + "" + failedRules + "" + "" + (endTime - startXMLTime) + ""); diff --git a/validator/src/main/java/org/mustangproject/validator/ZUGFeRDValidator.java b/validator/src/main/java/org/mustangproject/validator/ZUGFeRDValidator.java index b0fcbdef..6b1b166c 100644 --- a/validator/src/main/java/org/mustangproject/validator/ZUGFeRDValidator.java +++ b/validator/src/main/java/org/mustangproject/validator/ZUGFeRDValidator.java @@ -26,7 +26,6 @@ import org.slf4j.LoggerFactory; import org.w3c.dom.Document; import org.w3c.dom.Element; import org.xml.sax.InputSource; -import org.xml.sax.SAXParseException; //abstract class public class ZUGFeRDValidator { @@ -253,7 +252,7 @@ public class ZUGFeRDValidator { LOGGER.info("Parsed PDF:" + (pdfValidity ? "valid" : "invalid") + " XML:" + (xmlValidity ? "valid" : "invalid") + " Signature:" + Signature + " Checksum:" + sha1Checksum + " Profile:" + context.getProfile() - + " Version:" + context.getVersion() + " Took:" + duration + "ms Errors:["+context.getCSVResult()+"] "+toBeAppended); + + " Version:" + context.getGeneration() + " Took:" + duration + "ms Errors:["+context.getCSVResult()+"] "+toBeAppended); wasCompletelyValid = ((pdfValidity) && (xmlValidity)); return sw.toString(); } diff --git a/validator/src/main/resources/schema/ox09/basic/SCRDMCCBDACIOMessageStructure_100pD20B.xsd b/validator/src/main/resources/schema/OX_10/basic/SCRDMCCBDACIOMessageStructure_100pD20B.xsd similarity index 95% rename from validator/src/main/resources/schema/ox09/basic/SCRDMCCBDACIOMessageStructure_100pD20B.xsd rename to validator/src/main/resources/schema/OX_10/basic/SCRDMCCBDACIOMessageStructure_100pD20B.xsd index e856ec88..0563675b 100644 --- a/validator/src/main/resources/schema/ox09/basic/SCRDMCCBDACIOMessageStructure_100pD20B.xsd +++ b/validator/src/main/resources/schema/OX_10/basic/SCRDMCCBDACIOMessageStructure_100pD20B.xsd @@ -13,7 +13,7 @@ - Order-X_Basic Message Structure + Order-X Basic diff --git a/validator/src/main/resources/schema/ox09/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_ISO_ISO3AlphaCurrencyCode_2012-08-31.xsd b/validator/src/main/resources/schema/OX_10/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_ISO_ISO3AlphaCurrencyCode_2012-08-31.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_ISO_ISO3AlphaCurrencyCode_2012-08-31.xsd rename to validator/src/main/resources/schema/OX_10/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_ISO_ISO3AlphaCurrencyCode_2012-08-31.xsd diff --git a/validator/src/main/resources/schema/ox09/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_ActionCode_D20A.xsd b/validator/src/main/resources/schema/OX_10/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_ActionCode_D20A.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_ActionCode_D20A.xsd rename to validator/src/main/resources/schema/OX_10/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_ActionCode_D20A.xsd diff --git a/validator/src/main/resources/schema/ox09/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DeliveryTermsCode_2010.xsd b/validator/src/main/resources/schema/OX_10/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DeliveryTermsCode_2010.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DeliveryTermsCode_2010.xsd rename to validator/src/main/resources/schema/OX_10/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DeliveryTermsCode_2010.xsd diff --git a/validator/src/main/resources/schema/ox09/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DeliveryTermsFunctionCode_D20A.xsd b/validator/src/main/resources/schema/OX_10/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DeliveryTermsFunctionCode_D20A.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DeliveryTermsFunctionCode_D20A.xsd rename to validator/src/main/resources/schema/OX_10/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DeliveryTermsFunctionCode_D20A.xsd diff --git a/validator/src/main/resources/schema/ox09/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DocumentNameCode_D20A.xsd b/validator/src/main/resources/schema/OX_10/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DocumentNameCode_D20A.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DocumentNameCode_D20A.xsd rename to validator/src/main/resources/schema/OX_10/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DocumentNameCode_D20A.xsd diff --git a/validator/src/main/resources/schema/ox09/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DocumentStatusCode_D20A.xsd b/validator/src/main/resources/schema/OX_10/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DocumentStatusCode_D20A.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DocumentStatusCode_D20A.xsd rename to validator/src/main/resources/schema/OX_10/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DocumentStatusCode_D20A.xsd diff --git a/validator/src/main/resources/schema/ox09/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_MessageFunctionCode_D20A.xsd b/validator/src/main/resources/schema/OX_10/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_MessageFunctionCode_D20A.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_MessageFunctionCode_D20A.xsd rename to validator/src/main/resources/schema/OX_10/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_MessageFunctionCode_D20A.xsd diff --git a/validator/src/main/resources/schema/ox09/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_QualifiedDataType_128.xsd b/validator/src/main/resources/schema/OX_10/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_QualifiedDataType_128.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_QualifiedDataType_128.xsd rename to validator/src/main/resources/schema/OX_10/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_QualifiedDataType_128.xsd diff --git a/validator/src/main/resources/schema/ox09/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_128.xsd b/validator/src/main/resources/schema/OX_10/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_128.xsd similarity index 99% rename from validator/src/main/resources/schema/ox09/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_128.xsd rename to validator/src/main/resources/schema/OX_10/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_128.xsd index 7a3a721f..ce769a4a 100644 --- a/validator/src/main/resources/schema/ox09/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_128.xsd +++ b/validator/src/main/resources/schema/OX_10/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_128.xsd @@ -641,7 +641,7 @@ Trade Product - + Global ID diff --git a/validator/src/main/resources/schema/ox09/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_128.xsd b/validator/src/main/resources/schema/OX_10/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_128.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_128.xsd rename to validator/src/main/resources/schema/OX_10/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_128.xsd diff --git a/validator/src/main/resources/schema/ox09/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_identifierlist_standard_ISO_ISOTwo-letterCountryCode_SecondEdition2006.xsd b/validator/src/main/resources/schema/OX_10/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_identifierlist_standard_ISO_ISOTwo-letterCountryCode_SecondEdition2006.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_identifierlist_standard_ISO_ISOTwo-letterCountryCode_SecondEdition2006.xsd rename to validator/src/main/resources/schema/OX_10/basic/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_identifierlist_standard_ISO_ISOTwo-letterCountryCode_SecondEdition2006.xsd diff --git a/validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B.xsd b/validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B.xsd similarity index 94% rename from validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B.xsd rename to validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B.xsd index cf70d04c..1ed6d83d 100644 --- a/validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B.xsd +++ b/validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B.xsd @@ -13,7 +13,7 @@ - Order-X_Comfort Message Structure + Order-X Comfort diff --git a/validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_EDIFICAS-EU_AccountingAccountType_D11A.xsd b/validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_EDIFICAS-EU_AccountingAccountType_D11A.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_EDIFICAS-EU_AccountingAccountType_D11A.xsd rename to validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_EDIFICAS-EU_AccountingAccountType_D11A.xsd diff --git a/validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_EN16931_AllowanceChargeReasonCode_D20A.xsd b/validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_EN16931_AllowanceChargeReasonCode_D20A.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_EN16931_AllowanceChargeReasonCode_D20A.xsd rename to validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_EN16931_AllowanceChargeReasonCode_D20A.xsd diff --git a/validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_ISO_ISO3AlphaCurrencyCode_2012-08-31.xsd b/validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_ISO_ISO3AlphaCurrencyCode_2012-08-31.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_ISO_ISO3AlphaCurrencyCode_2012-08-31.xsd rename to validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_ISO_ISO3AlphaCurrencyCode_2012-08-31.xsd diff --git a/validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_ActionCode_D20A.xsd b/validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_ActionCode_D20A.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_ActionCode_D20A.xsd rename to validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_ActionCode_D20A.xsd diff --git a/validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_ContactFunctionCode_D20A.xsd b/validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_ContactFunctionCode_D20A.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_ContactFunctionCode_D20A.xsd rename to validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_ContactFunctionCode_D20A.xsd diff --git a/validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DeliveryTermsCode_2010.xsd b/validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DeliveryTermsCode_2010.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DeliveryTermsCode_2010.xsd rename to validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DeliveryTermsCode_2010.xsd diff --git a/validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DeliveryTermsFunctionCode_D20A.xsd b/validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DeliveryTermsFunctionCode_D20A.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DeliveryTermsFunctionCode_D20A.xsd rename to validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DeliveryTermsFunctionCode_D20A.xsd diff --git a/validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DocumentNameCode_D20A.xsd b/validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DocumentNameCode_D20A.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DocumentNameCode_D20A.xsd rename to validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DocumentNameCode_D20A.xsd diff --git a/validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DocumentStatusCode_D20A.xsd b/validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DocumentStatusCode_D20A.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DocumentStatusCode_D20A.xsd rename to validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DocumentStatusCode_D20A.xsd diff --git a/validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DutyTaxFeeTypeCode_D20A.xsd b/validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DutyTaxFeeTypeCode_D20A.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DutyTaxFeeTypeCode_D20A.xsd rename to validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DutyTaxFeeTypeCode_D20A.xsd diff --git a/validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DutyorTaxorFeeCategoryCode_D20A.xsd b/validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DutyorTaxorFeeCategoryCode_D20A.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DutyorTaxorFeeCategoryCode_D20A.xsd rename to validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DutyorTaxorFeeCategoryCode_D20A.xsd diff --git a/validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_MessageFunctionCode_D20A.xsd b/validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_MessageFunctionCode_D20A.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_MessageFunctionCode_D20A.xsd rename to validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_MessageFunctionCode_D20A.xsd diff --git a/validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_PackageTypeCode_2006.xsd b/validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_PackageTypeCode_2006.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_PackageTypeCode_2006.xsd rename to validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_PackageTypeCode_2006.xsd diff --git a/validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_PaymentMeansCode_D20A.xsd b/validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_PaymentMeansCode_D20A.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_PaymentMeansCode_D20A.xsd rename to validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_PaymentMeansCode_D20A.xsd diff --git a/validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_ReferenceTypeCode_D20A.xsd b/validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_ReferenceTypeCode_D20A.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_ReferenceTypeCode_D20A.xsd rename to validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_ReferenceTypeCode_D20A.xsd diff --git a/validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_QualifiedDataType_128.xsd b/validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_QualifiedDataType_128.xsd similarity index 95% rename from validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_QualifiedDataType_128.xsd rename to validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_QualifiedDataType_128.xsd index 67fcfc47..c8b3979f 100644 --- a/validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_QualifiedDataType_128.xsd +++ b/validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_QualifiedDataType_128.xsd @@ -1,8 +1,4 @@ - diff --git a/validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_128.xsd b/validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_128.xsd similarity index 99% rename from validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_128.xsd rename to validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_128.xsd index 64111e86..0fb4afc2 100644 --- a/validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_128.xsd +++ b/validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_128.xsd @@ -457,11 +457,6 @@ Description - - - Value Measure - - Value Text @@ -1016,7 +1011,7 @@ Trade Product - + Global ID diff --git a/validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_128.xsd b/validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_128.xsd similarity index 97% rename from validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_128.xsd rename to validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_128.xsd index 3d2f109f..d391e2b4 100644 --- a/validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_128.xsd +++ b/validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_128.xsd @@ -63,7 +63,7 @@ - + diff --git a/validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_identifierlist_standard_ISO_ISOTwo-letterCountryCode_SecondEdition2006.xsd b/validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_identifierlist_standard_ISO_ISOTwo-letterCountryCode_SecondEdition2006.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_identifierlist_standard_ISO_ISOTwo-letterCountryCode_SecondEdition2006.xsd rename to validator/src/main/resources/schema/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_identifierlist_standard_ISO_ISOTwo-letterCountryCode_SecondEdition2006.xsd diff --git a/validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B.xsd b/validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B.xsd similarity index 96% rename from validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B.xsd rename to validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B.xsd index fbef8df9..5a58563d 100644 --- a/validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B.xsd +++ b/validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B.xsd @@ -13,7 +13,7 @@ - Order-X_Extended + Order-X Extended diff --git a/validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_EDIFICAS-EU_AccountingAccountType_D11A.xsd b/validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_EDIFICAS-EU_AccountingAccountType_D11A.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_EDIFICAS-EU_AccountingAccountType_D11A.xsd rename to validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_EDIFICAS-EU_AccountingAccountType_D11A.xsd diff --git a/validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_EN16931_AllowanceChargeReasonCode_D20A.xsd b/validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_EN16931_AllowanceChargeReasonCode_D20A.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_EN16931_AllowanceChargeReasonCode_D20A.xsd rename to validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_EN16931_AllowanceChargeReasonCode_D20A.xsd diff --git a/validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_ISO_ISO3AlphaCurrencyCode_2012-08-31.xsd b/validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_ISO_ISO3AlphaCurrencyCode_2012-08-31.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_ISO_ISO3AlphaCurrencyCode_2012-08-31.xsd rename to validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_ISO_ISO3AlphaCurrencyCode_2012-08-31.xsd diff --git a/validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_ActionCode_D20A.xsd b/validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_ActionCode_D20A.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_ActionCode_D20A.xsd rename to validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_ActionCode_D20A.xsd diff --git a/validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_ContactFunctionCode_D20A.xsd b/validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_ContactFunctionCode_D20A.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_ContactFunctionCode_D20A.xsd rename to validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_ContactFunctionCode_D20A.xsd diff --git a/validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DeliveryTermsCode_2010.xsd b/validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DeliveryTermsCode_2010.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DeliveryTermsCode_2010.xsd rename to validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DeliveryTermsCode_2010.xsd diff --git a/validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DeliveryTermsFunctionCode_D20A.xsd b/validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DeliveryTermsFunctionCode_D20A.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DeliveryTermsFunctionCode_D20A.xsd rename to validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DeliveryTermsFunctionCode_D20A.xsd diff --git a/validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DocumentNameCode_D20A.xsd b/validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DocumentNameCode_D20A.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DocumentNameCode_D20A.xsd rename to validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DocumentNameCode_D20A.xsd diff --git a/validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DocumentStatusCode_D20A.xsd b/validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DocumentStatusCode_D20A.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DocumentStatusCode_D20A.xsd rename to validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DocumentStatusCode_D20A.xsd diff --git a/validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DutyTaxFeeTypeCode_D20A.xsd b/validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DutyTaxFeeTypeCode_D20A.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DutyTaxFeeTypeCode_D20A.xsd rename to validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DutyTaxFeeTypeCode_D20A.xsd diff --git a/validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DutyorTaxorFeeCategoryCode_D20A.xsd b/validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DutyorTaxorFeeCategoryCode_D20A.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DutyorTaxorFeeCategoryCode_D20A.xsd rename to validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_DutyorTaxorFeeCategoryCode_D20A.xsd diff --git a/validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_EventTimeReferenceCode_D20A.xsd b/validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_EventTimeReferenceCode_D20A.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_EventTimeReferenceCode_D20A.xsd rename to validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_EventTimeReferenceCode_D20A.xsd diff --git a/validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_MessageFunctionCode_D20A.xsd b/validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_MessageFunctionCode_D20A.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_MessageFunctionCode_D20A.xsd rename to validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_MessageFunctionCode_D20A.xsd diff --git a/validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_PackageTypeCode_2006.xsd b/validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_PackageTypeCode_2006.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_PackageTypeCode_2006.xsd rename to validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_PackageTypeCode_2006.xsd diff --git a/validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_PaymentMeansCode_D20A.xsd b/validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_PaymentMeansCode_D20A.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_PaymentMeansCode_D20A.xsd rename to validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_PaymentMeansCode_D20A.xsd diff --git a/validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_ReferenceTypeCode_D20A.xsd b/validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_ReferenceTypeCode_D20A.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_ReferenceTypeCode_D20A.xsd rename to validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_ReferenceTypeCode_D20A.xsd diff --git a/validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_TimePointFormatCode_D19B.xsd b/validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_TimePointFormatCode_D19B.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_TimePointFormatCode_D19B.xsd rename to validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_TimePointFormatCode_D19B.xsd diff --git a/validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_QualifiedDataType_128.xsd b/validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_QualifiedDataType_128.xsd similarity index 96% rename from validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_QualifiedDataType_128.xsd rename to validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_QualifiedDataType_128.xsd index 362ab17d..49eb0ce2 100644 --- a/validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_QualifiedDataType_128.xsd +++ b/validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_QualifiedDataType_128.xsd @@ -1,8 +1,4 @@ - diff --git a/validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_128.xsd b/validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_128.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_128.xsd rename to validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_128.xsd diff --git a/validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_128.xsd b/validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_128.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_128.xsd rename to validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_128.xsd diff --git a/validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_identifierlist_standard_ISO_ISOTwo-letterCountryCode_SecondEdition2006.xsd b/validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_identifierlist_standard_ISO_ISOTwo-letterCountryCode_SecondEdition2006.xsd similarity index 100% rename from validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_identifierlist_standard_ISO_ISOTwo-letterCountryCode_SecondEdition2006.xsd rename to validator/src/main/resources/schema/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_identifierlist_standard_ISO_ISOTwo-letterCountryCode_SecondEdition2006.xsd diff --git a/validator/src/main/resources/schema/UBL_21/common/CCTS_CCT_SchemaModule-2.1.xsd b/validator/src/main/resources/schema/UBL_21/common/CCTS_CCT_SchemaModule-2.1.xsd new file mode 100644 index 00000000..5be7ba1d --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/common/CCTS_CCT_SchemaModule-2.1.xsd @@ -0,0 +1,731 @@ + + + + + + + + + + + + + + UNDT000001 + CCT + Amount. Type + 1.0 + A number of monetary units specified in a currency where the unit of the currency is explicit or implied. + Amount + decimal + + + + + + + + UNDT000001-SC2 + SC + Amount Currency. Identifier + The currency of the amount. + Amount Currency + Identification + Identifier + string + Reference UNECE Rec 9, using 3-letter alphabetic codes. + + + + + + + UNDT000001-SC3 + SC + Amount Currency. Code List Version. Identifier + The VersionID of the UN/ECE Rec9 code list. + Amount Currency + Code List Version + Identifier + string + + + + + + + + + + + + UNDT000002 + CCT + Binary Object. Type + 1.0 + A set of finite-length sequences of binary octets. + Binary Object + binary + + + + + + + + UNDT000002-SC2 + SC + Binary Object. Format. Text + The format of the binary content. + Binary Object + Format + Text + string + + + + + + + UNDT000002-SC3 + SC + Binary Object. Mime. Code + The mime type of the binary object. + Binary Object + Mime + Code + string + + + + + + + UNDT000002-SC4 + SC + Binary Object. Encoding. Code + Specifies the decoding algorithm of the binary object. + Binary Object + Encoding + Code + string + + + + + + + UNDT000002-SC5 + SC + Binary Object. Character Set. Code + The character set of the binary object if the mime type is text. + Binary Object + Character Set + Code + string + + + + + + + UNDT000002-SC6 + SC + Binary Object. Uniform Resource. Identifier + The Uniform Resource Identifier that identifies where the binary object is located. + Binary Object + Uniform Resource Identifier + Identifier + string + + + + + + + UNDT000002-SC7 + SC + Binary Object. Filename.Text + The filename of the binary object. + Binary Object + Filename + Text + string + + + + + + + + + + + + UNDT000007 + CCT + Code. Type + 1.0 + A character string (letters, figures, or symbols) that for brevity and/or languange independence may be used to represent or replace a definitive value or text of an attribute together with relevant supplementary information. + Code + string + Should not be used if the character string identifies an instance of an object class or an object in the real world, in which case the Identifier. Type should be used. + + + + + + + + UNDT000007-SC2 + SC + Code List. Identifier + The identification of a list of codes. + Code List + Identification + Identifier + string + + + + + + + UNDT000007-SC3 + SC + Code List. Agency. Identifier + An agency that maintains one or more lists of codes. + Code List + Agency + Identifier + string + Defaults to the UN/EDIFACT data element 3055 code list. + + + + + + + UNDT000007-SC4 + SC + Code List. Agency Name. Text + The name of the agency that maintains the list of codes. + Code List + Agency Name + Text + string + + + + + + + UNDT000007-SC5 + SC + Code List. Name. Text + The name of a list of codes. + Code List + Name + Text + string + + + + + + + UNDT000007-SC6 + SC + Code List. Version. Identifier + The version of the list of codes. + Code List + Version + Identifier + string + + + + + + + UNDT000007-SC7 + SC + Code. Name. Text + The textual equivalent of the code content component. + Code + Name + Text + string + + + + + + + UNDT000007-SC8 + SC + Language. Identifier + The identifier of the language used in the code name. + Language + Identification + Identifier + string + + + + + + + UNDT000007-SC9 + SC + Code List. Uniform Resource. Identifier + The Uniform Resource Identifier that identifies where the code list is located. + Code List + Uniform Resource Identifier + Identifier + string + + + + + + + UNDT000007-SC10 + SC + Code List Scheme. Uniform Resource. Identifier + The Uniform Resource Identifier that identifies where the code list scheme is located. + Code List Scheme + Uniform Resource Identifier + Identifier + string + + + + + + + + + + + + UNDT000008 + CCT + Date Time. Type + 1.0 + A particular point in the progression of time together with the relevant supplementary information. + Date Time + string + Can be used for a date and/or time. + + + + + + + + UNDT000008-SC1 + SC + Date Time. Format. Text + The format of the date time content + Date Time + Format + Text + string + + + + + + + + + + + + UNDT000011 + CCT + Identifier. Type + 1.0 + A character string to identify and distinguish uniquely, one instance of an object in an identification scheme from all other objects in the same scheme together with relevant supplementary information. + Identifier + string + + + + + + + + UNDT000011-SC2 + SC + Identification Scheme. Identifier + The identification of the identification scheme. + Identification Scheme + Identification + Identifier + string + + + + + + + UNDT000011-SC3 + SC + Identification Scheme. Name. Text + The name of the identification scheme. + Identification Scheme + Name + Text + string + + + + + + + UNDT000011-SC4 + SC + Identification Scheme Agency. Identifier + The identification of the agency that maintains the identification scheme. + Identification Scheme Agency + Identification + Identifier + string + Defaults to the UN/EDIFACT data element 3055 code list. + + + + + + + UNDT000011-SC5 + SC + Identification Scheme Agency. Name. Text + The name of the agency that maintains the identification scheme. + Identification Scheme Agency + Agency Name + Text + string + + + + + + + UNDT000011-SC6 + SC + Identification Scheme. Version. Identifier + The version of the identification scheme. + Identification Scheme + Version + Identifier + string + + + + + + + UNDT000011-SC7 + SC + Identification Scheme Data. Uniform Resource. Identifier + The Uniform Resource Identifier that identifies where the identification scheme data is located. + Identification Scheme Data + Uniform Resource Identifier + Identifier + string + + + + + + + UNDT000011-SC8 + SC + Identification Scheme. Uniform Resource. Identifier + The Uniform Resource Identifier that identifies where the identification scheme is located. + Identification Scheme + Uniform Resource Identifier + Identifier + string + + + + + + + + + + + + UNDT000012 + CCT + Indicator. Type + 1.0 + A list of two mutually exclusive Boolean values that express the only possible states of a Property. + Indicator + string + + + + + + + + UNDT000012-SC2 + SC + Indicator. Format. Text + Whether the indicator is numeric, textual or binary. + Indicator + Format + Text + string + + + + + + + + + + + + UNDT000013 + CCT + Measure. Type + 1.0 + A numeric value determined by measuring an object along with the specified unit of measure. + Measure + decimal + + + + + + + + UNDT000013-SC2 + SC + Measure Unit. Code + The type of unit of measure. + Measure Unit + Code + Code + string + Reference UNECE Rec. 20 and X12 355 + + + + + + + UNDT000013-SC3 + SC + Measure Unit. Code List Version. Identifier + The version of the measure unit code list. + Measure Unit + Code List Version + Identifier + string + + + + + + + + + + + + UNDT000014 + CCT + Numeric. Type + 1.0 + Numeric information that is assigned or is determined by calculation, counting, or sequencing. It does not require a unit of quantity or unit of measure. + Numeric + string + + + + + + + + UNDT000014-SC2 + SC + Numeric. Format. Text + Whether the number is an integer, decimal, real number or percentage. + Numeric + Format + Text + string + + + + + + + + + + + + UNDT000018 + CCT + Quantity. Type + 1.0 + A counted number of non-monetary units possibly including fractions. + Quantity + decimal + + + + + + + + UNDT000018-SC2 + SC + Quantity. Unit. Code + The unit of the quantity + Quantity + Unit Code + Code + string + + + + + + + UNDT000018-SC3 + SC + Quantity Unit. Code List. Identifier + The quantity unit code list. + Quantity Unit + Code List + Identifier + string + + + + + + + UNDT000018-SC4 + SC + Quantity Unit. Code List Agency. Identifier + The identification of the agency that maintains the quantity unit code list + Quantity Unit + Code List Agency + Identifier + string + Defaults to the UN/EDIFACT data element 3055 code list. + + + + + + + UNDT000018-SC5 + SC + Quantity Unit. Code List Agency Name. Text + The name of the agency which maintains the quantity unit code list. + Quantity Unit + Code List Agency Name + Text + string + + + + + + + + + + + + UNDT000019 + CCT + Text. Type + 1.0 + A character string (i.e. a finite set of characters) generally in the form of words of a language. + Text + string + + + + + + + + UNDT000019-SC2 + SC + Language. Identifier + The identifier of the language used in the content component. + Language + Identification + Identifier + string + + + + + + + UNDT000019-SC3 + SC + Language. Locale. Identifier + The identification of the locale of the language. + Language + Locale + Identifier + string + + + + + + + diff --git a/validator/src/main/resources/schema/UBL_21/common/UBL-CommonAggregateComponents-2.1.xsd b/validator/src/main/resources/schema/UBL_21/common/UBL-CommonAggregateComponents-2.1.xsd new file mode 100644 index 00000000..553b1656 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/common/UBL-CommonAggregateComponents-2.1.xsd @@ -0,0 +1,4156 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/common/UBL-CommonBasicComponents-2.1.xsd b/validator/src/main/resources/schema/UBL_21/common/UBL-CommonBasicComponents-2.1.xsd new file mode 100644 index 00000000..46a3a579 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/common/UBL-CommonBasicComponents-2.1.xsd @@ -0,0 +1,5385 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/common/UBL-CommonExtensionComponents-2.1.xsd b/validator/src/main/resources/schema/UBL_21/common/UBL-CommonExtensionComponents-2.1.xsd new file mode 100644 index 00000000..46c7a020 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/common/UBL-CommonExtensionComponents-2.1.xsd @@ -0,0 +1,223 @@ + + + + + + + + + + + + + A container for all extensions present in the document. + + + + + + + A container for all extensions present in the document. + + + + + + + A single extension for private use. + + + + + + + + + A single extension for private use. + + + + + + + A single extension for private use. + + + + + + + An identifier for the Extension assigned by the creator of the extension. + + + + + + + A name for the Extension assigned by the creator of the extension. + + + + + + + An agency that maintains one or more Extensions. + + + + + + + The name of the agency that maintains the Extension. + + + + + + + The version of the Extension. + + + + + + + A URI for the Agency that maintains the Extension. + + + + + + + A URI for the Extension. + + + + + + + A code for reason the Extension is being included. + + + + + + + A description of the reason for the Extension. + + + + + + + The definition of the extension content. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/common/UBL-CommonSignatureComponents-2.1.xsd b/validator/src/main/resources/schema/UBL_21/common/UBL-CommonSignatureComponents-2.1.xsd new file mode 100644 index 00000000..2dc6feac --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/common/UBL-CommonSignatureComponents-2.1.xsd @@ -0,0 +1,71 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/common/UBL-CoreComponentParameters-2.1.xsd b/validator/src/main/resources/schema/UBL_21/common/UBL-CoreComponentParameters-2.1.xsd new file mode 100644 index 00000000..1a80c181 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/common/UBL-CoreComponentParameters-2.1.xsd @@ -0,0 +1,63 @@ + + + + + + diff --git a/validator/src/main/resources/schema/UBL_21/common/UBL-ExtensionContentDataType-2.1.xsd b/validator/src/main/resources/schema/UBL_21/common/UBL-ExtensionContentDataType-2.1.xsd new file mode 100644 index 00000000..94eb8cd9 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/common/UBL-ExtensionContentDataType-2.1.xsd @@ -0,0 +1,89 @@ + + + + + + + + + + + + + + Any element in any namespace other than the UBL extension + namespace is allowed to be the apex element of an extension. + Only those elements found in the UBL schemas and in the + trees of schemas imported in this module are validated. + Any element for which there is no schema declaration in any + of the trees of schemas passes validation and is not + treated as a schema constraint violation. + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/common/UBL-QualifiedDataTypes-2.1.xsd b/validator/src/main/resources/schema/UBL_21/common/UBL-QualifiedDataTypes-2.1.xsd new file mode 100644 index 00000000..d16047ba --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/common/UBL-QualifiedDataTypes-2.1.xsd @@ -0,0 +1,69 @@ + + + + + + + + + + diff --git a/validator/src/main/resources/schema/UBL_21/common/UBL-SignatureAggregateComponents-2.1.xsd b/validator/src/main/resources/schema/UBL_21/common/UBL-SignatureAggregateComponents-2.1.xsd new file mode 100644 index 00000000..5ad0fd62 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/common/UBL-SignatureAggregateComponents-2.1.xsd @@ -0,0 +1,92 @@ + + + + + + + + + + + + + + + + + + + + This is a single digital signature as defined by the W3C specification. + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/common/UBL-SignatureBasicComponents-2.1.xsd b/validator/src/main/resources/schema/UBL_21/common/UBL-SignatureBasicComponents-2.1.xsd new file mode 100644 index 00000000..60c8b6c8 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/common/UBL-SignatureBasicComponents-2.1.xsd @@ -0,0 +1,74 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/common/UBL-UnqualifiedDataTypes-2.1.xsd b/validator/src/main/resources/schema/UBL_21/common/UBL-UnqualifiedDataTypes-2.1.xsd new file mode 100644 index 00000000..96f97c13 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/common/UBL-UnqualifiedDataTypes-2.1.xsd @@ -0,0 +1,553 @@ + + + + + + + + + + UBLUDT000001 + UDT + Amount. Type + 1.0 + A number of monetary units specified using a given unit of currency. + Amount + + + + + + + + UNDT000001-SC2 + SC + Amount. Currency. Identifier + The currency of the amount. + Amount Currency + Identification + Identifier + string + Reference UNECE Rec 9, using 3-letter alphabetic codes. + + + + + + + + + + + UBLUDT000002 + UDT + Binary Object. Type + 1.0 + A set of finite-length sequences of binary octets. + Binary Object + binary + + + + + + + + UNDT000002-SC3 + SC + Binary Object. Mime. Code + The mime type of the binary object. + Binary Object + Mime + Code + string + + + + + + + + + + + UBLUDT000003 + UDT + Graphic. Type + 1.0 + A diagram, graph, mathematical curve, or similar representation. + Graphic + binary + + + + + + + + UNDT000003-SC3 + SC + Graphic. Mime. Code + The mime type of the graphic object. + Graphic + Mime + Code + normalizedString + + + + + + + + + + + UBLUDT000004 + UDT + Picture. Type + 1.0 + A diagram, graph, mathematical curve, or similar representation. + Picture + binary + + + + + + + + UNDT000004-SC3 + SC + Picture. Mime. Code + The mime type of the picture object. + Picture + Mime + Code + normalizedString + + + + + + + + + + + UBLUDT000005 + UDT + Sound. Type + 1.0 + An audio representation. + Sound + binary + + + + + + + + UNDT000005-SC3 + SC + Sound. Mime. Code + The mime type of the sound object. + Sound + Mime + Code + normalizedString + + + + + + + + + + + UBLUDT000006 + UDT + Video. Type + 1.0 + A video representation. + Video + binary + + + + + + + + UNDT000006-SC3 + SC + Video. Mime. Code + The mime type of the video object. + Video + Mime + Code + normalizedString + + + + + + + + + + + UBLUDT000007 + UDT + Code. Type + 1.0 + A character string (letters, figures, or symbols) that for brevity and/or language independence may be used to represent or replace a definitive value or text of an attribute, together with relevant supplementary information. + Code + string + Other supplementary components in the CCT are captured as part of the token and name for the schema module containing the code list and thus, are not declared as attributes. + + + + + + + + + + + UBLUDT000008 + UDT + Date Time. Type + 1.0 + A particular point in the progression of time, together with relevant supplementary information. + Date Time + string + Can be used for a date and/or time. + + + + + + + + + + + UBLUDT000009 + UDT + Date. Type + 1.0 + One calendar day according the Gregorian calendar. + Date + string + + + + + + + + + + + UBLUDT0000010 + UDT + Time. Type + 1.0 + An instance of time that occurs every day. + Time + string + + + + + + + + + + + UBLUDT0000011 + UDT + Identifier. Type + 1.0 + A character string to identify and uniquely distinguish one instance of an object in an identification scheme from all other objects in the same scheme, together with relevant supplementary information. + Identifier + string + Other supplementary components in the CCT are captured as part of the token and name for the schema module containing the identifier list and thus, are not declared as attributes. + + + + + + + + + + + UBLUDT0000012 + UDT + Indicator. Type + 1.0 + A list of two mutually exclusive Boolean values that express the only possible states of a property. + Indicator + string + + + + + + + + + + + UBLUDT0000013 + UDT + Measure. Type + 1.0 + A numeric value determined by measuring an object using a specified unit of measure. + Measure + Type + decimal + + + + + + + + UNDT000013-SC2 + SC + Measure. Unit. Code + The type of unit of measure. + Measure Unit + Code + Code + normalizedString + Reference UNECE Rec. 20 and X12 355 + + + + + + + + + + + UBLUDT0000014 + UDT + Numeric. Type + 1.0 + Numeric information that is assigned or is determined by calculation, counting, or sequencing. It does not require a unit of quantity or unit of measure. + Numeric + string + + + + + + + + + + + UBLUDT0000015 + UDT + 1.0 + Value. Type + Numeric information that is assigned or is determined by calculation, counting, or sequencing. It does not require a unit of quantity or unit of measure. + Value + string + + + + + + + + + + + UBLUDT0000016 + UDT + 1.0 + Percent. Type + Numeric information that is assigned or is determined by calculation, counting, or sequencing and is expressed as a percentage. It does not require a unit of quantity or unit of measure. + Percent + string + + + + + + + + + + + UBLUDT0000017 + UDT + 1.0 + Rate. Type + A numeric expression of a rate that is assigned or is determined by calculation, counting, or sequencing. It does not require a unit of quantity or unit of measure. + Rate + string + + + + + + + + + + + UBLUDT0000018 + UDT + Quantity. Type + 1.0 + A counted number of non-monetary units, possibly including a fractional part. + Quantity + decimal + + + + + + + + + + + UBLUDT0000019 + UDT + Text. Type + 1.0 + A character string (i.e. a finite set of characters), generally in the form of words of a language. + Text + string + + + + + + + + + + + UBLUDT0000020 + UDT + Name. Type + 1.0 + A character string that constitutes the distinctive designation of a person, place, thing or concept. + Name + string + + + + + + + diff --git a/validator/src/main/resources/schema/UBL_21/common/UBL-XAdESv132-2.1.xsd b/validator/src/main/resources/schema/UBL_21/common/UBL-XAdESv132-2.1.xsd new file mode 100644 index 00000000..aee01c26 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/common/UBL-XAdESv132-2.1.xsd @@ -0,0 +1,476 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/validator/src/main/resources/schema/UBL_21/common/UBL-XAdESv141-2.1.xsd b/validator/src/main/resources/schema/UBL_21/common/UBL-XAdESv141-2.1.xsd new file mode 100644 index 00000000..4be91911 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/common/UBL-XAdESv141-2.1.xsd @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + diff --git a/validator/src/main/resources/schema/UBL_21/common/UBL-xmldsig-core-schema-2.1.xsd b/validator/src/main/resources/schema/UBL_21/common/UBL-xmldsig-core-schema-2.1.xsd new file mode 100644 index 00000000..3b06be38 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/common/UBL-xmldsig-core-schema-2.1.xsd @@ -0,0 +1,330 @@ + + + + + + + ]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-ApplicationResponse-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-ApplicationResponse-2.1.xsd new file mode 100644 index 00000000..a7b80ebd --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-ApplicationResponse-2.1.xsd @@ -0,0 +1,93 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-AttachedDocument-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-AttachedDocument-2.1.xsd new file mode 100644 index 00000000..b92127ea --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-AttachedDocument-2.1.xsd @@ -0,0 +1,98 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-AwardedNotification-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-AwardedNotification-2.1.xsd new file mode 100644 index 00000000..5cfd997b --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-AwardedNotification-2.1.xsd @@ -0,0 +1,100 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-BillOfLading-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-BillOfLading-2.1.xsd new file mode 100644 index 00000000..b670bcef --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-BillOfLading-2.1.xsd @@ -0,0 +1,103 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-CallForTenders-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-CallForTenders-2.1.xsd new file mode 100644 index 00000000..f4814783 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-CallForTenders-2.1.xsd @@ -0,0 +1,106 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-Catalogue-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-Catalogue-2.1.xsd new file mode 100644 index 00000000..a7b76494 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-Catalogue-2.1.xsd @@ -0,0 +1,105 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-CatalogueDeletion-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-CatalogueDeletion-2.1.xsd new file mode 100644 index 00000000..155184b6 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-CatalogueDeletion-2.1.xsd @@ -0,0 +1,99 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-CatalogueItemSpecificationUpdate-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-CatalogueItemSpecificationUpdate-2.1.xsd new file mode 100644 index 00000000..db280b78 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-CatalogueItemSpecificationUpdate-2.1.xsd @@ -0,0 +1,106 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-CataloguePricingUpdate-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-CataloguePricingUpdate-2.1.xsd new file mode 100644 index 00000000..80084959 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-CataloguePricingUpdate-2.1.xsd @@ -0,0 +1,105 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-CatalogueRequest-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-CatalogueRequest-2.1.xsd new file mode 100644 index 00000000..4d12b9db --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-CatalogueRequest-2.1.xsd @@ -0,0 +1,109 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-CertificateOfOrigin-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-CertificateOfOrigin-2.1.xsd new file mode 100644 index 00000000..e310a252 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-CertificateOfOrigin-2.1.xsd @@ -0,0 +1,98 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-ContractAwardNotice-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-ContractAwardNotice-2.1.xsd new file mode 100644 index 00000000..e920ee7e --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-ContractAwardNotice-2.1.xsd @@ -0,0 +1,105 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-ContractNotice-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-ContractNotice-2.1.xsd new file mode 100644 index 00000000..5fefc90e --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-ContractNotice-2.1.xsd @@ -0,0 +1,101 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-CreditNote-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-CreditNote-2.1.xsd new file mode 100644 index 00000000..a74429d1 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-CreditNote-2.1.xsd @@ -0,0 +1,143 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-DebitNote-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-DebitNote-2.1.xsd new file mode 100644 index 00000000..19eb2415 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-DebitNote-2.1.xsd @@ -0,0 +1,139 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-DespatchAdvice-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-DespatchAdvice-2.1.xsd new file mode 100644 index 00000000..5a8ad8fc --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-DespatchAdvice-2.1.xsd @@ -0,0 +1,102 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-DocumentStatus-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-DocumentStatus-2.1.xsd new file mode 100644 index 00000000..971c53c2 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-DocumentStatus-2.1.xsd @@ -0,0 +1,94 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-DocumentStatusRequest-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-DocumentStatusRequest-2.1.xsd new file mode 100644 index 00000000..589d137d --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-DocumentStatusRequest-2.1.xsd @@ -0,0 +1,92 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-ExceptionCriteria-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-ExceptionCriteria-2.1.xsd new file mode 100644 index 00000000..ef7a59f8 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-ExceptionCriteria-2.1.xsd @@ -0,0 +1,96 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-ExceptionNotification-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-ExceptionNotification-2.1.xsd new file mode 100644 index 00000000..43b54803 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-ExceptionNotification-2.1.xsd @@ -0,0 +1,97 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-Forecast-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-Forecast-2.1.xsd new file mode 100644 index 00000000..78dc9bfa --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-Forecast-2.1.xsd @@ -0,0 +1,100 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-ForecastRevision-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-ForecastRevision-2.1.xsd new file mode 100644 index 00000000..42f0ee16 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-ForecastRevision-2.1.xsd @@ -0,0 +1,100 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-ForwardingInstructions-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-ForwardingInstructions-2.1.xsd new file mode 100644 index 00000000..ca9a1b24 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-ForwardingInstructions-2.1.xsd @@ -0,0 +1,102 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-FreightInvoice-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-FreightInvoice-2.1.xsd new file mode 100644 index 00000000..c9977585 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-FreightInvoice-2.1.xsd @@ -0,0 +1,136 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-FulfilmentCancellation-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-FulfilmentCancellation-2.1.xsd new file mode 100644 index 00000000..de8a747a --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-FulfilmentCancellation-2.1.xsd @@ -0,0 +1,105 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-GoodsItemItinerary-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-GoodsItemItinerary-2.1.xsd new file mode 100644 index 00000000..e9cd8049 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-GoodsItemItinerary-2.1.xsd @@ -0,0 +1,101 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-GuaranteeCertificate-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-GuaranteeCertificate-2.1.xsd new file mode 100644 index 00000000..ba036f8c --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-GuaranteeCertificate-2.1.xsd @@ -0,0 +1,102 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-InstructionForReturns-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-InstructionForReturns-2.1.xsd new file mode 100644 index 00000000..1d694db4 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-InstructionForReturns-2.1.xsd @@ -0,0 +1,96 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-InventoryReport-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-InventoryReport-2.1.xsd new file mode 100644 index 00000000..87f32fbd --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-InventoryReport-2.1.xsd @@ -0,0 +1,95 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-Invoice-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-Invoice-2.1.xsd new file mode 100644 index 00000000..fb073b12 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-Invoice-2.1.xsd @@ -0,0 +1,146 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-ItemInformationRequest-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-ItemInformationRequest-2.1.xsd new file mode 100644 index 00000000..9f03f59f --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-ItemInformationRequest-2.1.xsd @@ -0,0 +1,97 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-Order-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-Order-2.1.xsd new file mode 100644 index 00000000..275a5a6e --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-Order-2.1.xsd @@ -0,0 +1,128 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-OrderCancellation-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-OrderCancellation-2.1.xsd new file mode 100644 index 00000000..4eb6befe --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-OrderCancellation-2.1.xsd @@ -0,0 +1,98 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-OrderChange-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-OrderChange-2.1.xsd new file mode 100644 index 00000000..d71b8087 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-OrderChange-2.1.xsd @@ -0,0 +1,125 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-OrderResponse-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-OrderResponse-2.1.xsd new file mode 100644 index 00000000..b10b0639 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-OrderResponse-2.1.xsd @@ -0,0 +1,132 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-OrderResponseSimple-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-OrderResponseSimple-2.1.xsd new file mode 100644 index 00000000..20a19732 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-OrderResponseSimple-2.1.xsd @@ -0,0 +1,102 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-PackingList-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-PackingList-2.1.xsd new file mode 100644 index 00000000..2ab7ba69 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-PackingList-2.1.xsd @@ -0,0 +1,97 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-PriorInformationNotice-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-PriorInformationNotice-2.1.xsd new file mode 100644 index 00000000..a5779d3a --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-PriorInformationNotice-2.1.xsd @@ -0,0 +1,100 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-ProductActivity-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-ProductActivity-2.1.xsd new file mode 100644 index 00000000..c68d7cc0 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-ProductActivity-2.1.xsd @@ -0,0 +1,96 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-Quotation-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-Quotation-2.1.xsd new file mode 100644 index 00000000..a0b760f7 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-Quotation-2.1.xsd @@ -0,0 +1,110 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-ReceiptAdvice-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-ReceiptAdvice-2.1.xsd new file mode 100644 index 00000000..0945d644 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-ReceiptAdvice-2.1.xsd @@ -0,0 +1,104 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-Reminder-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-Reminder-2.1.xsd new file mode 100644 index 00000000..cd9eec45 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-Reminder-2.1.xsd @@ -0,0 +1,122 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-RemittanceAdvice-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-RemittanceAdvice-2.1.xsd new file mode 100644 index 00000000..80499bfa --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-RemittanceAdvice-2.1.xsd @@ -0,0 +1,107 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-RequestForQuotation-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-RequestForQuotation-2.1.xsd new file mode 100644 index 00000000..bb9c841d --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-RequestForQuotation-2.1.xsd @@ -0,0 +1,106 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-RetailEvent-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-RetailEvent-2.1.xsd new file mode 100644 index 00000000..fdd03764 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-RetailEvent-2.1.xsd @@ -0,0 +1,104 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-SelfBilledCreditNote-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-SelfBilledCreditNote-2.1.xsd new file mode 100644 index 00000000..643effb3 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-SelfBilledCreditNote-2.1.xsd @@ -0,0 +1,141 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-SelfBilledInvoice-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-SelfBilledInvoice-2.1.xsd new file mode 100644 index 00000000..31aef89d --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-SelfBilledInvoice-2.1.xsd @@ -0,0 +1,142 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-Statement-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-Statement-2.1.xsd new file mode 100644 index 00000000..2a956957 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-Statement-2.1.xsd @@ -0,0 +1,109 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-StockAvailabilityReport-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-StockAvailabilityReport-2.1.xsd new file mode 100644 index 00000000..1e813010 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-StockAvailabilityReport-2.1.xsd @@ -0,0 +1,97 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-Tender-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-Tender-2.1.xsd new file mode 100644 index 00000000..d943b6cc --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-Tender-2.1.xsd @@ -0,0 +1,101 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-TenderReceipt-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-TenderReceipt-2.1.xsd new file mode 100644 index 00000000..92a4b48e --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-TenderReceipt-2.1.xsd @@ -0,0 +1,97 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-TendererQualification-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-TendererQualification-2.1.xsd new file mode 100644 index 00000000..fc511ef4 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-TendererQualification-2.1.xsd @@ -0,0 +1,99 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-TendererQualificationResponse-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-TendererQualificationResponse-2.1.xsd new file mode 100644 index 00000000..82ae1d15 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-TendererQualificationResponse-2.1.xsd @@ -0,0 +1,98 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-TradeItemLocationProfile-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-TradeItemLocationProfile-2.1.xsd new file mode 100644 index 00000000..16ef439b --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-TradeItemLocationProfile-2.1.xsd @@ -0,0 +1,96 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-TransportExecutionPlan-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-TransportExecutionPlan-2.1.xsd new file mode 100644 index 00000000..fbdd46f2 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-TransportExecutionPlan-2.1.xsd @@ -0,0 +1,134 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-TransportExecutionPlanRequest-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-TransportExecutionPlanRequest-2.1.xsd new file mode 100644 index 00000000..725e86c0 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-TransportExecutionPlanRequest-2.1.xsd @@ -0,0 +1,125 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-TransportProgressStatus-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-TransportProgressStatus-2.1.xsd new file mode 100644 index 00000000..c8a3d04b --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-TransportProgressStatus-2.1.xsd @@ -0,0 +1,97 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-TransportProgressStatusRequest-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-TransportProgressStatusRequest-2.1.xsd new file mode 100644 index 00000000..5197587a --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-TransportProgressStatusRequest-2.1.xsd @@ -0,0 +1,93 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-TransportServiceDescription-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-TransportServiceDescription-2.1.xsd new file mode 100644 index 00000000..5c748a56 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-TransportServiceDescription-2.1.xsd @@ -0,0 +1,100 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-TransportServiceDescriptionRequest-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-TransportServiceDescriptionRequest-2.1.xsd new file mode 100644 index 00000000..4b5ba891 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-TransportServiceDescriptionRequest-2.1.xsd @@ -0,0 +1,96 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-TransportationStatus-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-TransportationStatus-2.1.xsd new file mode 100644 index 00000000..62e83ef5 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-TransportationStatus-2.1.xsd @@ -0,0 +1,109 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-TransportationStatusRequest-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-TransportationStatusRequest-2.1.xsd new file mode 100644 index 00000000..1d88d719 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-TransportationStatusRequest-2.1.xsd @@ -0,0 +1,105 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-UnawardedNotification-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-UnawardedNotification-2.1.xsd new file mode 100644 index 00000000..8bedc255 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-UnawardedNotification-2.1.xsd @@ -0,0 +1,98 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-UtilityStatement-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-UtilityStatement-2.1.xsd new file mode 100644 index 00000000..fd8c9b76 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-UtilityStatement-2.1.xsd @@ -0,0 +1,102 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/UBL_21/maindoc/UBL-Waybill-2.1.xsd b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-Waybill-2.1.xsd new file mode 100644 index 00000000..9ce271b6 --- /dev/null +++ b/validator/src/main/resources/schema/UBL_21/maindoc/UBL-Waybill-2.1.xsd @@ -0,0 +1,101 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/main/resources/schema/zf1/ZUGFeRD1p0.xsd b/validator/src/main/resources/schema/ZF_10/ZUGFeRD1p0.xsd similarity index 100% rename from validator/src/main/resources/schema/zf1/ZUGFeRD1p0.xsd rename to validator/src/main/resources/schema/ZF_10/ZUGFeRD1p0.xsd diff --git a/validator/src/main/resources/schema/zf1/ZUGFeRD1p0_urn_un_unece_uncefact_data_standard_QualifiedDataType_12.xsd b/validator/src/main/resources/schema/ZF_10/ZUGFeRD1p0_urn_un_unece_uncefact_data_standard_QualifiedDataType_12.xsd similarity index 100% rename from validator/src/main/resources/schema/zf1/ZUGFeRD1p0_urn_un_unece_uncefact_data_standard_QualifiedDataType_12.xsd rename to validator/src/main/resources/schema/ZF_10/ZUGFeRD1p0_urn_un_unece_uncefact_data_standard_QualifiedDataType_12.xsd diff --git a/validator/src/main/resources/schema/zf1/ZUGFeRD1p0_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_12.xsd b/validator/src/main/resources/schema/ZF_10/ZUGFeRD1p0_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_12.xsd similarity index 100% rename from validator/src/main/resources/schema/zf1/ZUGFeRD1p0_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_12.xsd rename to validator/src/main/resources/schema/ZF_10/ZUGFeRD1p0_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_12.xsd diff --git a/validator/src/main/resources/schema/zf1/ZUGFeRD1p0_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_15.xsd b/validator/src/main/resources/schema/ZF_10/ZUGFeRD1p0_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_15.xsd similarity index 100% rename from validator/src/main/resources/schema/zf1/ZUGFeRD1p0_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_15.xsd rename to validator/src/main/resources/schema/ZF_10/ZUGFeRD1p0_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_15.xsd diff --git a/validator/src/main/resources/schema/zf2/BASIC-WL/FACTUR-X_BASIC-WL.xsd b/validator/src/main/resources/schema/ZF_211/BASIC-WL/FACTUR-X_BASIC-WL.xsd similarity index 98% rename from validator/src/main/resources/schema/zf2/BASIC-WL/FACTUR-X_BASIC-WL.xsd rename to validator/src/main/resources/schema/ZF_211/BASIC-WL/FACTUR-X_BASIC-WL.xsd index c67a349b..58a1cc63 100644 --- a/validator/src/main/resources/schema/zf2/BASIC-WL/FACTUR-X_BASIC-WL.xsd +++ b/validator/src/main/resources/schema/ZF_211/BASIC-WL/FACTUR-X_BASIC-WL.xsd @@ -1,20 +1,20 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + diff --git a/validator/src/main/resources/schema/zf2/BASIC-WL/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd b/validator/src/main/resources/schema/ZF_211/BASIC-WL/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd similarity index 97% rename from validator/src/main/resources/schema/zf2/BASIC-WL/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd rename to validator/src/main/resources/schema/ZF_211/BASIC-WL/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd index f9736b89..d25f3cd4 100644 --- a/validator/src/main/resources/schema/zf2/BASIC-WL/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd +++ b/validator/src/main/resources/schema/ZF_211/BASIC-WL/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd @@ -1,788 +1,788 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/validator/src/main/resources/schema/zf2/BASIC-WL/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd b/validator/src/main/resources/schema/ZF_211/BASIC-WL/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd similarity index 98% rename from validator/src/main/resources/schema/zf2/BASIC-WL/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd rename to validator/src/main/resources/schema/ZF_211/BASIC-WL/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd index 48f816ba..2cd20367 100644 --- a/validator/src/main/resources/schema/zf2/BASIC-WL/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd +++ b/validator/src/main/resources/schema/ZF_211/BASIC-WL/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd @@ -1,194 +1,194 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/validator/src/main/resources/schema/zf2/BASIC-WL/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd b/validator/src/main/resources/schema/ZF_211/BASIC-WL/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd similarity index 97% rename from validator/src/main/resources/schema/zf2/BASIC-WL/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd rename to validator/src/main/resources/schema/ZF_211/BASIC-WL/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd index 3e2545e4..a2eeee09 100644 --- a/validator/src/main/resources/schema/zf2/BASIC-WL/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd +++ b/validator/src/main/resources/schema/ZF_211/BASIC-WL/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd @@ -1,54 +1,54 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/validator/src/main/resources/schema/zf2/BASIC/FACTUR-X_BASIC.xsd b/validator/src/main/resources/schema/ZF_211/BASIC/FACTUR-X_BASIC.xsd similarity index 98% rename from validator/src/main/resources/schema/zf2/BASIC/FACTUR-X_BASIC.xsd rename to validator/src/main/resources/schema/ZF_211/BASIC/FACTUR-X_BASIC.xsd index dc31919b..cfe05e14 100644 --- a/validator/src/main/resources/schema/zf2/BASIC/FACTUR-X_BASIC.xsd +++ b/validator/src/main/resources/schema/ZF_211/BASIC/FACTUR-X_BASIC.xsd @@ -1,20 +1,20 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + diff --git a/validator/src/main/resources/schema/zf2/BASIC/FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd b/validator/src/main/resources/schema/ZF_211/BASIC/FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd similarity index 97% rename from validator/src/main/resources/schema/zf2/BASIC/FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd rename to validator/src/main/resources/schema/ZF_211/BASIC/FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd index 4803b822..b05d1684 100644 --- a/validator/src/main/resources/schema/zf2/BASIC/FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd +++ b/validator/src/main/resources/schema/ZF_211/BASIC/FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd @@ -1,788 +1,788 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/validator/src/main/resources/schema/zf2/BASIC/FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd b/validator/src/main/resources/schema/ZF_211/BASIC/FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd similarity index 98% rename from validator/src/main/resources/schema/zf2/BASIC/FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd rename to validator/src/main/resources/schema/ZF_211/BASIC/FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd index dac9f9c2..e665abea 100644 --- a/validator/src/main/resources/schema/zf2/BASIC/FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd +++ b/validator/src/main/resources/schema/ZF_211/BASIC/FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd @@ -1,242 +1,242 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/validator/src/main/resources/schema/zf2/BASIC/FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd b/validator/src/main/resources/schema/ZF_211/BASIC/FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd similarity index 97% rename from validator/src/main/resources/schema/zf2/BASIC/FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd rename to validator/src/main/resources/schema/ZF_211/BASIC/FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd index 20085d58..776a6667 100644 --- a/validator/src/main/resources/schema/zf2/BASIC/FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd +++ b/validator/src/main/resources/schema/ZF_211/BASIC/FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd @@ -1,61 +1,61 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/validator/src/main/resources/schema/zf2/EN16931/FACTUR-X_EN16931.xsd b/validator/src/main/resources/schema/ZF_211/EN16931/FACTUR-X_EN16931.xsd similarity index 98% rename from validator/src/main/resources/schema/zf2/EN16931/FACTUR-X_EN16931.xsd rename to validator/src/main/resources/schema/ZF_211/EN16931/FACTUR-X_EN16931.xsd index 6730ebd7..f6d34759 100644 --- a/validator/src/main/resources/schema/zf2/EN16931/FACTUR-X_EN16931.xsd +++ b/validator/src/main/resources/schema/ZF_211/EN16931/FACTUR-X_EN16931.xsd @@ -1,20 +1,20 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + diff --git a/validator/src/main/resources/schema/zf2/EN16931/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd b/validator/src/main/resources/schema/ZF_211/EN16931/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd similarity index 97% rename from validator/src/main/resources/schema/zf2/EN16931/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd rename to validator/src/main/resources/schema/ZF_211/EN16931/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd index 0aa4b176..85eb7c47 100644 --- a/validator/src/main/resources/schema/zf2/EN16931/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd +++ b/validator/src/main/resources/schema/ZF_211/EN16931/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd @@ -1,1741 +1,1741 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/validator/src/main/resources/schema/zf2/EN16931/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd b/validator/src/main/resources/schema/ZF_211/EN16931/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd similarity index 98% rename from validator/src/main/resources/schema/zf2/EN16931/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd rename to validator/src/main/resources/schema/ZF_211/EN16931/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd index 24fe52fb..42214888 100644 --- a/validator/src/main/resources/schema/zf2/EN16931/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd +++ b/validator/src/main/resources/schema/ZF_211/EN16931/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd @@ -1,318 +1,318 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/validator/src/main/resources/schema/zf2/EN16931/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd b/validator/src/main/resources/schema/ZF_211/EN16931/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd similarity index 97% rename from validator/src/main/resources/schema/zf2/EN16931/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd rename to validator/src/main/resources/schema/ZF_211/EN16931/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd index b318b172..4c6afd4e 100644 --- a/validator/src/main/resources/schema/zf2/EN16931/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd +++ b/validator/src/main/resources/schema/ZF_211/EN16931/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd @@ -1,85 +1,85 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/validator/src/main/resources/schema/zf2/EXTENDED/FACTUR-X_EXTENDED.xsd b/validator/src/main/resources/schema/ZF_211/EXTENDED/FACTUR-X_EXTENDED.xsd similarity index 98% rename from validator/src/main/resources/schema/zf2/EXTENDED/FACTUR-X_EXTENDED.xsd rename to validator/src/main/resources/schema/ZF_211/EXTENDED/FACTUR-X_EXTENDED.xsd index 9358b1c9..87001649 100644 --- a/validator/src/main/resources/schema/zf2/EXTENDED/FACTUR-X_EXTENDED.xsd +++ b/validator/src/main/resources/schema/ZF_211/EXTENDED/FACTUR-X_EXTENDED.xsd @@ -1,20 +1,20 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + diff --git a/validator/src/main/resources/schema/zf2/EXTENDED/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd b/validator/src/main/resources/schema/ZF_211/EXTENDED/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd similarity index 97% rename from validator/src/main/resources/schema/zf2/EXTENDED/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd rename to validator/src/main/resources/schema/ZF_211/EXTENDED/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd index 5c88319c..f027f87e 100644 --- a/validator/src/main/resources/schema/zf2/EXTENDED/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd +++ b/validator/src/main/resources/schema/ZF_211/EXTENDED/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd @@ -1,2490 +1,2490 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/validator/src/main/resources/schema/zf2/EXTENDED/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd b/validator/src/main/resources/schema/ZF_211/EXTENDED/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd similarity index 98% rename from validator/src/main/resources/schema/zf2/EXTENDED/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd rename to validator/src/main/resources/schema/ZF_211/EXTENDED/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd index 81bc460f..733567ec 100644 --- a/validator/src/main/resources/schema/zf2/EXTENDED/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd +++ b/validator/src/main/resources/schema/ZF_211/EXTENDED/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd @@ -1,433 +1,433 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/validator/src/main/resources/schema/zf2/EXTENDED/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd b/validator/src/main/resources/schema/ZF_211/EXTENDED/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd similarity index 97% rename from validator/src/main/resources/schema/zf2/EXTENDED/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd rename to validator/src/main/resources/schema/ZF_211/EXTENDED/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd index 5916ec28..d67d616b 100644 --- a/validator/src/main/resources/schema/zf2/EXTENDED/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd +++ b/validator/src/main/resources/schema/ZF_211/EXTENDED/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd @@ -1,103 +1,103 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/validator/src/main/resources/schema/zf2/MINIMUM/FACTUR-X_MINIMUM.xsd b/validator/src/main/resources/schema/ZF_211/MINIMUM/FACTUR-X_MINIMUM.xsd similarity index 98% rename from validator/src/main/resources/schema/zf2/MINIMUM/FACTUR-X_MINIMUM.xsd rename to validator/src/main/resources/schema/ZF_211/MINIMUM/FACTUR-X_MINIMUM.xsd index e51acb3a..f52e628d 100644 --- a/validator/src/main/resources/schema/zf2/MINIMUM/FACTUR-X_MINIMUM.xsd +++ b/validator/src/main/resources/schema/ZF_211/MINIMUM/FACTUR-X_MINIMUM.xsd @@ -1,20 +1,20 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + diff --git a/validator/src/main/resources/schema/zf2/MINIMUM/FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd b/validator/src/main/resources/schema/ZF_211/MINIMUM/FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd similarity index 97% rename from validator/src/main/resources/schema/zf2/MINIMUM/FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd rename to validator/src/main/resources/schema/ZF_211/MINIMUM/FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd index 1102b235..e38e6753 100644 --- a/validator/src/main/resources/schema/zf2/MINIMUM/FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd +++ b/validator/src/main/resources/schema/ZF_211/MINIMUM/FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd @@ -1,507 +1,507 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/validator/src/main/resources/schema/zf2/MINIMUM/FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd b/validator/src/main/resources/schema/ZF_211/MINIMUM/FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd similarity index 98% rename from validator/src/main/resources/schema/zf2/MINIMUM/FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd rename to validator/src/main/resources/schema/ZF_211/MINIMUM/FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd index be95ede8..57706d65 100644 --- a/validator/src/main/resources/schema/zf2/MINIMUM/FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd +++ b/validator/src/main/resources/schema/ZF_211/MINIMUM/FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd @@ -1,92 +1,92 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/validator/src/main/resources/schema/zf2/MINIMUM/FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd b/validator/src/main/resources/schema/ZF_211/MINIMUM/FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd similarity index 97% rename from validator/src/main/resources/schema/zf2/MINIMUM/FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd rename to validator/src/main/resources/schema/ZF_211/MINIMUM/FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd index c5e3e216..99411569 100644 --- a/validator/src/main/resources/schema/zf2/MINIMUM/FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd +++ b/validator/src/main/resources/schema/ZF_211/MINIMUM/FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd @@ -1,44 +1,44 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_AllowanceChargeReasonCode_D20A.xsd b/validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_AllowanceChargeReasonCode_D20A.xsd deleted file mode 100644 index e2eb28a7..00000000 --- a/validator/src/main/resources/schema/ox09/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_AllowanceChargeReasonCode_D20A.xsd +++ /dev/null @@ -1,116 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_AllowanceChargeReasonCode_D20A.xsd b/validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_AllowanceChargeReasonCode_D20A.xsd deleted file mode 100644 index e2eb28a7..00000000 --- a/validator/src/main/resources/schema/ox09/extended/SCRDMCCBDACIOMessageStructure_100pD20B_urn_un_unece_uncefact_codelist_standard_UNECE_AllowanceChargeReasonCode_D20A.xsd +++ /dev/null @@ -1,116 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/validator/src/main/resources/schematron/OX_10/basic/SCRDMCCBDACIOMessageStructure_100pD20B_BASIC.sch b/validator/src/main/resources/schematron/OX_10/basic/SCRDMCCBDACIOMessageStructure_100pD20B_BASIC.sch new file mode 100644 index 00000000..78ae090f --- /dev/null +++ b/validator/src/main/resources/schematron/OX_10/basic/SCRDMCCBDACIOMessageStructure_100pD20B_BASIC.sch @@ -0,0 +1,555 @@ + + + Schema for SCRDMCCBDACIOMessageStructure_100pD20B; D20B; Basic + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:Content' must occur exactly 1 times. + + + + + + Attribute '@format' is required in this context. + + + + + + Element 'ram:ID' must occur exactly 1 times. + + + + + + Element 'ram:ID' must occur exactly 1 times. + + + + + + Element 'ram:CatalogueReferencedDocument' may occur at maximum 1 times. + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + Element 'ram:Name' must occur exactly 1 times. + + Element 'ram:DefinedTradeContact' may occur at maximum 1 times. + + Element 'ram:PostalTradeAddress' must occur exactly 1 times. + + Element 'ram:SpecifiedTaxRegistration' may occur at maximum 1 times. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + Element 'ram:Name' must occur exactly 1 times. + + Element 'ram:DefinedTradeContact' may occur at maximum 1 times. + + Element 'ram:SpecifiedTaxRegistration' may occur at maximum 1 times. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:PlannedDespatchSupplyChainEvent' may occur at maximum 1 times. + + Element 'ram:PlannedDeliverySupplyChainEvent' may occur at maximum 1 times. + + + + + + Attribute '@format' is required in this context. + + + + + + Attribute '@format' is required in this context. + + + + + + Attribute '@format' is required in this context. + + + + + + Attribute '@format' is required in this context. + + + + + + Attribute '@format' is required in this context. + + + + + + Attribute '@format' is required in this context. + + + + + + Element 'ram:DefinedTradeContact' may occur at maximum 1 times. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:Name' must occur exactly 1 times. + + Element 'ram:DefinedTradeContact' may occur at maximum 1 times. + + Element 'ram:PostalTradeAddress' must occur exactly 1 times. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:PurchaseSpecifiedTradeAccountingAccount' may occur at maximum 1 times. + + + + + + Element 'ram:TaxTotalAmount' may occur at maximum 1 times. + + + + + + Attribute '@currencyID' is required in this context. + + + + + + Element 'ram:Content' must occur exactly 1 times. + + + + + + Element 'ram:BuyerReference' may occur at maximum 1 times. + + Element 'ram:RequisitionReferencedDocument' may occur at maximum 1 times. + + Element 'ram:GrossPriceProductTradePrice' may occur at maximum 1 times. + + + + + + Element 'ram:LineID' must occur exactly 1 times. + + + + + + Element 'ram:LineID' must occur exactly 1 times. + + + + + + Attribute '@unitCode' is required in this context. + + + + + + Attribute '@unitCode' is required in this context. + + + + + + Attribute '@unitCode' is required in this context. + + + + + + Element 'ram:ApplicableTradeTax' may occur at maximum 1 times. + + + + + + Element 'ram:GlobalID' may occur at maximum 1 times. + + Element 'ram:ManufacturerAssignedID' may occur at maximum 1 times. + + Element 'ram:GrossWeightMeasure' may occur at maximum 1 times. + + Element 'ram:ApplicableSupplyChainPackaging' may occur at maximum 1 times. + + Element 'ram:OriginTradeCountry' may occur at maximum 1 times. + + Element 'ram:LinearSpatialDimension' may occur at maximum 1 times. + + Element 'ram:MinimumLinearSpatialDimension' may occur at maximum 1 times. + + Element 'ram:MaximumLinearSpatialDimension' may occur at maximum 1 times. + + Element 'ram:ManufacturerTradeParty' may occur at maximum 1 times. + + Element 'ram:MSDSReferenceReferencedDocument' may occur at maximum 1 times. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Element 'ram:ManufacturerAssignedID' may occur at maximum 1 times. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Coded allowance reasons MUST belong to the UNCL 5189 code list + + Coded charge reasons MUST belong to the UNCL 7161 code list + + + + + + Coded allowance reasons MUST belong to the UNCL 5189 code list + + Coded charge reasons MUST belong to the UNCL 7161 code list + + + diff --git a/validator/src/main/resources/schematron/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_COMFORT.sch b/validator/src/main/resources/schematron/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_COMFORT.sch new file mode 100644 index 00000000..b90952ed --- /dev/null +++ b/validator/src/main/resources/schematron/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_COMFORT.sch @@ -0,0 +1,805 @@ + + + Schema for SCRDMCCBDACIOMessageStructure_100pD20B; D20B; Comfort + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + Attribute '@format' is required in this context. + + + + + + Element 'ram:Content' must occur exactly 1 times. + + + + + + Attribute '@format' is required in this context. + + + + + + Element 'ram:ID' must occur exactly 1 times. + + + + + + Element 'ram:ID' must occur exactly 1 times. + + + + + + Element 'ram:CatalogueReferencedDocument' may occur at maximum 1 times. + + + + + + Element 'ram:Name' may occur at maximum 1 times. + + + + + + Attribute '@mimeCode' is required in this context. + + Attribute '@filename' is required in this context. + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + Element 'ram:SpecifiedTaxRegistration' may occur at maximum 2 times. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:Name' must occur exactly 1 times. + + Element 'ram:PostalTradeAddress' must occur exactly 1 times. + + Element 'ram:SpecifiedTaxRegistration' may occur at maximum 2 times. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + Element 'ram:Name' must occur exactly 1 times. + + Element 'ram:SpecifiedTaxRegistration' may occur at maximum 2 times. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:PlannedDespatchSupplyChainEvent' may occur at maximum 1 times. + + Element 'ram:PlannedDeliverySupplyChainEvent' may occur at maximum 1 times. + + + + + + Attribute '@format' is required in this context. + + + + + + Attribute '@format' is required in this context. + + + + + + Attribute '@format' is required in this context. + + + + + + Attribute '@format' is required in this context. + + + + + + Attribute '@format' is required in this context. + + + + + + Attribute '@format' is required in this context. + + + + + + Element 'ram:Name' must occur exactly 1 times. + + Element 'ram:SpecifiedTaxRegistration' may occur at maximum 2 times. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:Name' must occur exactly 1 times. + + Element 'ram:PostalTradeAddress' must occur exactly 1 times. + + Element 'ram:SpecifiedTaxRegistration' may occur at maximum 2 times. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:PurchaseSpecifiedTradeAccountingAccount' may occur at maximum 1 times. + + + + + + Element 'ram:Name' must occur exactly 1 times. + + Element 'ram:SpecifiedTaxRegistration' may occur at maximum 2 times. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:Description' must occur exactly 1 times. + + + + + + Element 'ram:TaxTotalAmount' may occur at maximum 1 times. + + + + + + Attribute '@currencyID' is required in this context. + + + + + + Element 'ram:Information' may occur at maximum 1 times. + + + + + + Element 'ram:Content' must occur exactly 1 times. + + + + + + Element 'ram:BuyerReference' may occur at maximum 1 times. + + Element 'ram:RequisitionReferencedDocument' may occur at maximum 1 times. + + Element 'ram:GrossPriceProductTradePrice' may occur at maximum 1 times. + + + + + + Element 'ram:Name' may occur at maximum 1 times. + + + + + + Attribute '@mimeCode' is required in this context. + + Attribute '@filename' is required in this context. + + + + + + Element 'ram:LineID' must occur exactly 1 times. + + + + + + Element 'ram:LineID' must occur exactly 1 times. + + + + + + Attribute '@unitCode' is required in this context. + + + + + + Element 'ram:RequestedDespatchSupplyChainEvent' may occur at maximum 1 times. + + Element 'ram:RequestedDeliverySupplyChainEvent' may occur at maximum 1 times. + + + + + + Attribute '@unitCode' is required in this context. + + + + + + Attribute '@format' is required in this context. + + + + + + Attribute '@format' is required in this context. + + + + + + Attribute '@format' is required in this context. + + + + + + Attribute '@format' is required in this context. + + + + + + Attribute '@format' is required in this context. + + + + + + Attribute '@format' is required in this context. + + + + + + Attribute '@unitCode' is required in this context. + + + + + + Element 'ram:ApplicableTradeTax' may occur at maximum 1 times. + + + + + + Element 'ram:GlobalID' may occur at maximum 1 times. + + Element 'ram:ManufacturerAssignedID' may occur at maximum 1 times. + + Element 'ram:GrossWeightMeasure' may occur at maximum 1 times. + + Element 'ram:ApplicableSupplyChainPackaging' may occur at maximum 1 times. + + Element 'ram:OriginTradeCountry' may occur at maximum 1 times. + + Element 'ram:LinearSpatialDimension' may occur at maximum 1 times. + + Element 'ram:MinimumLinearSpatialDimension' may occur at maximum 1 times. + + Element 'ram:MaximumLinearSpatialDimension' may occur at maximum 1 times. + + Element 'ram:ManufacturerTradeParty' may occur at maximum 1 times. + + Element 'ram:MSDSReferenceReferencedDocument' may occur at maximum 1 times. + + + + + + Element 'ram:Name' may occur at maximum 1 times. + + + + + + Attribute '@mimeCode' is required in this context. + + Attribute '@filename' is required in this context. + + + + + + Element 'ram:Description' must occur exactly 1 times. + + Element 'ram:Value' must occur exactly 1 times. + + + + + + Attribute '@unitCode' is required in this context. + + + + + + Attribute '@unitCode' is required in this context. + + + + + + Attribute '@unitCode' is required in this context. + + + + + + Attribute '@listID' is required in this context. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Element 'ram:ManufacturerAssignedID' may occur at maximum 1 times. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Coded allowance reasons MUST belong to the UNCL 5189 code list + + Coded charge reasons MUST belong to the UNCL 7161 code list + + + + + + Coded allowance reasons MUST belong to the UNCL 5189 code list + + Coded charge reasons MUST belong to the UNCL 7161 code list + + + diff --git a/validator/src/main/resources/schematron/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_EXTENDED.sch b/validator/src/main/resources/schematron/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_EXTENDED.sch new file mode 100644 index 00000000..29f7796c --- /dev/null +++ b/validator/src/main/resources/schematron/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_EXTENDED.sch @@ -0,0 +1,1243 @@ + + + Schema for SCRDMCCBDACIOMessageStructure_100pD20B; D20B; Extended + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + Attribute '@format' is required in this context. + + + + + + Attribute '@format' is required in this context. + + + + + + Element 'ram:ID' must occur exactly 1 times. + + + + + + Element 'ram:ID' must occur exactly 1 times. + + + + + + Element 'ram:CatalogueReferencedDocument' may occur at maximum 1 times. + + + + + + Element 'ram:Name' may occur at maximum 1 times. + + + + + + Attribute '@mimeCode' is required in this context. + + Attribute '@filename' is required in this context. + + + + + + Attribute '@format' is required in this context. + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + Attribute '@format' is required in this context. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + Attribute '@format' is required in this context. + + + + + + Element 'ram:DefinedTradeContact' may occur at maximum 1 times. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:Name' must occur exactly 1 times. + + Element 'ram:PostalTradeAddress' must occur exactly 1 times. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + Attribute '@format' is required in this context. + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + Attribute '@format' is required in this context. + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + Attribute '@format' is required in this context. + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + Attribute '@format' is required in this context. + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + Attribute '@format' is required in this context. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + Attribute '@format' is required in this context. + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + Attribute '@format' is required in this context. + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + Attribute '@format' is required in this context. + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + Attribute '@format' is required in this context. + + + + + + Element 'ram:PlannedDespatchSupplyChainEvent' may occur at maximum 1 times. + + Element 'ram:PlannedDeliverySupplyChainEvent' may occur at maximum 1 times. + + + + + + Attribute '@format' is required in this context. + + + + + + Attribute '@format' is required in this context. + + + + + + Attribute '@format' is required in this context. + + + + + + Attribute '@format' is required in this context. + + + + + + Attribute '@format' is required in this context. + + + + + + Attribute '@format' is required in this context. + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:Name' must occur exactly 1 times. + + Element 'ram:PostalTradeAddress' must occur exactly 1 times. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:PurchaseSpecifiedTradeAccountingAccount' may occur at maximum 1 times. + + + + + + Element 'ram:CalculatedAmount' must occur exactly 1 times. + + Element 'ram:BasisAmount' must occur exactly 1 times. + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:Description' must occur at least 1 times. + + + + + + Attribute '@currencyID' is required in this context. + + + + + + Element 'ram:BuyerReference' may occur at maximum 1 times. + + Element 'ram:RequisitionReferencedDocument' may occur at maximum 1 times. + + Element 'ram:GrossPriceProductTradePrice' may occur at maximum 1 times. + + + + + + Element 'ram:Name' may occur at maximum 1 times. + + + + + + Attribute '@mimeCode' is required in this context. + + Attribute '@filename' is required in this context. + + + + + + Attribute '@format' is required in this context. + + + + + + Element 'ram:LineID' must occur exactly 1 times. + + + + + + Element 'ram:LineID' must occur exactly 1 times. + + + + + + Element 'ram:DefinedTradeContact' must occur exactly 1 times. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Attribute '@format' is required in this context. + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + Attribute '@format' is required in this context. + + + + + + Attribute '@unitCode' is required in this context. + + + + + + Attribute '@format' is required in this context. + + + + + + Attribute '@format' is required in this context. + + + + + + Attribute '@unitCode' is required in this context. + + + + + + Attribute '@format' is required in this context. + + + + + + Attribute '@format' is required in this context. + + + + + + Attribute '@format' is required in this context. + + + + + + Attribute '@unitCode' is required in this context. + + + + + + Attribute '@format' is required in this context. + + + + + + Attribute '@format' is required in this context. + + + + + + Attribute '@format' is required in this context. + + + + + + Attribute '@unitCode' is required in this context. + + + + + + Attribute '@unitCode' is required in this context. + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:Name' must occur exactly 1 times. + + Element 'ram:PostalTradeAddress' must occur exactly 1 times. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + Element 'ram:ApplicableTradeTax' may occur at maximum 1 times. + + + + + + Element 'ram:ManufacturerAssignedID' may occur at maximum 1 times. + + Element 'ram:GrossWeightMeasure' may occur at maximum 1 times. + + Element 'ram:ApplicableSupplyChainPackaging' may occur at maximum 1 times. + + Element 'ram:OriginTradeCountry' may occur at maximum 1 times. + + Element 'ram:LinearSpatialDimension' may occur at maximum 1 times. + + Element 'ram:MinimumLinearSpatialDimension' may occur at maximum 1 times. + + Element 'ram:MaximumLinearSpatialDimension' may occur at maximum 1 times. + + Element 'ram:ManufacturerTradeParty' may occur at maximum 1 times. + + Element 'ram:MSDSReferenceReferencedDocument' may occur at maximum 1 times. + + + + + + Element 'ram:Name' may occur at maximum 1 times. + + + + + + Attribute '@mimeCode' is required in this context. + + Attribute '@filename' is required in this context. + + + + + + Attribute '@unitCode' is required in this context. + + + + + + Attribute '@unitCode' is required in this context. + + + + + + Attribute '@unitCode' is required in this context. + + + + + + Attribute '@listID' is required in this context. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Attribute '@unitCode' is required in this context. + + + + + + Element 'ram:ManufacturerAssignedID' may occur at maximum 1 times. + + + + + + Attribute '@schemeID' is required in this context. + + + + + + Coded allowance reasons MUST belong to the UNCL 5189 code list + + Coded charge reasons MUST belong to the UNCL 7161 code list + + + + + + Coded allowance reasons MUST belong to the UNCL 5189 code list + + Coded charge reasons MUST belong to the UNCL 7161 code list + + + diff --git a/validator/src/main/resources/xslt/OX_10/basic/SCRDMCCBDACIOMessageStructure_100pD20B_BASIC-compiled.xsl b/validator/src/main/resources/xslt/OX_10/basic/SCRDMCCBDACIOMessageStructure_100pD20B_BASIC-compiled.xsl new file mode 100644 index 00000000..f3eaaed1 --- /dev/null +++ b/validator/src/main/resources/xslt/OX_10/basic/SCRDMCCBDACIOMessageStructure_100pD20B_BASIC-compiled.xsl @@ -0,0 +1,1796 @@ + + + + + + + + + + + + + + + + + + + + + + + / + + + + + [] + + + *[local-name()=' + + '] + + [] + + + + + / + + @ + + + @*[local-name()=' + + ' and namespace-uri()=' + + '] + + + + + + / + text() + + [ + + ] + + + + / + comment() + + [ + + ] + + + + / + processing-instruction() + + [ + + ] + + + + + + / + + + [ + + ] + + + + /@ + + + + + + + / + + + [ + + ] + + + + /@ + + + + + + + + + + + + + + + + + + + + + + + . + + + + U + + U + + + + U. + + n + + + + U. + + _ + + _ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:Content' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:ID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:ID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CatalogueReferencedDocument' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + + + + Element 'ram:DefinedTradeContact' may occur at maximum 1 times. + + + + + + + + + Element 'ram:PostalTradeAddress' must occur exactly 1 times. + + + + + + + + + Element 'ram:SpecifiedTaxRegistration' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + + + + Element 'ram:DefinedTradeContact' may occur at maximum 1 times. + + + + + + + + + Element 'ram:SpecifiedTaxRegistration' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:PlannedDespatchSupplyChainEvent' may occur at maximum 1 times. + + + + + + + + + Element 'ram:PlannedDeliverySupplyChainEvent' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:DefinedTradeContact' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + + + + Element 'ram:DefinedTradeContact' may occur at maximum 1 times. + + + + + + + + + Element 'ram:PostalTradeAddress' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:PurchaseSpecifiedTradeAccountingAccount' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:TaxTotalAmount' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@currencyID' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:Content' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:BuyerReference' may occur at maximum 1 times. + + + + + + + + + Element 'ram:RequisitionReferencedDocument' may occur at maximum 1 times. + + + + + + + + + Element 'ram:GrossPriceProductTradePrice' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:LineID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:LineID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@unitCode' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@unitCode' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@unitCode' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:ApplicableTradeTax' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:GlobalID' may occur at maximum 1 times. + + + + + + + + + Element 'ram:ManufacturerAssignedID' may occur at maximum 1 times. + + + + + + + + + Element 'ram:GrossWeightMeasure' may occur at maximum 1 times. + + + + + + + + + Element 'ram:ApplicableSupplyChainPackaging' may occur at maximum 1 times. + + + + + + + + + Element 'ram:OriginTradeCountry' may occur at maximum 1 times. + + + + + + + + + Element 'ram:LinearSpatialDimension' may occur at maximum 1 times. + + + + + + + + + Element 'ram:MinimumLinearSpatialDimension' may occur at maximum 1 times. + + + + + + + + + Element 'ram:MaximumLinearSpatialDimension' may occur at maximum 1 times. + + + + + + + + + Element 'ram:ManufacturerTradeParty' may occur at maximum 1 times. + + + + + + + + + Element 'ram:MSDSReferenceReferencedDocument' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:ManufacturerAssignedID' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Coded allowance reasons MUST belong to the UNCL 5189 code list + + + + + + + + + Coded charge reasons MUST belong to the UNCL 7161 code list + + + + + + + + + + + + + + + + + + + Coded allowance reasons MUST belong to the UNCL 5189 code list + + + + + + + + + Coded charge reasons MUST belong to the UNCL 7161 code list + + + + + + + + + + diff --git a/validator/src/main/resources/xslt/OX_10/basic/SCRDMCCBDACIOMessageStructure_100pD20B_BASIC.xslt b/validator/src/main/resources/xslt/OX_10/basic/SCRDMCCBDACIOMessageStructure_100pD20B_BASIC.xslt new file mode 100644 index 00000000..bf78d33b --- /dev/null +++ b/validator/src/main/resources/xslt/OX_10/basic/SCRDMCCBDACIOMessageStructure_100pD20B_BASIC.xslt @@ -0,0 +1,2591 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + / + + + + + [] + + + *[local-name()=' + + '] + + [] + + + + + / + + @ + + + @*[local-name()=' + + ' and namespace-uri()=' + + '] + + + + + + + + + / + + + [ + + ] + + + + /@ + + + + + + + + / + + + [ + + ] + + + + /@ + + + + + + + + + + + + + + + + + + + + + + + + . + + + + +U + + U + + + + U. + + n + + + + U. + + _ + + _ + + + + + + + + +   +   +   + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Schema for SCRDMCCBDACIOMessageStructure_100pD20B; D20B; Basic + + + + + + + + + + + + + + + + + + Element 'ram:Content' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:ID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:ID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CatalogueReferencedDocument' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + + + + + + + + + Element 'ram:DefinedTradeContact' may occur at maximum 1 times. + + + + + + + + + + + + + + Element 'ram:PostalTradeAddress' must occur exactly 1 times. + + + + + + + + + + + + + + Element 'ram:SpecifiedTaxRegistration' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + + + + + + + + + Element 'ram:DefinedTradeContact' may occur at maximum 1 times. + + + + + + + + + + + + + + Element 'ram:SpecifiedTaxRegistration' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:PlannedDespatchSupplyChainEvent' may occur at maximum 1 times. + + + + + + + + + + + + + + Element 'ram:PlannedDeliverySupplyChainEvent' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:DefinedTradeContact' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + + + + + + + + + Element 'ram:DefinedTradeContact' may occur at maximum 1 times. + + + + + + + + + + + + + + Element 'ram:PostalTradeAddress' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:PurchaseSpecifiedTradeAccountingAccount' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:TaxTotalAmount' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@currencyID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:Content' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:BuyerReference' may occur at maximum 1 times. + + + + + + + + + + + + + + Element 'ram:RequisitionReferencedDocument' may occur at maximum 1 times. + + + + + + + + + + + + + + Element 'ram:GrossPriceProductTradePrice' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:LineID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:LineID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@unitCode' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@unitCode' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@unitCode' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:ApplicableTradeTax' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:GlobalID' may occur at maximum 1 times. + + + + + + + + + + + + + + Element 'ram:ManufacturerAssignedID' may occur at maximum 1 times. + + + + + + + + + + + + + + Element 'ram:GrossWeightMeasure' may occur at maximum 1 times. + + + + + + + + + + + + + + Element 'ram:ApplicableSupplyChainPackaging' may occur at maximum 1 times. + + + + + + + + + + + + + + Element 'ram:OriginTradeCountry' may occur at maximum 1 times. + + + + + + + + + + + + + + Element 'ram:LinearSpatialDimension' may occur at maximum 1 times. + + + + + + + + + + + + + + Element 'ram:MinimumLinearSpatialDimension' may occur at maximum 1 times. + + + + + + + + + + + + + + Element 'ram:MaximumLinearSpatialDimension' may occur at maximum 1 times. + + + + + + + + + + + + + + Element 'ram:ManufacturerTradeParty' may occur at maximum 1 times. + + + + + + + + + + + + + + Element 'ram:MSDSReferenceReferencedDocument' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:ManufacturerAssignedID' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Coded allowance reasons MUST belong to the UNCL 5189 code list + + + + + + + + + + + + + + Coded charge reasons MUST belong to the UNCL 7161 code list + + + + + + + + + + + + + + + + + + + + + + + + + + + Coded allowance reasons MUST belong to the UNCL 5189 code list + + + + + + + + + + + + + + Coded charge reasons MUST belong to the UNCL 7161 code list + + + + + + + + + + diff --git a/validator/src/main/resources/xslt/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_COMFORT-compiled.xsl b/validator/src/main/resources/xslt/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_COMFORT-compiled.xsl new file mode 100644 index 00000000..94053d2b --- /dev/null +++ b/validator/src/main/resources/xslt/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_COMFORT-compiled.xsl @@ -0,0 +1,2721 @@ + + + + + + + + + + + + + + + + + + + + + + + / + + + + + [] + + + *[local-name()=' + + '] + + [] + + + + + / + + @ + + + @*[local-name()=' + + ' and namespace-uri()=' + + '] + + + + + + / + text() + + [ + + ] + + + + / + comment() + + [ + + ] + + + + / + processing-instruction() + + [ + + ] + + + + + + / + + + [ + + ] + + + + /@ + + + + + + + / + + + [ + + ] + + + + /@ + + + + + + + + + + + + + + + + + + + + + + + . + + + + U + + U + + + + U. + + n + + + + U. + + _ + + _ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:Content' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:ID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:ID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CatalogueReferencedDocument' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:Name' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@mimeCode' is required in this context. + + + + + + + + + Attribute '@filename' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:SpecifiedTaxRegistration' may occur at maximum 2 times. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + + + + Element 'ram:PostalTradeAddress' must occur exactly 1 times. + + + + + + + + + Element 'ram:SpecifiedTaxRegistration' may occur at maximum 2 times. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + + + + Element 'ram:SpecifiedTaxRegistration' may occur at maximum 2 times. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:PlannedDespatchSupplyChainEvent' may occur at maximum 1 times. + + + + + + + + + Element 'ram:PlannedDeliverySupplyChainEvent' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + + + + Element 'ram:SpecifiedTaxRegistration' may occur at maximum 2 times. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + + + + Element 'ram:PostalTradeAddress' must occur exactly 1 times. + + + + + + + + + Element 'ram:SpecifiedTaxRegistration' may occur at maximum 2 times. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:PurchaseSpecifiedTradeAccountingAccount' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + + + + Element 'ram:SpecifiedTaxRegistration' may occur at maximum 2 times. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:Description' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:TaxTotalAmount' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@currencyID' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:Information' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:Content' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:BuyerReference' may occur at maximum 1 times. + + + + + + + + + Element 'ram:RequisitionReferencedDocument' may occur at maximum 1 times. + + + + + + + + + Element 'ram:GrossPriceProductTradePrice' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:Name' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@mimeCode' is required in this context. + + + + + + + + + Attribute '@filename' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:LineID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:LineID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@unitCode' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:RequestedDespatchSupplyChainEvent' may occur at maximum 1 times. + + + + + + + + + Element 'ram:RequestedDeliverySupplyChainEvent' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@unitCode' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@unitCode' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:ApplicableTradeTax' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:GlobalID' may occur at maximum 1 times. + + + + + + + + + Element 'ram:ManufacturerAssignedID' may occur at maximum 1 times. + + + + + + + + + Element 'ram:GrossWeightMeasure' may occur at maximum 1 times. + + + + + + + + + Element 'ram:ApplicableSupplyChainPackaging' may occur at maximum 1 times. + + + + + + + + + Element 'ram:OriginTradeCountry' may occur at maximum 1 times. + + + + + + + + + Element 'ram:LinearSpatialDimension' may occur at maximum 1 times. + + + + + + + + + Element 'ram:MinimumLinearSpatialDimension' may occur at maximum 1 times. + + + + + + + + + Element 'ram:MaximumLinearSpatialDimension' may occur at maximum 1 times. + + + + + + + + + Element 'ram:ManufacturerTradeParty' may occur at maximum 1 times. + + + + + + + + + Element 'ram:MSDSReferenceReferencedDocument' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:Name' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@mimeCode' is required in this context. + + + + + + + + + Attribute '@filename' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:Description' must occur exactly 1 times. + + + + + + + + + Element 'ram:Value' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@unitCode' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@unitCode' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@unitCode' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@listID' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:ManufacturerAssignedID' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Coded allowance reasons MUST belong to the UNCL 5189 code list + + + + + + + + + Coded charge reasons MUST belong to the UNCL 7161 code list + + + + + + + + + + + + + + + + + + + Coded allowance reasons MUST belong to the UNCL 5189 code list + + + + + + + + + Coded charge reasons MUST belong to the UNCL 7161 code list + + + + + + + + + + diff --git a/validator/src/main/resources/xslt/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_COMFORT.xslt b/validator/src/main/resources/xslt/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_COMFORT.xslt new file mode 100644 index 00000000..b058b1d9 --- /dev/null +++ b/validator/src/main/resources/xslt/OX_10/comfort/SCRDMCCBDACIOMessageStructure_100pD20B_COMFORT.xslt @@ -0,0 +1,4021 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + / + + + + + [] + + + *[local-name()=' + + '] + + [] + + + + + / + + @ + + + @*[local-name()=' + + ' and namespace-uri()=' + + '] + + + + + + + + + / + + + [ + + ] + + + + /@ + + + + + + + + / + + + [ + + ] + + + + /@ + + + + + + + + + + + + + + + + + + + + + + + + . + + + + +U + + U + + + + U. + + n + + + + U. + + _ + + _ + + + + + + + + +   +   +   + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Schema for SCRDMCCBDACIOMessageStructure_100pD20B; D20B; Comfort + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:Content' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:ID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:ID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CatalogueReferencedDocument' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:Name' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@mimeCode' is required in this context. + + + + + + + + + + + + + + Attribute '@filename' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:SpecifiedTaxRegistration' may occur at maximum 2 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + + + + + + + + + Element 'ram:PostalTradeAddress' must occur exactly 1 times. + + + + + + + + + + + + + + Element 'ram:SpecifiedTaxRegistration' may occur at maximum 2 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + + + + + + + + + Element 'ram:SpecifiedTaxRegistration' may occur at maximum 2 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:PlannedDespatchSupplyChainEvent' may occur at maximum 1 times. + + + + + + + + + + + + + + Element 'ram:PlannedDeliverySupplyChainEvent' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + + + + + + + + + Element 'ram:SpecifiedTaxRegistration' may occur at maximum 2 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + + + + + + + + + Element 'ram:PostalTradeAddress' must occur exactly 1 times. + + + + + + + + + + + + + + Element 'ram:SpecifiedTaxRegistration' may occur at maximum 2 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:PurchaseSpecifiedTradeAccountingAccount' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + + + + + + + + + Element 'ram:SpecifiedTaxRegistration' may occur at maximum 2 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:Description' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:TaxTotalAmount' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@currencyID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:Information' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:Content' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:BuyerReference' may occur at maximum 1 times. + + + + + + + + + + + + + + Element 'ram:RequisitionReferencedDocument' may occur at maximum 1 times. + + + + + + + + + + + + + + Element 'ram:GrossPriceProductTradePrice' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:Name' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@mimeCode' is required in this context. + + + + + + + + + + + + + + Attribute '@filename' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:LineID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:LineID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@unitCode' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:RequestedDespatchSupplyChainEvent' may occur at maximum 1 times. + + + + + + + + + + + + + + Element 'ram:RequestedDeliverySupplyChainEvent' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@unitCode' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@unitCode' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:ApplicableTradeTax' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:GlobalID' may occur at maximum 1 times. + + + + + + + + + + + + + + Element 'ram:ManufacturerAssignedID' may occur at maximum 1 times. + + + + + + + + + + + + + + Element 'ram:GrossWeightMeasure' may occur at maximum 1 times. + + + + + + + + + + + + + + Element 'ram:ApplicableSupplyChainPackaging' may occur at maximum 1 times. + + + + + + + + + + + + + + Element 'ram:OriginTradeCountry' may occur at maximum 1 times. + + + + + + + + + + + + + + Element 'ram:LinearSpatialDimension' may occur at maximum 1 times. + + + + + + + + + + + + + + Element 'ram:MinimumLinearSpatialDimension' may occur at maximum 1 times. + + + + + + + + + + + + + + Element 'ram:MaximumLinearSpatialDimension' may occur at maximum 1 times. + + + + + + + + + + + + + + Element 'ram:ManufacturerTradeParty' may occur at maximum 1 times. + + + + + + + + + + + + + + Element 'ram:MSDSReferenceReferencedDocument' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:Name' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@mimeCode' is required in this context. + + + + + + + + + + + + + + Attribute '@filename' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:Description' must occur exactly 1 times. + + + + + + + + + + + + + + Element 'ram:Value' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@unitCode' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@unitCode' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@unitCode' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@listID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:ManufacturerAssignedID' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Coded allowance reasons MUST belong to the UNCL 5189 code list + + + + + + + + + + + + + + Coded charge reasons MUST belong to the UNCL 7161 code list + + + + + + + + + + + + + + + + + + + + + + + + + + + Coded allowance reasons MUST belong to the UNCL 5189 code list + + + + + + + + + + + + + + Coded charge reasons MUST belong to the UNCL 7161 code list + + + + + + + + + + diff --git a/validator/src/main/resources/xslt/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_EXTENDED-compiled.xsl b/validator/src/main/resources/xslt/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_EXTENDED-compiled.xsl new file mode 100644 index 00000000..6bd537f7 --- /dev/null +++ b/validator/src/main/resources/xslt/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_EXTENDED-compiled.xsl @@ -0,0 +1,4317 @@ + + + + + + + + + + + + + + + + + + + + + + + / + + + + + [] + + + *[local-name()=' + + '] + + [] + + + + + / + + @ + + + @*[local-name()=' + + ' and namespace-uri()=' + + '] + + + + + + / + text() + + [ + + ] + + + + / + comment() + + [ + + ] + + + + / + processing-instruction() + + [ + + ] + + + + + + / + + + [ + + ] + + + + /@ + + + + + + + / + + + [ + + ] + + + + /@ + + + + + + + + + + + + + + + + + + + + + + + . + + + + U + + U + + + + U. + + n + + + + U. + + _ + + _ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:ID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:ID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CatalogueReferencedDocument' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:Name' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@mimeCode' is required in this context. + + + + + + + + + Attribute '@filename' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:DefinedTradeContact' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + + + + Element 'ram:PostalTradeAddress' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:PlannedDespatchSupplyChainEvent' may occur at maximum 1 times. + + + + + + + + + Element 'ram:PlannedDeliverySupplyChainEvent' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + + + + Element 'ram:PostalTradeAddress' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:PurchaseSpecifiedTradeAccountingAccount' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CalculatedAmount' must occur exactly 1 times. + + + + + + + + + Element 'ram:BasisAmount' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:Description' must occur at least 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@currencyID' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:BuyerReference' may occur at maximum 1 times. + + + + + + + + + Element 'ram:RequisitionReferencedDocument' may occur at maximum 1 times. + + + + + + + + + Element 'ram:GrossPriceProductTradePrice' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:Name' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@mimeCode' is required in this context. + + + + + + + + + Attribute '@filename' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:LineID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:LineID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:DefinedTradeContact' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@unitCode' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@unitCode' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@unitCode' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@unitCode' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@unitCode' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + + + + Element 'ram:PostalTradeAddress' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:ApplicableTradeTax' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:ManufacturerAssignedID' may occur at maximum 1 times. + + + + + + + + + Element 'ram:GrossWeightMeasure' may occur at maximum 1 times. + + + + + + + + + Element 'ram:ApplicableSupplyChainPackaging' may occur at maximum 1 times. + + + + + + + + + Element 'ram:OriginTradeCountry' may occur at maximum 1 times. + + + + + + + + + Element 'ram:LinearSpatialDimension' may occur at maximum 1 times. + + + + + + + + + Element 'ram:MinimumLinearSpatialDimension' may occur at maximum 1 times. + + + + + + + + + Element 'ram:MaximumLinearSpatialDimension' may occur at maximum 1 times. + + + + + + + + + Element 'ram:ManufacturerTradeParty' may occur at maximum 1 times. + + + + + + + + + Element 'ram:MSDSReferenceReferencedDocument' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + Element 'ram:Name' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@mimeCode' is required in this context. + + + + + + + + + Attribute '@filename' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@unitCode' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@unitCode' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@unitCode' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@listID' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Attribute '@unitCode' is required in this context. + + + + + + + + + + + + + + + + + + + Element 'ram:ManufacturerAssignedID' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + Coded allowance reasons MUST belong to the UNCL 5189 code list + + + + + + + + + Coded charge reasons MUST belong to the UNCL 7161 code list + + + + + + + + + + + + + + + + + + + Coded allowance reasons MUST belong to the UNCL 5189 code list + + + + + + + + + Coded charge reasons MUST belong to the UNCL 7161 code list + + + + + + + + + + diff --git a/validator/src/main/resources/xslt/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_EXTENDED.xslt b/validator/src/main/resources/xslt/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_EXTENDED.xslt new file mode 100644 index 00000000..ec178149 --- /dev/null +++ b/validator/src/main/resources/xslt/OX_10/extended/SCRDMCCBDACIOMessageStructure_100pD20B_EXTENDED.xslt @@ -0,0 +1,6487 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + / + + + + + [] + + + *[local-name()=' + + '] + + [] + + + + + / + + @ + + + @*[local-name()=' + + ' and namespace-uri()=' + + '] + + + + + + + + + / + + + [ + + ] + + + + /@ + + + + + + + + / + + + [ + + ] + + + + /@ + + + + + + + + + + + + + + + + + + + + + + + + . + + + + +U + + U + + + + U. + + n + + + + U. + + _ + + _ + + + + + + + + +   +   +   + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Schema for SCRDMCCBDACIOMessageStructure_100pD20B; D20B; Extended + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:ID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:ID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CatalogueReferencedDocument' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:Name' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@mimeCode' is required in this context. + + + + + + + + + + + + + + Attribute '@filename' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:DefinedTradeContact' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + + + + + + + + + Element 'ram:PostalTradeAddress' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:PlannedDespatchSupplyChainEvent' may occur at maximum 1 times. + + + + + + + + + + + + + + Element 'ram:PlannedDeliverySupplyChainEvent' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + + + + + + + + + Element 'ram:PostalTradeAddress' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:PurchaseSpecifiedTradeAccountingAccount' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CalculatedAmount' must occur exactly 1 times. + + + + + + + + + + + + + + Element 'ram:BasisAmount' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:Description' must occur at least 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@currencyID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:BuyerReference' may occur at maximum 1 times. + + + + + + + + + + + + + + Element 'ram:RequisitionReferencedDocument' may occur at maximum 1 times. + + + + + + + + + + + + + + Element 'ram:GrossPriceProductTradePrice' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:Name' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@mimeCode' is required in this context. + + + + + + + + + + + + + + Attribute '@filename' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:LineID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:LineID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:DefinedTradeContact' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:IssuerAssignedID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@unitCode' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@unitCode' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@unitCode' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@format' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@unitCode' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@unitCode' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:Name' must occur exactly 1 times. + + + + + + + + + + + + + + Element 'ram:PostalTradeAddress' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:CompleteNumber' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:URIID' must occur exactly 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:ApplicableTradeTax' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:ManufacturerAssignedID' may occur at maximum 1 times. + + + + + + + + + + + + + + Element 'ram:GrossWeightMeasure' may occur at maximum 1 times. + + + + + + + + + + + + + + Element 'ram:ApplicableSupplyChainPackaging' may occur at maximum 1 times. + + + + + + + + + + + + + + Element 'ram:OriginTradeCountry' may occur at maximum 1 times. + + + + + + + + + + + + + + Element 'ram:LinearSpatialDimension' may occur at maximum 1 times. + + + + + + + + + + + + + + Element 'ram:MinimumLinearSpatialDimension' may occur at maximum 1 times. + + + + + + + + + + + + + + Element 'ram:MaximumLinearSpatialDimension' may occur at maximum 1 times. + + + + + + + + + + + + + + Element 'ram:ManufacturerTradeParty' may occur at maximum 1 times. + + + + + + + + + + + + + + Element 'ram:MSDSReferenceReferencedDocument' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:Name' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@mimeCode' is required in this context. + + + + + + + + + + + + + + Attribute '@filename' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@unitCode' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@unitCode' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@unitCode' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@listID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@unitCode' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Element 'ram:ManufacturerAssignedID' may occur at maximum 1 times. + + + + + + + + + + + + + + + + + + + + + + + + + + + Attribute '@schemeID' is required in this context. + + + + + + + + + + + + + + + + + + + + + + + + + + + Coded allowance reasons MUST belong to the UNCL 5189 code list + + + + + + + + + + + + + + Coded charge reasons MUST belong to the UNCL 7161 code list + + + + + + + + + + + + + + + + + + + + + + + + + + + Coded allowance reasons MUST belong to the UNCL 5189 code list + + + + + + + + + + + + + + Coded charge reasons MUST belong to the UNCL 7161 code list + + + + + + + + + + diff --git a/validator/src/main/resources/xslt/UBL_21/EN16931-UBL-validation.xsl b/validator/src/main/resources/xslt/UBL_21/EN16931-UBL-validation.xsl new file mode 100644 index 00000000..9983fe94 --- /dev/null +++ b/validator/src/main/resources/xslt/UBL_21/EN16931-UBL-validation.xsl @@ -0,0 +1,15378 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + / + + + + + + *: + + [namespace-uri()=' + + '] + + + + [ + + ] + + + + / + + @ + + + @*[local-name()=' + + ' and namespace-uri()=' + + '] + + + + + + + + + / + + + [ + + ] + + + + /@ + + + + + + + / + + + [ + + ] + + + + /@ + + + + + + + + + + + + + + + + + + + + + + + + . + + + + + U + + U + + + + U. + + n + + + + U. + + _ + + _ + + + + + + + + + +   +   +   + + + + + + + + + + + + + + + UBL-model + UBL-model + + + + + + + + UBL-syntax + UBL-syntax + + + + + + + + Codesmodel + Codesmodel + + + + + + + + EN16931 model bound to UBL + + + + + + + + + + + + + BR-52 + fatal + + + + [BR-52]-Each Additional supporting document (BG-24) shall contain a Supporting document reference (BT-122). + + + + + + + + + + + + + + + BR-CO-25 + fatal + + + + [BR-CO-25]-In case the Amount due for payment (BT-115) is positive, either the Payment due date (BT-9) or the Payment terms (BT-20) shall be present. + + + + + + + + + + + + + + + BR-63 + fatal + + + + [BR-63]-The Buyer electronic address (BT-49) shall have a Scheme identifier. + + + + + + + + + + + + + + + BR-11 + fatal + + + + [BR-11]-The Buyer postal address shall contain a Buyer country code (BT-55). + + + + + + + + + + + + + + + BR-51 + fatal + + + + [BR-51]-The last 4 to 6 digits of the Payment card primary account number (BT-87) shall be present if Payment card information (BG-18) is provided in the Invoice. + + + + + + + + + + + + + + + BR-57 + fatal + + + + [BR-57]-Each Deliver to address (BG-15) shall contain a Deliver to country code (BT-80). + + + + + + + + + + + + + + + BR-31 + fatal + + + + [BR-31]-Each Document level allowance (BG-20) shall have a Document level allowance amount (BT-92). + + + + + + + + + + BR-32 + fatal + + + + [BR-32]-Each Document level allowance (BG-20) shall have a Document level allowance VAT category code (BT-95). + + + + + + + + + + BR-33 + fatal + + + + [BR-33]-Each Document level allowance (BG-20) shall have a Document level allowance reason (BT-97) or a Document level allowance reason code (BT-98). + + + + + + + + + + BR-CO-05 + fatal + + + + [BR-CO-05]-Document level allowance reason code (BT-98) and Document level allowance reason (BT-97) shall indicate the same type of allowance. + + + + + + + + + + BR-CO-21 + fatal + + + + [BR-CO-21]-Each Document level allowance (BG-20) shall contain a Document level allowance reason (BT-97) or a Document level allowance reason code (BT-98), or both. + + + + + + + + + + BR-DEC-01 + fatal + + + + [BR-DEC-01]-The allowed maximum number of decimals for the Document level allowance amount (BT-92) is 2. + + + + + + + + + + BR-DEC-02 + fatal + + + + [BR-DEC-02]-The allowed maximum number of decimals for the Document level allowance base amount (BT-93) is 2. + + + + + + + + + + + + + + + BR-36 + fatal + + + + [BR-36]-Each Document level charge (BG-21) shall have a Document level charge amount (BT-99). + + + + + + + + + + BR-37 + fatal + + + + [BR-37]-Each Document level charge (BG-21) shall have a Document level charge VAT category code (BT-102). + + + + + + + + + + BR-38 + fatal + + + + [BR-38]-Each Document level charge (BG-21) shall have a Document level charge reason (BT-104) or a Document level charge reason code (BT-105). + + + + + + + + + + BR-CO-06 + fatal + + + + [BR-CO-06]-Document level charge reason code (BT-105) and Document level charge reason (BT-104) shall indicate the same type of charge. + + + + + + + + + + BR-CO-22 + fatal + + + + [BR-CO-22]-Each Document level charge (BG-21) shall contain a Document level charge reason (BT-104) or a Document level charge reason code (BT-105), or both. + + + + + + + + + + BR-DEC-05 + fatal + + + + [BR-DEC-05]-The allowed maximum number of decimals for the Document level charge amount (BT-99) is 2. + + + + + + + + + + BR-DEC-06 + fatal + + + + [BR-DEC-06]-The allowed maximum number of decimals for the Document level charge base amount (BT-100) is 2. + + + + + + + + + + + + + + + BR-12 + fatal + + + + [BR-12]-An Invoice shall have the Sum of Invoice line net amount (BT-106). + + + + + + + + + + BR-13 + fatal + + + + [BR-13]-An Invoice shall have the Invoice total amount without VAT (BT-109). + + + + + + + + + + BR-14 + fatal + + + + [BR-14]-An Invoice shall have the Invoice total amount with VAT (BT-112). + + + + + + + + + + BR-15 + fatal + + + + [BR-15]-An Invoice shall have the Amount due for payment (BT-115). + + + + + + + + + + BR-CO-10 + fatal + + + + [BR-CO-10]-Sum of Invoice line net amount (BT-106) = Σ Invoice line net amount (BT-131). + + + + + + + + + + BR-CO-11 + fatal + + + + [BR-CO-11]-Sum of allowances on document level (BT-107) = Σ Document level allowance amount (BT-92). + + + + + + + + + + BR-CO-12 + fatal + + + + [BR-CO-12]-Sum of charges on document level (BT-108) = Σ Document level charge amount (BT-99). + + + + + + + + + + BR-CO-13 + fatal + + + + [BR-CO-13]-Invoice total amount without VAT (BT-109) = Σ Invoice line net amount (BT-131) - Sum of allowances on document level (BT-107) + Sum of charges on document level (BT-108). + + + + + + + + + + BR-CO-16 + fatal + + + + [BR-CO-16]-Amount due for payment (BT-115) = Invoice total amount with VAT (BT-112) -Paid amount (BT-113) +Rounding amount (BT-114). + + + + + + + + + + BR-DEC-09 + fatal + + + + [BR-DEC-09]-The allowed maximum number of decimals for the Sum of Invoice line net amount (BT-106) is 2. + + + + + + + + + + BR-DEC-10 + fatal + + + + [BR-DEC-10]-The allowed maximum number of decimals for the Sum of allowanced on document level (BT-107) is 2. + + + + + + + + + + BR-DEC-11 + fatal + + + + [BR-DEC-11]-The allowed maximum number of decimals for the Sum of charges on document level (BT-108) is 2. + + + + + + + + + + BR-DEC-12 + fatal + + + + [BR-DEC-12]-The allowed maximum number of decimals for the Invoice total amount without VAT (BT-109) is 2. + + + + + + + + + + BR-DEC-14 + fatal + + + + [BR-DEC-14]-The allowed maximum number of decimals for the Invoice total amount with VAT (BT-112) is 2. + + + + + + + + + + BR-DEC-16 + fatal + + + + [BR-DEC-16]-The allowed maximum number of decimals for the Paid amount (BT-113) is 2. + + + + + + + + + + BR-DEC-17 + fatal + + + + [BR-DEC-17]-The allowed maximum number of decimals for the Rounding amount (BT-114) is 2. + + + + + + + + + + BR-DEC-18 + fatal + + + + [BR-DEC-18]-The allowed maximum number of decimals for the Amount due for payment (BT-115) is 2.  + + + + + + + + + + + + + + + BR-01 + fatal + + + + [BR-01]-An Invoice shall have a Specification identifier (BT-24).    + + + + + + + + + + BR-02 + fatal + + + + [BR-02]-An Invoice shall have an Invoice number (BT-1). + + + + + + + + + + BR-03 + fatal + + + + [BR-03]-An Invoice shall have an Invoice issue date (BT-2). + + + + + + + + + + BR-04 + fatal + + + + [BR-04]-An Invoice shall have an Invoice type code (BT-3). + + + + + + + + + + BR-05 + fatal + + + + [BR-05]-An Invoice shall have an Invoice currency code (BT-5). + + + + + + + + + + BR-06 + fatal + + + + [BR-06]-An Invoice shall contain the Seller name (BT-27). + + + + + + + + + + BR-07 + fatal + + + + [BR-07]-An Invoice shall contain the Buyer name (BT-44). + + + + + + + + + + BR-08 + fatal + + + + [BR-08]-An Invoice shall contain the Seller postal address. + + + + + + + + + + BR-10 + fatal + + + + [BR-10]-An Invoice shall contain the Buyer postal address (BG-8). + + + + + + + + + + BR-16 + fatal + + + + [BR-16]-An Invoice shall have at least one Invoice line (BG-25) + + + + + + + + + + BR-53 + fatal + + + + [BR-53]-If the VAT accounting currency code (BT-6) is present, then the Invoice total VAT amount in accounting currency (BT-111) shall be provided. + + + + + + + + + + BR-66 + fatal + + + + [BR-66]-An Invoice shall contain maximum one Payment Card account (BG-18). + + + + + + + + + + BR-67 + fatal + + + + [BR-67]-An Invoice shall contain maximum one Payment Mandate (BG-19). + + + + + + + + + + BR-AE-01 + fatal + + + + [BR-AE-01]-An Invoice that contains an Invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95 or BT-102) is "Reverse charge" shall contain in the VAT Breakdown (BG-23) exactly one VAT category code (BT-118) equal with "VAT reverse charge". + + + + + + + + + + BR-AE-02 + fatal + + + + [BR-AE-02]-An Invoice that contains an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Reverse charge" shall contain the Seller VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier (BT-48) and/or the Buyer legal registration identifier (BT-47). + + + + + + + + + + BR-AE-03 + fatal + + + + [BR-AE-03]-An Invoice that contains a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Reverse charge" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier (BT-48) and/or the Buyer legal registration identifier (BT-47). + + + + + + + + + + BR-AE-04 + fatal + + + + [BR-AE-04]-An Invoice that contains a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Reverse charge" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier (BT-48) and/or the Buyer legal registration identifier (BT-47). + + + + + + + + + + BR-CO-03 + fatal + + + + [BR-CO-03]-Value added tax point date (BT-7) and Value added tax point date code (BT-8) are mutually exclusive. + + + + + + + + + + BR-CO-15 + fatal + + + + [BR-CO-15]-Invoice total amount with VAT (BT-112) = Invoice total amount without VAT (BT-109) + Invoice total VAT amount (BT-110). + + + + + + + + + + BR-CO-18 + fatal + + + + [BR-CO-18]-An Invoice shall at least have one VAT breakdown group (BG-23). + + + + + + + + + + BR-DEC-13 + fatal + + + + [BR-DEC-13]-The allowed maximum number of decimals for the Invoice total VAT amount (BT-110) is 2. + + + + + + + + + + BR-DEC-15 + fatal + + + + [BR-DEC-15]-The allowed maximum number of decimals for the Invoice total VAT amount in accounting currency (BT-111) is 2. + + + + + + + + + + BR-E-01 + fatal + + + + [BR-E-01]-An Invoice that contains an Invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95 or BT-102) is "Exempt from VAT" shall contain exactly one VAT breakdown (BG-23) with the VAT category code (BT-118) equal to "Exempt from VAT". + + + + + + + + + + BR-E-02 + fatal + + + + [BR-E-02]-An Invoice that contains an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Exempt from VAT" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63). + + + + + + + + + + BR-E-03 + fatal + + + + [BR-E-03]-An Invoice that contains a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Exempt from VAT" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63). + + + + + + + + + + BR-E-04 + fatal + + + + [BR-E-04]-An Invoice that contains a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Exempt from VAT" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63). + + + + + + + + + + BR-G-01 + fatal + + + + [BR-G-01]-An Invoice that contains an Invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95 or BT-102) is "Export outside the EU" shall contain in the VAT breakdown (BG-23) exactly one VAT category code (BT-118) equal with "Export outside the EU". + + + + + + + + + + BR-G-02 + fatal + + + + [BR-G-02]-An Invoice that contains an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Export outside the EU" shall contain the Seller VAT Identifier (BT-31) or the Seller tax representative VAT identifier (BT-63). + + + + + + + + + + BR-G-03 + fatal + + + + [BR-G-03]-An Invoice that contains a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Export outside the EU" shall contain the Seller VAT Identifier (BT-31) or the Seller tax representative VAT identifier (BT-63). + + + + + + + + + + BR-G-04 + fatal + + + + [BR-G-04]-An Invoice that contains a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Export outside the EU" shall contain the Seller VAT Identifier (BT-31) or the Seller tax representative VAT identifier (BT-63). + + + + + + + + + + BR-IC-01 + fatal + + + + [BR-IC-01]-An Invoice that contains an Invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95 or BT-102) is "Intra-community supply" shall contain in the VAT breakdown (BG-23) exactly one VAT category code (BT-118) equal with "Intra-community supply". + + + + + + + + + + BR-IC-02 + fatal + + + + [BR-IC-02]-An Invoice that contains an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Intra-community supply" shall contain the Seller VAT Identifier (BT-31) or the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier (BT-48). + + + + + + + + + + BR-IC-03 + fatal + + + + [BR-IC-03]-An Invoice that contains a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Intra-community supply" shall contain the Seller VAT Identifier (BT-31) or the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier (BT-48). + + + + + + + + + + BR-IC-04 + fatal + + + + [BR-IC-04]-An Invoice that contains a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Intra-community supply" shall contain the Seller VAT Identifier (BT-31) or the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier (BT-48). + + + + + + + + + + BR-IC-11 + fatal + + + + [BR-IC-11]-In an Invoice with a VAT breakdown (BG-23) where the VAT category code (BT-118) is "Intra-community supply" the Actual delivery date (BT-72) or the Invoicing period (BG-14) shall not be blank. + + + + + + + + + + BR-IC-12 + fatal + + + + [BR-IC-12]-In an Invoice with a VAT breakdown (BG-23) where the VAT category code (BT-118) is "Intra-community supply" the Deliver to country code (BT-80) shall not be blank. + + + + + + + + + + BR-IG-01 + fatal + + + + [BR-IG-01]-An Invoice that contains an Invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95 or BT-102) is "IGIC" shall contain in the VAT breakdown (BG-23) at least one VAT category code (BT-118) equal with "IGIC". + + + + + + + + + + BR-IG-02 + fatal + + + + [BR-IG-02]-An Invoice that contains an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "IGIC" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63). + + + + + + + + + + BR-IG-03 + fatal + + + + [BR-IG-03]-An Invoice that contains a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "IGIC" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63). + + + + + + + + + + BR-IG-04 + fatal + + + + [BR-IG-04]-An Invoice that contains a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "IGIC" shall contain the Seller VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63). + + + + + + + + + + BR-IP-01 + fatal + + + + [BR-IP-01]-An Invoice that contains an Invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95 or BT-102) is "IPSI" shall contain in the VAT breakdown (BG-23) at least one VAT category code (BT-118) equal with "IPSI". + + + + + + + + + + BR-IP-02 + fatal + + + + [BR-IP-02]-An Invoice that contains an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "IPSI" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63). + + + + + + + + + + BR-IP-03 + fatal + + + + [BR-IP-03]-An Invoice that contains a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "IPSI" shall contain the Seller VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63). + + + + + + + + + + BR-IP-04 + fatal + + + + [BR-IP-04]-An Invoice that contains a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "IPSI" shall contain the Seller VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63). + + + + + + + + + + BR-O-01 + fatal + + + + [BR-O-01]-An Invoice that contains an Invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95 or BT-102) is "Not subject to VAT" shall contain exactly one VAT breakdown group (BG-23) with the VAT category code (BT-118) equal to "Not subject to VAT". + + + + + + + + + + BR-O-02 + fatal + + + + [BR-O-02]-An Invoice that contains an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Not subject to VAT" shall not contain the Seller VAT identifier (BT-31), the Seller tax representative VAT identifier (BT-63) or the Buyer VAT identifier (BT-48). + + + + + + + + + + BR-O-03 + fatal + + + + [BR-O-03]-An Invoice that contains a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Not subject to VAT" shall not contain the Seller VAT identifier (BT-31), the Seller tax representative VAT identifier (BT-63) or the Buyer VAT identifier (BT-48). + + + + + + + + + + BR-O-04 + fatal + + + + [BR-O-04]-An Invoice that contains a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Not subject to VAT" shall not contain the Seller VAT identifier (BT-31), the Seller tax representative VAT identifier (BT-63) or the Buyer VAT identifier (BT-48). + + + + + + + + + + BR-O-11 + fatal + + + + [BR-O-11]-An Invoice that contains a VAT breakdown group (BG-23) with a VAT category code (BT-118) "Not subject to VAT" shall not contain other VAT breakdown groups (BG-23). + + + + + + + + + + BR-O-12 + fatal + + + + [BR-O-12]-An Invoice that contains a VAT breakdown group (BG-23) with a VAT category code (BT-118) "Not subject to VAT" shall not contain an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is not "Not subject to VAT". + + + + + + + + + + BR-O-13 + fatal + + + + [BR-O-13]-An Invoice that contains a VAT breakdown group (BG-23) with a VAT category code (BT-118) "Not subject to VAT" shall not contain Document level allowances (BG-20) where Document level allowance VAT category code (BT-95) is not "Not subject to VAT". + + + + + + + + + + BR-O-14 + fatal + + + + [BR-O-14]-An Invoice that contains a VAT breakdown group (BG-23) with a VAT category code (BT-118) "Not subject to VAT" shall not contain Document level charges (BG-21) where Document level charge VAT category code (BT-102) is not "Not subject to VAT". + + + + + + + + + + BR-S-01 + fatal + + + + [BR-S-01]-An Invoice that contains an Invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95 or BT-102) is "Standard rated" shall contain in the VAT breakdown (BG-23) at least one VAT category code (BT-118) equal with "Standard rated". + + + + + + + + + + BR-S-02 + fatal + + + + [BR-S-02]-An Invoice that contains an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Standard rated" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63). + + + + + + + + + + BR-S-03 + fatal + + + + [BR-S-03]-An Invoice that contains a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Standard rated" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63). + + + + + + + + + + BR-S-04 + fatal + + + + [BR-S-04]-An Invoice that contains a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Standard rated" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63). + + + + + + + + + + BR-Z-01 + fatal + + + + [BR-Z-01]-An Invoice that contains an Invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95 or BT-102) is "Zero rated" shall contain in the VAT breakdown (BG-23) exactly one VAT category code (BT-118) equal with "Zero rated". + + + + + + + + + + BR-Z-02 + fatal + + + + [BR-Z-02]-An Invoice that contains an Invoice line where the Invoiced item VAT category code (BT-151) is "Zero rated" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63). + + + + + + + + + + BR-Z-03 + fatal + + + + [BR-Z-03]-An Invoice that contains a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Zero rated" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63). + + + + + + + + + + BR-Z-04 + fatal + + + + [BR-Z-04]-An Invoice that contains a Document level charge where the Document level charge VAT category code (BT-102) is "Zero rated" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63). + + + + + + + + + + BR-B-01 + fatal + + + + [BR-B-01]-An Invoice where the VAT category code (BT-151, BT-95 or BT-102) is “Split payment” shall be a domestic Italian invoice. + + + + + + + + + + BR-B-02 + fatal + + + + [BR-B-02]-An Invoice that contains an Invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95 or BT-102) is “Split payment" shall not contain an invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95 or BT-102) is “Standard rated”. + + + + + + + + + + + + + + + BR-21 + fatal + + + + [BR-21]-Each Invoice line (BG-25) shall have an Invoice line identifier (BT-126). + + + + + + + + + + BR-22 + fatal + + + + [BR-22]-Each Invoice line (BG-25) shall have an Invoiced quantity (BT-129). + + + + + + + + + + BR-23 + fatal + + + + [BR-23]-An Invoice line (BG-25) shall have an Invoiced quantity unit of measure code (BT-130). + + + + + + + + + + BR-24 + fatal + + + + [BR-24]-Each Invoice line (BG-25) shall have an Invoice line net amount (BT-131). + + + + + + + + + + BR-25 + fatal + + + + [BR-25]-Each Invoice line (BG-25) shall contain the Item name (BT-153). + + + + + + + + + + BR-26 + fatal + + + + [BR-26]-Each Invoice line (BG-25) shall contain the Item net price (BT-146). + + + + + + + + + + BR-27 + fatal + + + + [BR-27]-The Item net price (BT-146) shall NOT be negative. + + + + + + + + + + BR-28 + fatal + + + + [BR-28]-The Item gross price (BT-148) shall NOT be negative. + + + + + + + + + + BR-CO-04 + fatal + + + + [BR-CO-04]-Each Invoice line (BG-25) shall be categorized with an Invoiced item VAT category code (BT-151). + + + + + + + + + + BR-DEC-23 + fatal + + + + [BR-DEC-23]-The allowed maximum number of decimals for the Invoice line net amount (BT-131) is 2. + + + + + + + + + + + + + + + BR-41 + fatal + + + + [BR-41]-Each Invoice line allowance (BG-27) shall have an Invoice line allowance amount (BT-136). + + + + + + + + + + BR-42 + fatal + + + + [BR-42]-Each Invoice line allowance (BG-27) shall have an Invoice line allowance reason (BT-139) or an Invoice line allowance reason code (BT-140). + + + + + + + + + + BR-CO-07 + fatal + + + + [BR-CO-07]-Invoice line allowance reason code (BT-140) and Invoice line allowance reason (BT-139) shall indicate the same type of allowance reason. + + + + + + + + + + BR-CO-23 + fatal + + + + [BR-CO-23]-Each Invoice line allowance (BG-27) shall contain an Invoice line allowance reason (BT-139) or an Invoice line allowance reason code (BT-140), or both. + + + + + + + + + + BR-DEC-24 + fatal + + + + [BR-DEC-24]-The allowed maximum number of decimals for the Invoice line allowance amount (BT-136) is 2. + + + + + + + + + + BR-DEC-25 + fatal + + + + [BR-DEC-25]-The allowed maximum number of decimals for the Invoice line allowance base amount (BT-137) is 2. + + + + + + + + + + + + + + + BR-43 + fatal + + + + [BR-43]-Each Invoice line charge (BG-28) shall have an Invoice line charge amount (BT-141). + + + + + + + + + + BR-44 + fatal + + + + [BR-44]-Each Invoice line charge shall have an Invoice line charge reason or an invoice line allowance reason code. + + + + + + + + + + BR-CO-08 + fatal + + + + [BR-CO-08]-Invoice line charge reason code (BT-145) and Invoice line charge reason (BT144) shall indicate the same type of charge reason. + + + + + + + + + + BR-CO-24 + fatal + + + + [BR-CO-24]-Each Invoice line charge (BG-28) shall contain an Invoice line charge reason (BT-144) or an Invoice line charge reason code (BT-145), or both. + + + + + + + + + + BR-DEC-27 + fatal + + + + [BR-DEC-27]-The allowed maximum number of decimals for the Invoice line charge amount (BT-141) is 2. + + + + + + + + + + BR-DEC-28 + fatal + + + + [BR-DEC-28]-The allowed maximum number of decimals for the Invoice line charge base amount (BT-142) is 2. + + + + + + + + + + + + + + + BR-30 + fatal + + + + [BR-30]-If both Invoice line period start date (BT-134) and Invoice line period end date (BT-135) are given then the Invoice line period end date (BT-135) shall be later or equal to the Invoice line period start date (BT-134). + + + + + + + + + + BR-CO-20 + fatal + + + + [BR-CO-20]-If Invoice line period (BG-26) is used, the Invoice line period start date (BT-134) or the Invoice line period end date (BT-135) shall be filled, or both. + + + + + + + + + + + + + + + BR-29 + fatal + + + + [BR-29]-If both Invoicing period start date (BT-73) and Invoicing period end date (BT-74) are given then the Invoicing period end date (BT-74) shall be later or equal to the Invoicing period start date (BT-73). + + + + + + + + + + BR-CO-19 + fatal + + + + [BR-CO-19]-If Invoicing period (BG-14) is used, the Invoicing period start date (BT-73) or the Invoicing period end date (BT-74) shall be filled, or both. + + + + + + + + + + + + + + + BR-54 + fatal + + + + [BR-54]-Each Item attribute (BG-32) shall contain an Item attribute name (BT-160) and an Item attribute value (BT-161). + + + + + + + + + + + + + + + BR-65 + fatal + + + + [BR-65]-The Item classification identifier (BT-158) shall have a Scheme identifier. + + + + + + + + + + + + + + + BR-64 + fatal + + + + [BR-64]-The Item standard identifier (BT-157) shall have a Scheme identifier. + + + + + + + + + + + + + + + BR-CL-08 + fatal + + + + [BR-CL-08]-Invoiced note subject code shall be coded using UNCL4451 + + + + + + + + + + + + + + + BR-17 + fatal + + + + [BR-17]-The Payee name (BT-59) shall be provided in the Invoice, if the Payee (BG-10) is different from the Seller (BG-4) + + + + + + + + + + + + + + + BR-50 + fatal + + + + [BR-50]-A Payment account identifier (BT-84) shall be present if Credit transfer (BG-17) information is provided in the Invoice. + + + + + + + + + + + + + + + BR-49 + fatal + + + + [BR-49]-A Payment instruction (BG-16) shall specify the Payment means type code (BT-81). + + + + + + + + + + BR-61 + fatal + + + + [BR-61]-If the Payment means type code (BT-81) means SEPA credit transfer, Local credit transfer or Non-SEPA international credit transfer, the Payment account identifier (BT-84) shall be present. + + + + + + + + + + + + + + + BR-55 + fatal + + + + [BR-55]-Each Preceding Invoice reference (BG-3) shall contain a Preceding Invoice reference (BT-25). + + + + + + + + + + + + + + + BR-CO-26 + fatal + + + + [BR-CO-26]-In order for the buyer to automatically identify a supplier, the Seller identifier (BT-29), the Seller legal registration identifier (BT-30) and/or the Seller VAT identifier (BT-31) shall be present.  + + + + + + + + + + + + + + + BR-62 + fatal + + + + [BR-62]-The Seller electronic address (BT-34) shall have a Scheme identifier. + + + + + + + + + + + + + + + BR-09 + fatal + + + + [BR-09]-The Seller postal address (BG-5) shall contain a Seller country code (BT-40). + + + + + + + + + + + + + + + BR-18 + fatal + + + + [BR-18]-The Seller tax representative name (BT-62) shall be provided in the Invoice, if the Seller (BG-4) has a Seller tax representative party (BG-11) + + + + + + + + + + BR-19 + fatal + + + + [BR-19]-The Seller tax representative postal address (BG-12) shall be provided in the Invoice, if the Seller (BG-4) has a Seller tax representative party (BG-11). + + + + + + + + + + BR-56 + fatal + + + + [BR-56]-Each Seller tax representative party (BG-11) shall have a Seller tax representative VAT identifier (BT-63). + + + + + + + + + + + + + + + BR-20 + fatal + + + + [BR-20]-The Seller tax representative postal address (BG-12) shall contain a Tax representative country code (BT-69), if the Seller (BG-4) has a Seller tax representative party (BG-11). + + + + + + + + + + + + + + + BR-CO-14 + fatal + + + + [BR-CO-14]-Invoice total VAT amount (BT-110) = Σ VAT category tax amount (BT-117). + + + + + + + + + + + + + + + BR-45 + fatal + + + + [BR-45]-Each VAT breakdown (BG-23) shall have a VAT category taxable amount (BT-116). + + + + + + + + + + BR-46 + fatal + + + + [BR-46]-Each VAT breakdown (BG-23) shall have a VAT category tax amount (BT-117). + + + + + + + + + + BR-47 + fatal + + + + [BR-47]-Each VAT breakdown (BG-23) shall be defined through a VAT category code (BT-118). + + + + + + + + + + BR-48 + fatal + + + + [BR-48]-Each VAT breakdown (BG-23) shall have a VAT category rate (BT-119), except if the Invoice is not subject to VAT. + + + + + + + + + + BR-CO-17 + fatal + + + + [BR-CO-17]-VAT category tax amount (BT-117) = VAT category taxable amount (BT-116) x (VAT category rate (BT-119) / 100), rounded to two decimals. + + + + + + + + + + BR-DEC-19 + fatal + + + + [BR-DEC-19]-The allowed maximum number of decimals for the VAT category taxable amount (BT-116) is 2. + + + + + + + + + + BR-DEC-20 + fatal + + + + [BR-DEC-20]-The allowed maximum number of decimals for the VAT category tax amount (BT-117) is 2.     + + + + + + + + + + + + + + + BR-CO-09 + fatal + + + + [BR-CO-09]-The Seller VAT identifier (BT-31), the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier (BT-48) shall have a prefix in accordance with ISO code ISO 3166-1 alpha-2 by which the country of issue may be identified. Nevertheless, Greece may use the prefix ‘EL’. + + + + + + + + + + + + + + + BR-AE-08 + fatal + + + + [BR-AE-08]-In a VAT breakdown (BG-23) where the VAT category code (BT-118) is "Reverse charge" the VAT category taxable amount (BT-116) shall equal the sum of Invoice line net amounts (BT-131) minus the sum of Document level allowance amounts (BT-92) plus the sum of Document level charge amounts (BT-99) where the VAT category codes (BT-151, BT-95, BT-102) are "Reverse charge". + + + + + + + + + + BR-AE-09 + fatal + + + + [BR-AE-09]-The VAT category tax amount (BT-117) in a VAT breakdown (BG-23) where the VAT category code (BT-118) is "Reverse charge" shall be 0 (zero). + + + + + + + + + + BR-AE-10 + fatal + + + + [BR-AE-10]-A VAT breakdown (BG-23) with VAT Category code (BT-118) "Reverse charge" shall have a VAT exemption reason code (BT-121), meaning "Reverse charge" or the VAT exemption reason text (BT-120) "Reverse charge" (or the equivalent standard text in another language). + + + + + + + + + + + + + + + BR-AE-06 + fatal + + + + [BR-AE-06]-In a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Reverse charge" the Document level allowance VAT rate (BT-96) shall be 0 (zero). + + + + + + + + + + + + + + + BR-AE-07 + fatal + + + + [BR-AE-07]-In a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Reverse charge" the Document level charge VAT rate (BT-103) shall be 0 (zero). + + + + + + + + + + + + + + + BR-AE-05 + fatal + + + + [BR-AE-05]-In an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Reverse charge" the Invoiced item VAT rate (BT-152) shall be 0 (zero). + + + + + + + + + + + + + + + BR-E-08 + fatal + + + + [BR-E-08]-In a VAT breakdown (BG-23) where the VAT category code (BT-118) is "Exempt from VAT" the VAT category taxable amount (BT-116) shall equal the sum of Invoice line net amounts (BT-131) minus the sum of Document level allowance amounts (BT-92) plus the sum of Document level charge amounts (BT-99) where the VAT category codes (BT-151, BT-95, BT-102) are "Exempt from VAT". + + + + + + + + + + BR-E-09 + fatal + + + + [BR-E-09]-The VAT category tax amount (BT-117) In a VAT breakdown (BG-23) where the VAT category code (BT-118) equals "Exempt from VAT" shall equal 0 (zero). + + + + + + + + + + BR-E-10 + fatal + + + + [BR-E-10]-A VAT breakdown (BG-23) with VAT Category code (BT-118) "Exempt from VAT" shall have a VAT exemption reason code (BT-121) or a VAT exemption reason text (BT-120). + + + + + + + + + + + + + + + BR-E-06 + fatal + + + + [BR-E-06]-In a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Exempt from VAT", the Document level allowance VAT rate (BT-96) shall be 0 (zero). + + + + + + + + + + + + + + + BR-E-07 + fatal + + + + [BR-E-07]-In a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Exempt from VAT", the Document level charge VAT rate (BT-103) shall be 0 (zero). + + + + + + + + + + + + + + + BR-E-05 + fatal + + + + [BR-E-05]-In an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Exempt from VAT", the Invoiced item VAT rate (BT-152) shall be 0 (zero). + + + + + + + + + + + + + + + BR-G-08 + fatal + + + + [BR-G-08]-In a VAT breakdown (BG-23) where the VAT category code (BT-118) is "Export outside the EU" the VAT category taxable amount (BT-116) shall equal the sum of Invoice line net amounts (BT-131) minus the sum of Document level allowance amounts (BT-92) plus the sum of Document level charge amounts (BT-99) where the VAT category codes (BT-151, BT-95, BT-102) are "Export outside the EU". + + + + + + + + + + BR-G-09 + fatal + + + + [BR-G-09]-The VAT category tax amount (BT-117) in a VAT breakdown (BG-23) where the VAT category code (BT-118) is "Export outside the EU" shall be 0 (zero). + + + + + + + + + + BR-G-10 + fatal + + + + [BR-G-10]-A VAT breakdown (BG-23) with the VAT Category code (BT-118) "Export outside the EU" shall have a VAT exemption reason code (BT-121), meaning "Export outside the EU" or the VAT exemption reason text (BT-120) "Export outside the EU" (or the equivalent standard text in another language). + + + + + + + + + + + + + + + BR-G-06 + fatal + + + + [BR-G-06]-In a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Export outside the EU" the Document level allowance VAT rate (BT-96) shall be 0 (zero). + + + + + + + + + + + + + + + BR-G-07 + fatal + + + + [BR-G-07]-In a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Export outside the EU" the Document level charge VAT rate (BT-103) shall be 0 (zero). + + + + + + + + + + + + + + + BR-G-05 + fatal + + + + [BR-G-05]-In an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Export outside the EU" the Invoiced item VAT rate (BT-152) shall be 0 (zero). + + + + + + + + + + + + + + + BR-IC-08 + fatal + + + + [BR-IC-08]-In a VAT breakdown (BG-23) where the VAT category code (BT-118) is "Intra-community supply" the VAT category taxable amount (BT-116) shall equal the sum of Invoice line net amounts (BT-131) minus the sum of Document level allowance amounts (BT-92) plus the sum of Document level charge amounts (BT-99) where the VAT category codes (BT-151, BT-95, BT-102) are "Intra-community supply". + + + + + + + + + + BR-IC-09 + fatal + + + + [BR-IC-09]-The VAT category tax amount (BT-117) in a VAT breakdown (BG-23) where the VAT category code (BT-118) is "Intra-community supply" shall be 0 (zero). + + + + + + + + + + BR-IC-10 + fatal + + + + [BR-IC-10]-A VAT breakdown (BG-23) with the VAT Category code (BT-118) "Intra-community supply" shall have a VAT exemption reason code (BT-121), meaning "Intra-community supply" or the VAT exemption reason text (BT-120) "Intra-community supply" (or the equivalent standard text in another language). + + + + + + + + + + + + + + + BR-IC-06 + fatal + + + + [BR-IC-06]-In a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Intra-community supply" the Document level allowance VAT rate (BT-96) shall be 0 (zero). + + + + + + + + + + + + + + + BR-IC-07 + fatal + + + + [BR-IC-07]-In a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Intra-community supply" the Document level charge VAT rate (BT-103) shall be 0 (zero). + + + + + + + + + + + + + + + BR-IC-05 + fatal + + + + [BR-IC-05]-In an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Intracommunity supply" the Invoiced item VAT rate (BT-152) shall be 0 (zero). + + + + + + + + + + + + + + + BR-IG-08 + fatal + + + + [BR-IG-08]-For each different value of VAT category rate (BT-119) where the VAT category code (BT-118) is "IGIC", the VAT category taxable amount (BT-116) in a VAT breakdown (BG-23) shall equal the sum of Invoice line net amounts (BT-131) plus the sum of document level charge amounts (BT-99) minus the sum of document level allowance amounts (BT-92) where the VAT category code (BT-151, BT-102, BT-95) is "IGIC" and the VAT rate (BT-152, BT-103, BT-96) equals the VAT category rate (BT-119). + + + + + + + + + + BR-IG-09 + fatal + + + + [BR-IG-09]-The VAT category tax amount (BT-117) in a VAT breakdown (BG-23) where VAT category code (BT-118) is "IGIC" shall equal the VAT category taxable amount (BT-116) multiplied by the VAT category rate (BT-119). + + + + + + + + + + BR-IG-10 + fatal + + + + [BR-IG-10]-A VAT breakdown (BG-23) with VAT Category code (BT-118) "IGIC" shall not have a VAT exemption reason code (BT-121) or VAT exemption reason text (BT-120). + + + + + + + + + + + + + + + BR-IG-06 + fatal + + + + [BR-IG-06]-In a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "IGIC" the Document level allowance VAT rate (BT-96) shall be 0 (zero) or greater than zero. + + + + + + + + + + + + + + + BR-IG-07 + fatal + + + + [BR-IG-07]-In a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "IGIC" the Document level charge VAT rate (BT-103) shall be 0 (zero) or greater than zero. + + + + + + + + + + + + + + + BR-IG-05 + fatal + + + + [BR-IG-05]-In an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "IGIC" the invoiced item VAT rate (BT-152) shall be 0 (zero) or greater than zero. + + + + + + + + + + + + + + + BR-IP-08 + fatal + + + + [BR-IP-08]-For each different value of VAT category rate (BT-119) where the VAT category code (BT-118) is "IPSI", the VAT category taxable amount (BT-116) in a VAT breakdown (BG-23) shall equal the sum of Invoice line net amounts (BT-131) plus the sum of document level charge amounts (BT-99) minus the sum of document level allowance amounts (BT-92) where the VAT category code (BT-151, BT-102, BT-95) is "IPSI" and the VAT rate (BT-152, BT-103, BT-96) equals the VAT category rate (BT-119). + + + + + + + + + + BR-IP-09 + fatal + + + + [BR-IP-09]-The VAT category tax amount (BT-117) in a VAT breakdown (BG-23) where VAT category code (BT-118) is "IPSI" shall equal the VAT category taxable amount (BT-116) multiplied by the VAT category rate (BT-119). + + + + + + + + + + BR-IP-10 + fatal + + + + [BR-IP-10]-A VAT breakdown (BG-23) with VAT Category code (BT-118) "IPSI" shall not have a VAT exemption reason code (BT-121) or VAT exemption reason text (BT-120). + + + + + + + + + + + + + + + BR-IP-06 + fatal + + + + [BR-IP-06]-In a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "IPSI" the Document level allowance VAT rate (BT-96) shall be 0 (zero) or greater than zero. + + + + + + + + + + + + + + + BR-IP-07 + fatal + + + + [BR-IP-07]-In a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "IPSI" the Document level charge VAT rate (BT-103) shall be 0 (zero) or greater than zero. + + + + + + + + + + + + + + + BR-IP-05 + fatal + + + + [BR-IP-05]-In an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "IPSI" the Invoiced item VAT rate (BT-152) shall be 0 (zero) or greater than zero. + + + + + + + + + + + + + + + BR-O-08 + fatal + + + + [BR-O-08]-In a VAT breakdown (BG-23) where the VAT category code (BT-118) is " Not subject to VAT" the VAT category taxable amount (BT-116) shall equal the sum of Invoice line net amounts (BT-131) minus the sum of Document level allowance amounts (BT-92) plus the sum of Document level charge amounts (BT-99) where the VAT category codes (BT-151, BT-95, BT-102) are "Not subject to VAT". + + + + + + + + + + BR-O-09 + fatal + + + + [BR-O-09]-The VAT category tax amount (BT-117) in a VAT breakdown (BG-23) where the VAT category code (BT-118) is "Not subject to VAT" shall be 0 (zero). + + + + + + + + + + BR-O-10 + fatal + + + + [BR-O-10]-A VAT breakdown (BG-23) with VAT Category code (BT-118) " Not subject to VAT" shall have a VAT exemption reason code (BT-121), meaning " Not subject to VAT" or a VAT exemption reason text (BT-120) " Not subject to VAT" (or the equivalent standard text in another language). + + + + + + + + + + + + + + + BR-O-06 + fatal + + + + [BR-O-06]-A Document level allowance (BG-20) where VAT category code (BT-95) is "Not subject to VAT" shall not contain a Document level allowance VAT rate (BT-96). + + + + + + + + + + + + + + + BR-O-07 + fatal + + + + [BR-O-07]-A Document level charge (BG-21) where the VAT category code (BT-102) is "Not subject to VAT" shall not contain a Document level charge VAT rate (BT-103). + + + + + + + + + + + + + + + BR-O-05 + fatal + + + + [BR-O-05]-An Invoice line (BG-25) where the VAT category code (BT-151) is "Not subject to VAT" shall not contain an Invoiced item VAT rate (BT-152). + + + + + + + + + + + + + + + BR-S-08 + fatal + + + + [BR-S-08]-For each different value of VAT category rate (BT-119) where the VAT category code (BT-118) is "Standard rated", the VAT category taxable amount (BT-116) in a VAT breakdown (BG-23) shall equal the sum of Invoice line net amounts (BT-131) plus the sum of document level charge amounts (BT-99) minus the sum of document level allowance amounts (BT-92) where the VAT category code (BT-151, BT-102, BT-95) is "Standard rated" and the VAT rate (BT-152, BT-103, BT-96) equals the VAT category rate (BT-119). + + + + + + + + + + BR-S-09 + fatal + + + + [BR-S-09]-The VAT category tax amount (BT-117) in a VAT breakdown (BG-23) where VAT category code (BT-118) is "Standard rated" shall equal the VAT category taxable amount (BT-116) multiplied by the VAT category rate (BT-119). + + + + + + + + + + BR-S-10 + fatal + + + + [BR-S-10]-A VAT breakdown (BG-23) with VAT Category code (BT-118) "Standard rate" shall not have a VAT exemption reason code (BT-121) or VAT exemption reason text (BT-120). + + + + + + + + + + + + + + + BR-S-06 + fatal + + + + [BR-S-06]-In a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Standard rated" the Document level allowance VAT rate (BT-96) shall be greater than zero. + + + + + + + + + + + + + + + BR-S-07 + fatal + + + + [BR-S-07]-In a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Standard rated" the Document level charge VAT rate (BT-103) shall be greater than zero.  + + + + + + + + + + + + + + + BR-S-05 + fatal + + + + [BR-S-05]-In an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Standard rated" the Invoiced item VAT rate (BT-152) shall be greater than zero. + + + + + + + + + + + + + + + BR-Z-08 + fatal + + + + [BR-Z-08]-In a VAT breakdown (BG-23) where VAT category code (BT-118) is "Zero rated" the VAT category taxable amount (BT-116) shall equal the sum of Invoice line net amount (BT-131) minus the sum of Document level allowance amounts (BT-92) plus the sum of Document level charge amounts (BT-99) where the VAT category codes (BT-151, BT-95, BT-102) are "Zero rated". + + + + + + + + + + BR-Z-09 + fatal + + + + [BR-Z-09]-The VAT category tax amount (BT-117) in a VAT breakdown (BG-23) where VAT category code (BT-118) is "Zero rated" shall equal 0 (zero). + + + + + + + + + + BR-Z-10 + fatal + + + + [BR-Z-10]-A VAT breakdown (BG-23) with VAT Category code (BT-118) "Zero rated" shall not have a VAT exemption reason code (BT-121) or VAT exemption reason text (BT-120). + + + + + + + + + + + + + + + BR-Z-06 + fatal + + + + [BR-Z-06]-In a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Zero rated" the Document level allowance VAT rate (BT-96) shall be 0 (zero). + + + + + + + + + + + + + + + BR-Z-07 + fatal + + + + [BR-Z-07]-In a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Zero rated" the Document level charge VAT rate (BT-103) shall be 0 (zero). + + + + + + + + + + + + + + + BR-Z-05 + fatal + + + + [BR-Z-05]-In an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Zero rated" the Invoiced item VAT rate (BT-152) shall be 0 (zero). + + + + + + + + + + + + + + + + + + + + + + UBL-SR-42 + fatal + + + + [UBL-SR-42]-Party tax scheme shall occur maximum twice in accounting supplier party + + + + + + + + + + + + + + + UBL-SR-33 + fatal + + + + [UBL-SR-33]-Supporting document description shall occur maximum once + + + + + + + + + + UBL-SR-43 + fatal + + + + [UBL-SR-43]-Scheme identifier shall only be used for invoiced object (document type code with value 130) + + + + + + + + + + + + + + + UBL-DT-01 + fatal + + + + [UBL-DT-01]-Amounts shall be decimal up to two fraction digits + + + + + + + + + + + + + + + UBL-DT-06 + fatal + + + + [UBL-DT-06]-Binary object elements shall contain the mime code attribute + + + + + + + + + + UBL-DT-07 + fatal + + + + [UBL-DT-07]-Binary object elements shall contain the file name attribute + + + + + + + + + + + + + + + UBL-SR-25 + fatal + + + + [UBL-SR-25]-Deliver to party name shall occur maximum once + + + + + + + + + + + + + + + UBL-SR-30 + fatal + + + + [UBL-SR-30]-Document level allowance reason shall occur maximum once + + + + + + + + + + + + + + + UBL-SR-31 + fatal + + + + [UBL-SR-31]-Document level charge reason shall occur maximum once + + + + + + + + + + + + + + + UBL-CR-001 + warning + + + + [UBL-CR-001]-A UBL invoice should not include extensions + + + + + + + + + + UBL-CR-002 + warning + + + + [UBL-CR-002]-A UBL invoice should not include the UBLVersionID or it should be 2.1 + + + + + + + + + + UBL-CR-003 + warning + + + + [UBL-CR-003]-A UBL invoice should not include the ProfileExecutionID + + + + + + + + + + UBL-CR-004 + warning + + + + [UBL-CR-004]-A UBL invoice should not include the CopyIndicator + + + + + + + + + + UBL-CR-005 + warning + + + + [UBL-CR-005]-A UBL invoice should not include the UUID + + + + + + + + + + UBL-CR-006 + warning + + + + [UBL-CR-006]-A UBL invoice should not include the IssueTime + + + + + + + + + + UBL-CR-007 + warning + + + + [UBL-CR-007]-A UBL invoice should not include the PricingCurrencyCode + + + + + + + + + + UBL-CR-008 + warning + + + + [UBL-CR-008]-A UBL invoice should not include the PaymentCurrencyCode + + + + + + + + + + UBL-CR-009 + warning + + + + [UBL-CR-009]-A UBL invoice should not include the PaymentAlternativeCurrencyCode + + + + + + + + + + UBL-CR-010 + warning + + + + [UBL-CR-010]-A UBL invoice should not include the AccountingCostCode + + + + + + + + + + UBL-CR-011 + warning + + + + [UBL-CR-011]-A UBL invoice should not include the LineCountNumeric + + + + + + + + + + UBL-CR-012 + warning + + + + [UBL-CR-012]-A UBL invoice should not include the InvoicePeriod StartTime + + + + + + + + + + UBL-CR-013 + warning + + + + [UBL-CR-013]-A UBL invoice should not include the InvoicePeriod EndTime + + + + + + + + + + UBL-CR-014 + warning + + + + [UBL-CR-014]-A UBL invoice should not include the InvoicePeriod DurationMeasure + + + + + + + + + + UBL-CR-015 + warning + + + + [UBL-CR-015]-A UBL invoice should not include the InvoicePeriod Description + + + + + + + + + + UBL-CR-016 + warning + + + + [UBL-CR-016]-A UBL invoice should not include the OrderReference CopyIndicator + + + + + + + + + + UBL-CR-017 + warning + + + + [UBL-CR-017]-A UBL invoice should not include the OrderReference UUID + + + + + + + + + + UBL-CR-018 + warning + + + + [UBL-CR-018]-A UBL invoice should not include the OrderReference IssueDate + + + + + + + + + + UBL-CR-019 + warning + + + + [UBL-CR-019]-A UBL invoice should not include the OrderReference IssueTime + + + + + + + + + + UBL-CR-020 + warning + + + + [UBL-CR-020]-A UBL invoice should not include the OrderReference CustomerReference + + + + + + + + + + UBL-CR-021 + warning + + + + [UBL-CR-021]-A UBL invoice should not include the OrderReference OrderTypeCode + + + + + + + + + + UBL-CR-022 + warning + + + + [UBL-CR-022]-A UBL invoice should not include the OrderReference DocumentReference + + + + + + + + + + UBL-CR-023 + warning + + + + [UBL-CR-023]-A UBL invoice should not include the BillingReference CopyIndicator + + + + + + + + + + UBL-CR-024 + warning + + + + [UBL-CR-024]-A UBL invoice should not include the BillingReference UUID + + + + + + + + + + UBL-CR-025 + warning + + + + [UBL-CR-025]-A UBL invoice should not include the BillingReference IssueTime + + + + + + + + + + UBL-CR-026 + warning + + + + [UBL-CR-026]-A UBL invoice should not include the BillingReference DocumentTypeCode + + + + + + + + + + UBL-CR-027 + warning + + + + [UBL-CR-027]-A UBL invoice should not include the BillingReference DocumentType + + + + + + + + + + UBL-CR-028 + warning + + + + [UBL-CR-028]-A UBL invoice should not include the BillingReference Xpath + + + + + + + + + + UBL-CR-029 + warning + + + + [UBL-CR-029]-A UBL invoice should not include the BillingReference LanguageID + + + + + + + + + + UBL-CR-030 + warning + + + + [UBL-CR-030]-A UBL invoice should not include the BillingReference LocaleCode + + + + + + + + + + UBL-CR-031 + warning + + + + [UBL-CR-031]-A UBL invoice should not include the BillingReference VersionID + + + + + + + + + + UBL-CR-032 + warning + + + + [UBL-CR-032]-A UBL invoice should not include the BillingReference DocumentStatusCode + + + + + + + + + + UBL-CR-033 + warning + + + + [UBL-CR-033]-A UBL invoice should not include the BillingReference DocumenDescription + + + + + + + + + + UBL-CR-034 + warning + + + + [UBL-CR-034]-A UBL invoice should not include the BillingReference Attachment + + + + + + + + + + UBL-CR-035 + warning + + + + [UBL-CR-035]-A UBL invoice should not include the BillingReference ValidityPeriod + + + + + + + + + + UBL-CR-036 + warning + + + + [UBL-CR-036]-A UBL invoice should not include the BillingReference IssuerParty + + + + + + + + + + UBL-CR-037 + warning + + + + [UBL-CR-037]-A UBL invoice should not include the BillingReference ResultOfVerification + + + + + + + + + + UBL-CR-038 + warning + + + + [UBL-CR-038]-A UBL invoice should not include the BillingReference SelfBilledInvoiceDocumentReference + + + + + + + + + + UBL-CR-039 + warning + + + + [UBL-CR-039]-A UBL invoice should not include the BillingReference CreditNoteDocumentReference + + + + + + + + + + UBL-CR-040 + warning + + + + [UBL-CR-040]-A UBL invoice should not include the BillingReference SelfBilledCreditNoteDocumentReference + + + + + + + + + + UBL-CR-041 + warning + + + + [UBL-CR-041]-A UBL invoice should not include the BillingReference DebitNoteDocumentReference + + + + + + + + + + UBL-CR-042 + warning + + + + [UBL-CR-042]-A UBL invoice should not include the BillingReference ReminderDocumentReference + + + + + + + + + + UBL-CR-043 + warning + + + + [UBL-CR-043]-A UBL invoice should not include the BillingReference AdditionalDocumentReference + + + + + + + + + + UBL-CR-044 + warning + + + + [UBL-CR-044]-A UBL invoice should not include the BillingReference BillingReferenceLine + + + + + + + + + + UBL-CR-045 + warning + + + + [UBL-CR-045]-A UBL invoice should not include the DespatchDocumentReference CopyIndicator + + + + + + + + + + UBL-CR-046 + warning + + + + [UBL-CR-046]-A UBL invoice should not include the DespatchDocumentReference UUID + + + + + + + + + + UBL-CR-047 + warning + + + + [UBL-CR-047]-A UBL invoice should not include the DespatchDocumentReference IssueDate + + + + + + + + + + UBL-CR-048 + warning + + + + [UBL-CR-048]-A UBL invoice should not include the DespatchDocumentReference IssueTime + + + + + + + + + + UBL-CR-049 + warning + + + + [UBL-CR-049]-A UBL invoice should not include the DespatchDocumentReference DocumentTypeCode + + + + + + + + + + UBL-CR-050 + warning + + + + [UBL-CR-050]-A UBL invoice should not include the DespatchDocumentReference DocumentType + + + + + + + + + + UBL-CR-051 + warning + + + + [UBL-CR-051]-A UBL invoice should not include the DespatchDocumentReference Xpath + + + + + + + + + + UBL-CR-052 + warning + + + + [UBL-CR-052]-A UBL invoice should not include the DespatchDocumentReference LanguageID + + + + + + + + + + UBL-CR-053 + warning + + + + [UBL-CR-053]-A UBL invoice should not include the DespatchDocumentReference LocaleCode + + + + + + + + + + UBL-CR-054 + warning + + + + [UBL-CR-054]-A UBL invoice should not include the DespatchDocumentReference VersionID + + + + + + + + + + UBL-CR-055 + warning + + + + [UBL-CR-055]-A UBL invoice should not include the DespatchDocumentReference DocumentStatusCode + + + + + + + + + + UBL-CR-056 + warning + + + + [UBL-CR-056]-A UBL invoice should not include the DespatchDocumentReference DocumentDescription + + + + + + + + + + UBL-CR-057 + warning + + + + [UBL-CR-057]-A UBL invoice should not include the DespatchDocumentReference Attachment + + + + + + + + + + UBL-CR-058 + warning + + + + [UBL-CR-058]-A UBL invoice should not include the DespatchDocumentReference ValidityPeriod + + + + + + + + + + UBL-CR-059 + warning + + + + [UBL-CR-059]-A UBL invoice should not include the DespatchDocumentReference IssuerParty + + + + + + + + + + UBL-CR-060 + warning + + + + [UBL-CR-060]-A UBL invoice should not include the DespatchDocumentReference ResultOfVerification + + + + + + + + + + UBL-CR-061 + warning + + + + [UBL-CR-061]-A UBL invoice should not include the ReceiptDocumentReference CopyIndicator + + + + + + + + + + UBL-CR-062 + warning + + + + [UBL-CR-062]-A UBL invoice should not include the ReceiptDocumentReference UUID + + + + + + + + + + UBL-CR-063 + warning + + + + [UBL-CR-063]-A UBL invoice should not include the ReceiptDocumentReference IssueDate + + + + + + + + + + UBL-CR-064 + warning + + + + [UBL-CR-064]-A UBL invoice should not include the ReceiptDocumentReference IssueTime + + + + + + + + + + UBL-CR-065 + warning + + + + [UBL-CR-065]-A UBL invoice should not include the ReceiptDocumentReference DocumentTypeCode + + + + + + + + + + UBL-CR-066 + warning + + + + [UBL-CR-066]-A UBL invoice should not include the ReceiptDocumentReference DocumentType + + + + + + + + + + UBL-CR-067 + warning + + + + [UBL-CR-067]-A UBL invoice should not include the ReceiptDocumentReference Xpath + + + + + + + + + + UBL-CR-068 + warning + + + + [UBL-CR-068]-A UBL invoice should not include the ReceiptDocumentReference LanguageID + + + + + + + + + + UBL-CR-069 + warning + + + + [UBL-CR-069]-A UBL invoice should not include the ReceiptDocumentReference LocaleCode + + + + + + + + + + UBL-CR-070 + warning + + + + [UBL-CR-070]-A UBL invoice should not include the ReceiptDocumentReference VersionID + + + + + + + + + + UBL-CR-071 + warning + + + + [UBL-CR-071]-A UBL invoice should not include the ReceiptDocumentReference DocumentStatusCode + + + + + + + + + + UBL-CR-072 + warning + + + + [UBL-CR-072]-A UBL invoice should not include the ReceiptDocumentReference DocumentDescription + + + + + + + + + + UBL-CR-073 + warning + + + + [UBL-CR-073]-A UBL invoice should not include the ReceiptDocumentReference Attachment + + + + + + + + + + UBL-CR-074 + warning + + + + [UBL-CR-074]-A UBL invoice should not include the ReceiptDocumentReference ValidityPeriod + + + + + + + + + + UBL-CR-075 + warning + + + + [UBL-CR-075]-A UBL invoice should not include the ReceiptDocumentReference IssuerParty + + + + + + + + + + UBL-CR-076 + warning + + + + [UBL-CR-076]-A UBL invoice should not include the ReceiptDocumentReference ResultOfVerification + + + + + + + + + + UBL-CR-077 + warning + + + + [UBL-CR-077]-A UBL invoice should not include the StatementDocumentReference + + + + + + + + + + UBL-CR-078 + warning + + + + [UBL-CR-078]-A UBL invoice should not include the OriginatorDocumentReference CopyIndicator + + + + + + + + + + UBL-CR-079 + warning + + + + [UBL-CR-079]-A UBL invoice should not include the OriginatorDocumentReference UUID + + + + + + + + + + UBL-CR-080 + warning + + + + [UBL-CR-080]-A UBL invoice should not include the OriginatorDocumentReference IssueDate + + + + + + + + + + UBL-CR-081 + warning + + + + [UBL-CR-081]-A UBL invoice should not include the OriginatorDocumentReference IssueTime + + + + + + + + + + UBL-CR-082 + warning + + + + [UBL-CR-082]-A UBL invoice should not include the OriginatorDocumentReference DocumentTypeCode + + + + + + + + + + UBL-CR-083 + warning + + + + [UBL-CR-083]-A UBL invoice should not include the OriginatorDocumentReference DocumentType + + + + + + + + + + UBL-CR-084 + warning + + + + [UBL-CR-084]-A UBL invoice should not include the OriginatorDocumentReference Xpath + + + + + + + + + + UBL-CR-085 + warning + + + + [UBL-CR-085]-A UBL invoice should not include the OriginatorDocumentReference LanguageID + + + + + + + + + + UBL-CR-086 + warning + + + + [UBL-CR-086]-A UBL invoice should not include the OriginatorDocumentReference LocaleCode + + + + + + + + + + UBL-CR-087 + warning + + + + [UBL-CR-087]-A UBL invoice should not include the OriginatorDocumentReference VersionID + + + + + + + + + + UBL-CR-088 + warning + + + + [UBL-CR-088]-A UBL invoice should not include the OriginatorDocumentReference DocumentStatusCode + + + + + + + + + + UBL-CR-089 + warning + + + + [UBL-CR-089]-A UBL invoice should not include the OriginatorDocumentReference DocumentDescription + + + + + + + + + + UBL-CR-090 + warning + + + + [UBL-CR-090]-A UBL invoice should not include the OriginatorDocumentReference Attachment + + + + + + + + + + UBL-CR-091 + warning + + + + [UBL-CR-091]-A UBL invoice should not include the OriginatorDocumentReference ValidityPeriod + + + + + + + + + + UBL-CR-092 + warning + + + + [UBL-CR-092]-A UBL invoice should not include the OriginatorDocumentReference IssuerParty + + + + + + + + + + UBL-CR-093 + warning + + + + [UBL-CR-093]-A UBL invoice should not include the OriginatorDocumentReference ResultOfVerification + + + + + + + + + + UBL-CR-094 + warning + + + + [UBL-CR-094]-A UBL invoice should not include the ContractDocumentReference CopyIndicator + + + + + + + + + + UBL-CR-095 + warning + + + + [UBL-CR-095]-A UBL invoice should not include the ContractDocumentReference UUID + + + + + + + + + + UBL-CR-096 + warning + + + + [UBL-CR-096]-A UBL invoice should not include the ContractDocumentReference IssueDate + + + + + + + + + + UBL-CR-097 + warning + + + + [UBL-CR-097]-A UBL invoice should not include the ContractDocumentReference IssueTime + + + + + + + + + + UBL-CR-098 + warning + + + + [UBL-CR-098]-A UBL invoice should not include the ContractDocumentReference DocumentTypeCode + + + + + + + + + + UBL-CR-099 + warning + + + + [UBL-CR-099]-A UBL invoice should not include the ContractDocumentReference DocumentType + + + + + + + + + + UBL-CR-100 + warning + + + + [UBL-CR-100]-A UBL invoice should not include the ContractDocumentReference Xpath + + + + + + + + + + UBL-CR-101 + warning + + + + [UBL-CR-101]-A UBL invoice should not include the ContractDocumentReference LanguageID + + + + + + + + + + UBL-CR-102 + warning + + + + [UBL-CR-102]-A UBL invoice should not include the ContractDocumentReference LocaleCode + + + + + + + + + + UBL-CR-103 + warning + + + + [UBL-CR-103]-A UBL invoice should not include the ContractDocumentReference VersionID + + + + + + + + + + UBL-CR-104 + warning + + + + [UBL-CR-104]-A UBL invoice should not include the ContractDocumentReference DocumentStatusCode + + + + + + + + + + UBL-CR-105 + warning + + + + [UBL-CR-105]-A UBL invoice should not include the ContractDocumentReference DocumentDescription + + + + + + + + + + UBL-CR-106 + warning + + + + [UBL-CR-106]-A UBL invoice should not include the ContractDocumentReference Attachment + + + + + + + + + + UBL-CR-107 + warning + + + + [UBL-CR-107]-A UBL invoice should not include the ContractDocumentReference ValidityPeriod + + + + + + + + + + UBL-CR-108 + warning + + + + [UBL-CR-108]-A UBL invoice should not include the ContractDocumentReference IssuerParty + + + + + + + + + + UBL-CR-109 + warning + + + + [UBL-CR-109]-A UBL invoice should not include the ContractDocumentReference ResultOfVerification + + + + + + + + + + UBL-CR-110 + warning + + + + [UBL-CR-110]-A UBL invoice should not include the AdditionalDocumentReference CopyIndicator + + + + + + + + + + UBL-CR-111 + warning + + + + [UBL-CR-111]-A UBL invoice should not include the AdditionalDocumentReference UUID + + + + + + + + + + UBL-CR-112 + warning + + + + [UBL-CR-112]-A UBL invoice should not include the AdditionalDocumentReference IssueDate + + + + + + + + + + UBL-CR-113 + warning + + + + [UBL-CR-113]-A UBL invoice should not include the AdditionalDocumentReference IssueTime + + + + + + + + + + UBL-CR-114 + warning + + + + [UBL-CR-114]-A UBL invoice should not include the AdditionalDocumentReference DocumentType + + + + + + + + + + UBL-CR-115 + warning + + + + [UBL-CR-115]-A UBL invoice should not include the AdditionalDocumentReference Xpath + + + + + + + + + + UBL-CR-116 + warning + + + + [UBL-CR-116]-A UBL invoice should not include the AdditionalDocumentReference LanguageID + + + + + + + + + + UBL-CR-117 + warning + + + + [UBL-CR-117]-A UBL invoice should not include the AdditionalDocumentReference LocaleCode + + + + + + + + + + UBL-CR-118 + warning + + + + [UBL-CR-118]-A UBL invoice should not include the AdditionalDocumentReference VersionID + + + + + + + + + + UBL-CR-119 + warning + + + + [UBL-CR-119]-A UBL invoice should not include the AdditionalDocumentReference DocumentStatusCode + + + + + + + + + + UBL-CR-121 + warning + + + + [UBL-CR-121]-A UBL invoice should not include the AdditionalDocumentReference Attachment External DocumentHash + + + + + + + + + + UBL-CR-122 + warning + + + + [UBL-CR-122]-A UBL invoice should not include the AdditionalDocumentReference Attachment External HashAlgorithmMethod + + + + + + + + + + UBL-CR-123 + warning + + + + [UBL-CR-123]-A UBL invoice should not include the AdditionalDocumentReference Attachment External ExpiryDate + + + + + + + + + + UBL-CR-124 + warning + + + + [UBL-CR-124]-A UBL invoice should not include the AdditionalDocumentReference Attachment External ExpiryTime + + + + + + + + + + UBL-CR-125 + warning + + + + [UBL-CR-125]-A UBL invoice should not include the AdditionalDocumentReference Attachment External MimeCode + + + + + + + + + + UBL-CR-126 + warning + + + + [UBL-CR-126]-A UBL invoice should not include the AdditionalDocumentReference Attachment External FormatCode + + + + + + + + + + UBL-CR-127 + warning + + + + [UBL-CR-127]-A UBL invoice should not include the AdditionalDocumentReference Attachment External EncodingCode + + + + + + + + + + UBL-CR-128 + warning + + + + [UBL-CR-128]-A UBL invoice should not include the AdditionalDocumentReference Attachment External CharacterSetCode + + + + + + + + + + UBL-CR-129 + warning + + + + [UBL-CR-129]-A UBL invoice should not include the AdditionalDocumentReference Attachment External FileName + + + + + + + + + + UBL-CR-130 + warning + + + + [UBL-CR-130]-A UBL invoice should not include the AdditionalDocumentReference Attachment External Descriprion + + + + + + + + + + UBL-CR-131 + warning + + + + [UBL-CR-131]-A UBL invoice should not include the AdditionalDocumentReference ValidityPeriod + + + + + + + + + + UBL-CR-132 + warning + + + + [UBL-CR-132]-A UBL invoice should not include the AdditionalDocumentReference IssuerParty + + + + + + + + + + UBL-CR-133 + warning + + + + [UBL-CR-133]-A UBL invoice should not include the AdditionalDocumentReference ResultOfVerification + + + + + + + + + + UBL-CR-134 + warning + + + + [UBL-CR-134]-A UBL invoice should not include the ProjectReference UUID + + + + + + + + + + UBL-CR-135 + warning + + + + [UBL-CR-135]-A UBL invoice should not include the ProjectReference IssueDate + + + + + + + + + + UBL-CR-136 + warning + + + + [UBL-CR-136]-A UBL invoice should not include the ProjectReference WorkPhaseReference + + + + + + + + + + UBL-CR-137 + warning + + + + [UBL-CR-137]-A UBL invoice should not include the Signature + + + + + + + + + + UBL-CR-138 + warning + + + + [UBL-CR-138]-A UBL invoice should not include the AccountingSupplierParty CustomerAssignedAccountID + + + + + + + + + + UBL-CR-139 + warning + + + + [UBL-CR-139]-A UBL invoice should not include the AccountingSupplierParty AdditionalAccountID + + + + + + + + + + UBL-CR-140 + warning + + + + [UBL-CR-140]-A UBL invoice should not include the AccountingSupplierParty DataSendingCapability + + + + + + + + + + UBL-CR-141 + warning + + + + [UBL-CR-141]-A UBL invoice should not include the AccountingSupplierParty Party MarkCareIndicator + + + + + + + + + + UBL-CR-142 + warning + + + + [UBL-CR-142]-A UBL invoice should not include the AccountingSupplierParty Party MarkAttentionIndicator + + + + + + + + + + UBL-CR-143 + warning + + + + [UBL-CR-143]-A UBL invoice should not include the AccountingSupplierParty Party WebsiteURI + + + + + + + + + + UBL-CR-144 + warning + + + + [UBL-CR-144]-A UBL invoice should not include the AccountingSupplierParty Party LogoReferenceID + + + + + + + + + + UBL-CR-145 + warning + + + + [UBL-CR-145]-A UBL invoice should not include the AccountingSupplierParty Party IndustryClassificationCode + + + + + + + + + + UBL-CR-146 + warning + + + + [UBL-CR-146]-A UBL invoice should not include the AccountingSupplierParty Party Language + + + + + + + + + + UBL-CR-147 + warning + + + + [UBL-CR-147]-A UBL invoice should not include the AccountingSupplierParty Party PostalAddress ID + + + + + + + + + + UBL-CR-148 + warning + + + + [UBL-CR-148]-A UBL invoice should not include the AccountingSupplierParty Party PostalAddress AddressTypeCode + + + + + + + + + + UBL-CR-149 + warning + + + + [UBL-CR-149]-A UBL invoice should not include the AccountingSupplierParty Party PostalAddress AddressFormatCode + + + + + + + + + + UBL-CR-150 + warning + + + + [UBL-CR-150]-A UBL invoice should not include the AccountingSupplierParty Party PostalAddress Postbox + + + + + + + + + + UBL-CR-151 + warning + + + + [UBL-CR-151]-A UBL invoice should not include the AccountingSupplierParty Party PostalAddress Floor + + + + + + + + + + UBL-CR-152 + warning + + + + [UBL-CR-152]-A UBL invoice should not include the AccountingSupplierParty Party PostalAddress Room + + + + + + + + + + UBL-CR-153 + warning + + + + [UBL-CR-153]-A UBL invoice should not include the AccountingSupplierParty Party PostalAddress BlockName + + + + + + + + + + UBL-CR-154 + warning + + + + [UBL-CR-154]-A UBL invoice should not include the AccountingSupplierParty Party PostalAddress BuildingName + + + + + + + + + + UBL-CR-155 + warning + + + + [UBL-CR-155]-A UBL invoice should not include the AccountingSupplierParty Party PostalAddress BuildingNumber + + + + + + + + + + UBL-CR-156 + warning + + + + [UBL-CR-156]-A UBL invoice should not include the AccountingSupplierParty Party PostalAddress InhouseMail + + + + + + + + + + UBL-CR-157 + warning + + + + [UBL-CR-157]-A UBL invoice should not include the AccountingSupplierParty Party PostalAddress Department + + + + + + + + + + UBL-CR-158 + warning + + + + [UBL-CR-158]-A UBL invoice should not include the AccountingSupplierParty Party PostalAddress MarkAttention + + + + + + + + + + UBL-CR-159 + warning + + + + [UBL-CR-159]-A UBL invoice should not include the AccountingSupplierParty Party PostalAddress MarkCare + + + + + + + + + + UBL-CR-160 + warning + + + + [UBL-CR-160]-A UBL invoice should not include the AccountingSupplierParty Party PostalAddress PlotIdentification + + + + + + + + + + UBL-CR-161 + warning + + + + [UBL-CR-161]-A UBL invoice should not include the AccountingSupplierParty Party PostalAddress CitySubdivisionName + + + + + + + + + + UBL-CR-162 + warning + + + + [UBL-CR-162]-A UBL invoice should not include the AccountingSupplierParty Party PostalAddress CountrySubentityCode + + + + + + + + + + UBL-CR-163 + warning + + + + [UBL-CR-163]-A UBL invoice should not include the AccountingSupplierParty Party PostalAddress Region + + + + + + + + + + UBL-CR-164 + warning + + + + [UBL-CR-164]-A UBL invoice should not include the AccountingSupplierParty Party PostalAddress District + + + + + + + + + + UBL-CR-165 + warning + + + + [UBL-CR-165]-A UBL invoice should not include the AccountingSupplierParty Party PostalAddress TimezoneOffset + + + + + + + + + + UBL-CR-166 + warning + + + + [UBL-CR-166]-A UBL invoice should not include the AccountingSupplierParty Party PostalAddress Country Name + + + + + + + + + + UBL-CR-167 + warning + + + + [UBL-CR-167]-A UBL invoice should not include the AccountingSupplierParty Party PostalAddress LocationCoordinate + + + + + + + + + + UBL-CR-168 + warning + + + + [UBL-CR-168]-A UBL invoice should not include the AccountingSupplierParty Party PhysicalLocation + + + + + + + + + + UBL-CR-169 + warning + + + + [UBL-CR-169]-A UBL invoice should not include the AccountingSupplierParty Party PartyTaxScheme RegistrationName + + + + + + + + + + UBL-CR-170 + warning + + + + [UBL-CR-170]-A UBL invoice should not include the AccountingSupplierParty Party PartyTaxScheme TaxLevelCode + + + + + + + + + + UBL-CR-171 + warning + + + + [UBL-CR-171]-A UBL invoice should not include the AccountingSupplierParty Party PartyTaxScheme ExemptionReasonCode + + + + + + + + + + UBL-CR-172 + warning + + + + [UBL-CR-172]-A UBL invoice should not include the AccountingSupplierParty Party PartyTaxScheme ExemptionReason + + + + + + + + + + UBL-CR-173 + warning + + + + [UBL-CR-173]-A UBL invoice should not include the AccountingSupplierParty Party PartyTaxScheme RegistrationAddress + + + + + + + + + + UBL-CR-174 + warning + + + + [UBL-CR-174]-A UBL invoice should not include the AccountingSupplierParty Party PartyTaxScheme TaxScheme Name + + + + + + + + + + UBL-CR-175 + warning + + + + [UBL-CR-175]-A UBL invoice should not include the AccountingSupplierParty Party PartyTaxScheme TaxScheme TaxTypeCode + + + + + + + + + + UBL-CR-176 + warning + + + + [UBL-CR-176]-A UBL invoice should not include the AccountingSupplierParty Party PartyTaxScheme TaxScheme CurrencyCode + + + + + + + + + + UBL-CR-177 + warning + + + + [UBL-CR-177]-A UBL invoice should not include the AccountingSupplierParty Party PartyTaxScheme TaxScheme JurisdictionRegionAddress + + + + + + + + + + UBL-CR-178 + warning + + + + [UBL-CR-178]-A UBL invoice should not include the AccountingSupplierParty Party PartyLegalEntity RegistrationDate + + + + + + + + + + UBL-CR-179 + warning + + + + [UBL-CR-179]-A UBL invoice should not include the AccountingSupplierParty Party PartyLegalEntity RegistrationExpirationDate + + + + + + + + + + UBL-CR-180 + warning + + + + [UBL-CR-180]-A UBL invoice should not include the AccountingSupplierParty Party PartyLegalEntity CompanyLegalFormCode + + + + + + + + + + UBL-CR-181 + warning + + + + [UBL-CR-181]-A UBL invoice should not include the AccountingSupplierParty Party PartyLegalEntity SoleProprietorshipIndicator + + + + + + + + + + UBL-CR-182 + warning + + + + [UBL-CR-182]-A UBL invoice should not include the AccountingSupplierParty Party PartyLegalEntity CompanyLiquidationStatusCode + + + + + + + + + + UBL-CR-183 + warning + + + + [UBL-CR-183]-A UBL invoice should not include the AccountingSupplierParty Party PartyLegalEntity CorporationStockAmount + + + + + + + + + + UBL-CR-184 + warning + + + + [UBL-CR-184]-A UBL invoice should not include the AccountingSupplierParty Party PartyLegalEntity FullyPaidSharesIndicator + + + + + + + + + + UBL-CR-185 + warning + + + + [UBL-CR-185]-A UBL invoice should not include the AccountingSupplierParty Party PartyLegalEntity RegistrationAddress + + + + + + + + + + UBL-CR-186 + warning + + + + [UBL-CR-186]-A UBL invoice should not include the AccountingSupplierParty Party PartyLegalEntity CorporateRegistrationScheme + + + + + + + + + + UBL-CR-187 + warning + + + + [UBL-CR-187]-A UBL invoice should not include the AccountingSupplierParty Party PartyLegalEntity HeadOfficeParty + + + + + + + + + + UBL-CR-188 + warning + + + + [UBL-CR-188]-A UBL invoice should not include the AccountingSupplierParty Party PartyLegalEntity ShareholderParty + + + + + + + + + + UBL-CR-189 + warning + + + + [UBL-CR-189]-A UBL invoice should not include the AccountingSupplierParty Party Contact ID + + + + + + + + + + UBL-CR-190 + warning + + + + [UBL-CR-190]-A UBL invoice should not include the AccountingSupplierParty Party Contact Telefax + + + + + + + + + + UBL-CR-191 + warning + + + + [UBL-CR-191]-A UBL invoice should not include the AccountingSupplierParty Party Contact Note + + + + + + + + + + UBL-CR-192 + warning + + + + [UBL-CR-192]-A UBL invoice should not include the AccountingSupplierParty Party Contact OtherCommunication + + + + + + + + + + UBL-CR-193 + warning + + + + [UBL-CR-193]-A UBL invoice should not include the AccountingSupplierParty Party Person + + + + + + + + + + UBL-CR-194 + warning + + + + [UBL-CR-194]-A UBL invoice should not include the AccountingSupplierParty Party AgentParty + + + + + + + + + + UBL-CR-195 + warning + + + + [UBL-CR-195]-A UBL invoice should not include the AccountingSupplierParty Party ServiceProviderParty + + + + + + + + + + UBL-CR-196 + warning + + + + [UBL-CR-196]-A UBL invoice should not include the AccountingSupplierParty Party PowerOfAttorney + + + + + + + + + + UBL-CR-197 + warning + + + + [UBL-CR-197]-A UBL invoice should not include the AccountingSupplierParty Party FinancialAccount + + + + + + + + + + UBL-CR-198 + warning + + + + [UBL-CR-198]-A UBL invoice should not include the AccountingSupplierParty DespatchContact + + + + + + + + + + UBL-CR-199 + warning + + + + [UBL-CR-199]-A UBL invoice should not include the AccountingSupplierParty AccountingContact + + + + + + + + + + UBL-CR-200 + warning + + + + [UBL-CR-200]-A UBL invoice should not include the AccountingSupplierParty SellerContact + + + + + + + + + + UBL-CR-201 + warning + + + + [UBL-CR-201]-A UBL invoice should not include the AccountingCustomerParty CustomerAssignedAccountID + + + + + + + + + + UBL-CR-202 + warning + + + + [UBL-CR-202]-A UBL invoice should not include the AccountingCustomerParty SupplierAssignedAccountID + + + + + + + + + + UBL-CR-203 + warning + + + + [UBL-CR-203]-A UBL invoice should not include the AccountingCustomerParty AdditionalAccountID + + + + + + + + + + UBL-CR-204 + warning + + + + [UBL-CR-204]-A UBL invoice should not include the AccountingCustomerParty Party MarkCareIndicator + + + + + + + + + + UBL-CR-205 + warning + + + + [UBL-CR-205]-A UBL invoice should not include the AccountingCustomerParty Party MarkAttentionIndicator + + + + + + + + + + UBL-CR-206 + warning + + + + [UBL-CR-206]-A UBL invoice should not include the AccountingCustomerParty Party WebsiteURI + + + + + + + + + + UBL-CR-207 + warning + + + + [UBL-CR-207]-A UBL invoice should not include the AccountingCustomerParty Party LogoReferenceID + + + + + + + + + + UBL-CR-208 + warning + + + + [UBL-CR-208]-A UBL invoice should not include the AccountingCustomerParty Party IndustryClassificationCode + + + + + + + + + + UBL-CR-209 + warning + + + + [UBL-CR-209]-A UBL invoice should not include the AccountingCustomerParty Party Language + + + + + + + + + + UBL-CR-210 + warning + + + + [UBL-CR-210]-A UBL invoice should not include the AccountingCustomerParty Party PostalAddress ID + + + + + + + + + + UBL-CR-211 + warning + + + + [UBL-CR-211]-A UBL invoice should not include the AccountingCustomerParty Party PostalAddress AddressTypeCode + + + + + + + + + + UBL-CR-212 + warning + + + + [UBL-CR-212]-A UBL invoice should not include the AccountingCustomerParty Party PostalAddress AddressFormatCode + + + + + + + + + + UBL-CR-213 + warning + + + + [UBL-CR-213]-A UBL invoice should not include the AccountingCustomerParty Party PostalAddress Postbox + + + + + + + + + + UBL-CR-214 + warning + + + + [UBL-CR-214]-A UBL invoice should not include the AccountingCustomerParty Party PostalAddress Floor + + + + + + + + + + UBL-CR-215 + warning + + + + [UBL-CR-215]-A UBL invoice should not include the AccountingCustomerParty Party PostalAddress Room + + + + + + + + + + UBL-CR-216 + warning + + + + [UBL-CR-216]-A UBL invoice should not include the AccountingCustomerParty Party PostalAddress BlockName + + + + + + + + + + UBL-CR-217 + warning + + + + [UBL-CR-217]-A UBL invoice should not include the AccountingCustomerParty Party PostalAddress BuildingName + + + + + + + + + + UBL-CR-218 + warning + + + + [UBL-CR-218]-A UBL invoice should not include the AccountingCustomerParty Party PostalAddress BuildingNumber + + + + + + + + + + UBL-CR-219 + warning + + + + [UBL-CR-219]-A UBL invoice should not include the AccountingCustomerParty Party PostalAddress InhouseMail + + + + + + + + + + UBL-CR-220 + warning + + + + [UBL-CR-220]-A UBL invoice should not include the AccountingCustomerParty Party PostalAddress Department + + + + + + + + + + UBL-CR-221 + warning + + + + [UBL-CR-221]-A UBL invoice should not include the AccountingCustomerParty Party PostalAddress MarkAttention + + + + + + + + + + UBL-CR-222 + warning + + + + [UBL-CR-222]-A UBL invoice should not include the AccountingCustomerParty Party PostalAddress MarkCare + + + + + + + + + + UBL-CR-223 + warning + + + + [UBL-CR-223]-A UBL invoice should not include the AccountingCustomerParty Party PostalAddress PlotIdentification + + + + + + + + + + UBL-CR-224 + warning + + + + [UBL-CR-224]-A UBL invoice should not include the AccountingCustomerParty Party PostalAddress CitySubdivisionName + + + + + + + + + + UBL-CR-225 + warning + + + + [UBL-CR-225]-A UBL invoice should not include the AccountingCustomerParty Party PostalAddress CountrySubentityCode + + + + + + + + + + UBL-CR-226 + warning + + + + [UBL-CR-226]-A UBL invoice should not include the AccountingCustomerParty Party PostalAddress Region + + + + + + + + + + UBL-CR-227 + warning + + + + [UBL-CR-227]-A UBL invoice should not include the AccountingCustomerParty Party PostalAddress District + + + + + + + + + + UBL-CR-228 + warning + + + + [UBL-CR-228]-A UBL invoice should not include the AccountingCustomerParty Party PostalAddress TimezoneOffset + + + + + + + + + + UBL-CR-229 + warning + + + + [UBL-CR-229]-A UBL invoice should not include the AccountingCustomerParty Party PostalAddress Country Name + + + + + + + + + + UBL-CR-230 + warning + + + + [UBL-CR-230]-A UBL invoice should not include the AccountingCustomerParty Party PostalAddress LocationCoordinate + + + + + + + + + + UBL-CR-231 + warning + + + + [UBL-CR-231]-A UBL invoice should not include the AccountingCustomerParty Party PhysicalLocation + + + + + + + + + + UBL-CR-232 + warning + + + + [UBL-CR-232]-A UBL invoice should not include the AccountingCustomerParty Party PartyTaxScheme RegistrationName + + + + + + + + + + UBL-CR-233 + warning + + + + [UBL-CR-233]-A UBL invoice should not include the AccountingCustomerParty Party PartyTaxScheme TaxLevelCode + + + + + + + + + + UBL-CR-234 + warning + + + + [UBL-CR-234]-A UBL invoice should not include the AccountingCustomerParty Party PartyTaxScheme ExemptionReasonCode + + + + + + + + + + UBL-CR-235 + warning + + + + [UBL-CR-235]-A UBL invoice should not include the AccountingCustomerParty Party PartyTaxScheme ExemptionReason + + + + + + + + + + UBL-CR-236 + warning + + + + [UBL-CR-236]-A UBL invoice should not include the AccountingCustomerParty Party PartyTaxScheme RegistrationAddress + + + + + + + + + + UBL-CR-237 + warning + + + + [UBL-CR-237]-A UBL invoice should not include the AccountingCustomerParty Party PartyTaxScheme TaxScheme Name + + + + + + + + + + UBL-CR-238 + warning + + + + [UBL-CR-238]-A UBL invoice should not include the AccountingCustomerParty Party PartyTaxScheme TaxScheme TaxTypeCode + + + + + + + + + + UBL-CR-239 + warning + + + + [UBL-CR-239]-A UBL invoice should not include the AccountingCustomerParty Party PartyTaxScheme TaxScheme CurrencyCode + + + + + + + + + + UBL-CR-240 + warning + + + + [UBL-CR-240]-A UBL invoice should not include the AccountingCustomerParty Party PartyTaxScheme TaxScheme JurisdictionRegionAddress + + + + + + + + + + UBL-CR-241 + warning + + + + [UBL-CR-241]-A UBL invoice should not include the AccountingCustomerParty Party PartyLegalEntity RegistrationDate + + + + + + + + + + UBL-CR-242 + warning + + + + [UBL-CR-242]-A UBL invoice should not include the AccountingCustomerParty Party PartyLegalEntity RegistrationExpirationDate + + + + + + + + + + UBL-CR-243 + warning + + + + [UBL-CR-243]-A UBL invoice should not include the AccountingCustomerParty Party PartyLegalEntity CompanyLegalFormCode + + + + + + + + + + UBL-CR-244 + warning + + + + [UBL-CR-244]-A UBL invoice should not include the AccountingCustomerParty Party PartyLegalEntity CompanyLegalForm + + + + + + + + + + UBL-CR-245 + warning + + + + [UBL-CR-245]-A UBL invoice should not include the AccountingCustomerParty Party PartyLegalEntity SoleProprietorshipIndicator + + + + + + + + + + UBL-CR-246 + warning + + + + [UBL-CR-246]-A UBL invoice should not include the AccountingCustomerParty Party PartyLegalEntity CompanyLiquidationStatusCode + + + + + + + + + + UBL-CR-247 + warning + + + + [UBL-CR-247]-A UBL invoice should not include the AccountingCustomerParty Party PartyLegalEntity CorporationStockAmount + + + + + + + + + + UBL-CR-248 + warning + + + + [UBL-CR-248]-A UBL invoice should not include the AccountingCustomerParty Party PartyLegalEntity FullyPaidSharesIndicator + + + + + + + + + + UBL-CR-249 + warning + + + + [UBL-CR-249]-A UBL invoice should not include the AccountingCustomerParty Party PartyLegalEntity RegistrationAddress + + + + + + + + + + UBL-CR-250 + warning + + + + [UBL-CR-250]-A UBL invoice should not include the AccountingCustomerParty Party PartyLegalEntity CorporateRegistrationScheme + + + + + + + + + + UBL-CR-251 + warning + + + + [UBL-CR-251]-A UBL invoice should not include the AccountingCustomerParty Party PartyLegalEntity HeadOfficeParty + + + + + + + + + + UBL-CR-252 + warning + + + + [UBL-CR-252]-A UBL invoice should not include the AccountingCustomerParty Party PartyLegalEntity ShareholderParty + + + + + + + + + + UBL-CR-253 + warning + + + + [UBL-CR-253]-A UBL invoice should not include the AccountingCustomerParty Party Contact ID + + + + + + + + + + UBL-CR-254 + warning + + + + [UBL-CR-254]-A UBL invoice should not include the AccountingCustomerParty Party Contact Telefax + + + + + + + + + + UBL-CR-255 + warning + + + + [UBL-CR-255]-A UBL invoice should not include the AccountingCustomerParty Party Contact Note + + + + + + + + + + UBL-CR-256 + warning + + + + [UBL-CR-256]-A UBL invoice should not include the AccountingCustomerParty Party Contact OtherCommunication + + + + + + + + + + UBL-CR-257 + warning + + + + [UBL-CR-257]-A UBL invoice should not include the AccountingCustomerParty Party Person + + + + + + + + + + UBL-CR-258 + warning + + + + [UBL-CR-258]-A UBL invoice should not include the AccountingCustomerParty Party AgentParty + + + + + + + + + + UBL-CR-259 + warning + + + + [UBL-CR-259]-A UBL invoice should not include the AccountingCustomerParty Party ServiceProviderParty + + + + + + + + + + UBL-CR-260 + warning + + + + [UBL-CR-260]-A UBL invoice should not include the AccountingCustomerParty Party PowerOfAttorney + + + + + + + + + + UBL-CR-261 + warning + + + + [UBL-CR-261]-A UBL invoice should not include the AccountingCustomerParty Party FinancialAccount + + + + + + + + + + UBL-CR-262 + warning + + + + [UBL-CR-262]-A UBL invoice should not include the AccountingCustomerParty DeliveryContact + + + + + + + + + + UBL-CR-263 + warning + + + + [UBL-CR-263]-A UBL invoice should not include the AccountingCustomerParty AccountingContact + + + + + + + + + + UBL-CR-264 + warning + + + + [UBL-CR-264]-A UBL invoice should not include the AccountingCustomerParty BuyerContact + + + + + + + + + + UBL-CR-265 + warning + + + + [UBL-CR-265]-A UBL invoice should not include the PayeeParty MarkCareIndicator + + + + + + + + + + UBL-CR-266 + warning + + + + [UBL-CR-266]-A UBL invoice should not include the PayeeParty MarkAttentionIndicator + + + + + + + + + + UBL-CR-267 + warning + + + + [UBL-CR-267]-A UBL invoice should not include the PayeeParty WebsiteURI + + + + + + + + + + UBL-CR-268 + warning + + + + [UBL-CR-268]-A UBL invoice should not include the PayeeParty LogoReferenceID + + + + + + + + + + UBL-CR-269 + warning + + + + [UBL-CR-269]-A UBL invoice should not include the PayeeParty EndpointID + + + + + + + + + + UBL-CR-270 + warning + + + + [UBL-CR-270]-A UBL invoice should not include the PayeeParty IndustryClassificationCode + + + + + + + + + + UBL-CR-271 + warning + + + + [UBL-CR-271]-A UBL invoice should not include the PayeeParty Language + + + + + + + + + + UBL-CR-272 + warning + + + + [UBL-CR-272]-A UBL invoice should not include the PayeeParty PostalAddress + + + + + + + + + + UBL-CR-273 + warning + + + + [UBL-CR-273]-A UBL invoice should not include the PayeeParty PhysicalLocation + + + + + + + + + + UBL-CR-274 + warning + + + + [UBL-CR-274]-A UBL invoice should not include the PayeeParty PartyTaxScheme + + + + + + + + + + UBL-CR-275 + warning + + + + [UBL-CR-275]-A UBL invoice should not include the PayeeParty PartyLegalEntity RegistrationName + + + + + + + + + + UBL-CR-276 + warning + + + + [UBL-CR-276]-A UBL invoice should not include the PayeeParty PartyLegalEntity RegistrationDate + + + + + + + + + + UBL-CR-277 + warning + + + + [UBL-CR-277]-A UBL invoice should not include the PayeeParty PartyLegalEntity RegistrationExpirationDate + + + + + + + + + + UBL-CR-278 + warning + + + + [UBL-CR-278]-A UBL invoice should not include the PayeeParty PartyLegalEntity CompanyLegalFormCode + + + + + + + + + + UBL-CR-279 + warning + + + + [UBL-CR-279]-A UBL invoice should not include the PayeeParty PartyLegalEntity CompanyLegalForm + + + + + + + + + + UBL-CR-280 + warning + + + + [UBL-CR-280]-A UBL invoice should not include the PayeeParty PartyLegalEntity SoleProprietorshipIndicator + + + + + + + + + + UBL-CR-281 + warning + + + + [UBL-CR-281]-A UBL invoice should not include the PayeeParty PartyLegalEntity CompanyLiquidationStatusCode + + + + + + + + + + UBL-CR-282 + warning + + + + [UBL-CR-282]-A UBL invoice should not include the PayeeParty PartyLegalEntity CorporationStockAmount + + + + + + + + + + UBL-CR-283 + warning + + + + [UBL-CR-283]-A UBL invoice should not include the PayeeParty PartyLegalEntity FullyPaidSharesIndicator + + + + + + + + + + UBL-CR-284 + warning + + + + [UBL-CR-284]-A UBL invoice should not include the PayeeParty PartyLegalEntity RegistrationAddress + + + + + + + + + + UBL-CR-285 + warning + + + + [UBL-CR-285]-A UBL invoice should not include the PayeeParty PartyLegalEntity CorporateRegistrationScheme + + + + + + + + + + UBL-CR-286 + warning + + + + [UBL-CR-286]-A UBL invoice should not include the PayeeParty PartyLegalEntity HeadOfficeParty + + + + + + + + + + UBL-CR-287 + warning + + + + [UBL-CR-287]-A UBL invoice should not include the PayeeParty PartyLegalEntity ShareholderParty + + + + + + + + + + UBL-CR-288 + warning + + + + [UBL-CR-288]-A UBL invoice should not include the PayeeParty Contact + + + + + + + + + + UBL-CR-289 + warning + + + + [UBL-CR-289]-A UBL invoice should not include the PayeeParty Person + + + + + + + + + + UBL-CR-290 + warning + + + + [UBL-CR-290]-A UBL invoice should not include the PayeeParty AgentParty + + + + + + + + + + UBL-CR-291 + warning + + + + [UBL-CR-291]-A UBL invoice should not include the PayeeParty ServiceProviderParty + + + + + + + + + + UBL-CR-292 + warning + + + + [UBL-CR-292]-A UBL invoice should not include the PayeeParty PowerOfAttorney + + + + + + + + + + UBL-CR-293 + warning + + + + [UBL-CR-293]-A UBL invoice should not include the PayeeParty FinancialAccount + + + + + + + + + + UBL-CR-294 + warning + + + + [UBL-CR-294]-A UBL invoice should not include the BuyerCustomerParty + + + + + + + + + + UBL-CR-295 + warning + + + + [UBL-CR-295]-A UBL invoice should not include the SellerSupplierParty + + + + + + + + + + UBL-CR-296 + warning + + + + [UBL-CR-296]-A UBL invoice should not include the TaxRepresentativeParty MarkCareIndicator + + + + + + + + + + UBL-CR-297 + warning + + + + [UBL-CR-297]-A UBL invoice should not include the TaxRepresentativeParty MarkAttentionIndicator + + + + + + + + + + UBL-CR-298 + warning + + + + [UBL-CR-298]-A UBL invoice should not include the TaxRepresentativeParty WebsiteURI + + + + + + + + + + UBL-CR-299 + warning + + + + [UBL-CR-299]-A UBL invoice should not include the TaxRepresentativeParty LogoReferenceID + + + + + + + + + + UBL-CR-300 + warning + + + + [UBL-CR-300]-A UBL invoice should not include the TaxRepresentativeParty EndpointID + + + + + + + + + + UBL-CR-301 + warning + + + + [UBL-CR-301]-A UBL invoice should not include the TaxRepresentativeParty IndustryClassificationCode + + + + + + + + + + UBL-CR-302 + warning + + + + [UBL-CR-302]-A UBL invoice should not include the TaxRepresentativeParty PartyIdentification + + + + + + + + + + UBL-CR-303 + warning + + + + [UBL-CR-303]-A UBL invoice should not include the TaxRepresentativeParty Language + + + + + + + + + + UBL-CR-304 + warning + + + + [UBL-CR-304]-A UBL invoice should not include the TaxRepresentativeParty PostalAddress ID + + + + + + + + + + UBL-CR-305 + warning + + + + [UBL-CR-305]-A UBL invoice should not include the TaxRepresentativeParty PostalAddress AddressTypeCode + + + + + + + + + + UBL-CR-306 + warning + + + + [UBL-CR-306]-A UBL invoice should not include the TaxRepresentativeParty PostalAddress AddressFormatCode + + + + + + + + + + UBL-CR-307 + warning + + + + [UBL-CR-307]-A UBL invoice should not include the TaxRepresentativeParty PostalAddress Postbox + + + + + + + + + + UBL-CR-308 + warning + + + + [UBL-CR-308]-A UBL invoice should not include the TaxRepresentativeParty PostalAddress Floor + + + + + + + + + + UBL-CR-309 + warning + + + + [UBL-CR-309]-A UBL invoice should not include the TaxRepresentativeParty PostalAddress Room + + + + + + + + + + UBL-CR-310 + warning + + + + [UBL-CR-310]-A UBL invoice should not include the TaxRepresentativeParty PostalAddress BlockName + + + + + + + + + + UBL-CR-311 + warning + + + + [UBL-CR-311]-A UBL invoice should not include the TaxRepresentativeParty PostalAddress BuildingName + + + + + + + + + + UBL-CR-312 + warning + + + + [UBL-CR-312]-A UBL invoice should not include the TaxRepresentativeParty PostalAddress BuildingNumber + + + + + + + + + + UBL-CR-313 + warning + + + + [UBL-CR-313]-A UBL invoice should not include the TaxRepresentativeParty PostalAddress InhouseMail + + + + + + + + + + UBL-CR-314 + warning + + + + [UBL-CR-314]-A UBL invoice should not include the TaxRepresentativeParty PostalAddress Department + + + + + + + + + + UBL-CR-315 + warning + + + + [UBL-CR-315]-A UBL invoice should not include the TaxRepresentativeParty PostalAddress MarkAttention + + + + + + + + + + UBL-CR-316 + warning + + + + [UBL-CR-316]-A UBL invoice should not include the TaxRepresentativeParty PostalAddress MarkCare + + + + + + + + + + UBL-CR-317 + warning + + + + [UBL-CR-317]-A UBL invoice should not include the TaxRepresentativeParty PostalAddress PlotIdentification + + + + + + + + + + UBL-CR-318 + warning + + + + [UBL-CR-318]-A UBL invoice should not include the TaxRepresentativeParty PostalAddress CitySubdivisionName + + + + + + + + + + UBL-CR-319 + warning + + + + [UBL-CR-319]-A UBL invoice should not include the TaxRepresentativeParty PostalAddress CountrySubentityCode + + + + + + + + + + UBL-CR-320 + warning + + + + [UBL-CR-320]-A UBL invoice should not include the TaxRepresentativeParty PostalAddress Region + + + + + + + + + + UBL-CR-321 + warning + + + + [UBL-CR-321]-A UBL invoice should not include the TaxRepresentativeParty PostalAddress District + + + + + + + + + + UBL-CR-322 + warning + + + + [UBL-CR-322]-A UBL invoice should not include the TaxRepresentativeParty PostalAddress TimezoneOffset + + + + + + + + + + UBL-CR-323 + warning + + + + [UBL-CR-323]-A UBL invoice should not include the TaxRepresentativeParty PostalAddress Country Name + + + + + + + + + + UBL-CR-324 + warning + + + + [UBL-CR-324]-A UBL invoice should not include the TaxRepresentativeParty PostalAddress LocationCoordinate + + + + + + + + + + UBL-CR-325 + warning + + + + [UBL-CR-325]-A UBL invoice should not include the TaxRepresentativeParty PhysicalLocation + + + + + + + + + + UBL-CR-326 + warning + + + + [UBL-CR-326]-A UBL invoice should not include the TaxRepresentativeParty PartyTaxScheme RegistrationName + + + + + + + + + + UBL-CR-327 + warning + + + + [UBL-CR-327]-A UBL invoice should not include the TaxRepresentativeParty PartyTaxScheme TaxLevelCode + + + + + + + + + + UBL-CR-328 + warning + + + + [UBL-CR-328]-A UBL invoice should not include the TaxRepresentativeParty PartyTaxScheme ExemptionReasonCode + + + + + + + + + + UBL-CR-329 + warning + + + + [UBL-CR-329]-A UBL invoice should not include the TaxRepresentativeParty PartyTaxScheme ExemptionReason + + + + + + + + + + UBL-CR-330 + warning + + + + [UBL-CR-330]-A UBL invoice should not include the TaxRepresentativeParty PartyTaxScheme RegistrationAddress + + + + + + + + + + UBL-CR-331 + warning + + + + [UBL-CR-331]-A UBL invoice should not include the TaxRepresentativeParty PartyTaxScheme TaxScheme Name + + + + + + + + + + UBL-CR-332 + warning + + + + [UBL-CR-332]-A UBL invoice should not include the TaxRepresentativeParty PartyTaxScheme TaxScheme TaxTypeCode + + + + + + + + + + UBL-CR-333 + warning + + + + [UBL-CR-333]-A UBL invoice should not include the TaxRepresentativeParty PartyTaxScheme TaxScheme CurrencyCode + + + + + + + + + + UBL-CR-334 + warning + + + + [UBL-CR-334]-A UBL invoice should not include the TaxRepresentativeParty PartyTaxScheme TaxScheme JurisdictionRegionAddress + + + + + + + + + + UBL-CR-335 + warning + + + + [UBL-CR-335]-A UBL invoice should not include the TaxRepresentativeParty PartyLegalEntity + + + + + + + + + + UBL-CR-336 + warning + + + + [UBL-CR-336]-A UBL invoice should not include the TaxRepresentativeParty Contact + + + + + + + + + + UBL-CR-337 + warning + + + + [UBL-CR-337]-A UBL invoice should not include the TaxRepresentativeParty Person + + + + + + + + + + UBL-CR-338 + warning + + + + [UBL-CR-338]-A UBL invoice should not include the TaxRepresentativeParty AgentParty + + + + + + + + + + UBL-CR-339 + warning + + + + [UBL-CR-339]-A UBL invoice should not include the TaxRepresentativeParty ServiceProviderParty + + + + + + + + + + UBL-CR-340 + warning + + + + [UBL-CR-340]-A UBL invoice should not include the TaxRepresentativeParty PowerOfAttorney + + + + + + + + + + UBL-CR-341 + warning + + + + [UBL-CR-341]-A UBL invoice should not include the TaxRepresentativeParty FinancialAccount + + + + + + + + + + UBL-CR-342 + warning + + + + [UBL-CR-342]-A UBL invoice should not include the Delivery ID + + + + + + + + + + UBL-CR-343 + warning + + + + [UBL-CR-343]-A UBL invoice should not include the Delivery Quantity + + + + + + + + + + UBL-CR-344 + warning + + + + [UBL-CR-344]-A UBL invoice should not include the Delivery MinimumQuantity + + + + + + + + + + UBL-CR-345 + warning + + + + [UBL-CR-345]-A UBL invoice should not include the Delivery MaximumQuantity + + + + + + + + + + UBL-CR-346 + warning + + + + [UBL-CR-346]-A UBL invoice should not include the Delivery ActualDeliveryTime + + + + + + + + + + UBL-CR-347 + warning + + + + [UBL-CR-347]-A UBL invoice should not include the Delivery LatestDeliveryDate + + + + + + + + + + UBL-CR-348 + warning + + + + [UBL-CR-348]-A UBL invoice should not include the Delivery LatestDeliveryTime + + + + + + + + + + UBL-CR-349 + warning + + + + [UBL-CR-349]-A UBL invoice should not include the Delivery ReleaseID + + + + + + + + + + UBL-CR-350 + warning + + + + [UBL-CR-350]-A UBL invoice should not include the Delivery TrackingID + + + + + + + + + + UBL-CR-351 + warning + + + + [UBL-CR-351]-A UBL invoice should not include the Delivery DeliveryLocation Description + + + + + + + + + + UBL-CR-352 + warning + + + + [UBL-CR-352]-A UBL invoice should not include the Delivery DeliveryLocation Conditions + + + + + + + + + + UBL-CR-353 + warning + + + + [UBL-CR-353]-A UBL invoice should not include the Delivery DeliveryLocation CountrySubentity + + + + + + + + + + UBL-CR-354 + warning + + + + [UBL-CR-354]-A UBL invoice should not include the Delivery DeliveryLocation CountrySubentityCode + + + + + + + + + + UBL-CR-355 + warning + + + + [UBL-CR-355]-A UBL invoice should not include the Delivery DeliveryLocation LocationTypeCode + + + + + + + + + + UBL-CR-356 + warning + + + + [UBL-CR-356]-A UBL invoice should not include the Delivery DeliveryLocation InformationURI + + + + + + + + + + UBL-CR-357 + warning + + + + [UBL-CR-357]-A UBL invoice should not include the Delivery DeliveryLocation Name + + + + + + + + + + UBL-CR-358 + warning + + + + [UBL-CR-358]-A UBL invoice should not include the Delivery DeliveryLocation ValidationPeriod + + + + + + + + + + UBL-CR-359 + warning + + + + [UBL-CR-359]-A UBL invoice should not include the Delivery DeliveryLocation Address ID + + + + + + + + + + UBL-CR-360 + warning + + + + [UBL-CR-360]-A UBL invoice should not include the Delivery DeliveryLocation Address AddressTypeCode + + + + + + + + + + UBL-CR-361 + warning + + + + [UBL-CR-361]-A UBL invoice should not include the Delivery DeliveryLocation Address AddressFormatCode + + + + + + + + + + UBL-CR-362 + warning + + + + [UBL-CR-362]-A UBL invoice should not include the Delivery DeliveryLocation Address Postbox + + + + + + + + + + UBL-CR-363 + warning + + + + [UBL-CR-363]-A UBL invoice should not include the Delivery DeliveryLocation Address Floor + + + + + + + + + + UBL-CR-364 + warning + + + + [UBL-CR-364]-A UBL invoice should not include the Delivery DeliveryLocation Address Room + + + + + + + + + + UBL-CR-365 + warning + + + + [UBL-CR-365]-A UBL invoice should not include the Delivery DeliveryLocation Address BlockName + + + + + + + + + + UBL-CR-366 + warning + + + + [UBL-CR-366]-A UBL invoice should not include the Delivery DeliveryLocation Address BuildingName + + + + + + + + + + UBL-CR-367 + warning + + + + [UBL-CR-367]-A UBL invoice should not include the Delivery DeliveryLocation Address BuildingNumber + + + + + + + + + + UBL-CR-368 + warning + + + + [UBL-CR-368]-A UBL invoice should not include the Delivery DeliveryLocation Address InhouseMail + + + + + + + + + + UBL-CR-369 + warning + + + + [UBL-CR-369]-A UBL invoice should not include the Delivery DeliveryLocation Address Department + + + + + + + + + + UBL-CR-370 + warning + + + + [UBL-CR-370]-A UBL invoice should not include the Delivery DeliveryLocation Address MarkAttention + + + + + + + + + + UBL-CR-371 + warning + + + + [UBL-CR-371]-A UBL invoice should not include the Delivery DeliveryLocation Address MarkCare + + + + + + + + + + UBL-CR-372 + warning + + + + [UBL-CR-372]-A UBL invoice should not include the Delivery DeliveryLocation Address PlotIdentification + + + + + + + + + + UBL-CR-373 + warning + + + + [UBL-CR-373]-A UBL invoice should not include the Delivery DeliveryLocation Address CitySubdivisionName + + + + + + + + + + UBL-CR-374 + warning + + + + [UBL-CR-374]-A UBL invoice should not include the Delivery DeliveryLocation Address CountrySubentityCode + + + + + + + + + + UBL-CR-375 + warning + + + + [UBL-CR-375]-A UBL invoice should not include the Delivery DeliveryLocation Address Region + + + + + + + + + + UBL-CR-376 + warning + + + + [UBL-CR-376]-A UBL invoice should not include the Delivery DeliveryLocation Address District + + + + + + + + + + UBL-CR-377 + warning + + + + [UBL-CR-377]-A UBL invoice should not include the Delivery DeliveryLocation Address TimezoneOffset + + + + + + + + + + UBL-CR-378 + warning + + + + [UBL-CR-378]-A UBL invoice should not include the Delivery DeliveryLocation Address Country Name + + + + + + + + + + UBL-CR-379 + warning + + + + [UBL-CR-379]-A UBL invoice should not include the Delivery DeliveryLocation Address LocationCoordinate + + + + + + + + + + UBL-CR-380 + warning + + + + [UBL-CR-380]-A UBL invoice should not include the Delivery DeliveryLocation SubsidiaryLocation + + + + + + + + + + UBL-CR-381 + warning + + + + [UBL-CR-381]-A UBL invoice should not include the Delivery DeliveryLocation LocationCoordinate + + + + + + + + + + UBL-CR-382 + warning + + + + [UBL-CR-382]-A UBL invoice should not include the Delivery AlternativeDeliveryLocation + + + + + + + + + + UBL-CR-383 + warning + + + + [UBL-CR-383]-A UBL invoice should not include the Delivery RequestedDeliveryPeriod + + + + + + + + + + UBL-CR-384 + warning + + + + [UBL-CR-384]-A UBL invoice should not include the Delivery PromisedDeliveryPeriod + + + + + + + + + + UBL-CR-385 + warning + + + + [UBL-CR-385]-A UBL invoice should not include the Delivery CarrierParty + + + + + + + + + + UBL-CR-386 + warning + + + + [UBL-CR-386]-A UBL invoice should not include the DeliveryParty MarkCareIndicator + + + + + + + + + + UBL-CR-387 + warning + + + + [UBL-CR-387]-A UBL invoice should not include the DeliveryParty MarkAttentionIndicator + + + + + + + + + + UBL-CR-388 + warning + + + + [UBL-CR-388]-A UBL invoice should not include the DeliveryParty WebsiteURI + + + + + + + + + + UBL-CR-389 + warning + + + + [UBL-CR-389]-A UBL invoice should not include the DeliveryParty LogoReferenceID + + + + + + + + + + UBL-CR-390 + warning + + + + [UBL-CR-390]-A UBL invoice should not include the DeliveryParty EndpointID + + + + + + + + + + UBL-CR-391 + warning + + + + [UBL-CR-391]-A UBL invoice should not include the DeliveryParty IndustryClassificationCode + + + + + + + + + + UBL-CR-392 + warning + + + + [UBL-CR-392]-A UBL invoice should not include the DeliveryParty PartyIdentification + + + + + + + + + + UBL-CR-393 + warning + + + + [UBL-CR-393]-A UBL invoice should not include the DeliveryParty Language + + + + + + + + + + UBL-CR-394 + warning + + + + [UBL-CR-394]-A UBL invoice should not include the DeliveryParty PostalAddress + + + + + + + + + + UBL-CR-395 + warning + + + + [UBL-CR-395]-A UBL invoice should not include the DeliveryParty PhysicalLocation + + + + + + + + + + UBL-CR-396 + warning + + + + [UBL-CR-396]-A UBL invoice should not include the DeliveryParty PartyTaxScheme + + + + + + + + + + UBL-CR-397 + warning + + + + [UBL-CR-397]-A UBL invoice should not include the DeliveryParty PartyLegalEntity + + + + + + + + + + UBL-CR-398 + warning + + + + [UBL-CR-398]-A UBL invoice should not include the DeliveryParty Contact + + + + + + + + + + UBL-CR-399 + warning + + + + [UBL-CR-399]-A UBL invoice should not include the DeliveryParty Person + + + + + + + + + + UBL-CR-400 + warning + + + + [UBL-CR-400]-A UBL invoice should not include the DeliveryParty AgentParty + + + + + + + + + + UBL-CR-401 + warning + + + + [UBL-CR-401]-A UBL invoice should not include the DeliveryParty ServiceProviderParty + + + + + + + + + + UBL-CR-402 + warning + + + + [UBL-CR-402]-A UBL invoice should not include the DeliveryParty PowerOfAttorney + + + + + + + + + + UBL-CR-403 + warning + + + + [UBL-CR-403]-A UBL invoice should not include the DeliveryParty FinancialAccount + + + + + + + + + + UBL-CR-404 + warning + + + + [UBL-CR-404]-A UBL invoice should not include the Delivery NotifyParty + + + + + + + + + + UBL-CR-405 + warning + + + + [UBL-CR-405]-A UBL invoice should not include the Delivery Despatch + + + + + + + + + + UBL-CR-406 + warning + + + + [UBL-CR-406]-A UBL invoice should not include the Delivery DeliveryTerms + + + + + + + + + + UBL-CR-407 + warning + + + + [UBL-CR-407]-A UBL invoice should not include the Delivery MinimumDeliveryUnit + + + + + + + + + + UBL-CR-408 + warning + + + + [UBL-CR-408]-A UBL invoice should not include the Delivery MaximumDeliveryUnit + + + + + + + + + + UBL-CR-409 + warning + + + + [UBL-CR-409]-A UBL invoice should not include the Delivery Shipment + + + + + + + + + + UBL-CR-410 + warning + + + + [UBL-CR-410]-A UBL invoice should not include the DeliveryTerms + + + + + + + + + + UBL-CR-411 + warning + + + + [UBL-CR-411]-A UBL invoice should not include the PaymentMeans ID + + + + + + + + + + UBL-CR-412 + warning + + + + [UBL-CR-412]-A UBL invoice should not include the PaymentMeans PaymentDueDate + + + + + + + + + + UBL-CR-413 + warning + + + + [UBL-CR-413]-A UBL invoice should not include the PaymentMeans PaymentChannelCode + + + + + + + + + + UBL-CR-414 + warning + + + + [UBL-CR-414]-A UBL invoice should not include the PaymentMeans InstructionID + + + + + + + + + + UBL-CR-415 + warning + + + + [UBL-CR-415]-A UBL invoice should not include the PaymentMeans CardAccount CardTypeCode + + + + + + + + + + UBL-CR-416 + warning + + + + [UBL-CR-416]-A UBL invoice should not include the PaymentMeans CardAccount ValidityStartDate + + + + + + + + + + UBL-CR-417 + warning + + + + [UBL-CR-417]-A UBL invoice should not include the PaymentMeans CardAccount ExpiryDate + + + + + + + + + + UBL-CR-418 + warning + + + + [UBL-CR-418]-A UBL invoice should not include the PaymentMeans CardAccount IssuerID + + + + + + + + + + UBL-CR-419 + warning + + + + [UBL-CR-419]-A UBL invoice should not include the PaymentMeans CardAccount IssuerNumberID + + + + + + + + + + UBL-CR-420 + warning + + + + [UBL-CR-420]-A UBL invoice should not include the PaymentMeans CardAccount CV2ID + + + + + + + + + + UBL-CR-421 + warning + + + + [UBL-CR-421]-A UBL invoice should not include the PaymentMeans CardAccount CardChipCode + + + + + + + + + + UBL-CR-422 + warning + + + + [UBL-CR-422]-A UBL invoice should not include the PaymentMeans CardAccount ChipApplicationID + + + + + + + + + + UBL-CR-424 + warning + + + + [UBL-CR-424]-A UBL invoice should not include the PaymentMeans PayeeFinancialAccount AliasName + + + + + + + + + + UBL-CR-425 + warning + + + + [UBL-CR-425]-A UBL invoice should not include the PaymentMeans PayeeFinancialAccount AccountTypeCode + + + + + + + + + + UBL-CR-426 + warning + + + + [UBL-CR-426]-A UBL invoice should not include the PaymentMeans PayeeFinancialAccount AccountFormatCode + + + + + + + + + + UBL-CR-427 + warning + + + + [UBL-CR-427]-A UBL invoice should not include the PaymentMeans PayeeFinancialAccount CurrencyCode + + + + + + + + + + UBL-CR-428 + warning + + + + [UBL-CR-428]-A UBL invoice should not include the PaymentMeans PayeeFinancialAccount PaymentNote + + + + + + + + + + UBL-CR-429 + warning + + + + [UBL-CR-429]-A UBL invoice should not include the PaymentMeans PayeeFinancialAccount FinancialInstitutionBranch Name + + + + + + + + + + UBL-CR-430 + warning + + + + [UBL-CR-430]-A UBL invoice should not include the PaymentMeans PayeeFinancialAccount FinancialInstitutionBranch FinancialInstitution Name + + + + + + + + + + UBL-CR-431 + warning + + + + [UBL-CR-431]-A UBL invoice should not include the PaymentMeans PayeeFinancialAccount FinancialInstitutionBranch FinancialInstitution Address + + + + + + + + + + UBL-CR-432 + warning + + + + [UBL-CR-432]-A UBL invoice should not include the PaymentMeans PayeeFinancialAccount FinancialInstitutionBranch Address + + + + + + + + + + UBL-CR-433 + warning + + + + [UBL-CR-433]-A UBL invoice should not include the PaymentMeans PayeeFinancialAccount Country + + + + + + + + + + UBL-CR-434 + warning + + + + [UBL-CR-434]-A UBL invoice should not include the PaymentMeans CreditAccount + + + + + + + + + + UBL-CR-435 + warning + + + + [UBL-CR-435]-A UBL invoice should not include the PaymentMeans PaymentMandate MandateTypeCode + + + + + + + + + + UBL-CR-436 + warning + + + + [UBL-CR-436]-A UBL invoice should not include the PaymentMeans PaymentMandate MaximumPaymentInstructionsNumeric + + + + + + + + + + UBL-CR-437 + warning + + + + [UBL-CR-437]-A UBL invoice should not include the PaymentMeans PaymentMandate MaximumPaidAmount + + + + + + + + + + UBL-CR-438 + warning + + + + [UBL-CR-438]-A UBL invoice should not include the PaymentMeans PaymentMandate SignatureID + + + + + + + + + + UBL-CR-439 + warning + + + + [UBL-CR-439]-A UBL invoice should not include the PaymentMeans PaymentMandate PayerParty + + + + + + + + + + UBL-CR-440 + warning + + + + [UBL-CR-440]-A UBL invoice should not include the PaymentMeans PaymentMandate PayerFinancialAccount Name + + + + + + + + + + UBL-CR-441 + warning + + + + [UBL-CR-441]-A UBL invoice should not include the PaymentMeans PaymentMandate PayerFinancialAccount AliasName + + + + + + + + + + UBL-CR-442 + warning + + + + [UBL-CR-442]-A UBL invoice should not include the PaymentMeans PaymentMandate PayerFinancialAccount AccountTypeCode + + + + + + + + + + UBL-CR-443 + warning + + + + [UBL-CR-443]-A UBL invoice should not include the PaymentMeans PaymentMandate PayerFinancialAccount AccountFormatCode + + + + + + + + + + UBL-CR-444 + warning + + + + [UBL-CR-444]-A UBL invoice should not include the PaymentMeans PaymentMandate PayerFinancialAccount CurrencyCode + + + + + + + + + + UBL-CR-445 + warning + + + + [UBL-CR-445]-A UBL invoice should not include the PaymentMeans PaymentMandate PayerFinancialAccount PaymentNote + + + + + + + + + + UBL-CR-446 + warning + + + + [UBL-CR-446]-A UBL invoice should not include the PaymentMeans PaymentMandate PayerFinancialAccount FinancialInstitutionBranch + + + + + + + + + + UBL-CR-447 + warning + + + + [UBL-CR-447]-A UBL invoice should not include the PaymentMeans PaymentMandate PayerFinancialAccount Country + + + + + + + + + + UBL-CR-448 + warning + + + + [UBL-CR-448]-A UBL invoice should not include the PaymentMeans PaymentMandate ValidityPeriod + + + + + + + + + + UBL-CR-449 + warning + + + + [UBL-CR-449]-A UBL invoice should not include the PaymentMeans PaymentMandate PaymentReversalPeriod + + + + + + + + + + UBL-CR-450 + warning + + + + [UBL-CR-450]-A UBL invoice should not include the PaymentMeans PaymentMandate Clause + + + + + + + + + + UBL-CR-451 + warning + + + + [UBL-CR-451]-A UBL invoice should not include the PaymentMeans TradeFinancing + + + + + + + + + + UBL-CR-452 + warning + + + + [UBL-CR-452]-A UBL invoice should not include the PaymentTerms ID + + + + + + + + + + UBL-CR-453 + warning + + + + [UBL-CR-453]-A UBL invoice should not include the PaymentTerms PaymentMeansID + + + + + + + + + + UBL-CR-454 + warning + + + + [UBL-CR-454]-A UBL invoice should not include the PaymentTerms PrepaidPaymentReferenceID + + + + + + + + + + UBL-CR-455 + warning + + + + [UBL-CR-455]-A UBL invoice should not include the PaymentTerms ReferenceEventCode + + + + + + + + + + UBL-CR-456 + warning + + + + [UBL-CR-456]-A UBL invoice should not include the PaymentTerms SettlementDiscountPercent + + + + + + + + + + UBL-CR-457 + warning + + + + [UBL-CR-457]-A UBL invoice should not include the PaymentTerms PenaltySurchargePercent + + + + + + + + + + UBL-CR-458 + warning + + + + [UBL-CR-458]-A UBL invoice should not include the PaymentTerms PaymentPercent + + + + + + + + + + UBL-CR-459 + warning + + + + [UBL-CR-459]-A UBL invoice should not include the PaymentTerms Amount + + + + + + + + + + UBL-CR-460 + warning + + + + [UBL-CR-460]-A UBL invoice should not include the PaymentTerms SettlementDiscountAmount + + + + + + + + + + UBL-CR-461 + warning + + + + [UBL-CR-461]-A UBL invoice should not include the PaymentTerms PenaltyAmount + + + + + + + + + + UBL-CR-462 + warning + + + + [UBL-CR-462]-A UBL invoice should not include the PaymentTerms PaymentTermsDetailsURI + + + + + + + + + + UBL-CR-463 + warning + + + + [UBL-CR-463]-A UBL invoice should not include the PaymentTerms PaymentDueDate + + + + + + + + + + UBL-CR-464 + warning + + + + [UBL-CR-464]-A UBL invoice should not include the PaymentTerms InstallmentDueDate + + + + + + + + + + UBL-CR-465 + warning + + + + [UBL-CR-465]-A UBL invoice should not include the PaymentTerms InvoicingPartyReference + + + + + + + + + + UBL-CR-466 + warning + + + + [UBL-CR-466]-A UBL invoice should not include the PaymentTerms SettlementPeriod + + + + + + + + + + UBL-CR-467 + warning + + + + [UBL-CR-467]-A UBL invoice should not include the PaymentTerms PenaltyPeriod + + + + + + + + + + UBL-CR-468 + warning + + + + [UBL-CR-468]-A UBL invoice should not include the PaymentTerms ExchangeRate + + + + + + + + + + UBL-CR-469 + warning + + + + [UBL-CR-469]-A UBL invoice should not include the PaymentTerms ValidityPeriod + + + + + + + + + + UBL-CR-470 + warning + + + + [UBL-CR-470]-A UBL invoice should not include the PrepaidPayment + + + + + + + + + + UBL-CR-471 + warning + + + + [UBL-CR-471]-A UBL invoice should not include the AllowanceCharge ID + + + + + + + + + + UBL-CR-472 + warning + + + + [UBL-CR-472]-A UBL invoice should not include the AllowanceCharge PrepaidIndicator + + + + + + + + + + UBL-CR-473 + warning + + + + [UBL-CR-473]-A UBL invoice should not include the AllowanceCharge SequenceNumeric + + + + + + + + + + UBL-CR-474 + warning + + + + [UBL-CR-474]-A UBL invoice should not include the AllowanceCharge AccountingCostCode + + + + + + + + + + UBL-CR-475 + warning + + + + [UBL-CR-475]-A UBL invoice should not include the AllowanceCharge AccountingCost + + + + + + + + + + UBL-CR-476 + warning + + + + [UBL-CR-476]-A UBL invoice should not include the AllowanceCharge PerUnitAmount + + + + + + + + + + UBL-CR-477 + warning + + + + [UBL-CR-477]-A UBL invoice should not include the AllowanceCharge TaxCategory Name + + + + + + + + + + UBL-CR-478 + warning + + + + [UBL-CR-478]-A UBL invoice should not include the AllowanceCharge TaxCategory BaseUnitMeasure + + + + + + + + + + UBL-CR-479 + warning + + + + [UBL-CR-479]-A UBL invoice should not include the AllowanceCharge TaxCategory PerUnitAmount + + + + + + + + + + UBL-CR-480 + warning + + + + [UBL-CR-480]-A UBL invoice should not include the AllowanceCharge TaxCategory TaxExemptionReasonCode + + + + + + + + + + UBL-CR-481 + warning + + + + [UBL-CR-481]-A UBL invoice should not include the AllowanceCharge TaxCategory TaxExemptionReason + + + + + + + + + + UBL-CR-482 + warning + + + + [UBL-CR-482]-A UBL invoice should not include the AllowanceCharge TaxCategory TierRange + + + + + + + + + + UBL-CR-483 + warning + + + + [UBL-CR-483]-A UBL invoice should not include the AllowanceCharge TaxCategory TierRatePercent + + + + + + + + + + UBL-CR-484 + warning + + + + [UBL-CR-484]-A UBL invoice should not include the AllowanceCharge TaxCategory TaxScheme Name + + + + + + + + + + UBL-CR-485 + warning + + + + [UBL-CR-485]-A UBL invoice should not include the AllowanceCharge TaxCategory TaxScheme TaxTypeCode + + + + + + + + + + UBL-CR-486 + warning + + + + [UBL-CR-486]-A UBL invoice should not include the AllowanceCharge TaxCategory TaxScheme CurrencyCode + + + + + + + + + + UBL-CR-487 + warning + + + + [UBL-CR-487]-A UBL invoice should not include the AllowanceCharge TaxCategory TaxScheme JurisdiccionRegionAddress + + + + + + + + + + UBL-CR-488 + warning + + + + [UBL-CR-488]-A UBL invoice should not include the AllowanceCharge TaxTotal + + + + + + + + + + UBL-CR-489 + warning + + + + [UBL-CR-489]-A UBL invoice should not include the AllowanceCharge PaymentMeans + + + + + + + + + + UBL-CR-490 + warning + + + + [UBL-CR-490]-A UBL invoice should not include the TaxExchangeRate + + + + + + + + + + UBL-CR-491 + warning + + + + [UBL-CR-491]-A UBL invoice should not include the PricingExchangeRate + + + + + + + + + + UBL-CR-492 + warning + + + + [UBL-CR-492]-A UBL invoice should not include the PaymentExchangeRate + + + + + + + + + + UBL-CR-493 + warning + + + + [UBL-CR-493]-A UBL invoice should not include the PaymentAlternativeExchangeRate + + + + + + + + + + UBL-CR-494 + warning + + + + [UBL-CR-494]-A UBL invoice should not include the TaxTotal RoundingAmount + + + + + + + + + + UBL-CR-495 + warning + + + + [UBL-CR-495]-A UBL invoice should not include the TaxTotal TaxEvidenceIndicator + + + + + + + + + + UBL-CR-496 + warning + + + + [UBL-CR-496]-A UBL invoice should not include the TaxTotal TaxIncludedIndicator + + + + + + + + + + UBL-CR-497 + warning + + + + [UBL-CR-497]-A UBL invoice should not include the TaxTotal TaxSubtotal CalulationSequenceNumeric + + + + + + + + + + UBL-CR-498 + warning + + + + [UBL-CR-498]-A UBL invoice should not include the TaxTotal TaxSubtotal TransactionCurrencyTaxAmount + + + + + + + + + + UBL-CR-499 + warning + + + + [UBL-CR-499]-A UBL invoice should not include the TaxTotal TaxSubtotal Percent + + + + + + + + + + UBL-CR-500 + warning + + + + [UBL-CR-500]-A UBL invoice should not include the TaxTotal TaxSubtotal BaseUnitMeasure + + + + + + + + + + UBL-CR-501 + warning + + + + [UBL-CR-501]-A UBL invoice should not include the TaxTotal TaxSubtotal PerUnitAmount + + + + + + + + + + UBL-CR-502 + warning + + + + [UBL-CR-502]-A UBL invoice should not include the TaxTotal TaxSubtotal TierRange + + + + + + + + + + UBL-CR-503 + warning + + + + [UBL-CR-503]-A UBL invoice should not include the TaxTotal TaxSubtotal TierRatePercent + + + + + + + + + + UBL-CR-504 + warning + + + + [UBL-CR-504]-A UBL invoice should not include the TaxTotal TaxSubtotal TaxCategory Name + + + + + + + + + + UBL-CR-505 + warning + + + + [UBL-CR-505]-A UBL invoice should not include the TaxTotal TaxSubtotal TaxCategory BaseUnitMeasure + + + + + + + + + + UBL-CR-506 + warning + + + + [UBL-CR-506]-A UBL invoice should not include the TaxTotal TaxSubtotal TaxCategory PerUnitAmount + + + + + + + + + + UBL-CR-507 + warning + + + + [UBL-CR-507]-A UBL invoice should not include the TaxTotal TaxSubtotal TaxCategory TierRange + + + + + + + + + + UBL-CR-508 + warning + + + + [UBL-CR-508]-A UBL invoice should not include the TaxTotal TaxSubtotal TaxCategory TierRatePercent + + + + + + + + + + UBL-CR-509 + warning + + + + [UBL-CR-509]-A UBL invoice should not include the TaxTotal TaxSubtotal TaxCategory TaxScheme Name + + + + + + + + + + UBL-CR-510 + warning + + + + [UBL-CR-510]-A UBL invoice should not include the TaxTotal TaxSubtotal TaxCategory TaxScheme TaxTypeCode + + + + + + + + + + UBL-CR-511 + warning + + + + [UBL-CR-511]-A UBL invoice should not include the TaxTotal TaxSubtotal TaxCategory TaxScheme CurrencyCode + + + + + + + + + + UBL-CR-512 + warning + + + + [UBL-CR-512]-A UBL invoice should not include the TaxTotal TaxSubtotal TaxCategory TaxScheme JurisdiccionRegionAddress + + + + + + + + + + UBL-CR-513 + warning + + + + [UBL-CR-513]-A UBL invoice should not include the WithholdingTaxTotal + + + + + + + + + + UBL-CR-514 + warning + + + + [UBL-CR-514]-A UBL invoice should not include the LegalMonetaryTotal PayableAlternativeAmount + + + + + + + + + + UBL-CR-515 + warning + + + + [UBL-CR-515]-A UBL invoice should not include the InvoiceLine UUID + + + + + + + + + + UBL-CR-516 + warning + + + + [UBL-CR-516]-A UBL invoice should not include the InvoiceLine TaxPointDate + + + + + + + + + + UBL-CR-517 + warning + + + + [UBL-CR-517]-A UBL invoice should not include the InvoiceLine AccountingCostCode + + + + + + + + + + UBL-CR-518 + warning + + + + [UBL-CR-518]-A UBL invoice should not include the InvoiceLine PaymentPurposeCode + + + + + + + + + + UBL-CR-519 + warning + + + + [UBL-CR-519]-A UBL invoice should not include the InvoiceLine FreeOfChargeIndicator + + + + + + + + + + UBL-CR-520 + warning + + + + [UBL-CR-520]-A UBL invoice should not include the InvoiceLine InvoicePeriod StartTime + + + + + + + + + + UBL-CR-521 + warning + + + + [UBL-CR-521]-A UBL invoice should not include the InvoiceLine InvoicePeriod EndTime + + + + + + + + + + UBL-CR-522 + warning + + + + [UBL-CR-522]-A UBL invoice should not include the InvoiceLine InvoicePeriod DurationMeasure + + + + + + + + + + UBL-CR-523 + warning + + + + [UBL-CR-523]-A UBL invoice should not include the InvoiceLine InvoicePeriod DescriptionCode + + + + + + + + + + UBL-CR-524 + warning + + + + [UBL-CR-524]-A UBL invoice should not include the InvoiceLine InvoicePeriod Description + + + + + + + + + + UBL-CR-525 + warning + + + + [UBL-CR-525]-A UBL invoice should not include the InvoiceLine OrderLineReference SalesOrderLineID + + + + + + + + + + UBL-CR-526 + warning + + + + [UBL-CR-526]-A UBL invoice should not include the InvoiceLine OrderLineReference UUID + + + + + + + + + + UBL-CR-527 + warning + + + + [UBL-CR-527]-A UBL invoice should not include the InvoiceLine OrderLineReference LineStatusCode + + + + + + + + + + UBL-CR-528 + warning + + + + [UBL-CR-528]-A UBL invoice should not include the InvoiceLine OrderLineReference OrderReference + + + + + + + + + + UBL-CR-529 + warning + + + + [UBL-CR-529]-A UBL invoice should not include the InvoiceLine DespatchLineReference + + + + + + + + + + UBL-CR-530 + warning + + + + [UBL-CR-530]-A UBL invoice should not include the InvoiceLine ReceiptLineReference + + + + + + + + + + UBL-CR-531 + warning + + + + [UBL-CR-531]-A UBL invoice should not include the InvoiceLine BillingReference + + + + + + + + + + UBL-CR-532 + warning + + + + [UBL-CR-532]-A UBL invoice should not include the InvoiceLine DocumentReference CopyIndicator + + + + + + + + + + UBL-CR-533 + warning + + + + [UBL-CR-533]-A UBL invoice should not include the InvoiceLine DocumentReference UUID + + + + + + + + + + UBL-CR-534 + warning + + + + [UBL-CR-534]-A UBL invoice should not include the InvoiceLine DocumentReference IssueDate + + + + + + + + + + UBL-CR-535 + warning + + + + [UBL-CR-535]-A UBL invoice should not include the InvoiceLine DocumentReference IssueTime + + + + + + + + + + UBL-CR-537 + warning + + + + [UBL-CR-537]-A UBL invoice should not include the InvoiceLine DocumentReference DocumentType + + + + + + + + + + UBL-CR-538 + warning + + + + [UBL-CR-538]-A UBL invoice should not include the InvoiceLine DocumentReference Xpath + + + + + + + + + + UBL-CR-539 + warning + + + + [UBL-CR-539]-A UBL invoice should not include the InvoiceLine DocumentReference LanguageID + + + + + + + + + + UBL-CR-540 + warning + + + + [UBL-CR-540]-A UBL invoice should not include the InvoiceLine DocumentReference LocaleCode + + + + + + + + + + UBL-CR-541 + warning + + + + [UBL-CR-541]-A UBL invoice should not include the InvoiceLine DocumentReference VersionID + + + + + + + + + + UBL-CR-542 + warning + + + + [UBL-CR-542]-A UBL invoice should not include the InvoiceLine DocumentReference DocumentStatusCode + + + + + + + + + + UBL-CR-543 + warning + + + + [UBL-CR-543]-A UBL invoice should not include the InvoiceLine DocumentReference DocumentDescription + + + + + + + + + + UBL-CR-544 + warning + + + + [UBL-CR-544]-A UBL invoice should not include the InvoiceLine DocumentReference Attachment + + + + + + + + + + UBL-CR-545 + warning + + + + [UBL-CR-545]-A UBL invoice should not include the InvoiceLine DocumentReference ValidityPeriod + + + + + + + + + + UBL-CR-546 + warning + + + + [UBL-CR-546]-A UBL invoice should not include the InvoiceLine DocumentReference IssuerParty + + + + + + + + + + UBL-CR-547 + warning + + + + [UBL-CR-547]-A UBL invoice should not include the InvoiceLine DocumentReference ResultOfVerification + + + + + + + + + + UBL-CR-548 + warning + + + + [UBL-CR-548]-A UBL invoice should not include the InvoiceLine PricingReference + + + + + + + + + + UBL-CR-549 + warning + + + + [UBL-CR-549]-A UBL invoice should not include the InvoiceLine OriginatorParty + + + + + + + + + + UBL-CR-550 + warning + + + + [UBL-CR-550]-A UBL invoice should not include the InvoiceLine Delivery + + + + + + + + + + UBL-CR-551 + warning + + + + [UBL-CR-551]-A UBL invoice should not include the InvoiceLine PaymentTerms + + + + + + + + + + UBL-CR-552 + warning + + + + [UBL-CR-552]-A UBL invoice should not include the InvoiceLine AllowanceCharge ID + + + + + + + + + + UBL-CR-553 + warning + + + + [UBL-CR-553]-A UBL invoice should not include the InvoiceLine AllowanceCharge PrepaidIndicator + + + + + + + + + + UBL-CR-554 + warning + + + + [UBL-CR-554]-A UBL invoice should not include the InvoiceLine AllowanceCharge SequenceNumeric + + + + + + + + + + UBL-CR-555 + warning + + + + [UBL-CR-555]-A UBL invoice should not include the InvoiceLine AllowanceCharge AccountingCostCode + + + + + + + + + + UBL-CR-556 + warning + + + + [UBL-CR-556]-A UBL invoice should not include the InvoiceLine AllowanceCharge AccountingCost + + + + + + + + + + UBL-CR-557 + warning + + + + [UBL-CR-557]-A UBL invoice should not include the InvoiceLine AllowanceCharge PerUnitAmount + + + + + + + + + + UBL-CR-558 + warning + + + + [UBL-CR-558]-A UBL invoice should not include the InvoiceLine AllowanceCharge TaxCategory + + + + + + + + + + UBL-CR-559 + warning + + + + [UBL-CR-559]-A UBL invoice should not include the InvoiceLine AllowanceCharge TaxTotal + + + + + + + + + + UBL-CR-560 + warning + + + + [UBL-CR-560]-A UBL invoice should not include the InvoiceLine AllowanceCharge PaymentMeans + + + + + + + + + + UBL-CR-561 + warning + + + + [UBL-CR-561]-A UBL invoice should not include the InvoiceLine TaxTotal + + + + + + + + + + UBL-CR-562 + warning + + + + [UBL-CR-562]-A UBL invoice should not include the InvoiceLine WithholdingTaxTotal + + + + + + + + + + UBL-CR-563 + warning + + + + [UBL-CR-563]-A UBL invoice should not include the InvoiceLine Item PackQuantity + + + + + + + + + + UBL-CR-564 + warning + + + + [UBL-CR-564]-A UBL invoice should not include the InvoiceLine Item PackSizeNumeric + + + + + + + + + + UBL-CR-565 + warning + + + + [UBL-CR-565]-A UBL invoice should not include the InvoiceLine Item CatalogueIndicator + + + + + + + + + + UBL-CR-566 + warning + + + + [UBL-CR-566]-A UBL invoice should not include the InvoiceLine Item HazardousRiskIndicator + + + + + + + + + + UBL-CR-567 + warning + + + + [UBL-CR-567]-A UBL invoice should not include the InvoiceLine Item AdditionalInformation + + + + + + + + + + UBL-CR-568 + warning + + + + [UBL-CR-568]-A UBL invoice should not include the InvoiceLine Item Keyword + + + + + + + + + + UBL-CR-569 + warning + + + + [UBL-CR-569]-A UBL invoice should not include the InvoiceLine Item BrandName + + + + + + + + + + UBL-CR-570 + warning + + + + [UBL-CR-570]-A UBL invoice should not include the InvoiceLine Item ModelName + + + + + + + + + + UBL-CR-571 + warning + + + + [UBL-CR-571]-A UBL invoice should not include the InvoiceLine Item BuyersItemIdentification ExtendedID + + + + + + + + + + UBL-CR-572 + warning + + + + [UBL-CR-572]-A UBL invoice should not include the InvoiceLine Item BuyersItemIdentification BareCodeSymbologyID + + + + + + + + + + UBL-CR-573 + warning + + + + [UBL-CR-573]-A UBL invoice should not include the InvoiceLine Item BuyersItemIdentification PhysicalAttribute + + + + + + + + + + UBL-CR-574 + warning + + + + [UBL-CR-574]-A UBL invoice should not include the InvoiceLine Item BuyersItemIdentification MeasurementDimension + + + + + + + + + + UBL-CR-575 + warning + + + + [UBL-CR-575]-A UBL invoice should not include the InvoiceLine Item BuyersItemIdentification IssuerParty + + + + + + + + + + UBL-CR-576 + warning + + + + [UBL-CR-576]-A UBL invoice should not include the InvoiceLine Item SellersItemIdentification ExtendedID + + + + + + + + + + UBL-CR-577 + warning + + + + [UBL-CR-577]-A UBL invoice should not include the InvoiceLine Item SellersItemIdentification BareCodeSymbologyID + + + + + + + + + + UBL-CR-578 + warning + + + + [UBL-CR-578]-A UBL invoice should not include the InvoiceLine Item SellersItemIdentification PhysicalAttribute + + + + + + + + + + UBL-CR-579 + warning + + + + [UBL-CR-579]-A UBL invoice should not include the InvoiceLine Item SellersItemIdentification MeasurementDimension + + + + + + + + + + UBL-CR-580 + warning + + + + [UBL-CR-580]-A UBL invoice should not include the InvoiceLine Item SellersItemIdentification IssuerParty + + + + + + + + + + UBL-CR-581 + warning + + + + [UBL-CR-581]-A UBL invoice should not include the InvoiceLine Item ManufacturersItemIdentification + + + + + + + + + + UBL-CR-582 + warning + + + + [UBL-CR-582]-A UBL invoice should not include the InvoiceLine Item StandardItemIdentification ExtendedID + + + + + + + + + + UBL-CR-583 + warning + + + + [UBL-CR-583]-A UBL invoice should not include the InvoiceLine Item StandardItemIdentification BareCodeSymbologyID + + + + + + + + + + UBL-CR-584 + warning + + + + [UBL-CR-584]-A UBL invoice should not include the InvoiceLine Item StandardItemIdentification PhysicalAttribute + + + + + + + + + + UBL-CR-585 + warning + + + + [UBL-CR-585]-A UBL invoice should not include the InvoiceLine Item StandardItemIdentification MeasurementDimension + + + + + + + + + + UBL-CR-586 + warning + + + + [UBL-CR-586]-A UBL invoice should not include the InvoiceLine Item StandardItemIdentification IssuerParty + + + + + + + + + + UBL-CR-587 + warning + + + + [UBL-CR-587]-A UBL invoice should not include the InvoiceLine Item CatalogueItemIdentification + + + + + + + + + + UBL-CR-588 + warning + + + + [UBL-CR-588]-A UBL invoice should not include the InvoiceLine Item AdditionalItemIdentification + + + + + + + + + + UBL-CR-589 + warning + + + + [UBL-CR-589]-A UBL invoice should not include the InvoiceLine Item CatalogueDocumentReference + + + + + + + + + + UBL-CR-590 + warning + + + + [UBL-CR-590]-A UBL invoice should not include the InvoiceLine Item ItemSpecificationDocumentReference + + + + + + + + + + UBL-CR-591 + warning + + + + [UBL-CR-591]-A UBL invoice should not include the InvoiceLine Item OriginCountry Name + + + + + + + + + + UBL-CR-592 + warning + + + + [UBL-CR-592]-A UBL invoice should not include the InvoiceLine Item CommodityClassification NatureCode + + + + + + + + + + UBL-CR-593 + warning + + + + [UBL-CR-593]-A UBL invoice should not include the InvoiceLine Item CommodityClassification CargoTypeCode + + + + + + + + + + UBL-CR-594 + warning + + + + [UBL-CR-594]-A UBL invoice should not include the InvoiceLine Item CommodityClassification CommodityCode + + + + + + + + + + UBL-CR-595 + warning + + + + [UBL-CR-595]-A UBL invoice should not include the InvoiceLine Item TransactionConditions + + + + + + + + + + UBL-CR-596 + warning + + + + [UBL-CR-596]-A UBL invoice should not include the InvoiceLine Item HazardousItem + + + + + + + + + + UBL-CR-597 + warning + + + + [UBL-CR-597]-A UBL invoice should not include the InvoiceLine Item ClassifiedTaxCategory Name + + + + + + + + + + UBL-CR-598 + warning + + + + [UBL-CR-598]-A UBL invoice should not include the InvoiceLine Item ClassifiedTaxCategory BaseUnitMeasure + + + + + + + + + + UBL-CR-599 + warning + + + + [UBL-CR-599]-A UBL invoice should not include the InvoiceLine Item ClassifiedTaxCategory PerUnitAmount + + + + + + + + + + UBL-CR-600 + warning + + + + [UBL-CR-600]-A UBL invoice should not include the InvoiceLine Item ClassifiedTaxCategory TaxExemptionReasonCode + + + + + + + + + + UBL-CR-601 + warning + + + + [UBL-CR-601]-A UBL invoice should not include the InvoiceLine Item ClassifiedTaxCategory TaxExemptionReason + + + + + + + + + + UBL-CR-602 + warning + + + + [UBL-CR-602]-A UBL invoice should not include the InvoiceLine Item ClassifiedTaxCategory TierRange + + + + + + + + + + UBL-CR-603 + warning + + + + [UBL-CR-603]-A UBL invoice should not include the InvoiceLine Item ClassifiedTaxCategory TierRatePercent + + + + + + + + + + UBL-CR-604 + warning + + + + [UBL-CR-604]-A UBL invoice should not include the InvoiceLine Item ClassifiedTaxCategory TaxScheme Name + + + + + + + + + + UBL-CR-605 + warning + + + + [UBL-CR-605]-A UBL invoice should not include the InvoiceLine Item ClassifiedTaxCategory TaxScheme TaxTypeCode + + + + + + + + + + UBL-CR-606 + warning + + + + [UBL-CR-606]-A UBL invoice should not include the InvoiceLine Item ClassifiedTaxCategory TaxScheme CurrencyCode + + + + + + + + + + UBL-CR-607 + warning + + + + [UBL-CR-607]-A UBL invoice should not include the InvoiceLine Item ClassifiedTaxCategory TaxScheme JurisdiccionRegionAddress + + + + + + + + + + UBL-CR-608 + warning + + + + [UBL-CR-608]-A UBL invoice should not include the InvoiceLine Item AdditionalItemProperty ID + + + + + + + + + + UBL-CR-609 + warning + + + + [UBL-CR-609]-A UBL invoice should not include the InvoiceLine Item AdditionalItemProperty NameCode + + + + + + + + + + UBL-CR-610 + warning + + + + [UBL-CR-610]-A UBL invoice should not include the InvoiceLine Item AdditionalItemProperty TestMethod + + + + + + + + + + UBL-CR-611 + warning + + + + [UBL-CR-611]-A UBL invoice should not include the InvoiceLine Item AdditionalItemProperty ValueQuantity + + + + + + + + + + UBL-CR-612 + warning + + + + [UBL-CR-612]-A UBL invoice should not include the InvoiceLine Item AdditionalItemProperty ValueQualifier + + + + + + + + + + UBL-CR-613 + warning + + + + [UBL-CR-613]-A UBL invoice should not include the InvoiceLine Item AdditionalItemProperty ImportanceCode + + + + + + + + + + UBL-CR-614 + warning + + + + [UBL-CR-614]-A UBL invoice should not include the InvoiceLine Item AdditionalItemProperty ListValue + + + + + + + + + + UBL-CR-615 + warning + + + + [UBL-CR-615]-A UBL invoice should not include the InvoiceLine Item AdditionalItemProperty UsabilityPeriod + + + + + + + + + + UBL-CR-616 + warning + + + + [UBL-CR-616]-A UBL invoice should not include the InvoiceLine Item AdditionalItemProperty ItemPropertyGroup + + + + + + + + + + UBL-CR-617 + warning + + + + [UBL-CR-617]-A UBL invoice should not include the InvoiceLine Item AdditionalItemProperty RangeDimension + + + + + + + + + + UBL-CR-618 + warning + + + + [UBL-CR-618]-A UBL invoice should not include the InvoiceLine Item AdditionalItemProperty ItemPropertyRange + + + + + + + + + + UBL-CR-619 + warning + + + + [UBL-CR-619]-A UBL invoice should not include the InvoiceLine Item ManufacturerParty + + + + + + + + + + UBL-CR-620 + warning + + + + [UBL-CR-620]-A UBL invoice should not include the InvoiceLine Item InformationContentProviderParty + + + + + + + + + + UBL-CR-621 + warning + + + + [UBL-CR-621]-A UBL invoice should not include the InvoiceLine Item OriginAddress + + + + + + + + + + UBL-CR-622 + warning + + + + [UBL-CR-622]-A UBL invoice should not include the InvoiceLine Item ItemInstance + + + + + + + + + + UBL-CR-623 + warning + + + + [UBL-CR-623]-A UBL invoice should not include the InvoiceLine Item Certificate + + + + + + + + + + UBL-CR-624 + warning + + + + [UBL-CR-624]-A UBL invoice should not include the InvoiceLine Item Dimension + + + + + + + + + + UBL-CR-625 + warning + + + + [UBL-CR-625]-A UBL invoice should not include the InvoiceLine Item Price PriceChangeReason + + + + + + + + + + UBL-CR-626 + warning + + + + [UBL-CR-626]-A UBL invoice should not include the InvoiceLine Item Price PriceTypeCode + + + + + + + + + + UBL-CR-627 + warning + + + + [UBL-CR-627]-A UBL invoice should not include the InvoiceLine Item Price PriceType + + + + + + + + + + UBL-CR-628 + warning + + + + [UBL-CR-628]-A UBL invoice should not include the InvoiceLine Item Price OrderableUnitFactorRate + + + + + + + + + + UBL-CR-629 + warning + + + + [UBL-CR-629]-A UBL invoice should not include the InvoiceLine Item Price ValidityPeriod + + + + + + + + + + UBL-CR-630 + warning + + + + [UBL-CR-630]-A UBL invoice should not include the InvoiceLine Item Price PriceList + + + + + + + + + + UBL-CR-631 + warning + + + + [UBL-CR-631]-A UBL invoice should not include the InvoiceLine Item Price OrderableUnitFactorRate + + + + + + + + + + UBL-CR-632 + warning + + + + [UBL-CR-632]-A UBL invoice should not include the InvoiceLine Item Price AllowanceCharge ID + + + + + + + + + + UBL-CR-633 + warning + + + + [UBL-CR-633]-A UBL invoice should not include the InvoiceLine Item Price AllowanceCharge AllowanceChargeReasonCode + + + + + + + + + + UBL-CR-634 + warning + + + + [UBL-CR-634]-A UBL invoice should not include the InvoiceLine Item Price AllowanceCharge AllowanceChargeReason + + + + + + + + + + UBL-CR-635 + warning + + + + [UBL-CR-635]-A UBL invoice should not include the InvoiceLine Item Price AllowanceCharge MultiplierFactorNumeric + + + + + + + + + + UBL-CR-636 + warning + + + + [UBL-CR-636]-A UBL invoice should not include the InvoiceLine Item Price AllowanceCharge PrepaidIndicator + + + + + + + + + + UBL-CR-637 + warning + + + + [UBL-CR-637]-A UBL invoice should not include the InvoiceLine Item Price AllowanceCharge SequenceNumeric + + + + + + + + + + UBL-CR-638 + warning + + + + [UBL-CR-638]-A UBL invoice should not include the InvoiceLine Item Price AllowanceCharge AccountingCostCode + + + + + + + + + + UBL-CR-639 + warning + + + + [UBL-CR-639]-A UBL invoice should not include the InvoiceLine Item Price AllowanceCharge AccountingCost + + + + + + + + + + UBL-CR-640 + warning + + + + [UBL-CR-640]-A UBL invoice should not include the InvoiceLine Item Price AllowanceCharge PerUnitAmount + + + + + + + + + + UBL-CR-641 + warning + + + + [UBL-CR-641]-A UBL invoice should not include the InvoiceLine Item Price AllowanceCharge TaxCategory + + + + + + + + + + UBL-CR-642 + warning + + + + [UBL-CR-642]-A UBL invoice should not include the InvoiceLine Item Price AllowanceCharge TaxTotal + + + + + + + + + + UBL-CR-643 + warning + + + + [UBL-CR-643]-A UBL invoice should not include the InvoiceLine Item Price AllowanceCharge PaymentMeans + + + + + + + + + + UBL-CR-644 + warning + + + + [UBL-CR-644]-A UBL invoice should not include the InvoiceLine Item Price PricingExchangeRate + + + + + + + + + + UBL-CR-645 + warning + + + + [UBL-CR-645]-A UBL invoice should not include the InvoiceLine DeliveryTerms + + + + + + + + + + UBL-CR-646 + warning + + + + [UBL-CR-646]-A UBL invoice should not include the InvoiceLine SubInvoiceLine + + + + + + + + + + UBL-CR-647 + warning + + + + [UBL-CR-647]-A UBL invoice should not include the InvoiceLine ItemPriceExtension + + + + + + + + + + UBL-CR-648 + warning + + + + [UBL-CR-648]-A UBL invoice should not include the CustomizationID scheme identifier + + + + + + + + + + UBL-CR-649 + warning + + + + [UBL-CR-649]-A UBL invoice should not include the ProfileID scheme identifier + + + + + + + + + + UBL-CR-650 + warning + + + + [UBL-CR-650]-A UBL invoice shall not include the Invoice ID scheme identifier + + + + + + + + + + UBL-CR-651 + warning + + + + [UBL-CR-651]-A UBL invoice should not include the SalesOrderID scheme identifier + + + + + + + + + + UBL-CR-652 + warning + + + + [UBL-CR-652]-A UBL invoice should not include the PartyTaxScheme CompanyID scheme identifier + + + + + + + + + + UBL-CR-653 + warning + + + + [UBL-CR-653]-A UBL invoice should not include the PaymentID scheme identifier + + + + + + + + + + UBL-CR-654 + warning + + + + [UBL-CR-654]-A UBL invoice should not include the PayeeFinancialAccount scheme identifier + + + + + + + + + + UBL-CR-655 + warning + + + + [UBL-CR-655]-A UBL invoice shall not include the FinancialInstitutionBranch ID scheme identifier + + + + + + + + + + UBL-CR-656 + warning + + + + [UBL-CR-656]-A UBL invoice should not include the InvoiceTypeCode listID + + + + + + + + + + UBL-CR-657 + warning + + + + [UBL-CR-657]-A UBL invoice should not include the DocumentCurrencyCode listID + + + + + + + + + + UBL-CR-658 + warning + + + + [UBL-CR-658]-A UBL invoice should not include the TaxCurrencyCode listID + + + + + + + + + + UBL-CR-659 + warning + + + + [UBL-CR-659]-A UBL invoice shall not include the AdditionalDocumentReference DocumentTypeCode listID + + + + + + + + + + UBL-CR-660 + warning + + + + [UBL-CR-660]-A UBL invoice should not include the Country Identification code listID + + + + + + + + + + UBL-CR-661 + warning + + + + [UBL-CR-661]-A UBL invoice should not include the PaymentMeansCode listID + + + + + + + + + + UBL-CR-662 + warning + + + + [UBL-CR-662]-A UBL invoice should not include the AllowanceChargeReasonCode listID + + + + + + + + + + UBL-CR-663 + warning + + + + [UBL-CR-663]-A UBL invoice should not include the unitCodeListID + + + + + + + + + + UBL-CR-664 + warning + + + + [UBL-CR-664]-A UBL invoice should not include the FinancialInstitutionBranch FinancialInstitution + + + + + + + + + + UBL-CR-665 + warning + + + + [UBL-CR-665]-A UBL invoice should not include the AdditionalDocumentReference ID schemeID unless the ID equals '130' + + + + + + + + + + UBL-CR-666 + fatal + + + + [UBL-CR-666]-A UBL invoice shall not include an AdditionalDocumentReference simultaneously referring an Invoice Object Identifier and an Attachment + + + + + + + + + + UBL-CR-667 + warning + + + + [UBL-CR-667]-A UBL invoice should not include a Buyer Item Identification schemeID + + + + + + + + + + UBL-CR-668 + warning + + + + [UBL-CR-668]-A UBL invoice should not include a Sellers Item Identification schemeID + + + + + + + + + + UBL-CR-669 + warning + + + + [UBL-CR-669]-A UBL invoice should not include a Price Allowance Reason Code + + + + + + + + + + UBL-CR-670 + warning + + + + [UBL-CR-670]-A UBL invoice should not include a Price Allowance Reason + + + + + + + + + + UBL-CR-671 + warning + + + + [UBL-CR-671]-A UBL invoice should not include a Price Allowance Multiplier Factor + + + + + + + + + + UBL-CR-672 + warning + + + + [UBL-CR-672]-A UBL credit note should not include the CreditNoteTypeCode listID + + + + + + + + + + UBL-CR-673 + fatal + + + + [UBL-CR-673]-A UBL invoice shall not include an AdditionalDocumentReference simultaneously referring an Invoice Object Identifier and an Document Description + + + + + + + + + + UBL-CR-674 + warning + + + + [UBL-CR-674]-A UBL invoice should not include the PrimaryAccountNumber schemeID + + + + + + + + + + UBL-CR-675 + warning + + + + [UBL-CR-675]-A UBL invoice should not include the NetworkID schemeID + + + + + + + + + + UBL-CR-676 + warning + + + + [UBL-CR-676]-A UBL invoice should not include the PaymentMandate/ID schemeID + + + + + + + + + + UBL-CR-677 + warning + + + + [UBL-CR-677]-A UBL invoice should not include the PayerFinancialAccount/ID schemeID + + + + + + + + + + UBL-CR-678 + warning + + + + [UBL-CR-678]-A UBL invoice should not include the TaxCategory/ID schemeID + + + + + + + + + + UBL-CR-679 + warning + + + + [UBL-CR-679]-A UBL invoice should not include the ClassifiedTaxCategory/ID schemeID + + + + + + + + + + UBL-CR-680 + warning + + + + [UBL-CR-680]-A UBL invoice should not include the PaymentMeans/PayerFinancialAccount + + + + + + + + + + UBL-DT-08 + warning + + + + [UBL-DT-08]-Scheme name attribute should not be present + + + + + + + + + + UBL-DT-09 + warning + + + + [UBL-DT-09]-Scheme agency name attribute should not be present + + + + + + + + + + UBL-DT-10 + warning + + + + [UBL-DT-10]-Scheme data uri attribute should not be present + + + + + + + + + + UBL-DT-11 + warning + + + + [UBL-DT-11]-Scheme uri attribute should not be present + + + + + + + + + + UBL-DT-12 + warning + + + + [UBL-DT-12]-Format attribute should not be present + + + + + + + + + + UBL-DT-13 + warning + + + + [UBL-DT-13]-Unit code list identifier attribute should not be present + + + + + + + + + + UBL-DT-14 + warning + + + + [UBL-DT-14]-Unit code list agency identifier attribute should not be present + + + + + + + + + + UBL-DT-15 + warning + + + + [UBL-DT-15]-Unit code list agency name attribute should not be present + + + + + + + + + + UBL-DT-16 + warning + + + + [UBL-DT-16]-List agency name attribute should not be present + + + + + + + + + + UBL-DT-17 + warning + + + + [UBL-DT-17]-List name attribute should not be present + + + + + + + + + + UBL-DT-18 + warning + + + + [UBL-DT-18]-Name attribute should not be present + + + + + + + + + + UBL-DT-19 + warning + + + + [UBL-DT-19]-Language identifier attribute should not be present + + + + + + + + + + UBL-DT-20 + warning + + + + [UBL-DT-20]-List uri attribute should not be present + + + + + + + + + + UBL-DT-21 + warning + + + + [UBL-DT-21]-List scheme uri attribute should not be present + + + + + + + + + + UBL-DT-22 + warning + + + + [UBL-DT-22]-Language local identifier attribute should not be present + + + + + + + + + + UBL-DT-23 + warning + + + + [UBL-DT-23]-Uri attribute should not be present + + + + + + + + + + UBL-DT-24 + warning + + + + [UBL-DT-24]-Currency code list version id should not be present + + + + + + + + + + UBL-DT-25 + warning + + + + [UBL-DT-25]-CharacterSetCode attribute should not be present + + + + + + + + + + UBL-DT-26 + warning + + + + [UBL-DT-26]-EncodingCode attribute should not be present + + + + + + + + + + UBL-DT-27 + warning + + + + [UBL-DT-27]-Scheme Agency ID attribute should not be present + + + + + + + + + + UBL-DT-28 + warning + + + + [UBL-DT-28]-List Agency ID attribute should not be present + + + + + + + + + + UBL-SR-01 + fatal + + + + [UBL-SR-01]-Contract identifier shall occur maximum once. + + + + + + + + + + UBL-SR-02 + fatal + + + + [UBL-SR-02]-Receive advice identifier shall occur maximum once + + + + + + + + + + UBL-SR-03 + fatal + + + + [UBL-SR-03]-Despatch advice identifier shall occur maximum once + + + + + + + + + + UBL-SR-04 + fatal + + + + [UBL-SR-04]-Invoice object identifier shall occur maximum once + + + + + + + + + + UBL-SR-05 + fatal + + + + [UBL-SR-05]-Payment terms shall occur maximum once + + + + + + + + + + UBL-SR-06 + fatal + + + + [UBL-SR-06]-Preceding invoice reference shall occur maximum once + + + + + + + + + + UBL-SR-08 + fatal + + + + [UBL-SR-08]-Invoice period shall occur maximum once + + + + + + + + + + UBL-SR-09 + fatal + + + + [UBL-SR-09]-Seller name shall occur maximum once + + + + + + + + + + UBL-SR-10 + fatal + + + + [UBL-SR-10]-Seller trader name shall occur maximum once + + + + + + + + + + UBL-SR-11 + fatal + + + + [UBL-SR-11]-Seller legal registration identifier shall occur maximum once + + + + + + + + + + UBL-SR-12 + fatal + + + + [UBL-SR-12]-Seller VAT identifier shall occur maximum once + + + + + + + + + + UBL-SR-13 + fatal + + + + [UBL-SR-13]-Seller tax registration shall occur maximum once + + + + + + + + + + UBL-SR-14 + fatal + + + + [UBL-SR-14]-Seller additional legal information shall occur maximum once + + + + + + + + + + UBL-SR-15 + fatal + + + + [UBL-SR-15]-Buyer name shall occur maximum once + + + + + + + + + + UBL-SR-16 + fatal + + + + [UBL-SR-16]-Buyer identifier shall occur maximum once + + + + + + + + + + UBL-SR-17 + fatal + + + + [UBL-SR-17]-Buyer legal registration identifier shall occur maximum once + + + + + + + + + + UBL-SR-18 + fatal + + + + [UBL-SR-18]-Buyer VAT identifier shall occur maximum once + + + + + + + + + + UBL-SR-24 + fatal + + + + [UBL-SR-24]-Deliver to information shall occur maximum once + + + + + + + + + + UBL-SR-29 + fatal + + + + [UBL-SR-29]-Bank creditor reference shall occur maximum once + + + + + + + + + + UBL-SR-39 + fatal + + + + [UBL-SR-39]-Project reference shall occur maximum once. + + + + + + + + + + UBL-SR-40 + fatal + + + + [UBL-SR-40]-Buyer trade name shall occur maximum once + + + + + + + + + + UBL-SR-44 + fatal + + + + [UBL-SR-44]-Payment ID shall occur maximum once + + + + + + + + + + UBL-SR-45 + fatal + + + + [UBL-SR-45]-Due Date shall occur maximum once + + + + + + + + + + UBL-SR-46 + fatal + + + + [UBL-SR-46]-Payment means text shall occur maximum once + + + + + + + + + + UBL-SR-47 + fatal + + + + [UBL-SR-47]-When there are more than one payment means code, they shall be equal + + + + + + + + + + UBL-SR-49 + fatal + + + + [UBL-SR-49]-Value tax point date shall occur maximum once + + + + + + + + + + + + + + + UBL-SR-34 + fatal + + + + [UBL-SR-34]-Invoice line note shall occur maximum once + + + + + + + + + + UBL-SR-35 + fatal + + + + [UBL-SR-35]-Referenced purchase order line identifier shall occur maximum once + + + + + + + + + + UBL-SR-36 + fatal + + + + [UBL-SR-36]-Invoice line period shall occur maximum once + + + + + + + + + + UBL-SR-37 + fatal + + + + [UBL-SR-37]-Item price discount shall occur maximum once + + + + + + + + + + UBL-SR-38 + fatal + + + + [UBL-SR-38]-Invoiced item VAT exemption reason text shall occur maximum once + + + + + + + + + + UBL-SR-48 + fatal + + + + [UBL-SR-48]-Invoice lines shall have one and only one classified tax category. + + + + + + + + + + UBL-SR-50 + fatal + + + + [UBL-SR-50]-Item description shall occur maximum once + + + + + + + + + + + + + + + UBL-SR-19 + fatal + + + + [UBL-SR-19]-Payee name shall occur maximum once, if the Payee is different from the Seller + + + + + + + + + + UBL-SR-20 + fatal + + + + [UBL-SR-20]-Payee identifier shall occur maximum once, if the Payee is different from the Seller + + + + + + + + + + UBL-SR-21 + fatal + + + + [UBL-SR-21]-Payee legal registration identifier shall occur maximum once, if the Payee is different from the Seller + + + + + + + + + + + + + + + UBL-SR-26 + fatal + + + + [UBL-SR-26]-Payment reference shall occur maximum once + + + + + + + + + + UBL-SR-27 + fatal + + + + [UBL-SR-27]-Payment means text shall occur maximum once + + + + + + + + + + UBL-SR-28 + fatal + + + + [UBL-SR-28]-Mandate reference identifier shall occur maximum once + + + + + + + + + + + + + + + UBL-SR-07 + fatal + + + + [UBL-SR-07]-If there is a preceding invoice reference, the preceding invoice number shall be present + + + + + + + + + + + + + + + UBL-SR-22 + fatal + + + + [UBL-SR-22]-Seller tax representative name shall occur maximum once, if the Seller has a tax representative + + + + + + + + + + UBL-SR-23 + fatal + + + + [UBL-SR-23]-Seller tax representative VAT identifier shall occur maximum once, if the Seller has a tax representative + + + + + + + + + + + + + + + UBL-SR-32 + fatal + + + + [UBL-SR-32]-VAT exemption reason text shall occur maximum once + + + + + + + + + + + + + + + + + + + + + + BR-CL-01 + fatal + + + + [BR-CL-01]-The document type code MUST be coded by the invoice and credit note related code lists of UNTDID 1001. + + + + + + + + + + + + + + + BR-CL-03 + fatal + + + + [BR-CL-03]-currencyID MUST be coded using ISO code list 4217 alpha-3 + + + + + + + + + + + + + + + BR-CL-04 + fatal + + + + [BR-CL-04]-Invoice currency code MUST be coded using ISO code list 4217 alpha-3 + + + + + + + + + + + + + + + BR-CL-05 + fatal + + + + [BR-CL-05]-Tax currency code MUST be coded using ISO code list 4217 alpha-3 + + + + + + + + + + + + + + + BR-CL-06 + fatal + + + + [BR-CL-06]-Value added tax point date code MUST be coded using a restriction of UNTDID 2005. + + + + + + + + + + + + + + + BR-CL-07 + fatal + + + + [BR-CL-07]-Object identifier identification scheme identifier MUST be coded using a restriction of UNTDID 1153. + + + + + + + + + + + + + + + BR-CL-10 + fatal + + + + [BR-CL-10]-Any identifier identification scheme identifier MUST be coded using one of the ISO 6523 ICD list. + + + + + + + + + + + + + + + BR-CL-11 + fatal + + + + [BR-CL-11]-Any registration identifier identification scheme identifier MUST be coded using one of the ISO 6523 ICD list. + + + + + + + + + + + + + + + BR-CL-13 + fatal + + + + [BR-CL-13]-Item classification identifier identification scheme identifier MUST be + coded using one of the UNTDID 7143 list. + + + + + + + + + + + + + + + BR-CL-14 + fatal + + + + [BR-CL-14]-Country codes in an invoice MUST be coded using ISO code list 3166-1 + + + + + + + + + + + + + + + BR-CL-15 + fatal + + + + [BR-CL-15]-Country codes in an invoice MUST be coded using ISO code list 3166-1 + + + + + + + + + + + + + + + BR-CL-16 + fatal + + + + [BR-CL-16]-Payment means in an invoice MUST be coded using UNCL4461 code list + + + + + + + + + + + + + + + BR-CL-17 + fatal + + + + [BR-CL-17]-Invoice tax categories MUST be coded using UNCL5305 code list + + + + + + + + + + + + + + + BR-CL-18 + fatal + + + + [BR-CL-18]-Invoice tax categories MUST be coded using UNCL5305 code list + + + + + + + + + + + + + + + BR-CL-19 + fatal + + + + [BR-CL-19]-Coded allowance reasons MUST belong to the UNCL 5189 code list + + + + + + + + + + + + + + + BR-CL-20 + fatal + + + + [BR-CL-20]-Coded charge reasons MUST belong to the UNCL 7161 code list + + + + + + + + + + + + + + + BR-CL-21 + fatal + + + + [BR-CL-21]-Item standard identifier scheme identifier MUST belong to the ISO 6523 ICD code list + + + + + + + + + + + + + + + BR-CL-22 + fatal + + + + [BR-CL-22]-Tax exemption reason code identifier scheme identifier MUST belong to the CEF VATEX code list + + + + + + + + + + + + + + + BR-CL-23 + fatal + + + + [BR-CL-23]-Unit code MUST be coded according to the UN/ECE Recommendation 20 with + Rec 21 extension + + + + + + + + + + + + + + + BR-CL-24 + fatal + + + + [BR-CL-24]-For Mime code in attribute use MIMEMediaType. + + + + + + + + + + + + + + + BR-CL-25 + fatal + + + + [BR-CL-25]-Endpoint identifier scheme identifier MUST belong to the CEF EAS code list + + + + + + + + + + + + + + + BR-CL-26 + fatal + + + + [BR-CL-26]-Delivery location identifier scheme identifier MUST belong to the ISO 6523 ICD code list + + + + + + + + + + \ No newline at end of file diff --git a/validator/src/test/resources/ORDER-X_EX01_ORDER_FULL_DATA-COMFORT.pdf b/validator/src/test/resources/ORDER-X_EX01_ORDER_FULL_DATA-COMFORT.pdf new file mode 100644 index 0000000000000000000000000000000000000000..56ec9944b458f6bedd4994cea64e6555838457c3 GIT binary patch literal 239358 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 literal 0 HcmV?d00001 diff --git a/validator/src/test/resources/xrechnung-ubl.xml b/validator/src/test/resources/xrechnung-ubl.xml new file mode 100644 index 00000000..d6ff6069 --- /dev/null +++ b/validator/src/test/resources/xrechnung-ubl.xml @@ -0,0 +1,530 @@ + + + + urn:cen.eu:en16931:2017 + 12115118 + 2015-01-09 + 2015-01-09 + 380 + Alle leveringen zijn franco. Alle prijzen zijn incl. BTW. Betalingstermijn: 14 dagen netto. Prijswijzigingen voorbehouden. Op al onze aanbiedingen, leveringen en overeenkomsten zijn van toepassing in de algemene verkoop en leveringsvoorwaarden. Gedeponeerd bij de K.v.K. te Amsterdam 25-04-'85##Delivery terms + EUR + + + + Postbus 7l + Velsen-Noord + 1950 AB + + NL + + + + NL8200.98.395.B.01 + + VAT + + + + De Koksmaat + 57151520 + + + + + + + 10202 + + + POSTBUS 367 + HEEMSKERK + 1960 AJ + + NL + + + + ODIN 59 + + + Dhr. J BLOKKER + + + + + 30 + Deb. 10202 / Fact. 12115118 + + NL57 RABO 0107307510 + + + + 30 + + NL03 INGB 0004489902 + + + + 20.73 + + 183.23 + 10.99 + + S + 6 + + VAT + + + + + + 46.37 + 9.74 + + S + 21 + + VAT + + + + + + 229.60 + 229.60 + 250.33 + 250.33 + + + 1 + 2 + 19.90 + + PATAT FRITES 10MM 10KG + + 166022 + + + S + 6 + + VAT + + + + + 9.95 + + + + 2 + 1 + 9.85 + + PKAAS 50PL. JONG BEL. 1KG + + 661813 + + + S + 6 + + VAT + + + + + 9.85 + + + + 3 + 1 + 8.29 + + POT KETCHUP 3 LT + + 438146 + + + S + 6 + + VAT + + + + + 8.29 + + + + 4 + 2 + 14.46 + + FRITESSAUS 3 LRR + + 438103 + + + S + 6 + + VAT + + + + + 7.23 + + + + 5 + 1 + 35.00 + + KOFFIE BLIK 3,5KG SNELF + + 666955 + + + S + 6 + + VAT + + + + + 35.00 + + + + 6 + 1 + 35.00 + + KOFFIE 3.5 KG BLIK STAND + + 664871 + + + S + 6 + + VAT + + + + + 35.00 + + + + 7 + 1 + 10.65 + + SUIKERKLONT + + 350257 + + + S + 6 + + VAT + + + + + 10.65 + + + + 8 + 1 + 1.55 + + 1 KG UL BLOKJES + + 350258 + + + S + 6 + + VAT + + + + + 1.55 + + + + 9 + 3 + 14.37 + + BLOCKNOTE A5 + + 999998 + + + S + 6 + + VAT + + + + + 4.79 + + + + 10 + 1 + 8.29 + + CHIPS NAT KLEIN ZAKJES + + 740810 + + + S + 6 + + VAT + + + + + 8.29 + + + + 11 + 2 + 16.58 + + CHIPS PAP KLEINE ZAKJES + + 740829 + + + S + 6 + + VAT + + + + + 8.29 + + + + 12 + 1 + 9.95 + + TR KL PAKJES APPELSAP + + 740828 + + + S + 6 + + VAT + + + + + 9.95 + + + + 13 + 2 + 3.30 + + PK CHOCOLADEMEL + + 740827 + + + S + 6 + + VAT + + + + + 1.65 + + + + 14 + 1 + 10.80 + + KRAT BIER + + 999996 + + + S + 21 + + VAT + + + + + 10.80 + + + + 15 + 1 + 3.90 + + STATIEGELD + + 999995 + + + S + 6 + + VAT + + + + + 3.90 + + + + 16 + 2 + 7.60 + + BLEEK 3 X 750 ML + + 102172 + + + S + 21 + + VAT + + + + + 3.80 + + + + 17 + 2 + 9.34 + + WC PAPIER + + 999994 + + + S + 21 + + VAT + + + + + 4.67 + + + + 18 + 1 + 18.63 + + BALPENNEN 50 ST BLAUW + + 999993 + + + S + 21 + + VAT + + + + + 18.63 + + + + 19 + 6 + 102.12 + + EM FRITUURVET + + 999992 + + + S + 6 + + VAT + + + + + 17.02 + + + + 20 + 6 + -109.98 + + FRITUUR VET 10 KG RETOUR + + 175137 + + + S + 6 + + VAT + + + + + 18.33 + + + \ No newline at end of file