summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexis de Lattre <alexis.delattre@akretion.com>2019-07-24 21:35:31 (GMT)
committerAlexis de Lattre <alexis.delattre@akretion.com>2019-07-24 21:35:31 (GMT)
commit0350366edb6ddfe7387e207d53e04e5052730c52 (patch)
tree1f37a74c99df5c1a4fbeee99344c4a9b1abf1d2f
parenta364a127bdc9c35a9b694d489e740df622272d58 (diff)
downloadfactur-x-0350366edb6ddfe7387e207d53e04e5052730c52.zip
factur-x-0350366edb6ddfe7387e207d53e04e5052730c52.tar.gz
factur-x-0350366edb6ddfe7387e207d53e04e5052730c52.tar.bz2
Update Factur-X XSD to the final version of Factur-X v1.0.4
Bump version number to v1.4
-rw-r--r--MANIFEST.in32
-rw-r--r--README.rst9
-rw-r--r--facturx/_version.py2
-rw-r--r--facturx/facturx.py18
-rw-r--r--facturx/xsd/factur-x/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd89
-rw-r--r--facturx/xsd/factur-x/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd105
-rw-r--r--facturx/xsd/facturx-basic/FACTUR-X_BASIC.xsd20
-rw-r--r--facturx/xsd/facturx-basic/FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd1664
-rw-r--r--facturx/xsd/facturx-basic/FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd318
-rw-r--r--facturx/xsd/facturx-basic/FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd85
-rw-r--r--facturx/xsd/facturx-basicwl/FACTUR-X_BASIC-WL.xsd (renamed from facturx/xsd/factur-x/FACTUR-X_BASIC-WL.xsd)0
-rw-r--r--facturx/xsd/facturx-basicwl/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd786
-rw-r--r--facturx/xsd/facturx-basicwl/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd (renamed from facturx/xsd/factur-x/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd)94
-rw-r--r--facturx/xsd/facturx-basicwl/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd (renamed from facturx/xsd/factur-x/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd)6
-rw-r--r--facturx/xsd/facturx-en16931/FACTUR-X_EN16931.xsd (renamed from facturx/xsd/factur-x/FACTUR-X_EN16931.xsd)0
-rw-r--r--facturx/xsd/facturx-en16931/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd1735
-rw-r--r--facturx/xsd/facturx-en16931/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd (renamed from facturx/xsd/factur-x/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd)126
-rw-r--r--facturx/xsd/facturx-en16931/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd (renamed from facturx/xsd/factur-x/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd)18
-rw-r--r--facturx/xsd/facturx-extended/FACTUR-X_EXTENDED.xsd (renamed from facturx/xsd/factur-x/FACTUR-X_EXTENDED.xsd)0
-rw-r--r--facturx/xsd/facturx-extended/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd (renamed from facturx/xsd/factur-x/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd)428
-rw-r--r--facturx/xsd/facturx-extended/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd (renamed from facturx/xsd/factur-x/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd)0
-rw-r--r--facturx/xsd/facturx-extended/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd (renamed from facturx/xsd/factur-x/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd)0
-rw-r--r--facturx/xsd/facturx-minimum/FACTUR-X_MINIMUM.xsd20
-rw-r--r--facturx/xsd/facturx-minimum/FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd786
-rw-r--r--facturx/xsd/facturx-minimum/FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd194
-rw-r--r--facturx/xsd/facturx-minimum/FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd54
26 files changed, 6083 insertions, 506 deletions
diff --git a/MANIFEST.in b/MANIFEST.in
index 5eb4292..c0533e3 100644
--- a/MANIFEST.in
+++ b/MANIFEST.in
@@ -4,17 +4,25 @@ include facturx/xsd/zugferd/ZUGFeRD1p0_urn_un_unece_uncefact_data_standard_Reusa
include facturx/xsd/zugferd/ZUGFeRD1p0_urn_un_unece_uncefact_data_standard_QualifiedDataType_12.xsd
include facturx/xsd/zugferd/ZUGFeRD1p0_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_15.xsd
include facturx/xsd/zugferd/ZUGFeRD1p0.xsd
-include facturx/xsd/factur-x/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd
-include facturx/xsd/factur-x/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd
-include facturx/xsd/factur-x/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd
-include facturx/xsd/factur-x/FACTUR-X_BASIC-WL.xsd
-include facturx/xsd/factur-x/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd
-include facturx/xsd/factur-x/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd
-include facturx/xsd/factur-x/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd
-include facturx/xsd/factur-x/FACTUR-X_EN16931.xsd
-include facturx/xsd/factur-x/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd
-include facturx/xsd/factur-x/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd
-include facturx/xsd/factur-x/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd
-include facturx/xsd/factur-x/FACTUR-X_EXTENDED.xsd
+include facturx/xsd/facturx-en16931/FACTUR-X_EN16931.xsd
+include facturx/xsd/facturx-en16931/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd
+include facturx/xsd/facturx-en16931/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd
+include facturx/xsd/facturx-en16931/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd
+include facturx/xsd/facturx-minimum/FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd
+include facturx/xsd/facturx-minimum/FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd
+include facturx/xsd/facturx-minimum/FACTUR-X_MINIMUM.xsd
+include facturx/xsd/facturx-minimum/FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd
+include facturx/xsd/facturx-extended/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd
+include facturx/xsd/facturx-extended/FACTUR-X_EXTENDED.xsd
+include facturx/xsd/facturx-extended/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd
+include facturx/xsd/facturx-extended/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd
+include facturx/xsd/facturx-basicwl/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd
+include facturx/xsd/facturx-basicwl/FACTUR-X_BASIC-WL.xsd
+include facturx/xsd/facturx-basicwl/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd
+include facturx/xsd/facturx-basicwl/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd
+include facturx/xsd/facturx-basic/FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd
+include facturx/xsd/facturx-basic/FACTUR-X_BASIC.xsd
+include facturx/xsd/facturx-basic/FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd
+include facturx/xsd/facturx-basic/FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd
include facturx/xmp/ZUGFeRD_extension_schema.xmp
include facturx/xmp/Factur-X_extension_schema.xmp
diff --git a/README.rst b/README.rst
index 3267e0f..a16c05f 100644
--- a/README.rst
+++ b/README.rst
@@ -34,9 +34,9 @@ Usage
.. code::
- from facturx import generate_facturx
+ from facturx import generate_facturx_from_file
- facturx_pdf_invoice = generate_facturx(regular_pdf_invoice, facturx_xml_file)
+ facturx_pdf_invoice = generate_facturx_from_file(regular_pdf_invoice, facturx_xml_file)
To have more examples, look at the source code of the command line tools located in the *bin* subdirectory.
@@ -65,6 +65,11 @@ Contributors
Changelog
=========
+* Version 1.4 dated 2019-07-24
+
+ * Update Factur-X XSD to the final version of Factur-X v1.0.4
+ * Support XML extraction with ZUGFeRD invoices using 'zugferd-invoice.xml' filename (instead of the filename 'ZUGFeRD-invoice.xml' specified by the standard)
+
* Version 1.3 dated 2019-06-12
* Add XSD files for Extended profile in the Python package
diff --git a/facturx/_version.py b/facturx/_version.py
index 6f4fa58..0f66308 100644
--- a/facturx/_version.py
+++ b/facturx/_version.py
@@ -1 +1 @@
-__version__ = '1.3'
+__version__ = '1.4'
diff --git a/facturx/facturx.py b/facturx/facturx.py
index 9dde536..157fa68 100644
--- a/facturx/facturx.py
+++ b/facturx/facturx.py
@@ -55,13 +55,13 @@ logger = logging.getLogger('factur-x')
logger.setLevel(logging.INFO)
FACTURX_FILENAME = 'factur-x.xml'
-FACTURX_FILENAME_PATTERN = ['factur-x.xml', 'zugferd-invoice.xml', 'ZUGFeRD-invoice.xml']
+ZUGFERD_FILENAMES = ['zugferd-invoice.xml', 'ZUGFeRD-invoice.xml']
FACTURX_LEVEL2xsd = {
- 'minimum': 'FACTUR-X_EN16931.xsd',
- 'basicwl': 'FACTUR-X_EN16931.xsd',
- 'basic': 'FACTUR-X_EN16931.xsd',
- 'en16931': 'FACTUR-X_EN16931.xsd', # comfort
- 'extended': 'FACTUR-X_EXTENDED.xsd',
+ 'minimum': 'facturx-minimum/FACTUR-X_MINIMUM.xsd',
+ 'basicwl': 'facturx-basicwl/FACTUR-X_BASIC-WL.xsd',
+ 'basic': 'facturx-basic/FACTUR-X_BASIC.xsd',
+ 'en16931': 'facturx-en16931/FACTUR-X_EN16931.xsd', # comfort
+ 'extended': 'facturx-extended/FACTUR-X_EXTENDED.xsd',
}
FACTURX_LEVEL2xmp = {
'minimum': 'MINIMUM',
@@ -83,7 +83,7 @@ def check_facturx_xsd(
:param facturx_level: the level of the Factur-X XML file. Default value
is 'autodetect'. The only advantage to specifiy a particular value instead
of using the autodetection is for a small perf improvement.
- Possible values: minimum, basicwl, basic, en16931.
+ Possible values: minimum, basicwl, basic, en16931, extended.
:return: True if the XML is valid against the XSD
raise an error if it is not valid against the XSD
"""
@@ -132,7 +132,7 @@ def check_facturx_xsd(
"Wrong level '%s' for Factur-X invoice." % facturx_level)
xsd_filename = FACTURX_LEVEL2xsd[facturx_level]
xsd_file = resource_filename(
- __name__, 'xsd/factur-x/%s' % xsd_filename)
+ __name__, 'xsd/%s' % xsd_filename)
elif flavor == 'zugferd':
xsd_file = resource_filename(
__name__, 'xsd/zugferd/ZUGFeRD1p0.xsd')
@@ -275,7 +275,7 @@ def get_facturx_xml_from_pdf(pdf_invoice, check_xsd=True):
try:
for (filename, file_obj) in embeddedfiles_by_two:
logger.debug('found filename=%s', filename)
- if filename in (FACTURX_FILENAME_PATTERN):
+ if filename in [FACTURX_FILENAME] + ZUGFERD_FILENAMES:
xml_file_dict = file_obj.getObject()
logger.debug('xml_file_dict=%s', xml_file_dict)
tmp_xml_string = xml_file_dict['/EF']['/F'].getData()
diff --git a/facturx/xsd/factur-x/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd b/facturx/xsd/factur-x/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd
deleted file mode 100644
index b31349b..0000000
--- a/facturx/xsd/factur-x/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd
+++ /dev/null
@@ -1,89 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xs:schema xmlns:qdt="urn:un:unece:uncefact:data:standard:QualifiedDataType:100"
- xmlns:xs="http://www.w3.org/2001/XMLSchema"
- xmlns:udt="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:100"
- targetNamespace="urn:un:unece:uncefact:data:standard:QualifiedDataType:100"
- elementFormDefault="qualified"
- version="100.D16B">
- <xs:import namespace="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:100" schemaLocation="FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd"/>
- <xs:simpleType name="AllowanceChargeReasonCodeContentType">
- <xs:restriction base="xs:token"/>
- </xs:simpleType>
- <xs:complexType name="AllowanceChargeReasonCodeType">
- <xs:simpleContent>
- <xs:extension base="qdt:AllowanceChargeReasonCodeContentType"/>
- </xs:simpleContent>
- </xs:complexType>
- <xs:simpleType name="CountryIDContentType">
- <xs:restriction base="xs:token"/>
- </xs:simpleType>
- <xs:complexType name="CountryIDType">
- <xs:simpleContent>
- <xs:extension base="qdt:CountryIDContentType"/>
- </xs:simpleContent>
- </xs:complexType>
- <xs:simpleType name="CurrencyCodeContentType">
- <xs:restriction base="xs:token"/>
- </xs:simpleType>
- <xs:complexType name="CurrencyCodeType">
- <xs:simpleContent>
- <xs:extension base="qdt:CurrencyCodeContentType"/>
- </xs:simpleContent>
- </xs:complexType>
- <xs:simpleType name="DocumentCodeContentType">
- <xs:restriction base="xs:token"/>
- </xs:simpleType>
- <xs:complexType name="DocumentCodeType">
- <xs:simpleContent>
- <xs:extension base="qdt:DocumentCodeContentType"/>
- </xs:simpleContent>
- </xs:complexType>
- <xs:simpleType name="FormattedDateTimeFormatContentType">
- <xs:restriction base="xs:string"/>
- </xs:simpleType>
- <xs:complexType name="FormattedDateTimeType">
- <xs:sequence>
- <xs:element name="DateTimeString">
- <xs:complexType>
- <xs:simpleContent>
- <xs:extension base="xs:string">
- <xs:attribute name="format" type="qdt:FormattedDateTimeFormatContentType"/>
- </xs:extension>
- </xs:simpleContent>
- </xs:complexType>
- </xs:element>
- </xs:sequence>
- </xs:complexType>
- <xs:simpleType name="PaymentMeansCodeContentType">
- <xs:restriction base="xs:token"/>
- </xs:simpleType>
- <xs:complexType name="PaymentMeansCodeType">
- <xs:simpleContent>
- <xs:extension base="qdt:PaymentMeansCodeContentType"/>
- </xs:simpleContent>
- </xs:complexType>
- <xs:simpleType name="TaxCategoryCodeContentType">
- <xs:restriction base="xs:token"/>
- </xs:simpleType>
- <xs:complexType name="TaxCategoryCodeType">
- <xs:simpleContent>
- <xs:extension base="qdt:TaxCategoryCodeContentType"/>
- </xs:simpleContent>
- </xs:complexType>
- <xs:simpleType name="TaxTypeCodeContentType">
- <xs:restriction base="xs:token"/>
- </xs:simpleType>
- <xs:complexType name="TaxTypeCodeType">
- <xs:simpleContent>
- <xs:extension base="qdt:TaxTypeCodeContentType"/>
- </xs:simpleContent>
- </xs:complexType>
- <xs:simpleType name="TimeReferenceCodeContentType">
- <xs:restriction base="xs:token"/>
- </xs:simpleType>
- <xs:complexType name="TimeReferenceCodeType">
- <xs:simpleContent>
- <xs:extension base="qdt:TimeReferenceCodeContentType"/>
- </xs:simpleContent>
- </xs:complexType>
-</xs:schema>
diff --git a/facturx/xsd/factur-x/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd b/facturx/xsd/factur-x/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd
deleted file mode 100644
index 976a309..0000000
--- a/facturx/xsd/factur-x/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd
+++ /dev/null
@@ -1,105 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xs:schema xmlns:qdt="urn:un:unece:uncefact:data:standard:QualifiedDataType:100"
- xmlns:xs="http://www.w3.org/2001/XMLSchema"
- xmlns:udt="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:100"
- targetNamespace="urn:un:unece:uncefact:data:standard:QualifiedDataType:100"
- elementFormDefault="qualified"
- version="100.D16B">
- <xs:import namespace="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:100" schemaLocation="FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd"/>
- <xs:simpleType name="AccountingAccountTypeCodeContentType">
- <xs:restriction base="xs:token"/>
- </xs:simpleType>
- <xs:complexType name="AccountingAccountTypeCodeType">
- <xs:simpleContent>
- <xs:extension base="qdt:AccountingAccountTypeCodeContentType"/>
- </xs:simpleContent>
- </xs:complexType>
- <xs:simpleType name="AllowanceChargeReasonCodeContentType">
- <xs:restriction base="xs:token"/>
- </xs:simpleType>
- <xs:complexType name="AllowanceChargeReasonCodeType">
- <xs:simpleContent>
- <xs:extension base="qdt:AllowanceChargeReasonCodeContentType"/>
- </xs:simpleContent>
- </xs:complexType>
- <xs:simpleType name="CountryIDContentType">
- <xs:restriction base="xs:token"/>
- </xs:simpleType>
- <xs:complexType name="CountryIDType">
- <xs:simpleContent>
- <xs:extension base="qdt:CountryIDContentType"/>
- </xs:simpleContent>
- </xs:complexType>
- <xs:simpleType name="CurrencyCodeContentType">
- <xs:restriction base="xs:token"/>
- </xs:simpleType>
- <xs:complexType name="CurrencyCodeType">
- <xs:simpleContent>
- <xs:extension base="qdt:CurrencyCodeContentType"/>
- </xs:simpleContent>
- </xs:complexType>
- <xs:simpleType name="DocumentCodeContentType">
- <xs:restriction base="xs:token"/>
- </xs:simpleType>
- <xs:complexType name="DocumentCodeType">
- <xs:simpleContent>
- <xs:extension base="qdt:DocumentCodeContentType"/>
- </xs:simpleContent>
- </xs:complexType>
- <xs:simpleType name="FormattedDateTimeFormatContentType">
- <xs:restriction base="xs:string"/>
- </xs:simpleType>
- <xs:complexType name="FormattedDateTimeType">
- <xs:sequence>
- <xs:element name="DateTimeString">
- <xs:complexType>
- <xs:simpleContent>
- <xs:extension base="xs:string">
- <xs:attribute name="format" type="qdt:FormattedDateTimeFormatContentType"/>
- </xs:extension>
- </xs:simpleContent>
- </xs:complexType>
- </xs:element>
- </xs:sequence>
- </xs:complexType>
- <xs:simpleType name="PaymentMeansCodeContentType">
- <xs:restriction base="xs:token"/>
- </xs:simpleType>
- <xs:complexType name="PaymentMeansCodeType">
- <xs:simpleContent>
- <xs:extension base="qdt:PaymentMeansCodeContentType"/>
- </xs:simpleContent>
- </xs:complexType>
- <xs:simpleType name="ReferenceCodeContentType">
- <xs:restriction base="xs:token"/>
- </xs:simpleType>
- <xs:complexType name="ReferenceCodeType">
- <xs:simpleContent>
- <xs:extension base="qdt:ReferenceCodeContentType"/>
- </xs:simpleContent>
- </xs:complexType>
- <xs:simpleType name="TaxCategoryCodeContentType">
- <xs:restriction base="xs:token"/>
- </xs:simpleType>
- <xs:complexType name="TaxCategoryCodeType">
- <xs:simpleContent>
- <xs:extension base="qdt:TaxCategoryCodeContentType"/>
- </xs:simpleContent>
- </xs:complexType>
- <xs:simpleType name="TaxTypeCodeContentType">
- <xs:restriction base="xs:token"/>
- </xs:simpleType>
- <xs:complexType name="TaxTypeCodeType">
- <xs:simpleContent>
- <xs:extension base="qdt:TaxTypeCodeContentType"/>
- </xs:simpleContent>
- </xs:complexType>
- <xs:simpleType name="TimeReferenceCodeContentType">
- <xs:restriction base="xs:token"/>
- </xs:simpleType>
- <xs:complexType name="TimeReferenceCodeType">
- <xs:simpleContent>
- <xs:extension base="qdt:TimeReferenceCodeContentType"/>
- </xs:simpleContent>
- </xs:complexType>
-</xs:schema>
diff --git a/facturx/xsd/facturx-basic/FACTUR-X_BASIC.xsd b/facturx/xsd/facturx-basic/FACTUR-X_BASIC.xsd
new file mode 100644
index 0000000..dc31919
--- /dev/null
+++ b/facturx/xsd/facturx-basic/FACTUR-X_BASIC.xsd
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:rsm="urn:un:unece:uncefact:data:standard:CrossIndustryInvoice:100"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ xmlns:qdt="urn:un:unece:uncefact:data:standard:QualifiedDataType:100"
+ xmlns:ram="urn:un:unece:uncefact:data:standard:ReusableAggregateBusinessInformationEntity:100"
+ xmlns:udt="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:100"
+ targetNamespace="urn:un:unece:uncefact:data:standard:CrossIndustryInvoice:100"
+ elementFormDefault="qualified">
+ <xs:import namespace="urn:un:unece:uncefact:data:standard:QualifiedDataType:100" schemaLocation="FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd"/>
+ <xs:import namespace="urn:un:unece:uncefact:data:standard:ReusableAggregateBusinessInformationEntity:100" schemaLocation="FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd"/>
+ <xs:import namespace="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:100" schemaLocation="FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd"/>
+ <xs:element name="CrossIndustryInvoice" type="rsm:CrossIndustryInvoiceType"/>
+ <xs:complexType name="CrossIndustryInvoiceType">
+ <xs:sequence>
+ <xs:element name="ExchangedDocumentContext" type="ram:ExchangedDocumentContextType"/>
+ <xs:element name="ExchangedDocument" type="ram:ExchangedDocumentType"/>
+ <xs:element name="SupplyChainTradeTransaction" type="ram:SupplyChainTradeTransactionType"/>
+ </xs:sequence>
+ </xs:complexType>
+</xs:schema>
diff --git a/facturx/xsd/facturx-basic/FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd b/facturx/xsd/facturx-basic/FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd
new file mode 100644
index 0000000..146d6c8
--- /dev/null
+++ b/facturx/xsd/facturx-basic/FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd
@@ -0,0 +1,1664 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:qdt="urn:un:unece:uncefact:data:standard:QualifiedDataType:100"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ xmlns:udt="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:100"
+ targetNamespace="urn:un:unece:uncefact:data:standard:QualifiedDataType:100"
+ elementFormDefault="qualified"
+ version="100.D16B">
+ <xs:import namespace="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:100" schemaLocation="FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd"/>
+ <xs:simpleType name="AllowanceChargeReasonCodeContentType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="AA"/>
+ <xs:enumeration value="AAA"/>
+ <xs:enumeration value="AAC"/>
+ <xs:enumeration value="AAD"/>
+ <xs:enumeration value="AAE"/>
+ <xs:enumeration value="AAF"/>
+ <xs:enumeration value="AAH"/>
+ <xs:enumeration value="AAI"/>
+ <xs:enumeration value="AAS"/>
+ <xs:enumeration value="AAT"/>
+ <xs:enumeration value="AAV"/>
+ <xs:enumeration value="AAY"/>
+ <xs:enumeration value="AAZ"/>
+ <xs:enumeration value="ABA"/>
+ <xs:enumeration value="ABB"/>
+ <xs:enumeration value="ABC"/>
+ <xs:enumeration value="ABD"/>
+ <xs:enumeration value="ABF"/>
+ <xs:enumeration value="ABK"/>
+ <xs:enumeration value="ABL"/>
+ <xs:enumeration value="ABN"/>
+ <xs:enumeration value="ABR"/>
+ <xs:enumeration value="ABS"/>
+ <xs:enumeration value="ABT"/>
+ <xs:enumeration value="ABU"/>
+ <xs:enumeration value="ACF"/>
+ <xs:enumeration value="ACG"/>
+ <xs:enumeration value="ACH"/>
+ <xs:enumeration value="ACI"/>
+ <xs:enumeration value="ACJ"/>
+ <xs:enumeration value="ACK"/>
+ <xs:enumeration value="ACL"/>
+ <xs:enumeration value="ACM"/>
+ <xs:enumeration value="ACS"/>
+ <xs:enumeration value="ADC"/>
+ <xs:enumeration value="ADE"/>
+ <xs:enumeration value="ADJ"/>
+ <xs:enumeration value="ADK"/>
+ <xs:enumeration value="ADL"/>
+ <xs:enumeration value="ADM"/>
+ <xs:enumeration value="ADN"/>
+ <xs:enumeration value="ADO"/>
+ <xs:enumeration value="ADP"/>
+ <xs:enumeration value="ADQ"/>
+ <xs:enumeration value="ADR"/>
+ <xs:enumeration value="ADT"/>
+ <xs:enumeration value="ADW"/>
+ <xs:enumeration value="ADY"/>
+ <xs:enumeration value="ADZ"/>
+ <xs:enumeration value="AEA"/>
+ <xs:enumeration value="AEB"/>
+ <xs:enumeration value="AEC"/>
+ <xs:enumeration value="AED"/>
+ <xs:enumeration value="AEF"/>
+ <xs:enumeration value="AEH"/>
+ <xs:enumeration value="AEI"/>
+ <xs:enumeration value="AEJ"/>
+ <xs:enumeration value="AEK"/>
+ <xs:enumeration value="AEL"/>
+ <xs:enumeration value="AEM"/>
+ <xs:enumeration value="AEN"/>
+ <xs:enumeration value="AEO"/>
+ <xs:enumeration value="AEP"/>
+ <xs:enumeration value="AES"/>
+ <xs:enumeration value="AET"/>
+ <xs:enumeration value="AEU"/>
+ <xs:enumeration value="AEV"/>
+ <xs:enumeration value="AEW"/>
+ <xs:enumeration value="AEX"/>
+ <xs:enumeration value="AEY"/>
+ <xs:enumeration value="AEZ"/>
+ <xs:enumeration value="AJ"/>
+ <xs:enumeration value="AU"/>
+ <xs:enumeration value="CA"/>
+ <xs:enumeration value="CAB"/>
+ <xs:enumeration value="CAD"/>
+ <xs:enumeration value="CAE"/>
+ <xs:enumeration value="CAF"/>
+ <xs:enumeration value="CAI"/>
+ <xs:enumeration value="CAJ"/>
+ <xs:enumeration value="CAK"/>
+ <xs:enumeration value="CAL"/>
+ <xs:enumeration value="CAM"/>
+ <xs:enumeration value="CAN"/>
+ <xs:enumeration value="CAO"/>
+ <xs:enumeration value="CAP"/>
+ <xs:enumeration value="CAQ"/>
+ <xs:enumeration value="CAR"/>
+ <xs:enumeration value="CAS"/>
+ <xs:enumeration value="CAT"/>
+ <xs:enumeration value="CAU"/>
+ <xs:enumeration value="CAV"/>
+ <xs:enumeration value="CAW"/>
+ <xs:enumeration value="CAX"/>
+ <xs:enumeration value="CAY"/>
+ <xs:enumeration value="CAZ"/>
+ <xs:enumeration value="CD"/>
+ <xs:enumeration value="CG"/>
+ <xs:enumeration value="CS"/>
+ <xs:enumeration value="CT"/>
+ <xs:enumeration value="DAB"/>
+ <xs:enumeration value="DAC"/>
+ <xs:enumeration value="DAD"/>
+ <xs:enumeration value="DAF"/>
+ <xs:enumeration value="DAG"/>
+ <xs:enumeration value="DAH"/>
+ <xs:enumeration value="DAI"/>
+ <xs:enumeration value="DAJ"/>
+ <xs:enumeration value="DAK"/>
+ <xs:enumeration value="DAL"/>
+ <xs:enumeration value="DAM"/>
+ <xs:enumeration value="DAN"/>
+ <xs:enumeration value="DAO"/>
+ <xs:enumeration value="DAP"/>
+ <xs:enumeration value="DAQ"/>
+ <xs:enumeration value="DL"/>
+ <xs:enumeration value="EG"/>
+ <xs:enumeration value="EP"/>
+ <xs:enumeration value="ER"/>
+ <xs:enumeration value="FAA"/>
+ <xs:enumeration value="FAB"/>
+ <xs:enumeration value="FAC"/>
+ <xs:enumeration value="FC"/>
+ <xs:enumeration value="FH"/>
+ <xs:enumeration value="FI"/>
+ <xs:enumeration value="GAA"/>
+ <xs:enumeration value="HAA"/>
+ <xs:enumeration value="HD"/>
+ <xs:enumeration value="HH"/>
+ <xs:enumeration value="IAA"/>
+ <xs:enumeration value="IAB"/>
+ <xs:enumeration value="ID"/>
+ <xs:enumeration value="IF"/>
+ <xs:enumeration value="IR"/>
+ <xs:enumeration value="IS"/>
+ <xs:enumeration value="KO"/>
+ <xs:enumeration value="L1"/>
+ <xs:enumeration value="LA"/>
+ <xs:enumeration value="LAA"/>
+ <xs:enumeration value="LAB"/>
+ <xs:enumeration value="LF"/>
+ <xs:enumeration value="MAE"/>
+ <xs:enumeration value="MI"/>
+ <xs:enumeration value="ML"/>
+ <xs:enumeration value="NAA"/>
+ <xs:enumeration value="OA"/>
+ <xs:enumeration value="PA"/>
+ <xs:enumeration value="PAA"/>
+ <xs:enumeration value="PC"/>
+ <xs:enumeration value="PL"/>
+ <xs:enumeration value="RAB"/>
+ <xs:enumeration value="RAC"/>
+ <xs:enumeration value="RAD"/>
+ <xs:enumeration value="RAF"/>
+ <xs:enumeration value="RE"/>
+ <xs:enumeration value="RF"/>
+ <xs:enumeration value="RH"/>
+ <xs:enumeration value="RV"/>
+ <xs:enumeration value="SA"/>
+ <xs:enumeration value="SAA"/>
+ <xs:enumeration value="SAD"/>
+ <xs:enumeration value="SAE"/>
+ <xs:enumeration value="SAI"/>
+ <xs:enumeration value="SG"/>
+ <xs:enumeration value="SH"/>
+ <xs:enumeration value="SM"/>
+ <xs:enumeration value="SU"/>
+ <xs:enumeration value="TAB"/>
+ <xs:enumeration value="TAC"/>
+ <xs:enumeration value="TT"/>
+ <xs:enumeration value="TV"/>
+ <xs:enumeration value="V1"/>
+ <xs:enumeration value="V2"/>
+ <xs:enumeration value="WH"/>
+ <xs:enumeration value="XAA"/>
+ <xs:enumeration value="YY"/>
+ <xs:enumeration value="ZZZ"/>
+ <xs:enumeration value="41"/>
+ <xs:enumeration value="42"/>
+ <xs:enumeration value="60"/>
+ <xs:enumeration value="62"/>
+ <xs:enumeration value="63"/>
+ <xs:enumeration value="64"/>
+ <xs:enumeration value="65"/>
+ <xs:enumeration value="66"/>
+ <xs:enumeration value="67"/>
+ <xs:enumeration value="68"/>
+ <xs:enumeration value="70"/>
+ <xs:enumeration value="71"/>
+ <xs:enumeration value="88"/>
+ <xs:enumeration value="95"/>
+ <xs:enumeration value="100"/>
+ <xs:enumeration value="102"/>
+ <xs:enumeration value="103"/>
+ <xs:enumeration value="104"/>
+ <xs:enumeration value="105"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="AllowanceChargeReasonCodeType">
+ <xs:simpleContent>
+ <xs:extension base="qdt:AllowanceChargeReasonCodeContentType"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:simpleType name="CountryIDContentType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="AD"/>
+ <xs:enumeration value="AE"/>
+ <xs:enumeration value="AF"/>
+ <xs:enumeration value="AG"/>
+ <xs:enumeration value="AI"/>
+ <xs:enumeration value="AL"/>
+ <xs:enumeration value="AM"/>
+ <xs:enumeration value="AO"/>
+ <xs:enumeration value="AQ"/>
+ <xs:enumeration value="AR"/>
+ <xs:enumeration value="AS"/>
+ <xs:enumeration value="AT"/>
+ <xs:enumeration value="AU"/>
+ <xs:enumeration value="AW"/>
+ <xs:enumeration value="AX"/>
+ <xs:enumeration value="AZ"/>
+ <xs:enumeration value="BA"/>
+ <xs:enumeration value="BB"/>
+ <xs:enumeration value="BD"/>
+ <xs:enumeration value="BE"/>
+ <xs:enumeration value="BF"/>
+ <xs:enumeration value="BG"/>
+ <xs:enumeration value="BH"/>
+ <xs:enumeration value="BI"/>
+ <xs:enumeration value="BJ"/>
+ <xs:enumeration value="BL"/>
+ <xs:enumeration value="BM"/>
+ <xs:enumeration value="BN"/>
+ <xs:enumeration value="BO"/>
+ <xs:enumeration value="BQ"/>
+ <xs:enumeration value="BR"/>
+ <xs:enumeration value="BS"/>
+ <xs:enumeration value="BT"/>
+ <xs:enumeration value="BV"/>
+ <xs:enumeration value="BW"/>
+ <xs:enumeration value="BY"/>
+ <xs:enumeration value="BZ"/>
+ <xs:enumeration value="CA"/>
+ <xs:enumeration value="CC"/>
+ <xs:enumeration value="CD"/>
+ <xs:enumeration value="CF"/>
+ <xs:enumeration value="CG"/>
+ <xs:enumeration value="CH"/>
+ <xs:enumeration value="CI"/>
+ <xs:enumeration value="CK"/>
+ <xs:enumeration value="CL"/>
+ <xs:enumeration value="CM"/>
+ <xs:enumeration value="CN"/>
+ <xs:enumeration value="CO"/>
+ <xs:enumeration value="CR"/>
+ <xs:enumeration value="CU"/>
+ <xs:enumeration value="CV"/>
+ <xs:enumeration value="CW"/>
+ <xs:enumeration value="CX"/>
+ <xs:enumeration value="CY"/>
+ <xs:enumeration value="CZ"/>
+ <xs:enumeration value="DE"/>
+ <xs:enumeration value="DJ"/>
+ <xs:enumeration value="DK"/>
+ <xs:enumeration value="DM"/>
+ <xs:enumeration value="DO"/>
+ <xs:enumeration value="DZ"/>
+ <xs:enumeration value="EC"/>
+ <xs:enumeration value="EE"/>
+ <xs:enumeration value="EG"/>
+ <xs:enumeration value="EH"/>
+ <xs:enumeration value="ER"/>
+ <xs:enumeration value="ES"/>
+ <xs:enumeration value="ET"/>
+ <xs:enumeration value="FI"/>
+ <xs:enumeration value="FJ"/>
+ <xs:enumeration value="FK"/>
+ <xs:enumeration value="FM"/>
+ <xs:enumeration value="FO"/>
+ <xs:enumeration value="FR"/>
+ <xs:enumeration value="GA"/>
+ <xs:enumeration value="GB"/>
+ <xs:enumeration value="GD"/>
+ <xs:enumeration value="GE"/>
+ <xs:enumeration value="GF"/>
+ <xs:enumeration value="GG"/>
+ <xs:enumeration value="GH"/>
+ <xs:enumeration value="GI"/>
+ <xs:enumeration value="GL"/>
+ <xs:enumeration value="GM"/>
+ <xs:enumeration value="GN"/>
+ <xs:enumeration value="GP"/>
+ <xs:enumeration value="GQ"/>
+ <xs:enumeration value="GR"/>
+ <xs:enumeration value="GS"/>
+ <xs:enumeration value="GT"/>
+ <xs:enumeration value="GU"/>
+ <xs:enumeration value="GW"/>
+ <xs:enumeration value="GY"/>
+ <xs:enumeration value="HK"/>
+ <xs:enumeration value="HM"/>
+ <xs:enumeration value="HN"/>
+ <xs:enumeration value="HR"/>
+ <xs:enumeration value="HT"/>
+ <xs:enumeration value="HU"/>
+ <xs:enumeration value="ID"/>
+ <xs:enumeration value="IE"/>
+ <xs:enumeration value="IL"/>
+ <xs:enumeration value="IM"/>
+ <xs:enumeration value="IN"/>
+ <xs:enumeration value="IO"/>
+ <xs:enumeration value="IQ"/>
+ <xs:enumeration value="IR"/>
+ <xs:enumeration value="IS"/>
+ <xs:enumeration value="IT"/>
+ <xs:enumeration value="JE"/>
+ <xs:enumeration value="JM"/>
+ <xs:enumeration value="JO"/>
+ <xs:enumeration value="JP"/>
+ <xs:enumeration value="KE"/>
+ <xs:enumeration value="KG"/>
+ <xs:enumeration value="KH"/>
+ <xs:enumeration value="KI"/>
+ <xs:enumeration value="KM"/>
+ <xs:enumeration value="KN"/>
+ <xs:enumeration value="KP"/>
+ <xs:enumeration value="KR"/>
+ <xs:enumeration value="KW"/>
+ <xs:enumeration value="KY"/>
+ <xs:enumeration value="KZ"/>
+ <xs:enumeration value="LA"/>
+ <xs:enumeration value="LB"/>
+ <xs:enumeration value="LC"/>
+ <xs:enumeration value="LI"/>
+ <xs:enumeration value="LK"/>
+ <xs:enumeration value="LR"/>
+ <xs:enumeration value="LS"/>
+ <xs:enumeration value="LT"/>
+ <xs:enumeration value="LU"/>
+ <xs:enumeration value="LV"/>
+ <xs:enumeration value="LY"/>
+ <xs:enumeration value="MA"/>
+ <xs:enumeration value="MC"/>
+ <xs:enumeration value="MD"/>
+ <xs:enumeration value="ME"/>
+ <xs:enumeration value="MF"/>
+ <xs:enumeration value="MG"/>
+ <xs:enumeration value="MH"/>
+ <xs:enumeration value="MK"/>
+ <xs:enumeration value="ML"/>
+ <xs:enumeration value="MM"/>
+ <xs:enumeration value="MN"/>
+ <xs:enumeration value="MO"/>
+ <xs:enumeration value="MP"/>
+ <xs:enumeration value="MQ"/>
+ <xs:enumeration value="MR"/>
+ <xs:enumeration value="MS"/>
+ <xs:enumeration value="MT"/>
+ <xs:enumeration value="MU"/>
+ <xs:enumeration value="MV"/>
+ <xs:enumeration value="MW"/>
+ <xs:enumeration value="MX"/>
+ <xs:enumeration value="MY"/>
+ <xs:enumeration value="MZ"/>
+ <xs:enumeration value="NA"/>
+ <xs:enumeration value="NC"/>
+ <xs:enumeration value="NE"/>
+ <xs:enumeration value="NF"/>
+ <xs:enumeration value="NG"/>
+ <xs:enumeration value="NI"/>
+ <xs:enumeration value="NL"/>
+ <xs:enumeration value="NO"/>
+ <xs:enumeration value="NP"/>
+ <xs:enumeration value="NR"/>
+ <xs:enumeration value="NU"/>
+ <xs:enumeration value="NZ"/>
+ <xs:enumeration value="OM"/>
+ <xs:enumeration value="PA"/>
+ <xs:enumeration value="PE"/>
+ <xs:enumeration value="PF"/>
+ <xs:enumeration value="PG"/>
+ <xs:enumeration value="PH"/>
+ <xs:enumeration value="PK"/>
+ <xs:enumeration value="PL"/>
+ <xs:enumeration value="PM"/>
+ <xs:enumeration value="PN"/>
+ <xs:enumeration value="PR"/>
+ <xs:enumeration value="PS"/>
+ <xs:enumeration value="PT"/>
+ <xs:enumeration value="PW"/>
+ <xs:enumeration value="PY"/>
+ <xs:enumeration value="QA"/>
+ <xs:enumeration value="RE"/>
+ <xs:enumeration value="RO"/>
+ <xs:enumeration value="RS"/>
+ <xs:enumeration value="RU"/>
+ <xs:enumeration value="RW"/>
+ <xs:enumeration value="SA"/>
+ <xs:enumeration value="SB"/>
+ <xs:enumeration value="SC"/>
+ <xs:enumeration value="SD"/>
+ <xs:enumeration value="SE"/>
+ <xs:enumeration value="SG"/>
+ <xs:enumeration value="SH"/>
+ <xs:enumeration value="SI"/>
+ <xs:enumeration value="SJ"/>
+ <xs:enumeration value="SK"/>
+ <xs:enumeration value="SL"/>
+ <xs:enumeration value="SM"/>
+ <xs:enumeration value="SN"/>
+ <xs:enumeration value="SO"/>
+ <xs:enumeration value="SR"/>
+ <xs:enumeration value="SS"/>
+ <xs:enumeration value="ST"/>
+ <xs:enumeration value="SV"/>
+ <xs:enumeration value="SX"/>
+ <xs:enumeration value="SY"/>
+ <xs:enumeration value="SZ"/>
+ <xs:enumeration value="TC"/>
+ <xs:enumeration value="TD"/>
+ <xs:enumeration value="TF"/>
+ <xs:enumeration value="TG"/>
+ <xs:enumeration value="TH"/>
+ <xs:enumeration value="TJ"/>
+ <xs:enumeration value="TK"/>
+ <xs:enumeration value="TL"/>
+ <xs:enumeration value="TM"/>
+ <xs:enumeration value="TN"/>
+ <xs:enumeration value="TO"/>
+ <xs:enumeration value="TR"/>
+ <xs:enumeration value="TT"/>
+ <xs:enumeration value="TV"/>
+ <xs:enumeration value="TW"/>
+ <xs:enumeration value="TZ"/>
+ <xs:enumeration value="UA"/>
+ <xs:enumeration value="UG"/>
+ <xs:enumeration value="UM"/>
+ <xs:enumeration value="US"/>
+ <xs:enumeration value="UY"/>
+ <xs:enumeration value="UZ"/>
+ <xs:enumeration value="VA"/>
+ <xs:enumeration value="VC"/>
+ <xs:enumeration value="VE"/>
+ <xs:enumeration value="VG"/>
+ <xs:enumeration value="VI"/>
+ <xs:enumeration value="VN"/>
+ <xs:enumeration value="VU"/>
+ <xs:enumeration value="WF"/>
+ <xs:enumeration value="WS"/>
+ <xs:enumeration value="YE"/>
+ <xs:enumeration value="YT"/>
+ <xs:enumeration value="ZA"/>
+ <xs:enumeration value="ZM"/>
+ <xs:enumeration value="ZW"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="CountryIDType">
+ <xs:simpleContent>
+ <xs:extension base="qdt:CountryIDContentType"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:simpleType name="CurrencyCodeContentType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="AED"/>
+ <xs:enumeration value="ALL"/>
+ <xs:enumeration value="AMD"/>
+ <xs:enumeration value="ANG"/>
+ <xs:enumeration value="AOA"/>
+ <xs:enumeration value="ARS"/>
+ <xs:enumeration value="AUD"/>
+ <xs:enumeration value="AWG"/>
+ <xs:enumeration value="AZN"/>
+ <xs:enumeration value="BAM"/>
+ <xs:enumeration value="BBD"/>
+ <xs:enumeration value="BDT"/>
+ <xs:enumeration value="BGN"/>
+ <xs:enumeration value="BHD"/>
+ <xs:enumeration value="BIF"/>
+ <xs:enumeration value="BMD"/>
+ <xs:enumeration value="BND"/>
+ <xs:enumeration value="BOB"/>
+ <xs:enumeration value="BOV"/>
+ <xs:enumeration value="BRL"/>
+ <xs:enumeration value="BSD"/>
+ <xs:enumeration value="BTN"/>
+ <xs:enumeration value="BWP"/>
+ <xs:enumeration value="BYN"/>
+ <xs:enumeration value="BZD"/>
+ <xs:enumeration value="CAD"/>
+ <xs:enumeration value="CDF"/>
+ <xs:enumeration value="CHE"/>
+ <xs:enumeration value="CHF"/>
+ <xs:enumeration value="CHW"/>
+ <xs:enumeration value="CLF"/>
+ <xs:enumeration value="CLP"/>
+ <xs:enumeration value="CNY"/>
+ <xs:enumeration value="COP"/>
+ <xs:enumeration value="COU"/>
+ <xs:enumeration value="CRC"/>
+ <xs:enumeration value="CUC"/>
+ <xs:enumeration value="CUP"/>
+ <xs:enumeration value="CVE"/>
+ <xs:enumeration value="CZK"/>
+ <xs:enumeration value="DJF"/>
+ <xs:enumeration value="DKK"/>
+ <xs:enumeration value="DOP"/>
+ <xs:enumeration value="DZD"/>
+ <xs:enumeration value="EGP"/>
+ <xs:enumeration value="ERN"/>
+ <xs:enumeration value="ETB"/>
+ <xs:enumeration value="EUR"/>
+ <xs:enumeration value="FJD"/>
+ <xs:enumeration value="FKP"/>
+ <xs:enumeration value="GBP"/>
+ <xs:enumeration value="GEL"/>
+ <xs:enumeration value="GHS"/>
+ <xs:enumeration value="GIP"/>
+ <xs:enumeration value="GMD"/>
+ <xs:enumeration value="GNF"/>
+ <xs:enumeration value="GTQ"/>
+ <xs:enumeration value="GYD"/>
+ <xs:enumeration value="HKD"/>
+ <xs:enumeration value="HNL"/>
+ <xs:enumeration value="HRK"/>
+ <xs:enumeration value="HTG"/>
+ <xs:enumeration value="HUF"/>
+ <xs:enumeration value="IDR"/>
+ <xs:enumeration value="ILS"/>
+ <xs:enumeration value="INR"/>
+ <xs:enumeration value="IQD"/>
+ <xs:enumeration value="IRR"/>
+ <xs:enumeration value="ISK"/>
+ <xs:enumeration value="JMD"/>
+ <xs:enumeration value="JOD"/>
+ <xs:enumeration value="JPY"/>
+ <xs:enumeration value="KES"/>
+ <xs:enumeration value="KGS"/>
+ <xs:enumeration value="KHR"/>
+ <xs:enumeration value="KMF"/>
+ <xs:enumeration value="KPW"/>
+ <xs:enumeration value="KRW"/>
+ <xs:enumeration value="KWD"/>
+ <xs:enumeration value="KYD"/>
+ <xs:enumeration value="KZT"/>
+ <xs:enumeration value="LAK"/>
+ <xs:enumeration value="LBP"/>
+ <xs:enumeration value="LKR"/>
+ <xs:enumeration value="LRD"/>
+ <xs:enumeration value="LSL"/>
+ <xs:enumeration value="LYD"/>
+ <xs:enumeration value="MAD"/>
+ <xs:enumeration value="MDL"/>
+ <xs:enumeration value="MGA"/>
+ <xs:enumeration value="MKD"/>
+ <xs:enumeration value="MMK"/>
+ <xs:enumeration value="MNT"/>
+ <xs:enumeration value="MOP"/>
+ <xs:enumeration value="MRO"/>
+ <xs:enumeration value="MUR"/>
+ <xs:enumeration value="MVR"/>
+ <xs:enumeration value="MWK"/>
+ <xs:enumeration value="MXN"/>
+ <xs:enumeration value="MXV"/>
+ <xs:enumeration value="MYR"/>
+ <xs:enumeration value="MZN"/>
+ <xs:enumeration value="NAD"/>
+ <xs:enumeration value="NGN"/>
+ <xs:enumeration value="NIO"/>
+ <xs:enumeration value="NOK"/>
+ <xs:enumeration value="NPR"/>
+ <xs:enumeration value="NZD"/>
+ <xs:enumeration value="OMR"/>
+ <xs:enumeration value="PAB"/>
+ <xs:enumeration value="PEN"/>
+ <xs:enumeration value="PGK"/>
+ <xs:enumeration value="PHP"/>
+ <xs:enumeration value="PKR"/>
+ <xs:enumeration value="PLN"/>
+ <xs:enumeration value="PYG"/>
+ <xs:enumeration value="QAR"/>
+ <xs:enumeration value="RON"/>
+ <xs:enumeration value="RSD"/>
+ <xs:enumeration value="RUB"/>
+ <xs:enumeration value="RWF"/>
+ <xs:enumeration value="SAR"/>
+ <xs:enumeration value="SBD"/>
+ <xs:enumeration value="SCR"/>
+ <xs:enumeration value="SDG"/>
+ <xs:enumeration value="SEK"/>
+ <xs:enumeration value="SGD"/>
+ <xs:enumeration value="SHP"/>
+ <xs:enumeration value="SLL"/>
+ <xs:enumeration value="SOS"/>
+ <xs:enumeration value="SRD"/>
+ <xs:enumeration value="SSP"/>
+ <xs:enumeration value="STD"/>
+ <xs:enumeration value="SVC"/>
+ <xs:enumeration value="SYP"/>
+ <xs:enumeration value="SZL"/>
+ <xs:enumeration value="THB"/>
+ <xs:enumeration value="TJS"/>
+ <xs:enumeration value="TMT"/>
+ <xs:enumeration value="TND"/>
+ <xs:enumeration value="TOP"/>
+ <xs:enumeration value="TRY"/>
+ <xs:enumeration value="TTD"/>
+ <xs:enumeration value="TWD"/>
+ <xs:enumeration value="TZS"/>
+ <xs:enumeration value="UAH"/>
+ <xs:enumeration value="UGX"/>
+ <xs:enumeration value="USD"/>
+ <xs:enumeration value="USN"/>
+ <xs:enumeration value="UYI"/>
+ <xs:enumeration value="UYU"/>
+ <xs:enumeration value="UYW"/>
+ <xs:enumeration value="UZS"/>
+ <xs:enumeration value="VEF"/>
+ <xs:enumeration value="VND"/>
+ <xs:enumeration value="VUV"/>
+ <xs:enumeration value="WST"/>
+ <xs:enumeration value="XAF"/>
+ <xs:enumeration value="XAG"/>
+ <xs:enumeration value="XAU"/>
+ <xs:enumeration value="XBA"/>
+ <xs:enumeration value="XBB"/>
+ <xs:enumeration value="XBC"/>
+ <xs:enumeration value="XBD"/>
+ <xs:enumeration value="XCD"/>
+ <xs:enumeration value="XDR"/>
+ <xs:enumeration value="XOF"/>
+ <xs:enumeration value="XPD"/>
+ <xs:enumeration value="XPF"/>
+ <xs:enumeration value="XPT"/>
+ <xs:enumeration value="XSU"/>
+ <xs:enumeration value="XTS"/>
+ <xs:enumeration value="XUA"/>
+ <xs:enumeration value="XXX"/>
+ <xs:enumeration value="YER"/>
+ <xs:enumeration value="ZAR"/>
+ <xs:enumeration value="ZMW"/>
+ <xs:enumeration value="ZWL"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="CurrencyCodeType">
+ <xs:simpleContent>
+ <xs:extension base="qdt:CurrencyCodeContentType"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:simpleType name="DocumentCodeContentType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="50"/>
+ <xs:enumeration value="80"/>
+ <xs:enumeration value="81"/>
+ <xs:enumeration value="82"/>
+ <xs:enumeration value="83"/>
+ <xs:enumeration value="84"/>
+ <xs:enumeration value="130"/>
+ <xs:enumeration value="202"/>
+ <xs:enumeration value="203"/>
+ <xs:enumeration value="204"/>
+ <xs:enumeration value="211"/>
+ <xs:enumeration value="261"/>
+ <xs:enumeration value="262"/>
+ <xs:enumeration value="295"/>
+ <xs:enumeration value="296"/>
+ <xs:enumeration value="308"/>
+ <xs:enumeration value="325"/>
+ <xs:enumeration value="326"/>
+ <xs:enumeration value="380"/>
+ <xs:enumeration value="381"/>
+ <xs:enumeration value="383"/>
+ <xs:enumeration value="384"/>
+ <xs:enumeration value="385"/>
+ <xs:enumeration value="386"/>
+ <xs:enumeration value="387"/>
+ <xs:enumeration value="388"/>
+ <xs:enumeration value="389"/>
+ <xs:enumeration value="390"/>
+ <xs:enumeration value="393"/>
+ <xs:enumeration value="394"/>
+ <xs:enumeration value="395"/>
+ <xs:enumeration value="396"/>
+ <xs:enumeration value="420"/>
+ <xs:enumeration value="456"/>
+ <xs:enumeration value="457"/>
+ <xs:enumeration value="458"/>
+ <xs:enumeration value="527"/>
+ <xs:enumeration value="575"/>
+ <xs:enumeration value="623"/>
+ <xs:enumeration value="633"/>
+ <xs:enumeration value="751"/>
+ <xs:enumeration value="780"/>
+ <xs:enumeration value="916"/>
+ <xs:enumeration value="935"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="DocumentCodeType">
+ <xs:simpleContent>
+ <xs:extension base="qdt:DocumentCodeContentType"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:simpleType name="FormattedDateTimeFormatContentType">
+ <xs:restriction base="xs:string"/>
+ </xs:simpleType>
+ <xs:complexType name="FormattedDateTimeType">
+ <xs:sequence>
+ <xs:element name="DateTimeString">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute name="format" type="qdt:FormattedDateTimeFormatContentType" use="required"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:simpleType name="PaymentMeansCodeContentType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="10"/>
+ <xs:enumeration value="20"/>
+ <xs:enumeration value="30"/>
+ <xs:enumeration value="42"/>
+ <xs:enumeration value="48"/>
+ <xs:enumeration value="49"/>
+ <xs:enumeration value="57"/>
+ <xs:enumeration value="58"/>
+ <xs:enumeration value="59"/>
+ <xs:enumeration value="97"/>
+ <xs:enumeration value="ZZZ"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="PaymentMeansCodeType">
+ <xs:simpleContent>
+ <xs:extension base="qdt:PaymentMeansCodeContentType"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:simpleType name="ReferenceCodeContentType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="AAA"/>
+ <xs:enumeration value="AAB"/>
+ <xs:enumeration value="AAC"/>
+ <xs:enumeration value="AAD"/>
+ <xs:enumeration value="AAE"/>
+ <xs:enumeration value="AAF"/>
+ <xs:enumeration value="AAG"/>
+ <xs:enumeration value="AAH"/>
+ <xs:enumeration value="AAI"/>
+ <xs:enumeration value="AAJ"/>
+ <xs:enumeration value="AAK"/>
+ <xs:enumeration value="AAL"/>
+ <xs:enumeration value="AAM"/>
+ <xs:enumeration value="AAN"/>
+ <xs:enumeration value="AAO"/>
+ <xs:enumeration value="AAP"/>
+ <xs:enumeration value="AAQ"/>
+ <xs:enumeration value="AAR"/>
+ <xs:enumeration value="AAS"/>
+ <xs:enumeration value="AAT"/>
+ <xs:enumeration value="AAU"/>
+ <xs:enumeration value="AAV"/>
+ <xs:enumeration value="AAW"/>
+ <xs:enumeration value="AAX"/>
+ <xs:enumeration value="AAY"/>
+ <xs:enumeration value="AAZ"/>
+ <xs:enumeration value="ABA"/>
+ <xs:enumeration value="ABB"/>
+ <xs:enumeration value="ABC"/>
+ <xs:enumeration value="ABD"/>
+ <xs:enumeration value="ABE"/>
+ <xs:enumeration value="ABF"/>
+ <xs:enumeration value="ABG"/>
+ <xs:enumeration value="ABH"/>
+ <xs:enumeration value="ABI"/>
+ <xs:enumeration value="ABJ"/>
+ <xs:enumeration value="ABK"/>
+ <xs:enumeration value="ABL"/>
+ <xs:enumeration value="ABM"/>
+ <xs:enumeration value="ABN"/>
+ <xs:enumeration value="ABO"/>
+ <xs:enumeration value="ABP"/>
+ <xs:enumeration value="ABQ"/>
+ <xs:enumeration value="ABR"/>
+ <xs:enumeration value="ABS"/>
+ <xs:enumeration value="ABT"/>
+ <xs:enumeration value="ABU"/>
+ <xs:enumeration value="ABV"/>
+ <xs:enumeration value="ABW"/>
+ <xs:enumeration value="ABX"/>
+ <xs:enumeration value="ABY"/>
+ <xs:enumeration value="ABZ"/>
+ <xs:enumeration value="AC"/>
+ <xs:enumeration value="ACA"/>
+ <xs:enumeration value="ACB"/>
+ <xs:enumeration value="ACC"/>
+ <xs:enumeration value="ACD"/>
+ <xs:enumeration value="ACE"/>
+ <xs:enumeration value="ACF"/>
+ <xs:enumeration value="ACG"/>
+ <xs:enumeration value="ACH"/>
+ <xs:enumeration value="ACI"/>
+ <xs:enumeration value="ACJ"/>
+ <xs:enumeration value="ACK"/>
+ <xs:enumeration value="ACL"/>
+ <xs:enumeration value="ACN"/>
+ <xs:enumeration value="ACO"/>
+ <xs:enumeration value="ACP"/>
+ <xs:enumeration value="ACQ"/>
+ <xs:enumeration value="ACR"/>
+ <xs:enumeration value="ACT"/>
+ <xs:enumeration value="ACU"/>
+ <xs:enumeration value="ACV"/>
+ <xs:enumeration value="ACW"/>
+ <xs:enumeration value="ACX"/>
+ <xs:enumeration value="ACY"/>
+ <xs:enumeration value="ACZ"/>
+ <xs:enumeration value="ADA"/>
+ <xs:enumeration value="ADB"/>
+ <xs:enumeration value="ADC"/>
+ <xs:enumeration value="ADD"/>
+ <xs:enumeration value="ADE"/>
+ <xs:enumeration value="ADF"/>
+ <xs:enumeration value="ADG"/>
+ <xs:enumeration value="ADI"/>
+ <xs:enumeration value="ADJ"/>
+ <xs:enumeration value="ADK"/>
+ <xs:enumeration value="ADL"/>
+ <xs:enumeration value="ADM"/>
+ <xs:enumeration value="ADN"/>
+ <xs:enumeration value="ADO"/>
+ <xs:enumeration value="ADP"/>
+ <xs:enumeration value="ADQ"/>
+ <xs:enumeration value="ADT"/>
+ <xs:enumeration value="ADU"/>
+ <xs:enumeration value="ADV"/>
+ <xs:enumeration value="ADW"/>
+ <xs:enumeration value="ADX"/>
+ <xs:enumeration value="ADY"/>
+ <xs:enumeration value="ADZ"/>
+ <xs:enumeration value="AE"/>
+ <xs:enumeration value="AEA"/>
+ <xs:enumeration value="AEB"/>
+ <xs:enumeration value="AEC"/>
+ <xs:enumeration value="AED"/>
+ <xs:enumeration value="AEE"/>
+ <xs:enumeration value="AEF"/>
+ <xs:enumeration value="AEG"/>
+ <xs:enumeration value="AEH"/>
+ <xs:enumeration value="AEI"/>
+ <xs:enumeration value="AEJ"/>
+ <xs:enumeration value="AEK"/>
+ <xs:enumeration value="AEL"/>
+ <xs:enumeration value="AEM"/>
+ <xs:enumeration value="AEN"/>
+ <xs:enumeration value="AEO"/>
+ <xs:enumeration value="AEP"/>
+ <xs:enumeration value="AEQ"/>
+ <xs:enumeration value="AER"/>
+ <xs:enumeration value="AES"/>
+ <xs:enumeration value="AET"/>
+ <xs:enumeration value="AEU"/>
+ <xs:enumeration value="AEV"/>
+ <xs:enumeration value="AEW"/>
+ <xs:enumeration value="AEX"/>
+ <xs:enumeration value="AEY"/>
+ <xs:enumeration value="AEZ"/>
+ <xs:enumeration value="AF"/>
+ <xs:enumeration value="AFA"/>
+ <xs:enumeration value="AFB"/>
+ <xs:enumeration value="AFC"/>
+ <xs:enumeration value="AFD"/>
+ <xs:enumeration value="AFE"/>
+ <xs:enumeration value="AFF"/>
+ <xs:enumeration value="AFG"/>
+ <xs:enumeration value="AFH"/>
+ <xs:enumeration value="AFI"/>
+ <xs:enumeration value="AFJ"/>
+ <xs:enumeration value="AFK"/>
+ <xs:enumeration value="AFL"/>
+ <xs:enumeration value="AFM"/>
+ <xs:enumeration value="AFN"/>
+ <xs:enumeration value="AFO"/>
+ <xs:enumeration value="AFP"/>
+ <xs:enumeration value="AFQ"/>
+ <xs:enumeration value="AFR"/>
+ <xs:enumeration value="AFS"/>
+ <xs:enumeration value="AFT"/>
+ <xs:enumeration value="AFU"/>
+ <xs:enumeration value="AFV"/>
+ <xs:enumeration value="AFW"/>
+ <xs:enumeration value="AFX"/>
+ <xs:enumeration value="AFY"/>
+ <xs:enumeration value="AFZ"/>
+ <xs:enumeration value="AGA"/>
+ <xs:enumeration value="AGB"/>
+ <xs:enumeration value="AGC"/>
+ <xs:enumeration value="AGD"/>
+ <xs:enumeration value="AGE"/>
+ <xs:enumeration value="AGF"/>
+ <xs:enumeration value="AGG"/>
+ <xs:enumeration value="AGH"/>
+ <xs:enumeration value="AGI"/>
+ <xs:enumeration value="AGJ"/>
+ <xs:enumeration value="AGK"/>
+ <xs:enumeration value="AGL"/>
+ <xs:enumeration value="AGM"/>
+ <xs:enumeration value="AGN"/>
+ <xs:enumeration value="AGO"/>
+ <xs:enumeration value="AGP"/>
+ <xs:enumeration value="AGQ"/>
+ <xs:enumeration value="AGR"/>
+ <xs:enumeration value="AGS"/>
+ <xs:enumeration value="AGT"/>
+ <xs:enumeration value="AGU"/>
+ <xs:enumeration value="AGV"/>
+ <xs:enumeration value="AGW"/>
+ <xs:enumeration value="AGX"/>
+ <xs:enumeration value="AGY"/>
+ <xs:enumeration value="AGZ"/>
+ <xs:enumeration value="AHA"/>
+ <xs:enumeration value="AHB"/>
+ <xs:enumeration value="AHC"/>
+ <xs:enumeration value="AHD"/>
+ <xs:enumeration value="AHE"/>
+ <xs:enumeration value="AHF"/>
+ <xs:enumeration value="AHG"/>
+ <xs:enumeration value="AHH"/>
+ <xs:enumeration value="AHI"/>
+ <xs:enumeration value="AHJ"/>
+ <xs:enumeration value="AHK"/>
+ <xs:enumeration value="AHL"/>
+ <xs:enumeration value="AHM"/>
+ <xs:enumeration value="AHN"/>
+ <xs:enumeration value="AHO"/>
+ <xs:enumeration value="AHP"/>
+ <xs:enumeration value="AHQ"/>
+ <xs:enumeration value="AHR"/>
+ <xs:enumeration value="AHS"/>
+ <xs:enumeration value="AHT"/>
+ <xs:enumeration value="AHU"/>
+ <xs:enumeration value="AHV"/>
+ <xs:enumeration value="AHX"/>
+ <xs:enumeration value="AHY"/>
+ <xs:enumeration value="AHZ"/>
+ <xs:enumeration value="AIA"/>
+ <xs:enumeration value="AIB"/>
+ <xs:enumeration value="AIC"/>
+ <xs:enumeration value="AID"/>
+ <xs:enumeration value="AIE"/>
+ <xs:enumeration value="AIF"/>
+ <xs:enumeration value="AIG"/>
+ <xs:enumeration value="AIH"/>
+ <xs:enumeration value="AII"/>
+ <xs:enumeration value="AIJ"/>
+ <xs:enumeration value="AIK"/>
+ <xs:enumeration value="AIL"/>
+ <xs:enumeration value="AIM"/>
+ <xs:enumeration value="AIN"/>
+ <xs:enumeration value="AIO"/>
+ <xs:enumeration value="AIP"/>
+ <xs:enumeration value="AIQ"/>
+ <xs:enumeration value="AIR"/>
+ <xs:enumeration value="AIS"/>
+ <xs:enumeration value="AIT"/>
+ <xs:enumeration value="AIU"/>
+ <xs:enumeration value="AIV"/>
+ <xs:enumeration value="AIW"/>
+ <xs:enumeration value="AIX"/>
+ <xs:enumeration value="AIY"/>
+ <xs:enumeration value="AIZ"/>
+ <xs:enumeration value="AJA"/>
+ <xs:enumeration value="AJB"/>
+ <xs:enumeration value="AJC"/>
+ <xs:enumeration value="AJD"/>
+ <xs:enumeration value="AJE"/>
+ <xs:enumeration value="AJF"/>
+ <xs:enumeration value="AJG"/>
+ <xs:enumeration value="AJH"/>
+ <xs:enumeration value="AJI"/>
+ <xs:enumeration value="AJJ"/>
+ <xs:enumeration value="AJK"/>
+ <xs:enumeration value="AJL"/>
+ <xs:enumeration value="AJM"/>
+ <xs:enumeration value="AJN"/>
+ <xs:enumeration value="AJO"/>
+ <xs:enumeration value="AJP"/>
+ <xs:enumeration value="AJQ"/>
+ <xs:enumeration value="AJR"/>
+ <xs:enumeration value="AJS"/>
+ <xs:enumeration value="AJT"/>
+ <xs:enumeration value="AJU"/>
+ <xs:enumeration value="AJV"/>
+ <xs:enumeration value="AJW"/>
+ <xs:enumeration value="AJX"/>
+ <xs:enumeration value="AJY"/>
+ <xs:enumeration value="AJZ"/>
+ <xs:enumeration value="AKA"/>
+ <xs:enumeration value="AKB"/>
+ <xs:enumeration value="AKC"/>
+ <xs:enumeration value="AKD"/>
+ <xs:enumeration value="AKE"/>
+ <xs:enumeration value="AKF"/>
+ <xs:enumeration value="AKG"/>
+ <xs:enumeration value="AKH"/>
+ <xs:enumeration value="AKI"/>
+ <xs:enumeration value="AKJ"/>
+ <xs:enumeration value="AKK"/>
+ <xs:enumeration value="AKL"/>
+ <xs:enumeration value="AKM"/>
+ <xs:enumeration value="AKN"/>
+ <xs:enumeration value="AKO"/>
+ <xs:enumeration value="AKP"/>
+ <xs:enumeration value="AKQ"/>
+ <xs:enumeration value="AKR"/>
+ <xs:enumeration value="AKS"/>
+ <xs:enumeration value="AKT"/>
+ <xs:enumeration value="AKU"/>
+ <xs:enumeration value="AKV"/>
+ <xs:enumeration value="AKW"/>
+ <xs:enumeration value="AKX"/>
+ <xs:enumeration value="AKY"/>
+ <xs:enumeration value="AKZ"/>
+ <xs:enumeration value="ALA"/>
+ <xs:enumeration value="ALB"/>
+ <xs:enumeration value="ALC"/>
+ <xs:enumeration value="ALD"/>
+ <xs:enumeration value="ALE"/>
+ <xs:enumeration value="ALF"/>
+ <xs:enumeration value="ALG"/>
+ <xs:enumeration value="ALH"/>
+ <xs:enumeration value="ALI"/>
+ <xs:enumeration value="ALJ"/>
+ <xs:enumeration value="ALK"/>
+ <xs:enumeration value="ALL"/>
+ <xs:enumeration value="ALM"/>
+ <xs:enumeration value="ALN"/>
+ <xs:enumeration value="ALO"/>
+ <xs:enumeration value="ALP"/>
+ <xs:enumeration value="ALQ"/>
+ <xs:enumeration value="ALR"/>
+ <xs:enumeration value="ALS"/>
+ <xs:enumeration value="ALT"/>
+ <xs:enumeration value="ALU"/>
+ <xs:enumeration value="ALV"/>
+ <xs:enumeration value="ALW"/>
+ <xs:enumeration value="ALX"/>
+ <xs:enumeration value="ALY"/>
+ <xs:enumeration value="ALZ"/>
+ <xs:enumeration value="AMA"/>
+ <xs:enumeration value="AMB"/>
+ <xs:enumeration value="AMC"/>
+ <xs:enumeration value="AMD"/>
+ <xs:enumeration value="AME"/>
+ <xs:enumeration value="AMF"/>
+ <xs:enumeration value="AMG"/>
+ <xs:enumeration value="AMH"/>
+ <xs:enumeration value="AMI"/>
+ <xs:enumeration value="AMJ"/>
+ <xs:enumeration value="AMK"/>
+ <xs:enumeration value="AML"/>
+ <xs:enumeration value="AMM"/>
+ <xs:enumeration value="AMN"/>
+ <xs:enumeration value="AMO"/>
+ <xs:enumeration value="AMP"/>
+ <xs:enumeration value="AMQ"/>
+ <xs:enumeration value="AMR"/>
+ <xs:enumeration value="AMS"/>
+ <xs:enumeration value="AMT"/>
+ <xs:enumeration value="AMU"/>
+ <xs:enumeration value="AMV"/>
+ <xs:enumeration value="AMW"/>
+ <xs:enumeration value="AMX"/>
+ <xs:enumeration value="AMY"/>
+ <xs:enumeration value="AMZ"/>
+ <xs:enumeration value="ANA"/>
+ <xs:enumeration value="ANB"/>
+ <xs:enumeration value="ANC"/>
+ <xs:enumeration value="AND"/>
+ <xs:enumeration value="ANE"/>
+ <xs:enumeration value="ANF"/>
+ <xs:enumeration value="ANG"/>
+ <xs:enumeration value="ANH"/>
+ <xs:enumeration value="ANI"/>
+ <xs:enumeration value="ANJ"/>
+ <xs:enumeration value="ANK"/>
+ <xs:enumeration value="ANL"/>
+ <xs:enumeration value="ANM"/>
+ <xs:enumeration value="ANN"/>
+ <xs:enumeration value="ANO"/>
+ <xs:enumeration value="ANP"/>
+ <xs:enumeration value="ANQ"/>
+ <xs:enumeration value="ANR"/>
+ <xs:enumeration value="ANS"/>
+ <xs:enumeration value="ANT"/>
+ <xs:enumeration value="ANU"/>
+ <xs:enumeration value="ANV"/>
+ <xs:enumeration value="ANW"/>
+ <xs:enumeration value="ANX"/>
+ <xs:enumeration value="ANY"/>
+ <xs:enumeration value="AOA"/>
+ <xs:enumeration value="AOD"/>
+ <xs:enumeration value="AOE"/>
+ <xs:enumeration value="AOF"/>
+ <xs:enumeration value="AOG"/>
+ <xs:enumeration value="AOH"/>
+ <xs:enumeration value="AOI"/>
+ <xs:enumeration value="AOJ"/>
+ <xs:enumeration value="AOK"/>
+ <xs:enumeration value="AOL"/>
+ <xs:enumeration value="AOM"/>
+ <xs:enumeration value="AON"/>
+ <xs:enumeration value="AOO"/>
+ <xs:enumeration value="AOP"/>
+ <xs:enumeration value="AOQ"/>
+ <xs:enumeration value="AOR"/>
+ <xs:enumeration value="AOS"/>
+ <xs:enumeration value="AOT"/>
+ <xs:enumeration value="AOU"/>
+ <xs:enumeration value="AOV"/>
+ <xs:enumeration value="AOW"/>
+ <xs:enumeration value="AOX"/>
+ <xs:enumeration value="AOY"/>
+ <xs:enumeration value="AOZ"/>
+ <xs:enumeration value="AP"/>
+ <xs:enumeration value="APA"/>
+ <xs:enumeration value="APB"/>
+ <xs:enumeration value="APC"/>
+ <xs:enumeration value="APD"/>
+ <xs:enumeration value="APE"/>
+ <xs:enumeration value="APF"/>
+ <xs:enumeration value="APG"/>
+ <xs:enumeration value="APH"/>
+ <xs:enumeration value="API"/>
+ <xs:enumeration value="APJ"/>
+ <xs:enumeration value="APK"/>
+ <xs:enumeration value="APL"/>
+ <xs:enumeration value="APM"/>
+ <xs:enumeration value="APN"/>
+ <xs:enumeration value="APO"/>
+ <xs:enumeration value="APP"/>
+ <xs:enumeration value="APQ"/>
+ <xs:enumeration value="APR"/>
+ <xs:enumeration value="APS"/>
+ <xs:enumeration value="APT"/>
+ <xs:enumeration value="APU"/>
+ <xs:enumeration value="APV"/>
+ <xs:enumeration value="APW"/>
+ <xs:enumeration value="APX"/>
+ <xs:enumeration value="APY"/>
+ <xs:enumeration value="APZ"/>
+ <xs:enumeration value="AQA"/>
+ <xs:enumeration value="AQB"/>
+ <xs:enumeration value="AQC"/>
+ <xs:enumeration value="AQD"/>
+ <xs:enumeration value="AQE"/>
+ <xs:enumeration value="AQF"/>
+ <xs:enumeration value="AQG"/>
+ <xs:enumeration value="AQH"/>
+ <xs:enumeration value="AQI"/>
+ <xs:enumeration value="AQJ"/>
+ <xs:enumeration value="AQK"/>
+ <xs:enumeration value="AQL"/>
+ <xs:enumeration value="AQM"/>
+ <xs:enumeration value="AQN"/>
+ <xs:enumeration value="AQO"/>
+ <xs:enumeration value="AQP"/>
+ <xs:enumeration value="AQQ"/>
+ <xs:enumeration value="AQR"/>
+ <xs:enumeration value="AQS"/>
+ <xs:enumeration value="AQT"/>
+ <xs:enumeration value="AQU"/>
+ <xs:enumeration value="AQV"/>
+ <xs:enumeration value="AQW"/>
+ <xs:enumeration value="AQX"/>
+ <xs:enumeration value="AQY"/>
+ <xs:enumeration value="AQZ"/>
+ <xs:enumeration value="ARA"/>
+ <xs:enumeration value="ARB"/>
+ <xs:enumeration value="ARC"/>
+ <xs:enumeration value="ARD"/>
+ <xs:enumeration value="ARE"/>
+ <xs:enumeration value="ARF"/>
+ <xs:enumeration value="ARG"/>
+ <xs:enumeration value="ARH"/>
+ <xs:enumeration value="ARI"/>
+ <xs:enumeration value="ARJ"/>
+ <xs:enumeration value="ARK"/>
+ <xs:enumeration value="ARL"/>
+ <xs:enumeration value="ARM"/>
+ <xs:enumeration value="ARN"/>
+ <xs:enumeration value="ARO"/>
+ <xs:enumeration value="ARP"/>
+ <xs:enumeration value="ARQ"/>
+ <xs:enumeration value="ARR"/>
+ <xs:enumeration value="ARS"/>
+ <xs:enumeration value="ART"/>
+ <xs:enumeration value="ARU"/>
+ <xs:enumeration value="ARV"/>
+ <xs:enumeration value="ARW"/>
+ <xs:enumeration value="ARX"/>
+ <xs:enumeration value="ARY"/>
+ <xs:enumeration value="ARZ"/>
+ <xs:enumeration value="ASA"/>
+ <xs:enumeration value="ASB"/>
+ <xs:enumeration value="ASC"/>
+ <xs:enumeration value="ASD"/>
+ <xs:enumeration value="ASE"/>
+ <xs:enumeration value="ASF"/>
+ <xs:enumeration value="ASG"/>
+ <xs:enumeration value="ASH"/>
+ <xs:enumeration value="ASI"/>
+ <xs:enumeration value="ASJ"/>
+ <xs:enumeration value="ASK"/>
+ <xs:enumeration value="ASL"/>
+ <xs:enumeration value="ASM"/>
+ <xs:enumeration value="ASN"/>
+ <xs:enumeration value="ASO"/>
+ <xs:enumeration value="ASP"/>
+ <xs:enumeration value="ASQ"/>
+ <xs:enumeration value="ASR"/>
+ <xs:enumeration value="ASS"/>
+ <xs:enumeration value="AST"/>
+ <xs:enumeration value="ASU"/>
+ <xs:enumeration value="ASV"/>
+ <xs:enumeration value="ASW"/>
+ <xs:enumeration value="ASX"/>
+ <xs:enumeration value="ASY"/>
+ <xs:enumeration value="ASZ"/>
+ <xs:enumeration value="ATA"/>
+ <xs:enumeration value="ATB"/>
+ <xs:enumeration value="ATC"/>
+ <xs:enumeration value="ATD"/>
+ <xs:enumeration value="ATE"/>
+ <xs:enumeration value="ATF"/>
+ <xs:enumeration value="ATG"/>
+ <xs:enumeration value="ATH"/>
+ <xs:enumeration value="ATI"/>
+ <xs:enumeration value="ATJ"/>
+ <xs:enumeration value="ATK"/>
+ <xs:enumeration value="ATL"/>
+ <xs:enumeration value="ATM"/>
+ <xs:enumeration value="ATN"/>
+ <xs:enumeration value="ATO"/>
+ <xs:enumeration value="ATP"/>
+ <xs:enumeration value="ATQ"/>
+ <xs:enumeration value="ATR"/>
+ <xs:enumeration value="ATS"/>
+ <xs:enumeration value="ATT"/>
+ <xs:enumeration value="ATU"/>
+ <xs:enumeration value="ATV"/>
+ <xs:enumeration value="ATW"/>
+ <xs:enumeration value="ATX"/>
+ <xs:enumeration value="ATY"/>
+ <xs:enumeration value="ATZ"/>
+ <xs:enumeration value="AU"/>
+ <xs:enumeration value="AUA"/>
+ <xs:enumeration value="AUB"/>
+ <xs:enumeration value="AUC"/>
+ <xs:enumeration value="AUD"/>
+ <xs:enumeration value="AUE"/>
+ <xs:enumeration value="AUF"/>
+ <xs:enumeration value="AUG"/>
+ <xs:enumeration value="AUH"/>
+ <xs:enumeration value="AUI"/>
+ <xs:enumeration value="AUJ"/>
+ <xs:enumeration value="AUK"/>
+ <xs:enumeration value="AUL"/>
+ <xs:enumeration value="AUM"/>
+ <xs:enumeration value="AUN"/>
+ <xs:enumeration value="AUO"/>
+ <xs:enumeration value="AUP"/>
+ <xs:enumeration value="AUQ"/>
+ <xs:enumeration value="AUR"/>
+ <xs:enumeration value="AUS"/>
+ <xs:enumeration value="AUT"/>
+ <xs:enumeration value="AUU"/>
+ <xs:enumeration value="AUV"/>
+ <xs:enumeration value="AUW"/>
+ <xs:enumeration value="AUX"/>
+ <xs:enumeration value="AUY"/>
+ <xs:enumeration value="AUZ"/>
+ <xs:enumeration value="AV"/>
+ <xs:enumeration value="AVA"/>
+ <xs:enumeration value="AVB"/>
+ <xs:enumeration value="AVC"/>
+ <xs:enumeration value="AVD"/>
+ <xs:enumeration value="AVE"/>
+ <xs:enumeration value="AVF"/>
+ <xs:enumeration value="AVG"/>
+ <xs:enumeration value="AVH"/>
+ <xs:enumeration value="AVI"/>
+ <xs:enumeration value="AVJ"/>
+ <xs:enumeration value="AVK"/>
+ <xs:enumeration value="AVL"/>
+ <xs:enumeration value="AVM"/>
+ <xs:enumeration value="AVN"/>
+ <xs:enumeration value="AVO"/>
+ <xs:enumeration value="AVP"/>
+ <xs:enumeration value="AVQ"/>
+ <xs:enumeration value="AVR"/>
+ <xs:enumeration value="AVS"/>
+ <xs:enumeration value="AVT"/>
+ <xs:enumeration value="AVU"/>
+ <xs:enumeration value="AVV"/>
+ <xs:enumeration value="AVW"/>
+ <xs:enumeration value="AVX"/>
+ <xs:enumeration value="AVY"/>
+ <xs:enumeration value="AVZ"/>
+ <xs:enumeration value="AWA"/>
+ <xs:enumeration value="AWB"/>
+ <xs:enumeration value="AWC"/>
+ <xs:enumeration value="AWD"/>
+ <xs:enumeration value="AWE"/>
+ <xs:enumeration value="AWF"/>
+ <xs:enumeration value="AWG"/>
+ <xs:enumeration value="AWH"/>
+ <xs:enumeration value="AWI"/>
+ <xs:enumeration value="AWJ"/>
+ <xs:enumeration value="AWK"/>
+ <xs:enumeration value="AWL"/>
+ <xs:enumeration value="AWM"/>
+ <xs:enumeration value="AWN"/>
+ <xs:enumeration value="AWO"/>
+ <xs:enumeration value="AWP"/>
+ <xs:enumeration value="AWQ"/>
+ <xs:enumeration value="AWR"/>
+ <xs:enumeration value="AWS"/>
+ <xs:enumeration value="AWT"/>
+ <xs:enumeration value="AWU"/>
+ <xs:enumeration value="AWV"/>
+ <xs:enumeration value="AWW"/>
+ <xs:enumeration value="AWX"/>
+ <xs:enumeration value="AWY"/>
+ <xs:enumeration value="AWZ"/>
+ <xs:enumeration value="AXA"/>
+ <xs:enumeration value="AXB"/>
+ <xs:enumeration value="AXC"/>
+ <xs:enumeration value="AXD"/>
+ <xs:enumeration value="AXE"/>
+ <xs:enumeration value="AXF"/>
+ <xs:enumeration value="AXG"/>
+ <xs:enumeration value="AXH"/>
+ <xs:enumeration value="AXI"/>
+ <xs:enumeration value="AXJ"/>
+ <xs:enumeration value="AXK"/>
+ <xs:enumeration value="AXL"/>
+ <xs:enumeration value="AXM"/>
+ <xs:enumeration value="AXN"/>
+ <xs:enumeration value="AXO"/>
+ <xs:enumeration value="AXP"/>
+ <xs:enumeration value="AXQ"/>
+ <xs:enumeration value="AXR"/>
+ <xs:enumeration value="BA"/>
+ <xs:enumeration value="BC"/>
+ <xs:enumeration value="BD"/>
+ <xs:enumeration value="BE"/>
+ <xs:enumeration value="BH"/>
+ <xs:enumeration value="BM"/>
+ <xs:enumeration value="BN"/>
+ <xs:enumeration value="BO"/>
+ <xs:enumeration value="BR"/>
+ <xs:enumeration value="BT"/>
+ <xs:enumeration value="BW"/>
+ <xs:enumeration value="CAS"/>
+ <xs:enumeration value="CAT"/>
+ <xs:enumeration value="CAU"/>
+ <xs:enumeration value="CAV"/>
+ <xs:enumeration value="CAW"/>
+ <xs:enumeration value="CAX"/>
+ <xs:enumeration value="CAY"/>
+ <xs:enumeration value="CAZ"/>
+ <xs:enumeration value="CBA"/>
+ <xs:enumeration value="CBB"/>
+ <xs:enumeration value="CD"/>
+ <xs:enumeration value="CEC"/>
+ <xs:enumeration value="CED"/>
+ <xs:enumeration value="CFE"/>
+ <xs:enumeration value="CFF"/>
+ <xs:enumeration value="CFO"/>
+ <xs:enumeration value="CG"/>
+ <xs:enumeration value="CH"/>
+ <xs:enumeration value="CK"/>
+ <xs:enumeration value="CKN"/>
+ <xs:enumeration value="CM"/>
+ <xs:enumeration value="CMR"/>
+ <xs:enumeration value="CN"/>
+ <xs:enumeration value="CNO"/>
+ <xs:enumeration value="COF"/>
+ <xs:enumeration value="CP"/>
+ <xs:enumeration value="CR"/>
+ <xs:enumeration value="CRN"/>
+ <xs:enumeration value="CS"/>
+ <xs:enumeration value="CST"/>
+ <xs:enumeration value="CT"/>
+ <xs:enumeration value="CU"/>
+ <xs:enumeration value="CV"/>
+ <xs:enumeration value="CW"/>
+ <xs:enumeration value="CZ"/>
+ <xs:enumeration value="DA"/>
+ <xs:enumeration value="DAN"/>
+ <xs:enumeration value="DB"/>
+ <xs:enumeration value="DI"/>
+ <xs:enumeration value="DL"/>
+ <xs:enumeration value="DM"/>
+ <xs:enumeration value="DQ"/>
+ <xs:enumeration value="DR"/>
+ <xs:enumeration value="EA"/>
+ <xs:enumeration value="EB"/>
+ <xs:enumeration value="ED"/>
+ <xs:enumeration value="EE"/>
+ <xs:enumeration value="EI"/>
+ <xs:enumeration value="EN"/>
+ <xs:enumeration value="EQ"/>
+ <xs:enumeration value="ER"/>
+ <xs:enumeration value="ERN"/>
+ <xs:enumeration value="ET"/>
+ <xs:enumeration value="EX"/>
+ <xs:enumeration value="FC"/>
+ <xs:enumeration value="FF"/>
+ <xs:enumeration value="FI"/>
+ <xs:enumeration value="FLW"/>
+ <xs:enumeration value="FN"/>
+ <xs:enumeration value="FO"/>
+ <xs:enumeration value="FS"/>
+ <xs:enumeration value="FT"/>
+ <xs:enumeration value="FV"/>
+ <xs:enumeration value="FX"/>
+ <xs:enumeration value="GA"/>
+ <xs:enumeration value="GC"/>
+ <xs:enumeration value="GD"/>
+ <xs:enumeration value="GDN"/>
+ <xs:enumeration value="GN"/>
+ <xs:enumeration value="HS"/>
+ <xs:enumeration value="HWB"/>
+ <xs:enumeration value="IA"/>
+ <xs:enumeration value="IB"/>
+ <xs:enumeration value="ICA"/>
+ <xs:enumeration value="ICE"/>
+ <xs:enumeration value="ICO"/>
+ <xs:enumeration value="II"/>
+ <xs:enumeration value="IL"/>
+ <xs:enumeration value="INB"/>
+ <xs:enumeration value="INN"/>
+ <xs:enumeration value="INO"/>
+ <xs:enumeration value="IP"/>
+ <xs:enumeration value="IS"/>
+ <xs:enumeration value="IT"/>
+ <xs:enumeration value="IV"/>
+ <xs:enumeration value="JB"/>
+ <xs:enumeration value="JE"/>
+ <xs:enumeration value="LA"/>
+ <xs:enumeration value="LAN"/>
+ <xs:enumeration value="LAR"/>
+ <xs:enumeration value="LB"/>
+ <xs:enumeration value="LC"/>
+ <xs:enumeration value="LI"/>
+ <xs:enumeration value="LO"/>
+ <xs:enumeration value="LRC"/>
+ <xs:enumeration value="LS"/>
+ <xs:enumeration value="MA"/>
+ <xs:enumeration value="MB"/>
+ <xs:enumeration value="MF"/>
+ <xs:enumeration value="MG"/>
+ <xs:enumeration value="MH"/>
+ <xs:enumeration value="MR"/>
+ <xs:enumeration value="MRN"/>
+ <xs:enumeration value="MS"/>
+ <xs:enumeration value="MSS"/>
+ <xs:enumeration value="MWB"/>
+ <xs:enumeration value="NA"/>
+ <xs:enumeration value="NF"/>
+ <xs:enumeration value="OH"/>
+ <xs:enumeration value="OI"/>
+ <xs:enumeration value="ON"/>
+ <xs:enumeration value="OP"/>
+ <xs:enumeration value="OR"/>
+ <xs:enumeration value="PB"/>
+ <xs:enumeration value="PC"/>
+ <xs:enumeration value="PD"/>
+ <xs:enumeration value="PE"/>
+ <xs:enumeration value="PF"/>
+ <xs:enumeration value="PI"/>
+ <xs:enumeration value="PK"/>
+ <xs:enumeration value="PL"/>
+ <xs:enumeration value="POR"/>
+ <xs:enumeration value="PP"/>
+ <xs:enumeration value="PQ"/>
+ <xs:enumeration value="PR"/>
+ <xs:enumeration value="PS"/>
+ <xs:enumeration value="PW"/>
+ <xs:enumeration value="PY"/>
+ <xs:enumeration value="RA"/>
+ <xs:enumeration value="RC"/>
+ <xs:enumeration value="RCN"/>
+ <xs:enumeration value="RE"/>
+ <xs:enumeration value="REN"/>
+ <xs:enumeration value="RF"/>
+ <xs:enumeration value="RR"/>
+ <xs:enumeration value="RT"/>
+ <xs:enumeration value="SA"/>
+ <xs:enumeration value="SB"/>
+ <xs:enumeration value="SD"/>
+ <xs:enumeration value="SE"/>
+ <xs:enumeration value="SEA"/>
+ <xs:enumeration value="SF"/>
+ <xs:enumeration value="SH"/>
+ <xs:enumeration value="SI"/>
+ <xs:enumeration value="SM"/>
+ <xs:enumeration value="SN"/>
+ <xs:enumeration value="SP"/>
+ <xs:enumeration value="SQ"/>
+ <xs:enumeration value="SRN"/>
+ <xs:enumeration value="SS"/>
+ <xs:enumeration value="STA"/>
+ <xs:enumeration value="SW"/>
+ <xs:enumeration value="SZ"/>
+ <xs:enumeration value="TB"/>
+ <xs:enumeration value="TCR"/>
+ <xs:enumeration value="TE"/>
+ <xs:enumeration value="TF"/>
+ <xs:enumeration value="TI"/>
+ <xs:enumeration value="TIN"/>
+ <xs:enumeration value="TL"/>
+ <xs:enumeration value="TN"/>
+ <xs:enumeration value="TP"/>
+ <xs:enumeration value="UAR"/>
+ <xs:enumeration value="UC"/>
+ <xs:enumeration value="UCN"/>
+ <xs:enumeration value="UN"/>
+ <xs:enumeration value="UO"/>
+ <xs:enumeration value="URI"/>
+ <xs:enumeration value="VA"/>
+ <xs:enumeration value="VC"/>
+ <xs:enumeration value="VGR"/>
+ <xs:enumeration value="VM"/>
+ <xs:enumeration value="VN"/>
+ <xs:enumeration value="VON"/>
+ <xs:enumeration value="VOR"/>
+ <xs:enumeration value="VP"/>
+ <xs:enumeration value="VR"/>
+ <xs:enumeration value="VS"/>
+ <xs:enumeration value="VT"/>
+ <xs:enumeration value="VV"/>
+ <xs:enumeration value="WE"/>
+ <xs:enumeration value="WM"/>
+ <xs:enumeration value="WN"/>
+ <xs:enumeration value="WR"/>
+ <xs:enumeration value="WS"/>
+ <xs:enumeration value="WY"/>
+ <xs:enumeration value="XA"/>
+ <xs:enumeration value="XC"/>
+ <xs:enumeration value="XP"/>
+ <xs:enumeration value="ZZZ"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="ReferenceCodeType">
+ <xs:simpleContent>
+ <xs:extension base="qdt:ReferenceCodeContentType"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:simpleType name="TaxCategoryCodeContentType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="AE"/>
+ <xs:enumeration value="E"/>
+ <xs:enumeration value="G"/>
+ <xs:enumeration value="K"/>
+ <xs:enumeration value="L"/>
+ <xs:enumeration value="M"/>
+ <xs:enumeration value="O"/>
+ <xs:enumeration value="S"/>
+ <xs:enumeration value="Z"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="TaxCategoryCodeType">
+ <xs:simpleContent>
+ <xs:extension base="qdt:TaxCategoryCodeContentType"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:simpleType name="TaxTypeCodeContentType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="AAA"/>
+ <xs:enumeration value="AAB"/>
+ <xs:enumeration value="AAC"/>
+ <xs:enumeration value="AAD"/>
+ <xs:enumeration value="AAE"/>
+ <xs:enumeration value="AAF"/>
+ <xs:enumeration value="AAG"/>
+ <xs:enumeration value="AAH"/>
+ <xs:enumeration value="AAI"/>
+ <xs:enumeration value="AAJ"/>
+ <xs:enumeration value="AAK"/>
+ <xs:enumeration value="AAL"/>
+ <xs:enumeration value="AAM"/>
+ <xs:enumeration value="ADD"/>
+ <xs:enumeration value="BOL"/>
+ <xs:enumeration value="CAP"/>
+ <xs:enumeration value="CAR"/>
+ <xs:enumeration value="COC"/>
+ <xs:enumeration value="CST"/>
+ <xs:enumeration value="CUD"/>
+ <xs:enumeration value="CVD"/>
+ <xs:enumeration value="ENV"/>
+ <xs:enumeration value="EXC"/>
+ <xs:enumeration value="EXP"/>
+ <xs:enumeration value="FET"/>
+ <xs:enumeration value="FRE"/>
+ <xs:enumeration value="GCN"/>
+ <xs:enumeration value="GST"/>
+ <xs:enumeration value="ILL"/>
+ <xs:enumeration value="IMP"/>
+ <xs:enumeration value="IND"/>
+ <xs:enumeration value="LAC"/>
+ <xs:enumeration value="LCN"/>
+ <xs:enumeration value="LDP"/>
+ <xs:enumeration value="LOC"/>
+ <xs:enumeration value="LST"/>
+ <xs:enumeration value="MCA"/>
+ <xs:enumeration value="MCD"/>
+ <xs:enumeration value="OTH"/>
+ <xs:enumeration value="PDB"/>
+ <xs:enumeration value="PDC"/>
+ <xs:enumeration value="PRF"/>
+ <xs:enumeration value="SCN"/>
+ <xs:enumeration value="SSS"/>
+ <xs:enumeration value="STT"/>
+ <xs:enumeration value="SUP"/>
+ <xs:enumeration value="SUR"/>
+ <xs:enumeration value="SWT"/>
+ <xs:enumeration value="TAC"/>
+ <xs:enumeration value="TOT"/>
+ <xs:enumeration value="TOX"/>
+ <xs:enumeration value="TTA"/>
+ <xs:enumeration value="VAD"/>
+ <xs:enumeration value="VAT"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="TaxTypeCodeType">
+ <xs:simpleContent>
+ <xs:extension base="qdt:TaxTypeCodeContentType"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:simpleType name="TimeReferenceCodeContentType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="5"/>
+ <xs:enumeration value="29"/>
+ <xs:enumeration value="72"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="TimeReferenceCodeType">
+ <xs:simpleContent>
+ <xs:extension base="qdt:TimeReferenceCodeContentType"/>
+ </xs:simpleContent>
+ </xs:complexType>
+</xs:schema>
diff --git a/facturx/xsd/facturx-basic/FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd b/facturx/xsd/facturx-basic/FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd
new file mode 100644
index 0000000..631e5c5
--- /dev/null
+++ b/facturx/xsd/facturx-basic/FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd
@@ -0,0 +1,318 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:ram="urn:un:unece:uncefact:data:standard:ReusableAggregateBusinessInformationEntity:100"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ xmlns:qdt="urn:un:unece:uncefact:data:standard:QualifiedDataType:100"
+ xmlns:udt="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:100"
+ targetNamespace="urn:un:unece:uncefact:data:standard:ReusableAggregateBusinessInformationEntity:100"
+ elementFormDefault="qualified">
+ <xs:import namespace="urn:un:unece:uncefact:data:standard:QualifiedDataType:100" schemaLocation="FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd"/>
+ <xs:import namespace="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:100" schemaLocation="FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd"/>
+ <xs:complexType name="CreditorFinancialAccountType">
+ <xs:sequence>
+ <xs:element name="IBANID" type="udt:IDType" minOccurs="0"/>
+ <xs:element name="AccountName" type="udt:TextType" minOccurs="0"/>
+ <xs:element name="ProprietaryID" type="udt:IDType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="CreditorFinancialInstitutionType">
+ <xs:sequence>
+ <xs:element name="BICID" type="udt:IDType"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="DebtorFinancialAccountType">
+ <xs:sequence>
+ <xs:element name="IBANID" type="udt:IDType"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="DocumentContextParameterType">
+ <xs:sequence>
+ <xs:element name="ID" type="udt:IDType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="DocumentLineDocumentType">
+ <xs:sequence>
+ <xs:element name="LineID" type="udt:IDType"/>
+ <xs:element name="IncludedNote" type="ram:NoteType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="ExchangedDocumentContextType">
+ <xs:sequence>
+ <xs:element name="BusinessProcessSpecifiedDocumentContextParameter" type="ram:DocumentContextParameterType" minOccurs="0"/>
+ <xs:element name="GuidelineSpecifiedDocumentContextParameter" type="ram:DocumentContextParameterType"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="ExchangedDocumentType">
+ <xs:sequence>
+ <xs:element name="ID" type="udt:IDType"/>
+ <xs:element name="TypeCode" type="qdt:DocumentCodeType"/>
+ <xs:element name="IssueDateTime" type="udt:DateTimeType"/>
+ <xs:element name="IncludedNote" type="ram:NoteType" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="HeaderTradeAgreementType">
+ <xs:sequence>
+ <xs:element name="BuyerReference" type="udt:TextType" minOccurs="0"/>
+ <xs:element name="SellerTradeParty" type="ram:TradePartyType"/>
+ <xs:element name="BuyerTradeParty" type="ram:TradePartyType"/>
+ <xs:element name="SellerTaxRepresentativeTradeParty" type="ram:TradePartyType" minOccurs="0"/>
+ <xs:element name="SellerOrderReferencedDocument" type="ram:ReferencedDocumentType" minOccurs="0"/>
+ <xs:element name="BuyerOrderReferencedDocument" type="ram:ReferencedDocumentType" minOccurs="0"/>
+ <xs:element name="ContractReferencedDocument" type="ram:ReferencedDocumentType" minOccurs="0"/>
+ <xs:element name="AdditionalReferencedDocument" type="ram:ReferencedDocumentType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="SpecifiedProcuringProject" type="ram:ProcuringProjectType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="HeaderTradeDeliveryType">
+ <xs:sequence>
+ <xs:element name="ShipToTradeParty" type="ram:TradePartyType" minOccurs="0"/>
+ <xs:element name="ActualDeliverySupplyChainEvent" type="ram:SupplyChainEventType" minOccurs="0"/>
+ <xs:element name="DespatchAdviceReferencedDocument" type="ram:ReferencedDocumentType" minOccurs="0"/>
+ <xs:element name="ReceivingAdviceReferencedDocument" type="ram:ReferencedDocumentType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="HeaderTradeSettlementType">
+ <xs:sequence>
+ <xs:element name="CreditorReferenceID" type="udt:IDType" minOccurs="0"/>
+ <xs:element name="PaymentReference" type="udt:TextType" minOccurs="0"/>
+ <xs:element name="TaxCurrencyCode" type="qdt:CurrencyCodeType" minOccurs="0"/>
+ <xs:element name="InvoiceCurrencyCode" type="qdt:CurrencyCodeType"/>
+ <xs:element name="PayeeTradeParty" type="ram:TradePartyType" minOccurs="0"/>
+ <xs:element name="SpecifiedTradeSettlementPaymentMeans" type="ram:TradeSettlementPaymentMeansType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="ApplicableTradeTax" type="ram:TradeTaxType" maxOccurs="unbounded"/>
+ <xs:element name="BillingSpecifiedPeriod" type="ram:SpecifiedPeriodType" minOccurs="0"/>
+ <xs:element name="SpecifiedTradeAllowanceCharge" type="ram:TradeAllowanceChargeType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="SpecifiedTradePaymentTerms" type="ram:TradePaymentTermsType" minOccurs="0"/>
+ <xs:element name="SpecifiedTradeSettlementHeaderMonetarySummation" type="ram:TradeSettlementHeaderMonetarySummationType"/>
+ <xs:element name="InvoiceReferencedDocument" type="ram:ReferencedDocumentType" minOccurs="0"/>
+ <xs:element name="ReceivableSpecifiedTradeAccountingAccount" type="ram:TradeAccountingAccountType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="LegalOrganizationType">
+ <xs:sequence>
+ <xs:element name="ID" type="udt:IDType" minOccurs="0"/>
+ <xs:element name="TradingBusinessName" type="udt:TextType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="LineTradeAgreementType">
+ <xs:sequence>
+ <xs:element name="BuyerOrderReferencedDocument" type="ram:ReferencedDocumentType" minOccurs="0"/>
+ <xs:element name="GrossPriceProductTradePrice" type="ram:TradePriceType" minOccurs="0"/>
+ <xs:element name="NetPriceProductTradePrice" type="ram:TradePriceType"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="LineTradeDeliveryType">
+ <xs:sequence>
+ <xs:element name="BilledQuantity" type="udt:QuantityType"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="LineTradeSettlementType">
+ <xs:sequence>
+ <xs:element name="ApplicableTradeTax" type="ram:TradeTaxType"/>
+ <xs:element name="BillingSpecifiedPeriod" type="ram:SpecifiedPeriodType" minOccurs="0"/>
+ <xs:element name="SpecifiedTradeAllowanceCharge" type="ram:TradeAllowanceChargeType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="SpecifiedTradeSettlementLineMonetarySummation" type="ram:TradeSettlementLineMonetarySummationType"/>
+ <xs:element name="AdditionalReferencedDocument" type="ram:ReferencedDocumentType" minOccurs="0"/>
+ <xs:element name="ReceivableSpecifiedTradeAccountingAccount" type="ram:TradeAccountingAccountType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="NoteType">
+ <xs:sequence>
+ <xs:element name="Content" type="udt:TextType"/>
+ <xs:element name="SubjectCode" type="udt:CodeType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="ProcuringProjectType">
+ <xs:sequence>
+ <xs:element name="ID" type="udt:IDType"/>
+ <xs:element name="Name" type="udt:TextType"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="ProductCharacteristicType">
+ <xs:sequence>
+ <xs:element name="Description" type="udt:TextType"/>
+ <xs:element name="Value" type="udt:TextType"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="ProductClassificationType">
+ <xs:sequence>
+ <xs:element name="ClassCode" type="udt:CodeType"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="ReferencedDocumentType">
+ <xs:sequence>
+ <xs:element name="IssuerAssignedID" type="udt:IDType" minOccurs="0"/>
+ <xs:element name="URIID" type="udt:IDType" minOccurs="0"/>
+ <xs:element name="LineID" type="udt:IDType" minOccurs="0"/>
+ <xs:element name="TypeCode" type="qdt:DocumentCodeType" minOccurs="0"/>
+ <xs:element name="Name" type="udt:TextType" minOccurs="0"/>
+ <xs:element name="AttachmentBinaryObject" type="udt:BinaryObjectType" minOccurs="0"/>
+ <xs:element name="ReferenceTypeCode" type="qdt:ReferenceCodeType" minOccurs="0"/>
+ <xs:element name="FormattedIssueDateTime" type="qdt:FormattedDateTimeType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="SpecifiedPeriodType">
+ <xs:sequence>
+ <xs:element name="StartDateTime" type="udt:DateTimeType" minOccurs="0"/>
+ <xs:element name="EndDateTime" type="udt:DateTimeType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="SupplyChainEventType">
+ <xs:sequence>
+ <xs:element name="OccurrenceDateTime" type="udt:DateTimeType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="SupplyChainTradeLineItemType">
+ <xs:sequence>
+ <xs:element name="AssociatedDocumentLineDocument" type="ram:DocumentLineDocumentType"/>
+ <xs:element name="SpecifiedTradeProduct" type="ram:TradeProductType"/>
+ <xs:element name="SpecifiedLineTradeAgreement" type="ram:LineTradeAgreementType"/>
+ <xs:element name="SpecifiedLineTradeDelivery" type="ram:LineTradeDeliveryType" minOccurs="0"/>
+ <xs:element name="SpecifiedLineTradeSettlement" type="ram:LineTradeSettlementType"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="SupplyChainTradeTransactionType">
+ <xs:sequence>
+ <xs:element name="IncludedSupplyChainTradeLineItem" type="ram:SupplyChainTradeLineItemType" maxOccurs="unbounded"/>
+ <xs:element name="ApplicableHeaderTradeAgreement" type="ram:HeaderTradeAgreementType"/>
+ <xs:element name="ApplicableHeaderTradeDelivery" type="ram:HeaderTradeDeliveryType"/>
+ <xs:element name="ApplicableHeaderTradeSettlement" type="ram:HeaderTradeSettlementType"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="TaxRegistrationType">
+ <xs:sequence>
+ <xs:element name="ID" type="udt:IDType"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="TradeAccountingAccountType">
+ <xs:sequence>
+ <xs:element name="ID" type="udt:IDType"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="TradeAddressType">
+ <xs:sequence>
+ <xs:element name="PostcodeCode" type="udt:CodeType" minOccurs="0"/>
+ <xs:element name="LineOne" type="udt:TextType" minOccurs="0"/>
+ <xs:element name="LineTwo" type="udt:TextType" minOccurs="0"/>
+ <xs:element name="LineThree" type="udt:TextType" minOccurs="0"/>
+ <xs:element name="CityName" type="udt:TextType" minOccurs="0"/>
+ <xs:element name="CountryID" type="qdt:CountryIDType"/>
+ <xs:element name="CountrySubDivisionName" type="udt:TextType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="TradeAllowanceChargeType">
+ <xs:sequence>
+ <xs:element name="ChargeIndicator" type="udt:IndicatorType" minOccurs="0"/>
+ <xs:element name="CalculationPercent" type="udt:PercentType" minOccurs="0"/>
+ <xs:element name="BasisAmount" type="udt:AmountType" minOccurs="0"/>
+ <xs:element name="ActualAmount" type="udt:AmountType"/>
+ <xs:element name="ReasonCode" type="qdt:AllowanceChargeReasonCodeType" minOccurs="0"/>
+ <xs:element name="Reason" type="udt:TextType" minOccurs="0"/>
+ <xs:element name="CategoryTradeTax" type="ram:TradeTaxType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="TradeContactType">
+ <xs:sequence>
+ <xs:element name="PersonName" type="udt:TextType" minOccurs="0"/>
+ <xs:element name="DepartmentName" type="udt:TextType" minOccurs="0"/>
+ <xs:element name="TelephoneUniversalCommunication" type="ram:UniversalCommunicationType" minOccurs="0"/>
+ <xs:element name="EmailURIUniversalCommunication" type="ram:UniversalCommunicationType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="TradeCountryType">
+ <xs:sequence>
+ <xs:element name="ID" type="qdt:CountryIDType"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="TradePartyType">
+ <xs:sequence>
+ <xs:element name="ID" type="udt:IDType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="GlobalID" type="udt:IDType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="Name" type="udt:TextType" minOccurs="0"/>
+ <xs:element name="Description" type="udt:TextType" minOccurs="0"/>
+ <xs:element name="SpecifiedLegalOrganization" type="ram:LegalOrganizationType" minOccurs="0"/>
+ <xs:element name="DefinedTradeContact" type="ram:TradeContactType" minOccurs="0"/>
+ <xs:element name="PostalTradeAddress" type="ram:TradeAddressType" minOccurs="0"/>
+ <xs:element name="URIUniversalCommunication" type="ram:UniversalCommunicationType" minOccurs="0"/>
+ <xs:element name="SpecifiedTaxRegistration" type="ram:TaxRegistrationType" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="TradePaymentTermsType">
+ <xs:sequence>
+ <xs:element name="Description" type="udt:TextType" minOccurs="0"/>
+ <xs:element name="DueDateDateTime" type="udt:DateTimeType" minOccurs="0"/>
+ <xs:element name="DirectDebitMandateID" type="udt:IDType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="TradePriceType">
+ <xs:sequence>
+ <xs:element name="ChargeAmount" type="udt:AmountType"/>
+ <xs:element name="BasisQuantity" type="udt:QuantityType" minOccurs="0"/>
+ <xs:element name="AppliedTradeAllowanceCharge" type="ram:TradeAllowanceChargeType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="TradeProductType">
+ <xs:sequence>
+ <xs:element name="GlobalID" type="udt:IDType" minOccurs="0"/>
+ <xs:element name="SellerAssignedID" type="udt:IDType" minOccurs="0"/>
+ <xs:element name="BuyerAssignedID" type="udt:IDType" minOccurs="0"/>
+ <xs:element name="Name" type="udt:TextType"/>
+ <xs:element name="Description" type="udt:TextType" minOccurs="0"/>
+ <xs:element name="ApplicableProductCharacteristic" type="ram:ProductCharacteristicType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="DesignatedProductClassification" type="ram:ProductClassificationType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="OriginTradeCountry" type="ram:TradeCountryType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="TradeSettlementFinancialCardType">
+ <xs:sequence>
+ <xs:element name="ID" type="udt:IDType"/>
+ <xs:element name="CardholderName" type="udt:TextType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="TradeSettlementHeaderMonetarySummationType">
+ <xs:sequence>
+ <xs:element name="LineTotalAmount" type="udt:AmountType"/>
+ <xs:element name="ChargeTotalAmount" type="udt:AmountType" minOccurs="0"/>
+ <xs:element name="AllowanceTotalAmount" type="udt:AmountType" minOccurs="0"/>
+ <xs:element name="TaxBasisTotalAmount" type="udt:AmountType"/>
+ <xs:element name="TaxTotalAmount" type="udt:AmountType"/>
+ <xs:element name="RoundingAmount" type="udt:AmountType" minOccurs="0"/>
+ <xs:element name="GrandTotalAmount" type="udt:AmountType"/>
+ <xs:element name="TotalPrepaidAmount" type="udt:AmountType" minOccurs="0"/>
+ <xs:element name="DuePayableAmount" type="udt:AmountType"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="TradeSettlementLineMonetarySummationType">
+ <xs:sequence>
+ <xs:element name="LineTotalAmount" type="udt:AmountType"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="TradeSettlementPaymentMeansType">
+ <xs:sequence>
+ <xs:element name="TypeCode" type="qdt:PaymentMeansCodeType"/>
+ <xs:element name="Information" type="udt:TextType" minOccurs="0"/>
+ <xs:element name="ApplicableTradeSettlementFinancialCard" type="ram:TradeSettlementFinancialCardType" minOccurs="0"/>
+ <xs:element name="PayerPartyDebtorFinancialAccount" type="ram:DebtorFinancialAccountType" minOccurs="0"/>
+ <xs:element name="PayeePartyCreditorFinancialAccount" type="ram:CreditorFinancialAccountType" minOccurs="0"/>
+ <xs:element name="PayeeSpecifiedCreditorFinancialInstitution" type="ram:CreditorFinancialInstitutionType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="TradeTaxType">
+ <xs:sequence>
+ <xs:element name="CalculatedAmount" type="udt:AmountType" minOccurs="0"/>
+ <xs:element name="TypeCode" type="qdt:TaxTypeCodeType"/>
+ <xs:element name="ExemptionReason" type="udt:TextType" minOccurs="0"/>
+ <xs:element name="BasisAmount" type="udt:AmountType" minOccurs="0"/>
+ <xs:element name="CategoryCode" type="qdt:TaxCategoryCodeType"/>
+ <xs:element name="ExemptionReasonCode" type="udt:CodeType" minOccurs="0"/>
+ <xs:element name="TaxPointDate" type="udt:DateType" minOccurs="0"/>
+ <xs:element name="DueDateTypeCode" type="qdt:TimeReferenceCodeType" minOccurs="0"/>
+ <xs:element name="RateApplicablePercent" type="udt:PercentType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="UniversalCommunicationType">
+ <xs:sequence>
+ <xs:element name="URIID" type="udt:IDType" minOccurs="0"/>
+ <xs:element name="CompleteNumber" type="udt:TextType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+</xs:schema>
diff --git a/facturx/xsd/facturx-basic/FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd b/facturx/xsd/facturx-basic/FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd
new file mode 100644
index 0000000..b318b17
--- /dev/null
+++ b/facturx/xsd/facturx-basic/FACTUR-X_BASIC_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd
@@ -0,0 +1,85 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:udt="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:100"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:100"
+ elementFormDefault="qualified"
+ version="100.D16B">
+ <xs:complexType name="AmountType">
+ <xs:simpleContent>
+ <xs:extension base="xs:decimal">
+ <xs:attribute name="currencyID" type="xs:token" use="optional"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:complexType name="BinaryObjectType">
+ <xs:simpleContent>
+ <xs:extension base="xs:base64Binary">
+ <xs:attribute name="mimeCode" type="xs:token" use="required"/>
+ <xs:attribute name="filename" type="xs:string" use="required"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:complexType name="CodeType">
+ <xs:simpleContent>
+ <xs:extension base="xs:token">
+ <xs:attribute name="listID" type="xs:token" use="optional"/>
+ <xs:attribute name="listVersionID" type="xs:token" use="optional"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:complexType name="DateTimeType">
+ <xs:choice>
+ <xs:element name="DateTimeString">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute name="format" type="xs:string" use="required"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ </xs:choice>
+ </xs:complexType>
+ <xs:complexType name="DateType">
+ <xs:choice>
+ <xs:element name="DateString">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute name="format" type="xs:string" use="required"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ </xs:choice>
+ </xs:complexType>
+ <xs:complexType name="IDType">
+ <xs:simpleContent>
+ <xs:extension base="xs:token">
+ <xs:attribute name="schemeID" type="xs:token" use="optional"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:complexType name="IndicatorType">
+ <xs:choice>
+ <xs:element name="Indicator" type="xs:boolean"/>
+ </xs:choice>
+ </xs:complexType>
+ <xs:complexType name="PercentType">
+ <xs:simpleContent>
+ <xs:extension base="xs:decimal"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:complexType name="QuantityType">
+ <xs:simpleContent>
+ <xs:extension base="xs:decimal">
+ <xs:attribute name="unitCode" type="xs:token" use="required"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:complexType name="TextType">
+ <xs:simpleContent>
+ <xs:extension base="xs:string"/>
+ </xs:simpleContent>
+ </xs:complexType>
+</xs:schema>
diff --git a/facturx/xsd/factur-x/FACTUR-X_BASIC-WL.xsd b/facturx/xsd/facturx-basicwl/FACTUR-X_BASIC-WL.xsd
index c67a349..c67a349 100644
--- a/facturx/xsd/factur-x/FACTUR-X_BASIC-WL.xsd
+++ b/facturx/xsd/facturx-basicwl/FACTUR-X_BASIC-WL.xsd
diff --git a/facturx/xsd/facturx-basicwl/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd b/facturx/xsd/facturx-basicwl/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd
new file mode 100644
index 0000000..4677b9a
--- /dev/null
+++ b/facturx/xsd/facturx-basicwl/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd
@@ -0,0 +1,786 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:qdt="urn:un:unece:uncefact:data:standard:QualifiedDataType:100"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ xmlns:udt="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:100"
+ targetNamespace="urn:un:unece:uncefact:data:standard:QualifiedDataType:100"
+ elementFormDefault="qualified"
+ version="100.D16B">
+ <xs:import namespace="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:100" schemaLocation="FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd"/>
+ <xs:simpleType name="AllowanceChargeReasonCodeContentType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="AA"/>
+ <xs:enumeration value="AAA"/>
+ <xs:enumeration value="AAC"/>
+ <xs:enumeration value="AAD"/>
+ <xs:enumeration value="AAE"/>
+ <xs:enumeration value="AAF"/>
+ <xs:enumeration value="AAH"/>
+ <xs:enumeration value="AAI"/>
+ <xs:enumeration value="AAS"/>
+ <xs:enumeration value="AAT"/>
+ <xs:enumeration value="AAV"/>
+ <xs:enumeration value="AAY"/>
+ <xs:enumeration value="AAZ"/>
+ <xs:enumeration value="ABA"/>
+ <xs:enumeration value="ABB"/>
+ <xs:enumeration value="ABC"/>
+ <xs:enumeration value="ABD"/>
+ <xs:enumeration value="ABF"/>
+ <xs:enumeration value="ABK"/>
+ <xs:enumeration value="ABL"/>
+ <xs:enumeration value="ABN"/>
+ <xs:enumeration value="ABR"/>
+ <xs:enumeration value="ABS"/>
+ <xs:enumeration value="ABT"/>
+ <xs:enumeration value="ABU"/>
+ <xs:enumeration value="ACF"/>
+ <xs:enumeration value="ACG"/>
+ <xs:enumeration value="ACH"/>
+ <xs:enumeration value="ACI"/>
+ <xs:enumeration value="ACJ"/>
+ <xs:enumeration value="ACK"/>
+ <xs:enumeration value="ACL"/>
+ <xs:enumeration value="ACM"/>
+ <xs:enumeration value="ACS"/>
+ <xs:enumeration value="ADC"/>
+ <xs:enumeration value="ADE"/>
+ <xs:enumeration value="ADJ"/>
+ <xs:enumeration value="ADK"/>
+ <xs:enumeration value="ADL"/>
+ <xs:enumeration value="ADM"/>
+ <xs:enumeration value="ADN"/>
+ <xs:enumeration value="ADO"/>
+ <xs:enumeration value="ADP"/>
+ <xs:enumeration value="ADQ"/>
+ <xs:enumeration value="ADR"/>
+ <xs:enumeration value="ADT"/>
+ <xs:enumeration value="ADW"/>
+ <xs:enumeration value="ADY"/>
+ <xs:enumeration value="ADZ"/>
+ <xs:enumeration value="AEA"/>
+ <xs:enumeration value="AEB"/>
+ <xs:enumeration value="AEC"/>
+ <xs:enumeration value="AED"/>
+ <xs:enumeration value="AEF"/>
+ <xs:enumeration value="AEH"/>
+ <xs:enumeration value="AEI"/>
+ <xs:enumeration value="AEJ"/>
+ <xs:enumeration value="AEK"/>
+ <xs:enumeration value="AEL"/>
+ <xs:enumeration value="AEM"/>
+ <xs:enumeration value="AEN"/>
+ <xs:enumeration value="AEO"/>
+ <xs:enumeration value="AEP"/>
+ <xs:enumeration value="AES"/>
+ <xs:enumeration value="AET"/>
+ <xs:enumeration value="AEU"/>
+ <xs:enumeration value="AEV"/>
+ <xs:enumeration value="AEW"/>
+ <xs:enumeration value="AEX"/>
+ <xs:enumeration value="AEY"/>
+ <xs:enumeration value="AEZ"/>
+ <xs:enumeration value="AJ"/>
+ <xs:enumeration value="AU"/>
+ <xs:enumeration value="CA"/>
+ <xs:enumeration value="CAB"/>
+ <xs:enumeration value="CAD"/>
+ <xs:enumeration value="CAE"/>
+ <xs:enumeration value="CAF"/>
+ <xs:enumeration value="CAI"/>
+ <xs:enumeration value="CAJ"/>
+ <xs:enumeration value="CAK"/>
+ <xs:enumeration value="CAL"/>
+ <xs:enumeration value="CAM"/>
+ <xs:enumeration value="CAN"/>
+ <xs:enumeration value="CAO"/>
+ <xs:enumeration value="CAP"/>
+ <xs:enumeration value="CAQ"/>
+ <xs:enumeration value="CAR"/>
+ <xs:enumeration value="CAS"/>
+ <xs:enumeration value="CAT"/>
+ <xs:enumeration value="CAU"/>
+ <xs:enumeration value="CAV"/>
+ <xs:enumeration value="CAW"/>
+ <xs:enumeration value="CAX"/>
+ <xs:enumeration value="CAY"/>
+ <xs:enumeration value="CAZ"/>
+ <xs:enumeration value="CD"/>
+ <xs:enumeration value="CG"/>
+ <xs:enumeration value="CS"/>
+ <xs:enumeration value="CT"/>
+ <xs:enumeration value="DAB"/>
+ <xs:enumeration value="DAC"/>
+ <xs:enumeration value="DAD"/>
+ <xs:enumeration value="DAF"/>
+ <xs:enumeration value="DAG"/>
+ <xs:enumeration value="DAH"/>
+ <xs:enumeration value="DAI"/>
+ <xs:enumeration value="DAJ"/>
+ <xs:enumeration value="DAK"/>
+ <xs:enumeration value="DAL"/>
+ <xs:enumeration value="DAM"/>
+ <xs:enumeration value="DAN"/>
+ <xs:enumeration value="DAO"/>
+ <xs:enumeration value="DAP"/>
+ <xs:enumeration value="DAQ"/>
+ <xs:enumeration value="DL"/>
+ <xs:enumeration value="EG"/>
+ <xs:enumeration value="EP"/>
+ <xs:enumeration value="ER"/>
+ <xs:enumeration value="FAA"/>
+ <xs:enumeration value="FAB"/>
+ <xs:enumeration value="FAC"/>
+ <xs:enumeration value="FC"/>
+ <xs:enumeration value="FH"/>
+ <xs:enumeration value="FI"/>
+ <xs:enumeration value="GAA"/>
+ <xs:enumeration value="HAA"/>
+ <xs:enumeration value="HD"/>
+ <xs:enumeration value="HH"/>
+ <xs:enumeration value="IAA"/>
+ <xs:enumeration value="IAB"/>
+ <xs:enumeration value="ID"/>
+ <xs:enumeration value="IF"/>
+ <xs:enumeration value="IR"/>
+ <xs:enumeration value="IS"/>
+ <xs:enumeration value="KO"/>
+ <xs:enumeration value="L1"/>
+ <xs:enumeration value="LA"/>
+ <xs:enumeration value="LAA"/>
+ <xs:enumeration value="LAB"/>
+ <xs:enumeration value="LF"/>
+ <xs:enumeration value="MAE"/>
+ <xs:enumeration value="MI"/>
+ <xs:enumeration value="ML"/>
+ <xs:enumeration value="NAA"/>
+ <xs:enumeration value="OA"/>
+ <xs:enumeration value="PA"/>
+ <xs:enumeration value="PAA"/>
+ <xs:enumeration value="PC"/>
+ <xs:enumeration value="PL"/>
+ <xs:enumeration value="RAB"/>
+ <xs:enumeration value="RAC"/>
+ <xs:enumeration value="RAD"/>
+ <xs:enumeration value="RAF"/>
+ <xs:enumeration value="RE"/>
+ <xs:enumeration value="RF"/>
+ <xs:enumeration value="RH"/>
+ <xs:enumeration value="RV"/>
+ <xs:enumeration value="SA"/>
+ <xs:enumeration value="SAA"/>
+ <xs:enumeration value="SAD"/>
+ <xs:enumeration value="SAE"/>
+ <xs:enumeration value="SAI"/>
+ <xs:enumeration value="SG"/>
+ <xs:enumeration value="SH"/>
+ <xs:enumeration value="SM"/>
+ <xs:enumeration value="SU"/>
+ <xs:enumeration value="TAB"/>
+ <xs:enumeration value="TAC"/>
+ <xs:enumeration value="TT"/>
+ <xs:enumeration value="TV"/>
+ <xs:enumeration value="V1"/>
+ <xs:enumeration value="V2"/>
+ <xs:enumeration value="WH"/>
+ <xs:enumeration value="XAA"/>
+ <xs:enumeration value="YY"/>
+ <xs:enumeration value="ZZZ"/>
+ <xs:enumeration value="41"/>
+ <xs:enumeration value="42"/>
+ <xs:enumeration value="60"/>
+ <xs:enumeration value="62"/>
+ <xs:enumeration value="63"/>
+ <xs:enumeration value="64"/>
+ <xs:enumeration value="65"/>
+ <xs:enumeration value="66"/>
+ <xs:enumeration value="67"/>
+ <xs:enumeration value="68"/>
+ <xs:enumeration value="70"/>
+ <xs:enumeration value="71"/>
+ <xs:enumeration value="88"/>
+ <xs:enumeration value="95"/>
+ <xs:enumeration value="100"/>
+ <xs:enumeration value="102"/>
+ <xs:enumeration value="103"/>
+ <xs:enumeration value="104"/>
+ <xs:enumeration value="105"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="AllowanceChargeReasonCodeType">
+ <xs:simpleContent>
+ <xs:extension base="qdt:AllowanceChargeReasonCodeContentType"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:simpleType name="CountryIDContentType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="AD"/>
+ <xs:enumeration value="AE"/>
+ <xs:enumeration value="AF"/>
+ <xs:enumeration value="AG"/>
+ <xs:enumeration value="AI"/>
+ <xs:enumeration value="AL"/>
+ <xs:enumeration value="AM"/>
+ <xs:enumeration value="AO"/>
+ <xs:enumeration value="AQ"/>
+ <xs:enumeration value="AR"/>
+ <xs:enumeration value="AS"/>
+ <xs:enumeration value="AT"/>
+ <xs:enumeration value="AU"/>
+ <xs:enumeration value="AW"/>
+ <xs:enumeration value="AX"/>
+ <xs:enumeration value="AZ"/>
+ <xs:enumeration value="BA"/>
+ <xs:enumeration value="BB"/>
+ <xs:enumeration value="BD"/>
+ <xs:enumeration value="BE"/>
+ <xs:enumeration value="BF"/>
+ <xs:enumeration value="BG"/>
+ <xs:enumeration value="BH"/>
+ <xs:enumeration value="BI"/>
+ <xs:enumeration value="BJ"/>
+ <xs:enumeration value="BL"/>
+ <xs:enumeration value="BM"/>
+ <xs:enumeration value="BN"/>
+ <xs:enumeration value="BO"/>
+ <xs:enumeration value="BQ"/>
+ <xs:enumeration value="BR"/>
+ <xs:enumeration value="BS"/>
+ <xs:enumeration value="BT"/>
+ <xs:enumeration value="BV"/>
+ <xs:enumeration value="BW"/>
+ <xs:enumeration value="BY"/>
+ <xs:enumeration value="BZ"/>
+ <xs:enumeration value="CA"/>
+ <xs:enumeration value="CC"/>
+ <xs:enumeration value="CD"/>
+ <xs:enumeration value="CF"/>
+ <xs:enumeration value="CG"/>
+ <xs:enumeration value="CH"/>
+ <xs:enumeration value="CI"/>
+ <xs:enumeration value="CK"/>
+ <xs:enumeration value="CL"/>
+ <xs:enumeration value="CM"/>
+ <xs:enumeration value="CN"/>
+ <xs:enumeration value="CO"/>
+ <xs:enumeration value="CR"/>
+ <xs:enumeration value="CU"/>
+ <xs:enumeration value="CV"/>
+ <xs:enumeration value="CW"/>
+ <xs:enumeration value="CX"/>
+ <xs:enumeration value="CY"/>
+ <xs:enumeration value="CZ"/>
+ <xs:enumeration value="DE"/>
+ <xs:enumeration value="DJ"/>
+ <xs:enumeration value="DK"/>
+ <xs:enumeration value="DM"/>
+ <xs:enumeration value="DO"/>
+ <xs:enumeration value="DZ"/>
+ <xs:enumeration value="EC"/>
+ <xs:enumeration value="EE"/>
+ <xs:enumeration value="EG"/>
+ <xs:enumeration value="EH"/>
+ <xs:enumeration value="ER"/>
+ <xs:enumeration value="ES"/>
+ <xs:enumeration value="ET"/>
+ <xs:enumeration value="FI"/>
+ <xs:enumeration value="FJ"/>
+ <xs:enumeration value="FK"/>
+ <xs:enumeration value="FM"/>
+ <xs:enumeration value="FO"/>
+ <xs:enumeration value="FR"/>
+ <xs:enumeration value="GA"/>
+ <xs:enumeration value="GB"/>
+ <xs:enumeration value="GD"/>
+ <xs:enumeration value="GE"/>
+ <xs:enumeration value="GF"/>
+ <xs:enumeration value="GG"/>
+ <xs:enumeration value="GH"/>
+ <xs:enumeration value="GI"/>
+ <xs:enumeration value="GL"/>
+ <xs:enumeration value="GM"/>
+ <xs:enumeration value="GN"/>
+ <xs:enumeration value="GP"/>
+ <xs:enumeration value="GQ"/>
+ <xs:enumeration value="GR"/>
+ <xs:enumeration value="GS"/>
+ <xs:enumeration value="GT"/>
+ <xs:enumeration value="GU"/>
+ <xs:enumeration value="GW"/>
+ <xs:enumeration value="GY"/>
+ <xs:enumeration value="HK"/>
+ <xs:enumeration value="HM"/>
+ <xs:enumeration value="HN"/>
+ <xs:enumeration value="HR"/>
+ <xs:enumeration value="HT"/>
+ <xs:enumeration value="HU"/>
+ <xs:enumeration value="ID"/>
+ <xs:enumeration value="IE"/>
+ <xs:enumeration value="IL"/>
+ <xs:enumeration value="IM"/>
+ <xs:enumeration value="IN"/>
+ <xs:enumeration value="IO"/>
+ <xs:enumeration value="IQ"/>
+ <xs:enumeration value="IR"/>
+ <xs:enumeration value="IS"/>
+ <xs:enumeration value="IT"/>
+ <xs:enumeration value="JE"/>
+ <xs:enumeration value="JM"/>
+ <xs:enumeration value="JO"/>
+ <xs:enumeration value="JP"/>
+ <xs:enumeration value="KE"/>
+ <xs:enumeration value="KG"/>
+ <xs:enumeration value="KH"/>
+ <xs:enumeration value="KI"/>
+ <xs:enumeration value="KM"/>
+ <xs:enumeration value="KN"/>
+ <xs:enumeration value="KP"/>
+ <xs:enumeration value="KR"/>
+ <xs:enumeration value="KW"/>
+ <xs:enumeration value="KY"/>
+ <xs:enumeration value="KZ"/>
+ <xs:enumeration value="LA"/>
+ <xs:enumeration value="LB"/>
+ <xs:enumeration value="LC"/>
+ <xs:enumeration value="LI"/>
+ <xs:enumeration value="LK"/>
+ <xs:enumeration value="LR"/>
+ <xs:enumeration value="LS"/>
+ <xs:enumeration value="LT"/>
+ <xs:enumeration value="LU"/>
+ <xs:enumeration value="LV"/>
+ <xs:enumeration value="LY"/>
+ <xs:enumeration value="MA"/>
+ <xs:enumeration value="MC"/>
+ <xs:enumeration value="MD"/>
+ <xs:enumeration value="ME"/>
+ <xs:enumeration value="MF"/>
+ <xs:enumeration value="MG"/>
+ <xs:enumeration value="MH"/>
+ <xs:enumeration value="MK"/>
+ <xs:enumeration value="ML"/>
+ <xs:enumeration value="MM"/>
+ <xs:enumeration value="MN"/>
+ <xs:enumeration value="MO"/>
+ <xs:enumeration value="MP"/>
+ <xs:enumeration value="MQ"/>
+ <xs:enumeration value="MR"/>
+ <xs:enumeration value="MS"/>
+ <xs:enumeration value="MT"/>
+ <xs:enumeration value="MU"/>
+ <xs:enumeration value="MV"/>
+ <xs:enumeration value="MW"/>
+ <xs:enumeration value="MX"/>
+ <xs:enumeration value="MY"/>
+ <xs:enumeration value="MZ"/>
+ <xs:enumeration value="NA"/>
+ <xs:enumeration value="NC"/>
+ <xs:enumeration value="NE"/>
+ <xs:enumeration value="NF"/>
+ <xs:enumeration value="NG"/>
+ <xs:enumeration value="NI"/>
+ <xs:enumeration value="NL"/>
+ <xs:enumeration value="NO"/>
+ <xs:enumeration value="NP"/>
+ <xs:enumeration value="NR"/>
+ <xs:enumeration value="NU"/>
+ <xs:enumeration value="NZ"/>
+ <xs:enumeration value="OM"/>
+ <xs:enumeration value="PA"/>
+ <xs:enumeration value="PE"/>
+ <xs:enumeration value="PF"/>
+ <xs:enumeration value="PG"/>
+ <xs:enumeration value="PH"/>
+ <xs:enumeration value="PK"/>
+ <xs:enumeration value="PL"/>
+ <xs:enumeration value="PM"/>
+ <xs:enumeration value="PN"/>
+ <xs:enumeration value="PR"/>
+ <xs:enumeration value="PS"/>
+ <xs:enumeration value="PT"/>
+ <xs:enumeration value="PW"/>
+ <xs:enumeration value="PY"/>
+ <xs:enumeration value="QA"/>
+ <xs:enumeration value="RE"/>
+ <xs:enumeration value="RO"/>
+ <xs:enumeration value="RS"/>
+ <xs:enumeration value="RU"/>
+ <xs:enumeration value="RW"/>
+ <xs:enumeration value="SA"/>
+ <xs:enumeration value="SB"/>
+ <xs:enumeration value="SC"/>
+ <xs:enumeration value="SD"/>
+ <xs:enumeration value="SE"/>
+ <xs:enumeration value="SG"/>
+ <xs:enumeration value="SH"/>
+ <xs:enumeration value="SI"/>
+ <xs:enumeration value="SJ"/>
+ <xs:enumeration value="SK"/>
+ <xs:enumeration value="SL"/>
+ <xs:enumeration value="SM"/>
+ <xs:enumeration value="SN"/>
+ <xs:enumeration value="SO"/>
+ <xs:enumeration value="SR"/>
+ <xs:enumeration value="SS"/>
+ <xs:enumeration value="ST"/>
+ <xs:enumeration value="SV"/>
+ <xs:enumeration value="SX"/>
+ <xs:enumeration value="SY"/>
+ <xs:enumeration value="SZ"/>
+ <xs:enumeration value="TC"/>
+ <xs:enumeration value="TD"/>
+ <xs:enumeration value="TF"/>
+ <xs:enumeration value="TG"/>
+ <xs:enumeration value="TH"/>
+ <xs:enumeration value="TJ"/>
+ <xs:enumeration value="TK"/>
+ <xs:enumeration value="TL"/>
+ <xs:enumeration value="TM"/>
+ <xs:enumeration value="TN"/>
+ <xs:enumeration value="TO"/>
+ <xs:enumeration value="TR"/>
+ <xs:enumeration value="TT"/>
+ <xs:enumeration value="TV"/>
+ <xs:enumeration value="TW"/>
+ <xs:enumeration value="TZ"/>
+ <xs:enumeration value="UA"/>
+ <xs:enumeration value="UG"/>
+ <xs:enumeration value="UM"/>
+ <xs:enumeration value="US"/>
+ <xs:enumeration value="UY"/>
+ <xs:enumeration value="UZ"/>
+ <xs:enumeration value="VA"/>
+ <xs:enumeration value="VC"/>
+ <xs:enumeration value="VE"/>
+ <xs:enumeration value="VG"/>
+ <xs:enumeration value="VI"/>
+ <xs:enumeration value="VN"/>
+ <xs:enumeration value="VU"/>
+ <xs:enumeration value="WF"/>
+ <xs:enumeration value="WS"/>
+ <xs:enumeration value="YE"/>
+ <xs:enumeration value="YT"/>
+ <xs:enumeration value="ZA"/>
+ <xs:enumeration value="ZM"/>
+ <xs:enumeration value="ZW"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="CountryIDType">
+ <xs:simpleContent>
+ <xs:extension base="qdt:CountryIDContentType"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:simpleType name="CurrencyCodeContentType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="AED"/>
+ <xs:enumeration value="ALL"/>
+ <xs:enumeration value="AMD"/>
+ <xs:enumeration value="ANG"/>
+ <xs:enumeration value="AOA"/>
+ <xs:enumeration value="ARS"/>
+ <xs:enumeration value="AUD"/>
+ <xs:enumeration value="AWG"/>
+ <xs:enumeration value="AZN"/>
+ <xs:enumeration value="BAM"/>
+ <xs:enumeration value="BBD"/>
+ <xs:enumeration value="BDT"/>
+ <xs:enumeration value="BGN"/>
+ <xs:enumeration value="BHD"/>
+ <xs:enumeration value="BIF"/>
+ <xs:enumeration value="BMD"/>
+ <xs:enumeration value="BND"/>
+ <xs:enumeration value="BOB"/>
+ <xs:enumeration value="BOV"/>
+ <xs:enumeration value="BRL"/>
+ <xs:enumeration value="BSD"/>
+ <xs:enumeration value="BTN"/>
+ <xs:enumeration value="BWP"/>
+ <xs:enumeration value="BYN"/>
+ <xs:enumeration value="BZD"/>
+ <xs:enumeration value="CAD"/>
+ <xs:enumeration value="CDF"/>
+ <xs:enumeration value="CHE"/>
+ <xs:enumeration value="CHF"/>
+ <xs:enumeration value="CHW"/>
+ <xs:enumeration value="CLF"/>
+ <xs:enumeration value="CLP"/>
+ <xs:enumeration value="CNY"/>
+ <xs:enumeration value="COP"/>
+ <xs:enumeration value="COU"/>
+ <xs:enumeration value="CRC"/>
+ <xs:enumeration value="CUC"/>
+ <xs:enumeration value="CUP"/>
+ <xs:enumeration value="CVE"/>
+ <xs:enumeration value="CZK"/>
+ <xs:enumeration value="DJF"/>
+ <xs:enumeration value="DKK"/>
+ <xs:enumeration value="DOP"/>
+ <xs:enumeration value="DZD"/>
+ <xs:enumeration value="EGP"/>
+ <xs:enumeration value="ERN"/>
+ <xs:enumeration value="ETB"/>
+ <xs:enumeration value="EUR"/>
+ <xs:enumeration value="FJD"/>
+ <xs:enumeration value="FKP"/>
+ <xs:enumeration value="GBP"/>
+ <xs:enumeration value="GEL"/>
+ <xs:enumeration value="GHS"/>
+ <xs:enumeration value="GIP"/>
+ <xs:enumeration value="GMD"/>
+ <xs:enumeration value="GNF"/>
+ <xs:enumeration value="GTQ"/>
+ <xs:enumeration value="GYD"/>
+ <xs:enumeration value="HKD"/>
+ <xs:enumeration value="HNL"/>
+ <xs:enumeration value="HRK"/>
+ <xs:enumeration value="HTG"/>
+ <xs:enumeration value="HUF"/>
+ <xs:enumeration value="IDR"/>
+ <xs:enumeration value="ILS"/>
+ <xs:enumeration value="INR"/>
+ <xs:enumeration value="IQD"/>
+ <xs:enumeration value="IRR"/>
+ <xs:enumeration value="ISK"/>
+ <xs:enumeration value="JMD"/>
+ <xs:enumeration value="JOD"/>
+ <xs:enumeration value="JPY"/>
+ <xs:enumeration value="KES"/>
+ <xs:enumeration value="KGS"/>
+ <xs:enumeration value="KHR"/>
+ <xs:enumeration value="KMF"/>
+ <xs:enumeration value="KPW"/>
+ <xs:enumeration value="KRW"/>
+ <xs:enumeration value="KWD"/>
+ <xs:enumeration value="KYD"/>
+ <xs:enumeration value="KZT"/>
+ <xs:enumeration value="LAK"/>
+ <xs:enumeration value="LBP"/>
+ <xs:enumeration value="LKR"/>
+ <xs:enumeration value="LRD"/>
+ <xs:enumeration value="LSL"/>
+ <xs:enumeration value="LYD"/>
+ <xs:enumeration value="MAD"/>
+ <xs:enumeration value="MDL"/>
+ <xs:enumeration value="MGA"/>
+ <xs:enumeration value="MKD"/>
+ <xs:enumeration value="MMK"/>
+ <xs:enumeration value="MNT"/>
+ <xs:enumeration value="MOP"/>
+ <xs:enumeration value="MRO"/>
+ <xs:enumeration value="MUR"/>
+ <xs:enumeration value="MVR"/>
+ <xs:enumeration value="MWK"/>
+ <xs:enumeration value="MXN"/>
+ <xs:enumeration value="MXV"/>
+ <xs:enumeration value="MYR"/>
+ <xs:enumeration value="MZN"/>
+ <xs:enumeration value="NAD"/>
+ <xs:enumeration value="NGN"/>
+ <xs:enumeration value="NIO"/>
+ <xs:enumeration value="NOK"/>
+ <xs:enumeration value="NPR"/>
+ <xs:enumeration value="NZD"/>
+ <xs:enumeration value="OMR"/>
+ <xs:enumeration value="PAB"/>
+ <xs:enumeration value="PEN"/>
+ <xs:enumeration value="PGK"/>
+ <xs:enumeration value="PHP"/>
+ <xs:enumeration value="PKR"/>
+ <xs:enumeration value="PLN"/>
+ <xs:enumeration value="PYG"/>
+ <xs:enumeration value="QAR"/>
+ <xs:enumeration value="RON"/>
+ <xs:enumeration value="RSD"/>
+ <xs:enumeration value="RUB"/>
+ <xs:enumeration value="RWF"/>
+ <xs:enumeration value="SAR"/>
+ <xs:enumeration value="SBD"/>
+ <xs:enumeration value="SCR"/>
+ <xs:enumeration value="SDG"/>
+ <xs:enumeration value="SEK"/>
+ <xs:enumeration value="SGD"/>
+ <xs:enumeration value="SHP"/>
+ <xs:enumeration value="SLL"/>
+ <xs:enumeration value="SOS"/>
+ <xs:enumeration value="SRD"/>
+ <xs:enumeration value="SSP"/>
+ <xs:enumeration value="STD"/>
+ <xs:enumeration value="SVC"/>
+ <xs:enumeration value="SYP"/>
+ <xs:enumeration value="SZL"/>
+ <xs:enumeration value="THB"/>
+ <xs:enumeration value="TJS"/>
+ <xs:enumeration value="TMT"/>
+ <xs:enumeration value="TND"/>
+ <xs:enumeration value="TOP"/>
+ <xs:enumeration value="TRY"/>
+ <xs:enumeration value="TTD"/>
+ <xs:enumeration value="TWD"/>
+ <xs:enumeration value="TZS"/>
+ <xs:enumeration value="UAH"/>
+ <xs:enumeration value="UGX"/>
+ <xs:enumeration value="USD"/>
+ <xs:enumeration value="USN"/>
+ <xs:enumeration value="UYI"/>
+ <xs:enumeration value="UYU"/>
+ <xs:enumeration value="UYW"/>
+ <xs:enumeration value="UZS"/>
+ <xs:enumeration value="VEF"/>
+ <xs:enumeration value="VND"/>
+ <xs:enumeration value="VUV"/>
+ <xs:enumeration value="WST"/>
+ <xs:enumeration value="XAF"/>
+ <xs:enumeration value="XAG"/>
+ <xs:enumeration value="XAU"/>
+ <xs:enumeration value="XBA"/>
+ <xs:enumeration value="XBB"/>
+ <xs:enumeration value="XBC"/>
+ <xs:enumeration value="XBD"/>
+ <xs:enumeration value="XCD"/>
+ <xs:enumeration value="XDR"/>
+ <xs:enumeration value="XOF"/>
+ <xs:enumeration value="XPD"/>
+ <xs:enumeration value="XPF"/>
+ <xs:enumeration value="XPT"/>
+ <xs:enumeration value="XSU"/>
+ <xs:enumeration value="XTS"/>
+ <xs:enumeration value="XUA"/>
+ <xs:enumeration value="XXX"/>
+ <xs:enumeration value="YER"/>
+ <xs:enumeration value="ZAR"/>
+ <xs:enumeration value="ZMW"/>
+ <xs:enumeration value="ZWL"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="CurrencyCodeType">
+ <xs:simpleContent>
+ <xs:extension base="qdt:CurrencyCodeContentType"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:simpleType name="DocumentCodeContentType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="80"/>
+ <xs:enumeration value="81"/>
+ <xs:enumeration value="82"/>
+ <xs:enumeration value="83"/>
+ <xs:enumeration value="84"/>
+ <xs:enumeration value="130"/>
+ <xs:enumeration value="202"/>
+ <xs:enumeration value="203"/>
+ <xs:enumeration value="204"/>
+ <xs:enumeration value="211"/>
+ <xs:enumeration value="261"/>
+ <xs:enumeration value="262"/>
+ <xs:enumeration value="295"/>
+ <xs:enumeration value="296"/>
+ <xs:enumeration value="308"/>
+ <xs:enumeration value="325"/>
+ <xs:enumeration value="326"/>
+ <xs:enumeration value="380"/>
+ <xs:enumeration value="381"/>
+ <xs:enumeration value="383"/>
+ <xs:enumeration value="384"/>
+ <xs:enumeration value="385"/>
+ <xs:enumeration value="386"/>
+ <xs:enumeration value="387"/>
+ <xs:enumeration value="388"/>
+ <xs:enumeration value="389"/>
+ <xs:enumeration value="390"/>
+ <xs:enumeration value="393"/>
+ <xs:enumeration value="394"/>
+ <xs:enumeration value="395"/>
+ <xs:enumeration value="396"/>
+ <xs:enumeration value="420"/>
+ <xs:enumeration value="456"/>
+ <xs:enumeration value="457"/>
+ <xs:enumeration value="458"/>
+ <xs:enumeration value="527"/>
+ <xs:enumeration value="575"/>
+ <xs:enumeration value="623"/>
+ <xs:enumeration value="633"/>
+ <xs:enumeration value="751"/>
+ <xs:enumeration value="780"/>
+ <xs:enumeration value="935"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="DocumentCodeType">
+ <xs:simpleContent>
+ <xs:extension base="qdt:DocumentCodeContentType"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:simpleType name="FormattedDateTimeFormatContentType">
+ <xs:restriction base="xs:string"/>
+ </xs:simpleType>
+ <xs:complexType name="FormattedDateTimeType">
+ <xs:sequence>
+ <xs:element name="DateTimeString">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute name="format" type="qdt:FormattedDateTimeFormatContentType" use="required"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:simpleType name="PaymentMeansCodeContentType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="10"/>
+ <xs:enumeration value="20"/>
+ <xs:enumeration value="30"/>
+ <xs:enumeration value="42"/>
+ <xs:enumeration value="48"/>
+ <xs:enumeration value="49"/>
+ <xs:enumeration value="57"/>
+ <xs:enumeration value="58"/>
+ <xs:enumeration value="59"/>
+ <xs:enumeration value="97"/>
+ <xs:enumeration value="ZZZ"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="PaymentMeansCodeType">
+ <xs:simpleContent>
+ <xs:extension base="qdt:PaymentMeansCodeContentType"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:simpleType name="TaxCategoryCodeContentType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="AE"/>
+ <xs:enumeration value="E"/>
+ <xs:enumeration value="G"/>
+ <xs:enumeration value="K"/>
+ <xs:enumeration value="L"/>
+ <xs:enumeration value="M"/>
+ <xs:enumeration value="O"/>
+ <xs:enumeration value="S"/>
+ <xs:enumeration value="Z"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="TaxCategoryCodeType">
+ <xs:simpleContent>
+ <xs:extension base="qdt:TaxCategoryCodeContentType"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:simpleType name="TaxTypeCodeContentType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="VAT"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="TaxTypeCodeType">
+ <xs:simpleContent>
+ <xs:extension base="qdt:TaxTypeCodeContentType"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:simpleType name="TimeReferenceCodeContentType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="5"/>
+ <xs:enumeration value="29"/>
+ <xs:enumeration value="72"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="TimeReferenceCodeType">
+ <xs:simpleContent>
+ <xs:extension base="qdt:TimeReferenceCodeContentType"/>
+ </xs:simpleContent>
+ </xs:complexType>
+</xs:schema>
diff --git a/facturx/xsd/factur-x/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd b/facturx/xsd/facturx-basicwl/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd
index 35a58d1..39b8db6 100644
--- a/facturx/xsd/factur-x/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd
+++ b/facturx/xsd/facturx-basicwl/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd
@@ -4,8 +4,7 @@
xmlns:qdt="urn:un:unece:uncefact:data:standard:QualifiedDataType:100"
xmlns:udt="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:100"
targetNamespace="urn:un:unece:uncefact:data:standard:ReusableAggregateBusinessInformationEntity:100"
- elementFormDefault="qualified"
- version="100.D16B">
+ elementFormDefault="qualified">
<xs:import namespace="urn:un:unece:uncefact:data:standard:QualifiedDataType:100" schemaLocation="FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd"/>
<xs:import namespace="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:100" schemaLocation="FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd"/>
<xs:complexType name="CreditorFinancialAccountType">
@@ -16,7 +15,7 @@
</xs:complexType>
<xs:complexType name="DebtorFinancialAccountType">
<xs:sequence>
- <xs:element name="IBANID" type="udt:IDType" minOccurs="0"/>
+ <xs:element name="IBANID" type="udt:IDType"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="DocumentContextParameterType">
@@ -26,29 +25,23 @@
</xs:complexType>
<xs:complexType name="ExchangedDocumentContextType">
<xs:sequence>
- <xs:element name="BusinessProcessSpecifiedDocumentContextParameter" type="ram:DocumentContextParameterType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="GuidelineSpecifiedDocumentContextParameter" type="ram:DocumentContextParameterType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="BusinessProcessSpecifiedDocumentContextParameter" type="ram:DocumentContextParameterType" minOccurs="0"/>
+ <xs:element name="GuidelineSpecifiedDocumentContextParameter" type="ram:DocumentContextParameterType"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="ExchangedDocumentType">
<xs:sequence>
<xs:element name="ID" type="udt:IDType"/>
- <xs:element name="TypeCode" type="qdt:DocumentCodeType" minOccurs="0"/>
+ <xs:element name="TypeCode" type="qdt:DocumentCodeType"/>
<xs:element name="IssueDateTime" type="udt:DateTimeType"/>
<xs:element name="IncludedNote" type="ram:NoteType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
- <xs:complexType name="NoteType">
- <xs:sequence>
- <xs:element name="Content" type="udt:TextType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="SubjectCode" type="udt:CodeType" minOccurs="0"/>
- </xs:sequence>
- </xs:complexType>
<xs:complexType name="HeaderTradeAgreementType">
<xs:sequence>
<xs:element name="BuyerReference" type="udt:TextType" minOccurs="0"/>
- <xs:element name="SellerTradeParty" type="ram:TradePartyType" minOccurs="0"/>
- <xs:element name="BuyerTradeParty" type="ram:TradePartyType" minOccurs="0"/>
+ <xs:element name="SellerTradeParty" type="ram:TradePartyType"/>
+ <xs:element name="BuyerTradeParty" type="ram:TradePartyType"/>
<xs:element name="SellerTaxRepresentativeTradeParty" type="ram:TradePartyType" minOccurs="0"/>
<xs:element name="BuyerOrderReferencedDocument" type="ram:ReferencedDocumentType" minOccurs="0"/>
<xs:element name="ContractReferencedDocument" type="ram:ReferencedDocumentType" minOccurs="0"/>
@@ -56,6 +49,7 @@
</xs:complexType>
<xs:complexType name="HeaderTradeDeliveryType">
<xs:sequence>
+ <xs:element name="ShipToTradeParty" type="ram:TradePartyType" minOccurs="0"/>
<xs:element name="ActualDeliverySupplyChainEvent" type="ram:SupplyChainEventType" minOccurs="0"/>
<xs:element name="DespatchAdviceReferencedDocument" type="ram:ReferencedDocumentType" minOccurs="0"/>
</xs:sequence>
@@ -63,14 +57,15 @@
<xs:complexType name="HeaderTradeSettlementType">
<xs:sequence>
<xs:element name="CreditorReferenceID" type="udt:IDType" minOccurs="0"/>
- <xs:element name="PaymentReference" type="udt:TextType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="InvoiceCurrencyCode" type="qdt:CurrencyCodeType" minOccurs="0"/>
+ <xs:element name="PaymentReference" type="udt:TextType" minOccurs="0"/>
+ <xs:element name="InvoiceCurrencyCode" type="qdt:CurrencyCodeType"/>
<xs:element name="PayeeTradeParty" type="ram:TradePartyType" minOccurs="0"/>
<xs:element name="SpecifiedTradeSettlementPaymentMeans" type="ram:TradeSettlementPaymentMeansType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="ApplicableTradeTax" type="ram:TradeTaxType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="ApplicableTradeTax" type="ram:TradeTaxType" maxOccurs="unbounded"/>
+ <xs:element name="BillingSpecifiedPeriod" type="ram:SpecifiedPeriodType" minOccurs="0"/>
<xs:element name="SpecifiedTradeAllowanceCharge" type="ram:TradeAllowanceChargeType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="SpecifiedTradePaymentTerms" type="ram:TradePaymentTermsType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="SpecifiedTradeSettlementHeaderMonetarySummation" type="ram:TradeSettlementHeaderMonetarySummationType" minOccurs="0"/>
+ <xs:element name="SpecifiedTradePaymentTerms" type="ram:TradePaymentTermsType" minOccurs="0"/>
+ <xs:element name="SpecifiedTradeSettlementHeaderMonetarySummation" type="ram:TradeSettlementHeaderMonetarySummationType"/>
<xs:element name="InvoiceReferencedDocument" type="ram:ReferencedDocumentType" minOccurs="0"/>
<xs:element name="ReceivableSpecifiedTradeAccountingAccount" type="ram:TradeAccountingAccountType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
@@ -81,12 +76,24 @@
<xs:element name="TradingBusinessName" type="udt:TextType" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
+ <xs:complexType name="NoteType">
+ <xs:sequence>
+ <xs:element name="Content" type="udt:TextType"/>
+ <xs:element name="SubjectCode" type="udt:CodeType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
<xs:complexType name="ReferencedDocumentType">
<xs:sequence>
- <xs:element name="IssuerAssignedID" type="udt:IDType" minOccurs="0"/>
+ <xs:element name="IssuerAssignedID" type="udt:IDType"/>
<xs:element name="FormattedIssueDateTime" type="qdt:FormattedDateTimeType" minOccurs="0"/>
</xs:sequence>
- </xs:complexType>
+ </xs:complexType>
+ <xs:complexType name="SpecifiedPeriodType">
+ <xs:sequence>
+ <xs:element name="StartDateTime" type="udt:DateTimeType" minOccurs="0"/>
+ <xs:element name="EndDateTime" type="udt:DateTimeType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
<xs:complexType name="SupplyChainEventType">
<xs:sequence>
<xs:element name="OccurrenceDateTime" type="udt:DateTimeType" minOccurs="0"/>
@@ -101,7 +108,7 @@
</xs:complexType>
<xs:complexType name="TaxRegistrationType">
<xs:sequence>
- <xs:element name="ID" type="udt:IDType" minOccurs="0"/>
+ <xs:element name="ID" type="udt:IDType"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="TradeAccountingAccountType">
@@ -116,63 +123,64 @@
<xs:element name="LineTwo" type="udt:TextType" minOccurs="0"/>
<xs:element name="LineThree" type="udt:TextType" minOccurs="0"/>
<xs:element name="CityName" type="udt:TextType" minOccurs="0"/>
- <xs:element name="CountryID" type="qdt:CountryIDType" minOccurs="0"/>
+ <xs:element name="CountryID" type="qdt:CountryIDType"/>
+ <xs:element name="CountrySubDivisionName" type="udt:TextType" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="TradeAllowanceChargeType">
<xs:sequence>
- <xs:element name="ChargeIndicator" type="udt:IndicatorType" minOccurs="0"/>
+ <xs:element name="ChargeIndicator" type="udt:IndicatorType"/>
<xs:element name="CalculationPercent" type="udt:PercentType" minOccurs="0"/>
<xs:element name="BasisAmount" type="udt:AmountType" minOccurs="0"/>
- <xs:element name="ActualAmount" type="udt:AmountType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="ActualAmount" type="udt:AmountType"/>
<xs:element name="ReasonCode" type="qdt:AllowanceChargeReasonCodeType" minOccurs="0"/>
<xs:element name="Reason" type="udt:TextType" minOccurs="0"/>
- <xs:element name="CategoryTradeTax" type="ram:TradeTaxType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="CategoryTradeTax" type="ram:TradeTaxType"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="TradePartyType">
<xs:sequence>
<xs:element name="ID" type="udt:IDType" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="GlobalID" type="udt:IDType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="Name" type="udt:TextType" minOccurs="0"/>
+ <xs:element name="Name" type="udt:TextType"/>
<xs:element name="SpecifiedLegalOrganization" type="ram:LegalOrganizationType" minOccurs="0"/>
<xs:element name="PostalTradeAddress" type="ram:TradeAddressType" minOccurs="0"/>
- <xs:element name="URIUniversalCommunication" type="ram:UniversalCommunicationType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="URIUniversalCommunication" type="ram:UniversalCommunicationType" minOccurs="0"/>
<xs:element name="SpecifiedTaxRegistration" type="ram:TaxRegistrationType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="TradePaymentTermsType">
<xs:sequence>
<xs:element name="DueDateDateTime" type="udt:DateTimeType" minOccurs="0"/>
- <xs:element name="DirectDebitMandateID" type="udt:IDType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="DirectDebitMandateID" type="udt:IDType" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="TradeSettlementHeaderMonetarySummationType">
<xs:sequence>
- <xs:element name="LineTotalAmount" type="udt:AmountType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="ChargeTotalAmount" type="udt:AmountType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="AllowanceTotalAmount" type="udt:AmountType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="TaxBasisTotalAmount" type="udt:AmountType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="TaxTotalAmount" type="udt:AmountType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="GrandTotalAmount" type="udt:AmountType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="TotalPrepaidAmount" type="udt:AmountType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="DuePayableAmount" type="udt:AmountType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="LineTotalAmount" type="udt:AmountType"/>
+ <xs:element name="ChargeTotalAmount" type="udt:AmountType" minOccurs="0"/>
+ <xs:element name="AllowanceTotalAmount" type="udt:AmountType" minOccurs="0"/>
+ <xs:element name="TaxBasisTotalAmount" type="udt:AmountType"/>
+ <xs:element name="TaxTotalAmount" type="udt:AmountType"/>
+ <xs:element name="GrandTotalAmount" type="udt:AmountType"/>
+ <xs:element name="TotalPrepaidAmount" type="udt:AmountType" minOccurs="0"/>
+ <xs:element name="DuePayableAmount" type="udt:AmountType"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="TradeSettlementPaymentMeansType">
<xs:sequence>
- <xs:element name="TypeCode" type="qdt:PaymentMeansCodeType" minOccurs="0"/>
+ <xs:element name="TypeCode" type="qdt:PaymentMeansCodeType"/>
<xs:element name="PayerPartyDebtorFinancialAccount" type="ram:DebtorFinancialAccountType" minOccurs="0"/>
<xs:element name="PayeePartyCreditorFinancialAccount" type="ram:CreditorFinancialAccountType" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="TradeTaxType">
<xs:sequence>
- <xs:element name="CalculatedAmount" type="udt:AmountType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="TypeCode" type="qdt:TaxTypeCodeType" minOccurs="0"/>
+ <xs:element name="CalculatedAmount" type="udt:AmountType" minOccurs="0"/>
+ <xs:element name="TypeCode" type="qdt:TaxTypeCodeType"/>
<xs:element name="ExemptionReason" type="udt:TextType" minOccurs="0"/>
- <xs:element name="BasisAmount" type="udt:AmountType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="CategoryCode" type="qdt:TaxCategoryCodeType" minOccurs="0"/>
+ <xs:element name="BasisAmount" type="udt:AmountType" minOccurs="0"/>
+ <xs:element name="CategoryCode" type="qdt:TaxCategoryCodeType"/>
<xs:element name="ExemptionReasonCode" type="udt:CodeType" minOccurs="0"/>
<xs:element name="DueDateTypeCode" type="qdt:TimeReferenceCodeType" minOccurs="0"/>
<xs:element name="RateApplicablePercent" type="udt:PercentType" minOccurs="0"/>
@@ -180,7 +188,7 @@
</xs:complexType>
<xs:complexType name="UniversalCommunicationType">
<xs:sequence>
- <xs:element name="URIID" type="udt:IDType" minOccurs="0"/>
+ <xs:element name="URIID" type="udt:IDType"/>
</xs:sequence>
</xs:complexType>
</xs:schema>
diff --git a/facturx/xsd/factur-x/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd b/facturx/xsd/facturx-basicwl/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd
index baa9c12..3e2545e 100644
--- a/facturx/xsd/factur-x/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd
+++ b/facturx/xsd/facturx-basicwl/FACTUR-X_BASIC-WL_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd
@@ -7,7 +7,7 @@
<xs:complexType name="AmountType">
<xs:simpleContent>
<xs:extension base="xs:decimal">
- <xs:attribute name="currencyID" type="xs:token"/>
+ <xs:attribute name="currencyID" type="xs:token" use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
@@ -22,7 +22,7 @@
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
- <xs:attribute name="format" type="xs:string"/>
+ <xs:attribute name="format" type="xs:string" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
@@ -32,7 +32,7 @@
<xs:complexType name="IDType">
<xs:simpleContent>
<xs:extension base="xs:token">
- <xs:attribute name="schemeID" type="xs:token"/>
+ <xs:attribute name="schemeID" type="xs:token" use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
diff --git a/facturx/xsd/factur-x/FACTUR-X_EN16931.xsd b/facturx/xsd/facturx-en16931/FACTUR-X_EN16931.xsd
index 6730ebd..6730ebd 100644
--- a/facturx/xsd/factur-x/FACTUR-X_EN16931.xsd
+++ b/facturx/xsd/facturx-en16931/FACTUR-X_EN16931.xsd
diff --git a/facturx/xsd/facturx-en16931/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd b/facturx/xsd/facturx-en16931/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd
new file mode 100644
index 0000000..6a4280b
--- /dev/null
+++ b/facturx/xsd/facturx-en16931/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd
@@ -0,0 +1,1735 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:qdt="urn:un:unece:uncefact:data:standard:QualifiedDataType:100"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ xmlns:udt="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:100"
+ targetNamespace="urn:un:unece:uncefact:data:standard:QualifiedDataType:100"
+ elementFormDefault="qualified"
+ version="100.D16B">
+ <xs:import namespace="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:100" schemaLocation="FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd"/>
+ <xs:simpleType name="AllowanceChargeReasonCodeContentType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="AA"/>
+ <xs:enumeration value="AAA"/>
+ <xs:enumeration value="AAC"/>
+ <xs:enumeration value="AAD"/>
+ <xs:enumeration value="AAE"/>
+ <xs:enumeration value="AAF"/>
+ <xs:enumeration value="AAH"/>
+ <xs:enumeration value="AAI"/>
+ <xs:enumeration value="AAS"/>
+ <xs:enumeration value="AAT"/>
+ <xs:enumeration value="AAV"/>
+ <xs:enumeration value="AAY"/>
+ <xs:enumeration value="AAZ"/>
+ <xs:enumeration value="ABA"/>
+ <xs:enumeration value="ABB"/>
+ <xs:enumeration value="ABC"/>
+ <xs:enumeration value="ABD"/>
+ <xs:enumeration value="ABF"/>
+ <xs:enumeration value="ABK"/>
+ <xs:enumeration value="ABL"/>
+ <xs:enumeration value="ABN"/>
+ <xs:enumeration value="ABR"/>
+ <xs:enumeration value="ABS"/>
+ <xs:enumeration value="ABT"/>
+ <xs:enumeration value="ABU"/>
+ <xs:enumeration value="ACF"/>
+ <xs:enumeration value="ACG"/>
+ <xs:enumeration value="ACH"/>
+ <xs:enumeration value="ACI"/>
+ <xs:enumeration value="ACJ"/>
+ <xs:enumeration value="ACK"/>
+ <xs:enumeration value="ACL"/>
+ <xs:enumeration value="ACM"/>
+ <xs:enumeration value="ACS"/>
+ <xs:enumeration value="ADC"/>
+ <xs:enumeration value="ADE"/>
+ <xs:enumeration value="ADJ"/>
+ <xs:enumeration value="ADK"/>
+ <xs:enumeration value="ADL"/>
+ <xs:enumeration value="ADM"/>
+ <xs:enumeration value="ADN"/>
+ <xs:enumeration value="ADO"/>
+ <xs:enumeration value="ADP"/>
+ <xs:enumeration value="ADQ"/>
+ <xs:enumeration value="ADR"/>
+ <xs:enumeration value="ADT"/>
+ <xs:enumeration value="ADW"/>
+ <xs:enumeration value="ADY"/>
+ <xs:enumeration value="ADZ"/>
+ <xs:enumeration value="AEA"/>
+ <xs:enumeration value="AEB"/>
+ <xs:enumeration value="AEC"/>
+ <xs:enumeration value="AED"/>
+ <xs:enumeration value="AEF"/>
+ <xs:enumeration value="AEH"/>
+ <xs:enumeration value="AEI"/>
+ <xs:enumeration value="AEJ"/>
+ <xs:enumeration value="AEK"/>
+ <xs:enumeration value="AEL"/>
+ <xs:enumeration value="AEM"/>
+ <xs:enumeration value="AEN"/>
+ <xs:enumeration value="AEO"/>
+ <xs:enumeration value="AEP"/>
+ <xs:enumeration value="AES"/>
+ <xs:enumeration value="AET"/>
+ <xs:enumeration value="AEU"/>
+ <xs:enumeration value="AEV"/>
+ <xs:enumeration value="AEW"/>
+ <xs:enumeration value="AEX"/>
+ <xs:enumeration value="AEY"/>
+ <xs:enumeration value="AEZ"/>
+ <xs:enumeration value="AJ"/>
+ <xs:enumeration value="AU"/>
+ <xs:enumeration value="CA"/>
+ <xs:enumeration value="CAB"/>
+ <xs:enumeration value="CAD"/>
+ <xs:enumeration value="CAE"/>
+ <xs:enumeration value="CAF"/>
+ <xs:enumeration value="CAI"/>
+ <xs:enumeration value="CAJ"/>
+ <xs:enumeration value="CAK"/>
+ <xs:enumeration value="CAL"/>
+ <xs:enumeration value="CAM"/>
+ <xs:enumeration value="CAN"/>
+ <xs:enumeration value="CAO"/>
+ <xs:enumeration value="CAP"/>
+ <xs:enumeration value="CAQ"/>
+ <xs:enumeration value="CAR"/>
+ <xs:enumeration value="CAS"/>
+ <xs:enumeration value="CAT"/>
+ <xs:enumeration value="CAU"/>
+ <xs:enumeration value="CAV"/>
+ <xs:enumeration value="CAW"/>
+ <xs:enumeration value="CAX"/>
+ <xs:enumeration value="CAY"/>
+ <xs:enumeration value="CAZ"/>
+ <xs:enumeration value="CD"/>
+ <xs:enumeration value="CG"/>
+ <xs:enumeration value="CS"/>
+ <xs:enumeration value="CT"/>
+ <xs:enumeration value="DAB"/>
+ <xs:enumeration value="DAC"/>
+ <xs:enumeration value="DAD"/>
+ <xs:enumeration value="DAF"/>
+ <xs:enumeration value="DAG"/>
+ <xs:enumeration value="DAH"/>
+ <xs:enumeration value="DAI"/>
+ <xs:enumeration value="DAJ"/>
+ <xs:enumeration value="DAK"/>
+ <xs:enumeration value="DAL"/>
+ <xs:enumeration value="DAM"/>
+ <xs:enumeration value="DAN"/>
+ <xs:enumeration value="DAO"/>
+ <xs:enumeration value="DAP"/>
+ <xs:enumeration value="DAQ"/>
+ <xs:enumeration value="DL"/>
+ <xs:enumeration value="EG"/>
+ <xs:enumeration value="EP"/>
+ <xs:enumeration value="ER"/>
+ <xs:enumeration value="FAA"/>
+ <xs:enumeration value="FAB"/>
+ <xs:enumeration value="FAC"/>
+ <xs:enumeration value="FC"/>
+ <xs:enumeration value="FH"/>
+ <xs:enumeration value="FI"/>
+ <xs:enumeration value="GAA"/>
+ <xs:enumeration value="HAA"/>
+ <xs:enumeration value="HD"/>
+ <xs:enumeration value="HH"/>
+ <xs:enumeration value="IAA"/>
+ <xs:enumeration value="IAB"/>
+ <xs:enumeration value="ID"/>
+ <xs:enumeration value="IF"/>
+ <xs:enumeration value="IR"/>
+ <xs:enumeration value="IS"/>
+ <xs:enumeration value="KO"/>
+ <xs:enumeration value="L1"/>
+ <xs:enumeration value="LA"/>
+ <xs:enumeration value="LAA"/>
+ <xs:enumeration value="LAB"/>
+ <xs:enumeration value="LF"/>
+ <xs:enumeration value="MAE"/>
+ <xs:enumeration value="MI"/>
+ <xs:enumeration value="ML"/>
+ <xs:enumeration value="NAA"/>
+ <xs:enumeration value="OA"/>
+ <xs:enumeration value="PA"/>
+ <xs:enumeration value="PAA"/>
+ <xs:enumeration value="PC"/>
+ <xs:enumeration value="PL"/>
+ <xs:enumeration value="RAB"/>
+ <xs:enumeration value="RAC"/>
+ <xs:enumeration value="RAD"/>
+ <xs:enumeration value="RAF"/>
+ <xs:enumeration value="RE"/>
+ <xs:enumeration value="RF"/>
+ <xs:enumeration value="RH"/>
+ <xs:enumeration value="RV"/>
+ <xs:enumeration value="SA"/>
+ <xs:enumeration value="SAA"/>
+ <xs:enumeration value="SAD"/>
+ <xs:enumeration value="SAE"/>
+ <xs:enumeration value="SAI"/>
+ <xs:enumeration value="SG"/>
+ <xs:enumeration value="SH"/>
+ <xs:enumeration value="SM"/>
+ <xs:enumeration value="SU"/>
+ <xs:enumeration value="TAB"/>
+ <xs:enumeration value="TAC"/>
+ <xs:enumeration value="TT"/>
+ <xs:enumeration value="TV"/>
+ <xs:enumeration value="V1"/>
+ <xs:enumeration value="V2"/>
+ <xs:enumeration value="WH"/>
+ <xs:enumeration value="XAA"/>
+ <xs:enumeration value="YY"/>
+ <xs:enumeration value="ZZZ"/>
+ <xs:enumeration value="41"/>
+ <xs:enumeration value="42"/>
+ <xs:enumeration value="60"/>
+ <xs:enumeration value="62"/>
+ <xs:enumeration value="63"/>
+ <xs:enumeration value="64"/>
+ <xs:enumeration value="65"/>
+ <xs:enumeration value="66"/>
+ <xs:enumeration value="67"/>
+ <xs:enumeration value="68"/>
+ <xs:enumeration value="70"/>
+ <xs:enumeration value="71"/>
+ <xs:enumeration value="88"/>
+ <xs:enumeration value="95"/>
+ <xs:enumeration value="100"/>
+ <xs:enumeration value="102"/>
+ <xs:enumeration value="103"/>
+ <xs:enumeration value="104"/>
+ <xs:enumeration value="105"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="AllowanceChargeReasonCodeType">
+ <xs:simpleContent>
+ <xs:extension base="qdt:AllowanceChargeReasonCodeContentType"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:simpleType name="CountryIDContentType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="AD"/>
+ <xs:enumeration value="AE"/>
+ <xs:enumeration value="AF"/>
+ <xs:enumeration value="AG"/>
+ <xs:enumeration value="AI"/>
+ <xs:enumeration value="AL"/>
+ <xs:enumeration value="AM"/>
+ <xs:enumeration value="AO"/>
+ <xs:enumeration value="AQ"/>
+ <xs:enumeration value="AR"/>
+ <xs:enumeration value="AS"/>
+ <xs:enumeration value="AT"/>
+ <xs:enumeration value="AU"/>
+ <xs:enumeration value="AW"/>
+ <xs:enumeration value="AX"/>
+ <xs:enumeration value="AZ"/>
+ <xs:enumeration value="BA"/>
+ <xs:enumeration value="BB"/>
+ <xs:enumeration value="BD"/>
+ <xs:enumeration value="BE"/>
+ <xs:enumeration value="BF"/>
+ <xs:enumeration value="BG"/>
+ <xs:enumeration value="BH"/>
+ <xs:enumeration value="BI"/>
+ <xs:enumeration value="BJ"/>
+ <xs:enumeration value="BL"/>
+ <xs:enumeration value="BM"/>
+ <xs:enumeration value="BN"/>
+ <xs:enumeration value="BO"/>
+ <xs:enumeration value="BQ"/>
+ <xs:enumeration value="BR"/>
+ <xs:enumeration value="BS"/>
+ <xs:enumeration value="BT"/>
+ <xs:enumeration value="BV"/>
+ <xs:enumeration value="BW"/>
+ <xs:enumeration value="BY"/>
+ <xs:enumeration value="BZ"/>
+ <xs:enumeration value="CA"/>
+ <xs:enumeration value="CC"/>
+ <xs:enumeration value="CD"/>
+ <xs:enumeration value="CF"/>
+ <xs:enumeration value="CG"/>
+ <xs:enumeration value="CH"/>
+ <xs:enumeration value="CI"/>
+ <xs:enumeration value="CK"/>
+ <xs:enumeration value="CL"/>
+ <xs:enumeration value="CM"/>
+ <xs:enumeration value="CN"/>
+ <xs:enumeration value="CO"/>
+ <xs:enumeration value="CR"/>
+ <xs:enumeration value="CU"/>
+ <xs:enumeration value="CV"/>
+ <xs:enumeration value="CW"/>
+ <xs:enumeration value="CX"/>
+ <xs:enumeration value="CY"/>
+ <xs:enumeration value="CZ"/>
+ <xs:enumeration value="DE"/>
+ <xs:enumeration value="DJ"/>
+ <xs:enumeration value="DK"/>
+ <xs:enumeration value="DM"/>
+ <xs:enumeration value="DO"/>
+ <xs:enumeration value="DZ"/>
+ <xs:enumeration value="EC"/>
+ <xs:enumeration value="EE"/>
+ <xs:enumeration value="EG"/>
+ <xs:enumeration value="EH"/>
+ <xs:enumeration value="ER"/>
+ <xs:enumeration value="ES"/>
+ <xs:enumeration value="ET"/>
+ <xs:enumeration value="FI"/>
+ <xs:enumeration value="FJ"/>
+ <xs:enumeration value="FK"/>
+ <xs:enumeration value="FM"/>
+ <xs:enumeration value="FO"/>
+ <xs:enumeration value="FR"/>
+ <xs:enumeration value="GA"/>
+ <xs:enumeration value="GB"/>
+ <xs:enumeration value="GD"/>
+ <xs:enumeration value="GE"/>
+ <xs:enumeration value="GF"/>
+ <xs:enumeration value="GG"/>
+ <xs:enumeration value="GH"/>
+ <xs:enumeration value="GI"/>
+ <xs:enumeration value="GL"/>
+ <xs:enumeration value="GM"/>
+ <xs:enumeration value="GN"/>
+ <xs:enumeration value="GP"/>
+ <xs:enumeration value="GQ"/>
+ <xs:enumeration value="GR"/>
+ <xs:enumeration value="GS"/>
+ <xs:enumeration value="GT"/>
+ <xs:enumeration value="GU"/>
+ <xs:enumeration value="GW"/>
+ <xs:enumeration value="GY"/>
+ <xs:enumeration value="HK"/>
+ <xs:enumeration value="HM"/>
+ <xs:enumeration value="HN"/>
+ <xs:enumeration value="HR"/>
+ <xs:enumeration value="HT"/>
+ <xs:enumeration value="HU"/>
+ <xs:enumeration value="ID"/>
+ <xs:enumeration value="IE"/>
+ <xs:enumeration value="IL"/>
+ <xs:enumeration value="IM"/>
+ <xs:enumeration value="IN"/>
+ <xs:enumeration value="IO"/>
+ <xs:enumeration value="IQ"/>
+ <xs:enumeration value="IR"/>
+ <xs:enumeration value="IS"/>
+ <xs:enumeration value="IT"/>
+ <xs:enumeration value="JE"/>
+ <xs:enumeration value="JM"/>
+ <xs:enumeration value="JO"/>
+ <xs:enumeration value="JP"/>
+ <xs:enumeration value="KE"/>
+ <xs:enumeration value="KG"/>
+ <xs:enumeration value="KH"/>
+ <xs:enumeration value="KI"/>
+ <xs:enumeration value="KM"/>
+ <xs:enumeration value="KN"/>
+ <xs:enumeration value="KP"/>
+ <xs:enumeration value="KR"/>
+ <xs:enumeration value="KW"/>
+ <xs:enumeration value="KY"/>
+ <xs:enumeration value="KZ"/>
+ <xs:enumeration value="LA"/>
+ <xs:enumeration value="LB"/>
+ <xs:enumeration value="LC"/>
+ <xs:enumeration value="LI"/>
+ <xs:enumeration value="LK"/>
+ <xs:enumeration value="LR"/>
+ <xs:enumeration value="LS"/>
+ <xs:enumeration value="LT"/>
+ <xs:enumeration value="LU"/>
+ <xs:enumeration value="LV"/>
+ <xs:enumeration value="LY"/>
+ <xs:enumeration value="MA"/>
+ <xs:enumeration value="MC"/>
+ <xs:enumeration value="MD"/>
+ <xs:enumeration value="ME"/>
+ <xs:enumeration value="MF"/>
+ <xs:enumeration value="MG"/>
+ <xs:enumeration value="MH"/>
+ <xs:enumeration value="MK"/>
+ <xs:enumeration value="ML"/>
+ <xs:enumeration value="MM"/>
+ <xs:enumeration value="MN"/>
+ <xs:enumeration value="MO"/>
+ <xs:enumeration value="MP"/>
+ <xs:enumeration value="MQ"/>
+ <xs:enumeration value="MR"/>
+ <xs:enumeration value="MS"/>
+ <xs:enumeration value="MT"/>
+ <xs:enumeration value="MU"/>
+ <xs:enumeration value="MV"/>
+ <xs:enumeration value="MW"/>
+ <xs:enumeration value="MX"/>
+ <xs:enumeration value="MY"/>
+ <xs:enumeration value="MZ"/>
+ <xs:enumeration value="NA"/>
+ <xs:enumeration value="NC"/>
+ <xs:enumeration value="NE"/>
+ <xs:enumeration value="NF"/>
+ <xs:enumeration value="NG"/>
+ <xs:enumeration value="NI"/>
+ <xs:enumeration value="NL"/>
+ <xs:enumeration value="NO"/>
+ <xs:enumeration value="NP"/>
+ <xs:enumeration value="NR"/>
+ <xs:enumeration value="NU"/>
+ <xs:enumeration value="NZ"/>
+ <xs:enumeration value="OM"/>
+ <xs:enumeration value="PA"/>
+ <xs:enumeration value="PE"/>
+ <xs:enumeration value="PF"/>
+ <xs:enumeration value="PG"/>
+ <xs:enumeration value="PH"/>
+ <xs:enumeration value="PK"/>
+ <xs:enumeration value="PL"/>
+ <xs:enumeration value="PM"/>
+ <xs:enumeration value="PN"/>
+ <xs:enumeration value="PR"/>
+ <xs:enumeration value="PS"/>
+ <xs:enumeration value="PT"/>
+ <xs:enumeration value="PW"/>
+ <xs:enumeration value="PY"/>
+ <xs:enumeration value="QA"/>
+ <xs:enumeration value="RE"/>
+ <xs:enumeration value="RO"/>
+ <xs:enumeration value="RS"/>
+ <xs:enumeration value="RU"/>
+ <xs:enumeration value="RW"/>
+ <xs:enumeration value="SA"/>
+ <xs:enumeration value="SB"/>
+ <xs:enumeration value="SC"/>
+ <xs:enumeration value="SD"/>
+ <xs:enumeration value="SE"/>
+ <xs:enumeration value="SG"/>
+ <xs:enumeration value="SH"/>
+ <xs:enumeration value="SI"/>
+ <xs:enumeration value="SJ"/>
+ <xs:enumeration value="SK"/>
+ <xs:enumeration value="SL"/>
+ <xs:enumeration value="SM"/>
+ <xs:enumeration value="SN"/>
+ <xs:enumeration value="SO"/>
+ <xs:enumeration value="SR"/>
+ <xs:enumeration value="SS"/>
+ <xs:enumeration value="ST"/>
+ <xs:enumeration value="SV"/>
+ <xs:enumeration value="SX"/>
+ <xs:enumeration value="SY"/>
+ <xs:enumeration value="SZ"/>
+ <xs:enumeration value="TC"/>
+ <xs:enumeration value="TD"/>
+ <xs:enumeration value="TF"/>
+ <xs:enumeration value="TG"/>
+ <xs:enumeration value="TH"/>
+ <xs:enumeration value="TJ"/>
+ <xs:enumeration value="TK"/>
+ <xs:enumeration value="TL"/>
+ <xs:enumeration value="TM"/>
+ <xs:enumeration value="TN"/>
+ <xs:enumeration value="TO"/>
+ <xs:enumeration value="TR"/>
+ <xs:enumeration value="TT"/>
+ <xs:enumeration value="TV"/>
+ <xs:enumeration value="TW"/>
+ <xs:enumeration value="TZ"/>
+ <xs:enumeration value="UA"/>
+ <xs:enumeration value="UG"/>
+ <xs:enumeration value="UM"/>
+ <xs:enumeration value="US"/>
+ <xs:enumeration value="UY"/>
+ <xs:enumeration value="UZ"/>
+ <xs:enumeration value="VA"/>
+ <xs:enumeration value="VC"/>
+ <xs:enumeration value="VE"/>
+ <xs:enumeration value="VG"/>
+ <xs:enumeration value="VI"/>
+ <xs:enumeration value="VN"/>
+ <xs:enumeration value="VU"/>
+ <xs:enumeration value="WF"/>
+ <xs:enumeration value="WS"/>
+ <xs:enumeration value="YE"/>
+ <xs:enumeration value="YT"/>
+ <xs:enumeration value="ZA"/>
+ <xs:enumeration value="ZM"/>
+ <xs:enumeration value="ZW"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="CountryIDType">
+ <xs:simpleContent>
+ <xs:extension base="qdt:CountryIDContentType"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:simpleType name="CurrencyCodeContentType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="AED"/>
+ <xs:enumeration value="ALL"/>
+ <xs:enumeration value="AMD"/>
+ <xs:enumeration value="ANG"/>
+ <xs:enumeration value="AOA"/>
+ <xs:enumeration value="ARS"/>
+ <xs:enumeration value="AUD"/>
+ <xs:enumeration value="AWG"/>
+ <xs:enumeration value="AZN"/>
+ <xs:enumeration value="BAM"/>
+ <xs:enumeration value="BBD"/>
+ <xs:enumeration value="BDT"/>
+ <xs:enumeration value="BGN"/>
+ <xs:enumeration value="BHD"/>
+ <xs:enumeration value="BIF"/>
+ <xs:enumeration value="BMD"/>
+ <xs:enumeration value="BND"/>
+ <xs:enumeration value="BOB"/>
+ <xs:enumeration value="BOV"/>
+ <xs:enumeration value="BRL"/>
+ <xs:enumeration value="BSD"/>
+ <xs:enumeration value="BTN"/>
+ <xs:enumeration value="BWP"/>
+ <xs:enumeration value="BYN"/>
+ <xs:enumeration value="BZD"/>
+ <xs:enumeration value="CAD"/>
+ <xs:enumeration value="CDF"/>
+ <xs:enumeration value="CHE"/>
+ <xs:enumeration value="CHF"/>
+ <xs:enumeration value="CHW"/>
+ <xs:enumeration value="CLF"/>
+ <xs:enumeration value="CLP"/>
+ <xs:enumeration value="CNY"/>
+ <xs:enumeration value="COP"/>
+ <xs:enumeration value="COU"/>
+ <xs:enumeration value="CRC"/>
+ <xs:enumeration value="CUC"/>
+ <xs:enumeration value="CUP"/>
+ <xs:enumeration value="CVE"/>
+ <xs:enumeration value="CZK"/>
+ <xs:enumeration value="DJF"/>
+ <xs:enumeration value="DKK"/>
+ <xs:enumeration value="DOP"/>
+ <xs:enumeration value="DZD"/>
+ <xs:enumeration value="EGP"/>
+ <xs:enumeration value="ERN"/>
+ <xs:enumeration value="ETB"/>
+ <xs:enumeration value="EUR"/>
+ <xs:enumeration value="FJD"/>
+ <xs:enumeration value="FKP"/>
+ <xs:enumeration value="GBP"/>
+ <xs:enumeration value="GEL"/>
+ <xs:enumeration value="GHS"/>
+ <xs:enumeration value="GIP"/>
+ <xs:enumeration value="GMD"/>
+ <xs:enumeration value="GNF"/>
+ <xs:enumeration value="GTQ"/>
+ <xs:enumeration value="GYD"/>
+ <xs:enumeration value="HKD"/>
+ <xs:enumeration value="HNL"/>
+ <xs:enumeration value="HRK"/>
+ <xs:enumeration value="HTG"/>
+ <xs:enumeration value="HUF"/>
+ <xs:enumeration value="IDR"/>
+ <xs:enumeration value="ILS"/>
+ <xs:enumeration value="INR"/>
+ <xs:enumeration value="IQD"/>
+ <xs:enumeration value="IRR"/>
+ <xs:enumeration value="ISK"/>
+ <xs:enumeration value="JMD"/>
+ <xs:enumeration value="JOD"/>
+ <xs:enumeration value="JPY"/>
+ <xs:enumeration value="KES"/>
+ <xs:enumeration value="KGS"/>
+ <xs:enumeration value="KHR"/>
+ <xs:enumeration value="KMF"/>
+ <xs:enumeration value="KPW"/>
+ <xs:enumeration value="KRW"/>
+ <xs:enumeration value="KWD"/>
+ <xs:enumeration value="KYD"/>
+ <xs:enumeration value="KZT"/>
+ <xs:enumeration value="LAK"/>
+ <xs:enumeration value="LBP"/>
+ <xs:enumeration value="LKR"/>
+ <xs:enumeration value="LRD"/>
+ <xs:enumeration value="LSL"/>
+ <xs:enumeration value="LYD"/>
+ <xs:enumeration value="MAD"/>
+ <xs:enumeration value="MDL"/>
+ <xs:enumeration value="MGA"/>
+ <xs:enumeration value="MKD"/>
+ <xs:enumeration value="MMK"/>
+ <xs:enumeration value="MNT"/>
+ <xs:enumeration value="MOP"/>
+ <xs:enumeration value="MRO"/>
+ <xs:enumeration value="MUR"/>
+ <xs:enumeration value="MVR"/>
+ <xs:enumeration value="MWK"/>
+ <xs:enumeration value="MXN"/>
+ <xs:enumeration value="MXV"/>
+ <xs:enumeration value="MYR"/>
+ <xs:enumeration value="MZN"/>
+ <xs:enumeration value="NAD"/>
+ <xs:enumeration value="NGN"/>
+ <xs:enumeration value="NIO"/>
+ <xs:enumeration value="NOK"/>
+ <xs:enumeration value="NPR"/>
+ <xs:enumeration value="NZD"/>
+ <xs:enumeration value="OMR"/>
+ <xs:enumeration value="PAB"/>
+ <xs:enumeration value="PEN"/>
+ <xs:enumeration value="PGK"/>
+ <xs:enumeration value="PHP"/>
+ <xs:enumeration value="PKR"/>
+ <xs:enumeration value="PLN"/>
+ <xs:enumeration value="PYG"/>
+ <xs:enumeration value="QAR"/>
+ <xs:enumeration value="RON"/>
+ <xs:enumeration value="RSD"/>
+ <xs:enumeration value="RUB"/>
+ <xs:enumeration value="RWF"/>
+ <xs:enumeration value="SAR"/>
+ <xs:enumeration value="SBD"/>
+ <xs:enumeration value="SCR"/>
+ <xs:enumeration value="SDG"/>
+ <xs:enumeration value="SEK"/>
+ <xs:enumeration value="SGD"/>
+ <xs:enumeration value="SHP"/>
+ <xs:enumeration value="SLL"/>
+ <xs:enumeration value="SOS"/>
+ <xs:enumeration value="SRD"/>
+ <xs:enumeration value="SSP"/>
+ <xs:enumeration value="STD"/>
+ <xs:enumeration value="SVC"/>
+ <xs:enumeration value="SYP"/>
+ <xs:enumeration value="SZL"/>
+ <xs:enumeration value="THB"/>
+ <xs:enumeration value="TJS"/>
+ <xs:enumeration value="TMT"/>
+ <xs:enumeration value="TND"/>
+ <xs:enumeration value="TOP"/>
+ <xs:enumeration value="TRY"/>
+ <xs:enumeration value="TTD"/>
+ <xs:enumeration value="TWD"/>
+ <xs:enumeration value="TZS"/>
+ <xs:enumeration value="UAH"/>
+ <xs:enumeration value="UGX"/>
+ <xs:enumeration value="USD"/>
+ <xs:enumeration value="USN"/>
+ <xs:enumeration value="UYI"/>
+ <xs:enumeration value="UYU"/>
+ <xs:enumeration value="UYW"/>
+ <xs:enumeration value="UZS"/>
+ <xs:enumeration value="VEF"/>
+ <xs:enumeration value="VND"/>
+ <xs:enumeration value="VUV"/>
+ <xs:enumeration value="WST"/>
+ <xs:enumeration value="XAF"/>
+ <xs:enumeration value="XAG"/>
+ <xs:enumeration value="XAU"/>
+ <xs:enumeration value="XBA"/>
+ <xs:enumeration value="XBB"/>
+ <xs:enumeration value="XBC"/>
+ <xs:enumeration value="XBD"/>
+ <xs:enumeration value="XCD"/>
+ <xs:enumeration value="XDR"/>
+ <xs:enumeration value="XOF"/>
+ <xs:enumeration value="XPD"/>
+ <xs:enumeration value="XPF"/>
+ <xs:enumeration value="XPT"/>
+ <xs:enumeration value="XSU"/>
+ <xs:enumeration value="XTS"/>
+ <xs:enumeration value="XUA"/>
+ <xs:enumeration value="XXX"/>
+ <xs:enumeration value="YER"/>
+ <xs:enumeration value="ZAR"/>
+ <xs:enumeration value="ZMW"/>
+ <xs:enumeration value="ZWL"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="CurrencyCodeType">
+ <xs:simpleContent>
+ <xs:extension base="qdt:CurrencyCodeContentType"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:simpleType name="DocumentCodeContentType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="50"/>
+ <xs:enumeration value="80"/>
+ <xs:enumeration value="81"/>
+ <xs:enumeration value="82"/>
+ <xs:enumeration value="83"/>
+ <xs:enumeration value="84"/>
+ <xs:enumeration value="130"/>
+ <xs:enumeration value="202"/>
+ <xs:enumeration value="203"/>
+ <xs:enumeration value="204"/>
+ <xs:enumeration value="211"/>
+ <xs:enumeration value="261"/>
+ <xs:enumeration value="262"/>
+ <xs:enumeration value="295"/>
+ <xs:enumeration value="296"/>
+ <xs:enumeration value="308"/>
+ <xs:enumeration value="325"/>
+ <xs:enumeration value="326"/>
+ <xs:enumeration value="380"/>
+ <xs:enumeration value="381"/>
+ <xs:enumeration value="383"/>
+ <xs:enumeration value="384"/>
+ <xs:enumeration value="385"/>
+ <xs:enumeration value="386"/>
+ <xs:enumeration value="387"/>
+ <xs:enumeration value="388"/>
+ <xs:enumeration value="389"/>
+ <xs:enumeration value="390"/>
+ <xs:enumeration value="393"/>
+ <xs:enumeration value="394"/>
+ <xs:enumeration value="395"/>
+ <xs:enumeration value="396"/>
+ <xs:enumeration value="420"/>
+ <xs:enumeration value="456"/>
+ <xs:enumeration value="457"/>
+ <xs:enumeration value="458"/>
+ <xs:enumeration value="527"/>
+ <xs:enumeration value="575"/>
+ <xs:enumeration value="623"/>
+ <xs:enumeration value="633"/>
+ <xs:enumeration value="751"/>
+ <xs:enumeration value="780"/>
+ <xs:enumeration value="916"/>
+ <xs:enumeration value="935"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="DocumentCodeType">
+ <xs:simpleContent>
+ <xs:extension base="qdt:DocumentCodeContentType"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:simpleType name="FormattedDateTimeFormatContentType">
+ <xs:restriction base="xs:string"/>
+ </xs:simpleType>
+ <xs:complexType name="FormattedDateTimeType">
+ <xs:sequence>
+ <xs:element name="DateTimeString">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute name="format" type="qdt:FormattedDateTimeFormatContentType" use="required"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:simpleType name="PaymentMeansCodeContentType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="1"/>
+ <xs:enumeration value="2"/>
+ <xs:enumeration value="3"/>
+ <xs:enumeration value="4"/>
+ <xs:enumeration value="5"/>
+ <xs:enumeration value="6"/>
+ <xs:enumeration value="7"/>
+ <xs:enumeration value="8"/>
+ <xs:enumeration value="9"/>
+ <xs:enumeration value="10"/>
+ <xs:enumeration value="11"/>
+ <xs:enumeration value="12"/>
+ <xs:enumeration value="13"/>
+ <xs:enumeration value="14"/>
+ <xs:enumeration value="15"/>
+ <xs:enumeration value="16"/>
+ <xs:enumeration value="17"/>
+ <xs:enumeration value="18"/>
+ <xs:enumeration value="19"/>
+ <xs:enumeration value="20"/>
+ <xs:enumeration value="21"/>
+ <xs:enumeration value="22"/>
+ <xs:enumeration value="23"/>
+ <xs:enumeration value="24"/>
+ <xs:enumeration value="25"/>
+ <xs:enumeration value="26"/>
+ <xs:enumeration value="27"/>
+ <xs:enumeration value="28"/>
+ <xs:enumeration value="29"/>
+ <xs:enumeration value="30"/>
+ <xs:enumeration value="31"/>
+ <xs:enumeration value="32"/>
+ <xs:enumeration value="33"/>
+ <xs:enumeration value="34"/>
+ <xs:enumeration value="35"/>
+ <xs:enumeration value="36"/>
+ <xs:enumeration value="37"/>
+ <xs:enumeration value="38"/>
+ <xs:enumeration value="39"/>
+ <xs:enumeration value="40"/>
+ <xs:enumeration value="41"/>
+ <xs:enumeration value="42"/>
+ <xs:enumeration value="43"/>
+ <xs:enumeration value="44"/>
+ <xs:enumeration value="45"/>
+ <xs:enumeration value="46"/>
+ <xs:enumeration value="47"/>
+ <xs:enumeration value="48"/>
+ <xs:enumeration value="49"/>
+ <xs:enumeration value="50"/>
+ <xs:enumeration value="51"/>
+ <xs:enumeration value="52"/>
+ <xs:enumeration value="53"/>
+ <xs:enumeration value="54"/>
+ <xs:enumeration value="55"/>
+ <xs:enumeration value="56"/>
+ <xs:enumeration value="57"/>
+ <xs:enumeration value="58"/>
+ <xs:enumeration value="59"/>
+ <xs:enumeration value="60"/>
+ <xs:enumeration value="61"/>
+ <xs:enumeration value="62"/>
+ <xs:enumeration value="63"/>
+ <xs:enumeration value="64"/>
+ <xs:enumeration value="65"/>
+ <xs:enumeration value="66"/>
+ <xs:enumeration value="67"/>
+ <xs:enumeration value="68"/>
+ <xs:enumeration value="70"/>
+ <xs:enumeration value="74"/>
+ <xs:enumeration value="75"/>
+ <xs:enumeration value="76"/>
+ <xs:enumeration value="77"/>
+ <xs:enumeration value="78"/>
+ <xs:enumeration value="91"/>
+ <xs:enumeration value="92"/>
+ <xs:enumeration value="93"/>
+ <xs:enumeration value="94"/>
+ <xs:enumeration value="95"/>
+ <xs:enumeration value="96"/>
+ <xs:enumeration value="97"/>
+ <xs:enumeration value="ZZZ"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="PaymentMeansCodeType">
+ <xs:simpleContent>
+ <xs:extension base="qdt:PaymentMeansCodeContentType"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:simpleType name="ReferenceCodeContentType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="AAA"/>
+ <xs:enumeration value="AAB"/>
+ <xs:enumeration value="AAC"/>
+ <xs:enumeration value="AAD"/>
+ <xs:enumeration value="AAE"/>
+ <xs:enumeration value="AAF"/>
+ <xs:enumeration value="AAG"/>
+ <xs:enumeration value="AAH"/>
+ <xs:enumeration value="AAI"/>
+ <xs:enumeration value="AAJ"/>
+ <xs:enumeration value="AAK"/>
+ <xs:enumeration value="AAL"/>
+ <xs:enumeration value="AAM"/>
+ <xs:enumeration value="AAN"/>
+ <xs:enumeration value="AAO"/>
+ <xs:enumeration value="AAP"/>
+ <xs:enumeration value="AAQ"/>
+ <xs:enumeration value="AAR"/>
+ <xs:enumeration value="AAS"/>
+ <xs:enumeration value="AAT"/>
+ <xs:enumeration value="AAU"/>
+ <xs:enumeration value="AAV"/>
+ <xs:enumeration value="AAW"/>
+ <xs:enumeration value="AAX"/>
+ <xs:enumeration value="AAY"/>
+ <xs:enumeration value="AAZ"/>
+ <xs:enumeration value="ABA"/>
+ <xs:enumeration value="ABB"/>
+ <xs:enumeration value="ABC"/>
+ <xs:enumeration value="ABD"/>
+ <xs:enumeration value="ABE"/>
+ <xs:enumeration value="ABF"/>
+ <xs:enumeration value="ABG"/>
+ <xs:enumeration value="ABH"/>
+ <xs:enumeration value="ABI"/>
+ <xs:enumeration value="ABJ"/>
+ <xs:enumeration value="ABK"/>
+ <xs:enumeration value="ABL"/>
+ <xs:enumeration value="ABM"/>
+ <xs:enumeration value="ABN"/>
+ <xs:enumeration value="ABO"/>
+ <xs:enumeration value="ABP"/>
+ <xs:enumeration value="ABQ"/>
+ <xs:enumeration value="ABR"/>
+ <xs:enumeration value="ABS"/>
+ <xs:enumeration value="ABT"/>
+ <xs:enumeration value="ABU"/>
+ <xs:enumeration value="ABV"/>
+ <xs:enumeration value="ABW"/>
+ <xs:enumeration value="ABX"/>
+ <xs:enumeration value="ABY"/>
+ <xs:enumeration value="ABZ"/>
+ <xs:enumeration value="AC"/>
+ <xs:enumeration value="ACA"/>
+ <xs:enumeration value="ACB"/>
+ <xs:enumeration value="ACC"/>
+ <xs:enumeration value="ACD"/>
+ <xs:enumeration value="ACE"/>
+ <xs:enumeration value="ACF"/>
+ <xs:enumeration value="ACG"/>
+ <xs:enumeration value="ACH"/>
+ <xs:enumeration value="ACI"/>
+ <xs:enumeration value="ACJ"/>
+ <xs:enumeration value="ACK"/>
+ <xs:enumeration value="ACL"/>
+ <xs:enumeration value="ACN"/>
+ <xs:enumeration value="ACO"/>
+ <xs:enumeration value="ACP"/>
+ <xs:enumeration value="ACQ"/>
+ <xs:enumeration value="ACR"/>
+ <xs:enumeration value="ACT"/>
+ <xs:enumeration value="ACU"/>
+ <xs:enumeration value="ACV"/>
+ <xs:enumeration value="ACW"/>
+ <xs:enumeration value="ACX"/>
+ <xs:enumeration value="ACY"/>
+ <xs:enumeration value="ACZ"/>
+ <xs:enumeration value="ADA"/>
+ <xs:enumeration value="ADB"/>
+ <xs:enumeration value="ADC"/>
+ <xs:enumeration value="ADD"/>
+ <xs:enumeration value="ADE"/>
+ <xs:enumeration value="ADF"/>
+ <xs:enumeration value="ADG"/>
+ <xs:enumeration value="ADI"/>
+ <xs:enumeration value="ADJ"/>
+ <xs:enumeration value="ADK"/>
+ <xs:enumeration value="ADL"/>
+ <xs:enumeration value="ADM"/>
+ <xs:enumeration value="ADN"/>
+ <xs:enumeration value="ADO"/>
+ <xs:enumeration value="ADP"/>
+ <xs:enumeration value="ADQ"/>
+ <xs:enumeration value="ADT"/>
+ <xs:enumeration value="ADU"/>
+ <xs:enumeration value="ADV"/>
+ <xs:enumeration value="ADW"/>
+ <xs:enumeration value="ADX"/>
+ <xs:enumeration value="ADY"/>
+ <xs:enumeration value="ADZ"/>
+ <xs:enumeration value="AE"/>
+ <xs:enumeration value="AEA"/>
+ <xs:enumeration value="AEB"/>
+ <xs:enumeration value="AEC"/>
+ <xs:enumeration value="AED"/>
+ <xs:enumeration value="AEE"/>
+ <xs:enumeration value="AEF"/>
+ <xs:enumeration value="AEG"/>
+ <xs:enumeration value="AEH"/>
+ <xs:enumeration value="AEI"/>
+ <xs:enumeration value="AEJ"/>
+ <xs:enumeration value="AEK"/>
+ <xs:enumeration value="AEL"/>
+ <xs:enumeration value="AEM"/>
+ <xs:enumeration value="AEN"/>
+ <xs:enumeration value="AEO"/>
+ <xs:enumeration value="AEP"/>
+ <xs:enumeration value="AEQ"/>
+ <xs:enumeration value="AER"/>
+ <xs:enumeration value="AES"/>
+ <xs:enumeration value="AET"/>
+ <xs:enumeration value="AEU"/>
+ <xs:enumeration value="AEV"/>
+ <xs:enumeration value="AEW"/>
+ <xs:enumeration value="AEX"/>
+ <xs:enumeration value="AEY"/>
+ <xs:enumeration value="AEZ"/>
+ <xs:enumeration value="AF"/>
+ <xs:enumeration value="AFA"/>
+ <xs:enumeration value="AFB"/>
+ <xs:enumeration value="AFC"/>
+ <xs:enumeration value="AFD"/>
+ <xs:enumeration value="AFE"/>
+ <xs:enumeration value="AFF"/>
+ <xs:enumeration value="AFG"/>
+ <xs:enumeration value="AFH"/>
+ <xs:enumeration value="AFI"/>
+ <xs:enumeration value="AFJ"/>
+ <xs:enumeration value="AFK"/>
+ <xs:enumeration value="AFL"/>
+ <xs:enumeration value="AFM"/>
+ <xs:enumeration value="AFN"/>
+ <xs:enumeration value="AFO"/>
+ <xs:enumeration value="AFP"/>
+ <xs:enumeration value="AFQ"/>
+ <xs:enumeration value="AFR"/>
+ <xs:enumeration value="AFS"/>
+ <xs:enumeration value="AFT"/>
+ <xs:enumeration value="AFU"/>
+ <xs:enumeration value="AFV"/>
+ <xs:enumeration value="AFW"/>
+ <xs:enumeration value="AFX"/>
+ <xs:enumeration value="AFY"/>
+ <xs:enumeration value="AFZ"/>
+ <xs:enumeration value="AGA"/>
+ <xs:enumeration value="AGB"/>
+ <xs:enumeration value="AGC"/>
+ <xs:enumeration value="AGD"/>
+ <xs:enumeration value="AGE"/>
+ <xs:enumeration value="AGF"/>
+ <xs:enumeration value="AGG"/>
+ <xs:enumeration value="AGH"/>
+ <xs:enumeration value="AGI"/>
+ <xs:enumeration value="AGJ"/>
+ <xs:enumeration value="AGK"/>
+ <xs:enumeration value="AGL"/>
+ <xs:enumeration value="AGM"/>
+ <xs:enumeration value="AGN"/>
+ <xs:enumeration value="AGO"/>
+ <xs:enumeration value="AGP"/>
+ <xs:enumeration value="AGQ"/>
+ <xs:enumeration value="AGR"/>
+ <xs:enumeration value="AGS"/>
+ <xs:enumeration value="AGT"/>
+ <xs:enumeration value="AGU"/>
+ <xs:enumeration value="AGV"/>
+ <xs:enumeration value="AGW"/>
+ <xs:enumeration value="AGX"/>
+ <xs:enumeration value="AGY"/>
+ <xs:enumeration value="AGZ"/>
+ <xs:enumeration value="AHA"/>
+ <xs:enumeration value="AHB"/>
+ <xs:enumeration value="AHC"/>
+ <xs:enumeration value="AHD"/>
+ <xs:enumeration value="AHE"/>
+ <xs:enumeration value="AHF"/>
+ <xs:enumeration value="AHG"/>
+ <xs:enumeration value="AHH"/>
+ <xs:enumeration value="AHI"/>
+ <xs:enumeration value="AHJ"/>
+ <xs:enumeration value="AHK"/>
+ <xs:enumeration value="AHL"/>
+ <xs:enumeration value="AHM"/>
+ <xs:enumeration value="AHN"/>
+ <xs:enumeration value="AHO"/>
+ <xs:enumeration value="AHP"/>
+ <xs:enumeration value="AHQ"/>
+ <xs:enumeration value="AHR"/>
+ <xs:enumeration value="AHS"/>
+ <xs:enumeration value="AHT"/>
+ <xs:enumeration value="AHU"/>
+ <xs:enumeration value="AHV"/>
+ <xs:enumeration value="AHX"/>
+ <xs:enumeration value="AHY"/>
+ <xs:enumeration value="AHZ"/>
+ <xs:enumeration value="AIA"/>
+ <xs:enumeration value="AIB"/>
+ <xs:enumeration value="AIC"/>
+ <xs:enumeration value="AID"/>
+ <xs:enumeration value="AIE"/>
+ <xs:enumeration value="AIF"/>
+ <xs:enumeration value="AIG"/>
+ <xs:enumeration value="AIH"/>
+ <xs:enumeration value="AII"/>
+ <xs:enumeration value="AIJ"/>
+ <xs:enumeration value="AIK"/>
+ <xs:enumeration value="AIL"/>
+ <xs:enumeration value="AIM"/>
+ <xs:enumeration value="AIN"/>
+ <xs:enumeration value="AIO"/>
+ <xs:enumeration value="AIP"/>
+ <xs:enumeration value="AIQ"/>
+ <xs:enumeration value="AIR"/>
+ <xs:enumeration value="AIS"/>
+ <xs:enumeration value="AIT"/>
+ <xs:enumeration value="AIU"/>
+ <xs:enumeration value="AIV"/>
+ <xs:enumeration value="AIW"/>
+ <xs:enumeration value="AIX"/>
+ <xs:enumeration value="AIY"/>
+ <xs:enumeration value="AIZ"/>
+ <xs:enumeration value="AJA"/>
+ <xs:enumeration value="AJB"/>
+ <xs:enumeration value="AJC"/>
+ <xs:enumeration value="AJD"/>
+ <xs:enumeration value="AJE"/>
+ <xs:enumeration value="AJF"/>
+ <xs:enumeration value="AJG"/>
+ <xs:enumeration value="AJH"/>
+ <xs:enumeration value="AJI"/>
+ <xs:enumeration value="AJJ"/>
+ <xs:enumeration value="AJK"/>
+ <xs:enumeration value="AJL"/>
+ <xs:enumeration value="AJM"/>
+ <xs:enumeration value="AJN"/>
+ <xs:enumeration value="AJO"/>
+ <xs:enumeration value="AJP"/>
+ <xs:enumeration value="AJQ"/>
+ <xs:enumeration value="AJR"/>
+ <xs:enumeration value="AJS"/>
+ <xs:enumeration value="AJT"/>
+ <xs:enumeration value="AJU"/>
+ <xs:enumeration value="AJV"/>
+ <xs:enumeration value="AJW"/>
+ <xs:enumeration value="AJX"/>
+ <xs:enumeration value="AJY"/>
+ <xs:enumeration value="AJZ"/>
+ <xs:enumeration value="AKA"/>
+ <xs:enumeration value="AKB"/>
+ <xs:enumeration value="AKC"/>
+ <xs:enumeration value="AKD"/>
+ <xs:enumeration value="AKE"/>
+ <xs:enumeration value="AKF"/>
+ <xs:enumeration value="AKG"/>
+ <xs:enumeration value="AKH"/>
+ <xs:enumeration value="AKI"/>
+ <xs:enumeration value="AKJ"/>
+ <xs:enumeration value="AKK"/>
+ <xs:enumeration value="AKL"/>
+ <xs:enumeration value="AKM"/>
+ <xs:enumeration value="AKN"/>
+ <xs:enumeration value="AKO"/>
+ <xs:enumeration value="AKP"/>
+ <xs:enumeration value="AKQ"/>
+ <xs:enumeration value="AKR"/>
+ <xs:enumeration value="AKS"/>
+ <xs:enumeration value="AKT"/>
+ <xs:enumeration value="AKU"/>
+ <xs:enumeration value="AKV"/>
+ <xs:enumeration value="AKW"/>
+ <xs:enumeration value="AKX"/>
+ <xs:enumeration value="AKY"/>
+ <xs:enumeration value="AKZ"/>
+ <xs:enumeration value="ALA"/>
+ <xs:enumeration value="ALB"/>
+ <xs:enumeration value="ALC"/>
+ <xs:enumeration value="ALD"/>
+ <xs:enumeration value="ALE"/>
+ <xs:enumeration value="ALF"/>
+ <xs:enumeration value="ALG"/>
+ <xs:enumeration value="ALH"/>
+ <xs:enumeration value="ALI"/>
+ <xs:enumeration value="ALJ"/>
+ <xs:enumeration value="ALK"/>
+ <xs:enumeration value="ALL"/>
+ <xs:enumeration value="ALM"/>
+ <xs:enumeration value="ALN"/>
+ <xs:enumeration value="ALO"/>
+ <xs:enumeration value="ALP"/>
+ <xs:enumeration value="ALQ"/>
+ <xs:enumeration value="ALR"/>
+ <xs:enumeration value="ALS"/>
+ <xs:enumeration value="ALT"/>
+ <xs:enumeration value="ALU"/>
+ <xs:enumeration value="ALV"/>
+ <xs:enumeration value="ALW"/>
+ <xs:enumeration value="ALX"/>
+ <xs:enumeration value="ALY"/>
+ <xs:enumeration value="ALZ"/>
+ <xs:enumeration value="AMA"/>
+ <xs:enumeration value="AMB"/>
+ <xs:enumeration value="AMC"/>
+ <xs:enumeration value="AMD"/>
+ <xs:enumeration value="AME"/>
+ <xs:enumeration value="AMF"/>
+ <xs:enumeration value="AMG"/>
+ <xs:enumeration value="AMH"/>
+ <xs:enumeration value="AMI"/>
+ <xs:enumeration value="AMJ"/>
+ <xs:enumeration value="AMK"/>
+ <xs:enumeration value="AML"/>
+ <xs:enumeration value="AMM"/>
+ <xs:enumeration value="AMN"/>
+ <xs:enumeration value="AMO"/>
+ <xs:enumeration value="AMP"/>
+ <xs:enumeration value="AMQ"/>
+ <xs:enumeration value="AMR"/>
+ <xs:enumeration value="AMS"/>
+ <xs:enumeration value="AMT"/>
+ <xs:enumeration value="AMU"/>
+ <xs:enumeration value="AMV"/>
+ <xs:enumeration value="AMW"/>
+ <xs:enumeration value="AMX"/>
+ <xs:enumeration value="AMY"/>
+ <xs:enumeration value="AMZ"/>
+ <xs:enumeration value="ANA"/>
+ <xs:enumeration value="ANB"/>
+ <xs:enumeration value="ANC"/>
+ <xs:enumeration value="AND"/>
+ <xs:enumeration value="ANE"/>
+ <xs:enumeration value="ANF"/>
+ <xs:enumeration value="ANG"/>
+ <xs:enumeration value="ANH"/>
+ <xs:enumeration value="ANI"/>
+ <xs:enumeration value="ANJ"/>
+ <xs:enumeration value="ANK"/>
+ <xs:enumeration value="ANL"/>
+ <xs:enumeration value="ANM"/>
+ <xs:enumeration value="ANN"/>
+ <xs:enumeration value="ANO"/>
+ <xs:enumeration value="ANP"/>
+ <xs:enumeration value="ANQ"/>
+ <xs:enumeration value="ANR"/>
+ <xs:enumeration value="ANS"/>
+ <xs:enumeration value="ANT"/>
+ <xs:enumeration value="ANU"/>
+ <xs:enumeration value="ANV"/>
+ <xs:enumeration value="ANW"/>
+ <xs:enumeration value="ANX"/>
+ <xs:enumeration value="ANY"/>
+ <xs:enumeration value="AOA"/>
+ <xs:enumeration value="AOD"/>
+ <xs:enumeration value="AOE"/>
+ <xs:enumeration value="AOF"/>
+ <xs:enumeration value="AOG"/>
+ <xs:enumeration value="AOH"/>
+ <xs:enumeration value="AOI"/>
+ <xs:enumeration value="AOJ"/>
+ <xs:enumeration value="AOK"/>
+ <xs:enumeration value="AOL"/>
+ <xs:enumeration value="AOM"/>
+ <xs:enumeration value="AON"/>
+ <xs:enumeration value="AOO"/>
+ <xs:enumeration value="AOP"/>
+ <xs:enumeration value="AOQ"/>
+ <xs:enumeration value="AOR"/>
+ <xs:enumeration value="AOS"/>
+ <xs:enumeration value="AOT"/>
+ <xs:enumeration value="AOU"/>
+ <xs:enumeration value="AOV"/>
+ <xs:enumeration value="AOW"/>
+ <xs:enumeration value="AOX"/>
+ <xs:enumeration value="AOY"/>
+ <xs:enumeration value="AOZ"/>
+ <xs:enumeration value="AP"/>
+ <xs:enumeration value="APA"/>
+ <xs:enumeration value="APB"/>
+ <xs:enumeration value="APC"/>
+ <xs:enumeration value="APD"/>
+ <xs:enumeration value="APE"/>
+ <xs:enumeration value="APF"/>
+ <xs:enumeration value="APG"/>
+ <xs:enumeration value="APH"/>
+ <xs:enumeration value="API"/>
+ <xs:enumeration value="APJ"/>
+ <xs:enumeration value="APK"/>
+ <xs:enumeration value="APL"/>
+ <xs:enumeration value="APM"/>
+ <xs:enumeration value="APN"/>
+ <xs:enumeration value="APO"/>
+ <xs:enumeration value="APP"/>
+ <xs:enumeration value="APQ"/>
+ <xs:enumeration value="APR"/>
+ <xs:enumeration value="APS"/>
+ <xs:enumeration value="APT"/>
+ <xs:enumeration value="APU"/>
+ <xs:enumeration value="APV"/>
+ <xs:enumeration value="APW"/>
+ <xs:enumeration value="APX"/>
+ <xs:enumeration value="APY"/>
+ <xs:enumeration value="APZ"/>
+ <xs:enumeration value="AQA"/>
+ <xs:enumeration value="AQB"/>
+ <xs:enumeration value="AQC"/>
+ <xs:enumeration value="AQD"/>
+ <xs:enumeration value="AQE"/>
+ <xs:enumeration value="AQF"/>
+ <xs:enumeration value="AQG"/>
+ <xs:enumeration value="AQH"/>
+ <xs:enumeration value="AQI"/>
+ <xs:enumeration value="AQJ"/>
+ <xs:enumeration value="AQK"/>
+ <xs:enumeration value="AQL"/>
+ <xs:enumeration value="AQM"/>
+ <xs:enumeration value="AQN"/>
+ <xs:enumeration value="AQO"/>
+ <xs:enumeration value="AQP"/>
+ <xs:enumeration value="AQQ"/>
+ <xs:enumeration value="AQR"/>
+ <xs:enumeration value="AQS"/>
+ <xs:enumeration value="AQT"/>
+ <xs:enumeration value="AQU"/>
+ <xs:enumeration value="AQV"/>
+ <xs:enumeration value="AQW"/>
+ <xs:enumeration value="AQX"/>
+ <xs:enumeration value="AQY"/>
+ <xs:enumeration value="AQZ"/>
+ <xs:enumeration value="ARA"/>
+ <xs:enumeration value="ARB"/>
+ <xs:enumeration value="ARC"/>
+ <xs:enumeration value="ARD"/>
+ <xs:enumeration value="ARE"/>
+ <xs:enumeration value="ARF"/>
+ <xs:enumeration value="ARG"/>
+ <xs:enumeration value="ARH"/>
+ <xs:enumeration value="ARI"/>
+ <xs:enumeration value="ARJ"/>
+ <xs:enumeration value="ARK"/>
+ <xs:enumeration value="ARL"/>
+ <xs:enumeration value="ARM"/>
+ <xs:enumeration value="ARN"/>
+ <xs:enumeration value="ARO"/>
+ <xs:enumeration value="ARP"/>
+ <xs:enumeration value="ARQ"/>
+ <xs:enumeration value="ARR"/>
+ <xs:enumeration value="ARS"/>
+ <xs:enumeration value="ART"/>
+ <xs:enumeration value="ARU"/>
+ <xs:enumeration value="ARV"/>
+ <xs:enumeration value="ARW"/>
+ <xs:enumeration value="ARX"/>
+ <xs:enumeration value="ARY"/>
+ <xs:enumeration value="ARZ"/>
+ <xs:enumeration value="ASA"/>
+ <xs:enumeration value="ASB"/>
+ <xs:enumeration value="ASC"/>
+ <xs:enumeration value="ASD"/>
+ <xs:enumeration value="ASE"/>
+ <xs:enumeration value="ASF"/>
+ <xs:enumeration value="ASG"/>
+ <xs:enumeration value="ASH"/>
+ <xs:enumeration value="ASI"/>
+ <xs:enumeration value="ASJ"/>
+ <xs:enumeration value="ASK"/>
+ <xs:enumeration value="ASL"/>
+ <xs:enumeration value="ASM"/>
+ <xs:enumeration value="ASN"/>
+ <xs:enumeration value="ASO"/>
+ <xs:enumeration value="ASP"/>
+ <xs:enumeration value="ASQ"/>
+ <xs:enumeration value="ASR"/>
+ <xs:enumeration value="ASS"/>
+ <xs:enumeration value="AST"/>
+ <xs:enumeration value="ASU"/>
+ <xs:enumeration value="ASV"/>
+ <xs:enumeration value="ASW"/>
+ <xs:enumeration value="ASX"/>
+ <xs:enumeration value="ASY"/>
+ <xs:enumeration value="ASZ"/>
+ <xs:enumeration value="ATA"/>
+ <xs:enumeration value="ATB"/>
+ <xs:enumeration value="ATC"/>
+ <xs:enumeration value="ATD"/>
+ <xs:enumeration value="ATE"/>
+ <xs:enumeration value="ATF"/>
+ <xs:enumeration value="ATG"/>
+ <xs:enumeration value="ATH"/>
+ <xs:enumeration value="ATI"/>
+ <xs:enumeration value="ATJ"/>
+ <xs:enumeration value="ATK"/>
+ <xs:enumeration value="ATL"/>
+ <xs:enumeration value="ATM"/>
+ <xs:enumeration value="ATN"/>
+ <xs:enumeration value="ATO"/>
+ <xs:enumeration value="ATP"/>
+ <xs:enumeration value="ATQ"/>
+ <xs:enumeration value="ATR"/>
+ <xs:enumeration value="ATS"/>
+ <xs:enumeration value="ATT"/>
+ <xs:enumeration value="ATU"/>
+ <xs:enumeration value="ATV"/>
+ <xs:enumeration value="ATW"/>
+ <xs:enumeration value="ATX"/>
+ <xs:enumeration value="ATY"/>
+ <xs:enumeration value="ATZ"/>
+ <xs:enumeration value="AU"/>
+ <xs:enumeration value="AUA"/>
+ <xs:enumeration value="AUB"/>
+ <xs:enumeration value="AUC"/>
+ <xs:enumeration value="AUD"/>
+ <xs:enumeration value="AUE"/>
+ <xs:enumeration value="AUF"/>
+ <xs:enumeration value="AUG"/>
+ <xs:enumeration value="AUH"/>
+ <xs:enumeration value="AUI"/>
+ <xs:enumeration value="AUJ"/>
+ <xs:enumeration value="AUK"/>
+ <xs:enumeration value="AUL"/>
+ <xs:enumeration value="AUM"/>
+ <xs:enumeration value="AUN"/>
+ <xs:enumeration value="AUO"/>
+ <xs:enumeration value="AUP"/>
+ <xs:enumeration value="AUQ"/>
+ <xs:enumeration value="AUR"/>
+ <xs:enumeration value="AUS"/>
+ <xs:enumeration value="AUT"/>
+ <xs:enumeration value="AUU"/>
+ <xs:enumeration value="AUV"/>
+ <xs:enumeration value="AUW"/>
+ <xs:enumeration value="AUX"/>
+ <xs:enumeration value="AUY"/>
+ <xs:enumeration value="AUZ"/>
+ <xs:enumeration value="AV"/>
+ <xs:enumeration value="AVA"/>
+ <xs:enumeration value="AVB"/>
+ <xs:enumeration value="AVC"/>
+ <xs:enumeration value="AVD"/>
+ <xs:enumeration value="AVE"/>
+ <xs:enumeration value="AVF"/>
+ <xs:enumeration value="AVG"/>
+ <xs:enumeration value="AVH"/>
+ <xs:enumeration value="AVI"/>
+ <xs:enumeration value="AVJ"/>
+ <xs:enumeration value="AVK"/>
+ <xs:enumeration value="AVL"/>
+ <xs:enumeration value="AVM"/>
+ <xs:enumeration value="AVN"/>
+ <xs:enumeration value="AVO"/>
+ <xs:enumeration value="AVP"/>
+ <xs:enumeration value="AVQ"/>
+ <xs:enumeration value="AVR"/>
+ <xs:enumeration value="AVS"/>
+ <xs:enumeration value="AVT"/>
+ <xs:enumeration value="AVU"/>
+ <xs:enumeration value="AVV"/>
+ <xs:enumeration value="AVW"/>
+ <xs:enumeration value="AVX"/>
+ <xs:enumeration value="AVY"/>
+ <xs:enumeration value="AVZ"/>
+ <xs:enumeration value="AWA"/>
+ <xs:enumeration value="AWB"/>
+ <xs:enumeration value="AWC"/>
+ <xs:enumeration value="AWD"/>
+ <xs:enumeration value="AWE"/>
+ <xs:enumeration value="AWF"/>
+ <xs:enumeration value="AWG"/>
+ <xs:enumeration value="AWH"/>
+ <xs:enumeration value="AWI"/>
+ <xs:enumeration value="AWJ"/>
+ <xs:enumeration value="AWK"/>
+ <xs:enumeration value="AWL"/>
+ <xs:enumeration value="AWM"/>
+ <xs:enumeration value="AWN"/>
+ <xs:enumeration value="AWO"/>
+ <xs:enumeration value="AWP"/>
+ <xs:enumeration value="AWQ"/>
+ <xs:enumeration value="AWR"/>
+ <xs:enumeration value="AWS"/>
+ <xs:enumeration value="AWT"/>
+ <xs:enumeration value="AWU"/>
+ <xs:enumeration value="AWV"/>
+ <xs:enumeration value="AWW"/>
+ <xs:enumeration value="AWX"/>
+ <xs:enumeration value="AWY"/>
+ <xs:enumeration value="AWZ"/>
+ <xs:enumeration value="AXA"/>
+ <xs:enumeration value="AXB"/>
+ <xs:enumeration value="AXC"/>
+ <xs:enumeration value="AXD"/>
+ <xs:enumeration value="AXE"/>
+ <xs:enumeration value="AXF"/>
+ <xs:enumeration value="AXG"/>
+ <xs:enumeration value="AXH"/>
+ <xs:enumeration value="AXI"/>
+ <xs:enumeration value="AXJ"/>
+ <xs:enumeration value="AXK"/>
+ <xs:enumeration value="AXL"/>
+ <xs:enumeration value="AXM"/>
+ <xs:enumeration value="AXN"/>
+ <xs:enumeration value="AXO"/>
+ <xs:enumeration value="AXP"/>
+ <xs:enumeration value="AXQ"/>
+ <xs:enumeration value="AXR"/>
+ <xs:enumeration value="BA"/>
+ <xs:enumeration value="BC"/>
+ <xs:enumeration value="BD"/>
+ <xs:enumeration value="BE"/>
+ <xs:enumeration value="BH"/>
+ <xs:enumeration value="BM"/>
+ <xs:enumeration value="BN"/>
+ <xs:enumeration value="BO"/>
+ <xs:enumeration value="BR"/>
+ <xs:enumeration value="BT"/>
+ <xs:enumeration value="BW"/>
+ <xs:enumeration value="CAS"/>
+ <xs:enumeration value="CAT"/>
+ <xs:enumeration value="CAU"/>
+ <xs:enumeration value="CAV"/>
+ <xs:enumeration value="CAW"/>
+ <xs:enumeration value="CAX"/>
+ <xs:enumeration value="CAY"/>
+ <xs:enumeration value="CAZ"/>
+ <xs:enumeration value="CBA"/>
+ <xs:enumeration value="CBB"/>
+ <xs:enumeration value="CD"/>
+ <xs:enumeration value="CEC"/>
+ <xs:enumeration value="CED"/>
+ <xs:enumeration value="CFE"/>
+ <xs:enumeration value="CFF"/>
+ <xs:enumeration value="CFO"/>
+ <xs:enumeration value="CG"/>
+ <xs:enumeration value="CH"/>
+ <xs:enumeration value="CK"/>
+ <xs:enumeration value="CKN"/>
+ <xs:enumeration value="CM"/>
+ <xs:enumeration value="CMR"/>
+ <xs:enumeration value="CN"/>
+ <xs:enumeration value="CNO"/>
+ <xs:enumeration value="COF"/>
+ <xs:enumeration value="CP"/>
+ <xs:enumeration value="CR"/>
+ <xs:enumeration value="CRN"/>
+ <xs:enumeration value="CS"/>
+ <xs:enumeration value="CST"/>
+ <xs:enumeration value="CT"/>
+ <xs:enumeration value="CU"/>
+ <xs:enumeration value="CV"/>
+ <xs:enumeration value="CW"/>
+ <xs:enumeration value="CZ"/>
+ <xs:enumeration value="DA"/>
+ <xs:enumeration value="DAN"/>
+ <xs:enumeration value="DB"/>
+ <xs:enumeration value="DI"/>
+ <xs:enumeration value="DL"/>
+ <xs:enumeration value="DM"/>
+ <xs:enumeration value="DQ"/>
+ <xs:enumeration value="DR"/>
+ <xs:enumeration value="EA"/>
+ <xs:enumeration value="EB"/>
+ <xs:enumeration value="ED"/>
+ <xs:enumeration value="EE"/>
+ <xs:enumeration value="EI"/>
+ <xs:enumeration value="EN"/>
+ <xs:enumeration value="EQ"/>
+ <xs:enumeration value="ER"/>
+ <xs:enumeration value="ERN"/>
+ <xs:enumeration value="ET"/>
+ <xs:enumeration value="EX"/>
+ <xs:enumeration value="FC"/>
+ <xs:enumeration value="FF"/>
+ <xs:enumeration value="FI"/>
+ <xs:enumeration value="FLW"/>
+ <xs:enumeration value="FN"/>
+ <xs:enumeration value="FO"/>
+ <xs:enumeration value="FS"/>
+ <xs:enumeration value="FT"/>
+ <xs:enumeration value="FV"/>
+ <xs:enumeration value="FX"/>
+ <xs:enumeration value="GA"/>
+ <xs:enumeration value="GC"/>
+ <xs:enumeration value="GD"/>
+ <xs:enumeration value="GDN"/>
+ <xs:enumeration value="GN"/>
+ <xs:enumeration value="HS"/>
+ <xs:enumeration value="HWB"/>
+ <xs:enumeration value="IA"/>
+ <xs:enumeration value="IB"/>
+ <xs:enumeration value="ICA"/>
+ <xs:enumeration value="ICE"/>
+ <xs:enumeration value="ICO"/>
+ <xs:enumeration value="II"/>
+ <xs:enumeration value="IL"/>
+ <xs:enumeration value="INB"/>
+ <xs:enumeration value="INN"/>
+ <xs:enumeration value="INO"/>
+ <xs:enumeration value="IP"/>
+ <xs:enumeration value="IS"/>
+ <xs:enumeration value="IT"/>
+ <xs:enumeration value="IV"/>
+ <xs:enumeration value="JB"/>
+ <xs:enumeration value="JE"/>
+ <xs:enumeration value="LA"/>
+ <xs:enumeration value="LAN"/>
+ <xs:enumeration value="LAR"/>
+ <xs:enumeration value="LB"/>
+ <xs:enumeration value="LC"/>
+ <xs:enumeration value="LI"/>
+ <xs:enumeration value="LO"/>
+ <xs:enumeration value="LRC"/>
+ <xs:enumeration value="LS"/>
+ <xs:enumeration value="MA"/>
+ <xs:enumeration value="MB"/>
+ <xs:enumeration value="MF"/>
+ <xs:enumeration value="MG"/>
+ <xs:enumeration value="MH"/>
+ <xs:enumeration value="MR"/>
+ <xs:enumeration value="MRN"/>
+ <xs:enumeration value="MS"/>
+ <xs:enumeration value="MSS"/>
+ <xs:enumeration value="MWB"/>
+ <xs:enumeration value="NA"/>
+ <xs:enumeration value="NF"/>
+ <xs:enumeration value="OH"/>
+ <xs:enumeration value="OI"/>
+ <xs:enumeration value="ON"/>
+ <xs:enumeration value="OP"/>
+ <xs:enumeration value="OR"/>
+ <xs:enumeration value="PB"/>
+ <xs:enumeration value="PC"/>
+ <xs:enumeration value="PD"/>
+ <xs:enumeration value="PE"/>
+ <xs:enumeration value="PF"/>
+ <xs:enumeration value="PI"/>
+ <xs:enumeration value="PK"/>
+ <xs:enumeration value="PL"/>
+ <xs:enumeration value="POR"/>
+ <xs:enumeration value="PP"/>
+ <xs:enumeration value="PQ"/>
+ <xs:enumeration value="PR"/>
+ <xs:enumeration value="PS"/>
+ <xs:enumeration value="PW"/>
+ <xs:enumeration value="PY"/>
+ <xs:enumeration value="RA"/>
+ <xs:enumeration value="RC"/>
+ <xs:enumeration value="RCN"/>
+ <xs:enumeration value="RE"/>
+ <xs:enumeration value="REN"/>
+ <xs:enumeration value="RF"/>
+ <xs:enumeration value="RR"/>
+ <xs:enumeration value="RT"/>
+ <xs:enumeration value="SA"/>
+ <xs:enumeration value="SB"/>
+ <xs:enumeration value="SD"/>
+ <xs:enumeration value="SE"/>
+ <xs:enumeration value="SEA"/>
+ <xs:enumeration value="SF"/>
+ <xs:enumeration value="SH"/>
+ <xs:enumeration value="SI"/>
+ <xs:enumeration value="SM"/>
+ <xs:enumeration value="SN"/>
+ <xs:enumeration value="SP"/>
+ <xs:enumeration value="SQ"/>
+ <xs:enumeration value="SRN"/>
+ <xs:enumeration value="SS"/>
+ <xs:enumeration value="STA"/>
+ <xs:enumeration value="SW"/>
+ <xs:enumeration value="SZ"/>
+ <xs:enumeration value="TB"/>
+ <xs:enumeration value="TCR"/>
+ <xs:enumeration value="TE"/>
+ <xs:enumeration value="TF"/>
+ <xs:enumeration value="TI"/>
+ <xs:enumeration value="TIN"/>
+ <xs:enumeration value="TL"/>
+ <xs:enumeration value="TN"/>
+ <xs:enumeration value="TP"/>
+ <xs:enumeration value="UAR"/>
+ <xs:enumeration value="UC"/>
+ <xs:enumeration value="UCN"/>
+ <xs:enumeration value="UN"/>
+ <xs:enumeration value="UO"/>
+ <xs:enumeration value="URI"/>
+ <xs:enumeration value="VA"/>
+ <xs:enumeration value="VC"/>
+ <xs:enumeration value="VGR"/>
+ <xs:enumeration value="VM"/>
+ <xs:enumeration value="VN"/>
+ <xs:enumeration value="VON"/>
+ <xs:enumeration value="VOR"/>
+ <xs:enumeration value="VP"/>
+ <xs:enumeration value="VR"/>
+ <xs:enumeration value="VS"/>
+ <xs:enumeration value="VT"/>
+ <xs:enumeration value="VV"/>
+ <xs:enumeration value="WE"/>
+ <xs:enumeration value="WM"/>
+ <xs:enumeration value="WN"/>
+ <xs:enumeration value="WR"/>
+ <xs:enumeration value="WS"/>
+ <xs:enumeration value="WY"/>
+ <xs:enumeration value="XA"/>
+ <xs:enumeration value="XC"/>
+ <xs:enumeration value="XP"/>
+ <xs:enumeration value="ZZZ"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="ReferenceCodeType">
+ <xs:simpleContent>
+ <xs:extension base="qdt:ReferenceCodeContentType"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:simpleType name="TaxCategoryCodeContentType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="AE"/>
+ <xs:enumeration value="E"/>
+ <xs:enumeration value="G"/>
+ <xs:enumeration value="K"/>
+ <xs:enumeration value="L"/>
+ <xs:enumeration value="M"/>
+ <xs:enumeration value="O"/>
+ <xs:enumeration value="S"/>
+ <xs:enumeration value="Z"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="TaxCategoryCodeType">
+ <xs:simpleContent>
+ <xs:extension base="qdt:TaxCategoryCodeContentType"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:simpleType name="TaxTypeCodeContentType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="AAA"/>
+ <xs:enumeration value="AAB"/>
+ <xs:enumeration value="AAC"/>
+ <xs:enumeration value="AAD"/>
+ <xs:enumeration value="AAE"/>
+ <xs:enumeration value="AAF"/>
+ <xs:enumeration value="AAG"/>
+ <xs:enumeration value="AAH"/>
+ <xs:enumeration value="AAI"/>
+ <xs:enumeration value="AAJ"/>
+ <xs:enumeration value="AAK"/>
+ <xs:enumeration value="AAL"/>
+ <xs:enumeration value="AAM"/>
+ <xs:enumeration value="ADD"/>
+ <xs:enumeration value="BOL"/>
+ <xs:enumeration value="CAP"/>
+ <xs:enumeration value="CAR"/>
+ <xs:enumeration value="COC"/>
+ <xs:enumeration value="CST"/>
+ <xs:enumeration value="CUD"/>
+ <xs:enumeration value="CVD"/>
+ <xs:enumeration value="ENV"/>
+ <xs:enumeration value="EXC"/>
+ <xs:enumeration value="EXP"/>
+ <xs:enumeration value="FET"/>
+ <xs:enumeration value="FRE"/>
+ <xs:enumeration value="GCN"/>
+ <xs:enumeration value="GST"/>
+ <xs:enumeration value="ILL"/>
+ <xs:enumeration value="IMP"/>
+ <xs:enumeration value="IND"/>
+ <xs:enumeration value="LAC"/>
+ <xs:enumeration value="LCN"/>
+ <xs:enumeration value="LDP"/>
+ <xs:enumeration value="LOC"/>
+ <xs:enumeration value="LST"/>
+ <xs:enumeration value="MCA"/>
+ <xs:enumeration value="MCD"/>
+ <xs:enumeration value="OTH"/>
+ <xs:enumeration value="PDB"/>
+ <xs:enumeration value="PDC"/>
+ <xs:enumeration value="PRF"/>
+ <xs:enumeration value="SCN"/>
+ <xs:enumeration value="SSS"/>
+ <xs:enumeration value="STT"/>
+ <xs:enumeration value="SUP"/>
+ <xs:enumeration value="SUR"/>
+ <xs:enumeration value="SWT"/>
+ <xs:enumeration value="TAC"/>
+ <xs:enumeration value="TOT"/>
+ <xs:enumeration value="TOX"/>
+ <xs:enumeration value="TTA"/>
+ <xs:enumeration value="VAD"/>
+ <xs:enumeration value="VAT"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="TaxTypeCodeType">
+ <xs:simpleContent>
+ <xs:extension base="qdt:TaxTypeCodeContentType"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:simpleType name="TimeReferenceCodeContentType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="5"/>
+ <xs:enumeration value="29"/>
+ <xs:enumeration value="72"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="TimeReferenceCodeType">
+ <xs:simpleContent>
+ <xs:extension base="qdt:TimeReferenceCodeContentType"/>
+ </xs:simpleContent>
+ </xs:complexType>
+</xs:schema>
diff --git a/facturx/xsd/factur-x/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd b/facturx/xsd/facturx-en16931/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd
index e0cc3c1..8641805 100644
--- a/facturx/xsd/factur-x/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd
+++ b/facturx/xsd/facturx-en16931/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd
@@ -4,8 +4,7 @@
xmlns:qdt="urn:un:unece:uncefact:data:standard:QualifiedDataType:100"
xmlns:udt="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:100"
targetNamespace="urn:un:unece:uncefact:data:standard:ReusableAggregateBusinessInformationEntity:100"
- elementFormDefault="qualified"
- version="100.D16B">
+ elementFormDefault="qualified">
<xs:import namespace="urn:un:unece:uncefact:data:standard:QualifiedDataType:100" schemaLocation="FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd"/>
<xs:import namespace="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:100" schemaLocation="FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd"/>
<xs:complexType name="CreditorFinancialAccountType">
@@ -17,12 +16,12 @@
</xs:complexType>
<xs:complexType name="CreditorFinancialInstitutionType">
<xs:sequence>
- <xs:element name="BICID" type="udt:IDType" minOccurs="0"/>
+ <xs:element name="BICID" type="udt:IDType"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="DebtorFinancialAccountType">
<xs:sequence>
- <xs:element name="IBANID" type="udt:IDType" minOccurs="0"/>
+ <xs:element name="IBANID" type="udt:IDType"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="DocumentContextParameterType">
@@ -32,20 +31,20 @@
</xs:complexType>
<xs:complexType name="DocumentLineDocumentType">
<xs:sequence>
- <xs:element name="LineID" type="udt:IDType" minOccurs="0"/>
- <xs:element name="IncludedNote" type="ram:NoteType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="LineID" type="udt:IDType"/>
+ <xs:element name="IncludedNote" type="ram:NoteType" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="ExchangedDocumentContextType">
<xs:sequence>
- <xs:element name="BusinessProcessSpecifiedDocumentContextParameter" type="ram:DocumentContextParameterType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="GuidelineSpecifiedDocumentContextParameter" type="ram:DocumentContextParameterType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="BusinessProcessSpecifiedDocumentContextParameter" type="ram:DocumentContextParameterType" minOccurs="0"/>
+ <xs:element name="GuidelineSpecifiedDocumentContextParameter" type="ram:DocumentContextParameterType"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="ExchangedDocumentType">
<xs:sequence>
<xs:element name="ID" type="udt:IDType"/>
- <xs:element name="TypeCode" type="qdt:DocumentCodeType" minOccurs="0"/>
+ <xs:element name="TypeCode" type="qdt:DocumentCodeType"/>
<xs:element name="IssueDateTime" type="udt:DateTimeType"/>
<xs:element name="IncludedNote" type="ram:NoteType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
@@ -53,8 +52,8 @@
<xs:complexType name="HeaderTradeAgreementType">
<xs:sequence>
<xs:element name="BuyerReference" type="udt:TextType" minOccurs="0"/>
- <xs:element name="SellerTradeParty" type="ram:TradePartyType" minOccurs="0"/>
- <xs:element name="BuyerTradeParty" type="ram:TradePartyType" minOccurs="0"/>
+ <xs:element name="SellerTradeParty" type="ram:TradePartyType"/>
+ <xs:element name="BuyerTradeParty" type="ram:TradePartyType"/>
<xs:element name="SellerTaxRepresentativeTradeParty" type="ram:TradePartyType" minOccurs="0"/>
<xs:element name="SellerOrderReferencedDocument" type="ram:ReferencedDocumentType" minOccurs="0"/>
<xs:element name="BuyerOrderReferencedDocument" type="ram:ReferencedDocumentType" minOccurs="0"/>
@@ -74,18 +73,18 @@
<xs:complexType name="HeaderTradeSettlementType">
<xs:sequence>
<xs:element name="CreditorReferenceID" type="udt:IDType" minOccurs="0"/>
- <xs:element name="PaymentReference" type="udt:TextType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="PaymentReference" type="udt:TextType" minOccurs="0"/>
<xs:element name="TaxCurrencyCode" type="qdt:CurrencyCodeType" minOccurs="0"/>
- <xs:element name="InvoiceCurrencyCode" type="qdt:CurrencyCodeType" minOccurs="0"/>
+ <xs:element name="InvoiceCurrencyCode" type="qdt:CurrencyCodeType"/>
<xs:element name="PayeeTradeParty" type="ram:TradePartyType" minOccurs="0"/>
<xs:element name="SpecifiedTradeSettlementPaymentMeans" type="ram:TradeSettlementPaymentMeansType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="ApplicableTradeTax" type="ram:TradeTaxType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="ApplicableTradeTax" type="ram:TradeTaxType" maxOccurs="unbounded"/>
<xs:element name="BillingSpecifiedPeriod" type="ram:SpecifiedPeriodType" minOccurs="0"/>
<xs:element name="SpecifiedTradeAllowanceCharge" type="ram:TradeAllowanceChargeType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="SpecifiedTradePaymentTerms" type="ram:TradePaymentTermsType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="SpecifiedTradeSettlementHeaderMonetarySummation" type="ram:TradeSettlementHeaderMonetarySummationType" minOccurs="0"/>
+ <xs:element name="SpecifiedTradePaymentTerms" type="ram:TradePaymentTermsType" minOccurs="0"/>
+ <xs:element name="SpecifiedTradeSettlementHeaderMonetarySummation" type="ram:TradeSettlementHeaderMonetarySummationType"/>
<xs:element name="InvoiceReferencedDocument" type="ram:ReferencedDocumentType" minOccurs="0"/>
- <xs:element name="ReceivableSpecifiedTradeAccountingAccount" type="ram:TradeAccountingAccountType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="ReceivableSpecifiedTradeAccountingAccount" type="ram:TradeAccountingAccountType" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="LegalOrganizationType">
@@ -98,27 +97,27 @@
<xs:sequence>
<xs:element name="BuyerOrderReferencedDocument" type="ram:ReferencedDocumentType" minOccurs="0"/>
<xs:element name="GrossPriceProductTradePrice" type="ram:TradePriceType" minOccurs="0"/>
- <xs:element name="NetPriceProductTradePrice" type="ram:TradePriceType" minOccurs="0"/>
+ <xs:element name="NetPriceProductTradePrice" type="ram:TradePriceType"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="LineTradeDeliveryType">
<xs:sequence>
- <xs:element name="BilledQuantity" type="udt:QuantityType" minOccurs="0"/>
+ <xs:element name="BilledQuantity" type="udt:QuantityType"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="LineTradeSettlementType">
<xs:sequence>
- <xs:element name="ApplicableTradeTax" type="ram:TradeTaxType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="ApplicableTradeTax" type="ram:TradeTaxType"/>
<xs:element name="BillingSpecifiedPeriod" type="ram:SpecifiedPeriodType" minOccurs="0"/>
<xs:element name="SpecifiedTradeAllowanceCharge" type="ram:TradeAllowanceChargeType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="SpecifiedTradeSettlementLineMonetarySummation" type="ram:TradeSettlementLineMonetarySummationType" minOccurs="0"/>
- <xs:element name="AdditionalReferencedDocument" type="ram:ReferencedDocumentType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="ReceivableSpecifiedTradeAccountingAccount" type="ram:TradeAccountingAccountType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="SpecifiedTradeSettlementLineMonetarySummation" type="ram:TradeSettlementLineMonetarySummationType"/>
+ <xs:element name="AdditionalReferencedDocument" type="ram:ReferencedDocumentType" minOccurs="0"/>
+ <xs:element name="ReceivableSpecifiedTradeAccountingAccount" type="ram:TradeAccountingAccountType" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="NoteType">
<xs:sequence>
- <xs:element name="Content" type="udt:TextType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="Content" type="udt:TextType"/>
<xs:element name="SubjectCode" type="udt:CodeType" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
@@ -130,13 +129,13 @@
</xs:complexType>
<xs:complexType name="ProductCharacteristicType">
<xs:sequence>
- <xs:element name="Description" type="udt:TextType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="Value" type="udt:TextType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="Description" type="udt:TextType"/>
+ <xs:element name="Value" type="udt:TextType"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="ProductClassificationType">
<xs:sequence>
- <xs:element name="ClassCode" type="udt:CodeType" minOccurs="0"/>
+ <xs:element name="ClassCode" type="udt:CodeType"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="ReferencedDocumentType">
@@ -145,8 +144,8 @@
<xs:element name="URIID" type="udt:IDType" minOccurs="0"/>
<xs:element name="LineID" type="udt:IDType" minOccurs="0"/>
<xs:element name="TypeCode" type="qdt:DocumentCodeType" minOccurs="0"/>
- <xs:element name="Name" type="udt:TextType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="AttachmentBinaryObject" type="udt:BinaryObjectType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="Name" type="udt:TextType" minOccurs="0"/>
+ <xs:element name="AttachmentBinaryObject" type="udt:BinaryObjectType" minOccurs="0"/>
<xs:element name="ReferenceTypeCode" type="qdt:ReferenceCodeType" minOccurs="0"/>
<xs:element name="FormattedIssueDateTime" type="qdt:FormattedDateTimeType" minOccurs="0"/>
</xs:sequence>
@@ -165,15 +164,15 @@
<xs:complexType name="SupplyChainTradeLineItemType">
<xs:sequence>
<xs:element name="AssociatedDocumentLineDocument" type="ram:DocumentLineDocumentType"/>
- <xs:element name="SpecifiedTradeProduct" type="ram:TradeProductType" minOccurs="0"/>
- <xs:element name="SpecifiedLineTradeAgreement" type="ram:LineTradeAgreementType" minOccurs="0"/>
+ <xs:element name="SpecifiedTradeProduct" type="ram:TradeProductType"/>
+ <xs:element name="SpecifiedLineTradeAgreement" type="ram:LineTradeAgreementType"/>
<xs:element name="SpecifiedLineTradeDelivery" type="ram:LineTradeDeliveryType" minOccurs="0"/>
<xs:element name="SpecifiedLineTradeSettlement" type="ram:LineTradeSettlementType"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="SupplyChainTradeTransactionType">
<xs:sequence>
- <xs:element name="IncludedSupplyChainTradeLineItem" type="ram:SupplyChainTradeLineItemType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="IncludedSupplyChainTradeLineItem" type="ram:SupplyChainTradeLineItemType" maxOccurs="unbounded"/>
<xs:element name="ApplicableHeaderTradeAgreement" type="ram:HeaderTradeAgreementType"/>
<xs:element name="ApplicableHeaderTradeDelivery" type="ram:HeaderTradeDeliveryType"/>
<xs:element name="ApplicableHeaderTradeSettlement" type="ram:HeaderTradeSettlementType"/>
@@ -181,13 +180,12 @@
</xs:complexType>
<xs:complexType name="TaxRegistrationType">
<xs:sequence>
- <xs:element name="ID" type="udt:IDType" minOccurs="0"/>
+ <xs:element name="ID" type="udt:IDType"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="TradeAccountingAccountType">
<xs:sequence>
<xs:element name="ID" type="udt:IDType"/>
- <xs:element name="TypeCode" type="qdt:AccountingAccountTypeCodeType" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="TradeAddressType">
@@ -197,8 +195,8 @@
<xs:element name="LineTwo" type="udt:TextType" minOccurs="0"/>
<xs:element name="LineThree" type="udt:TextType" minOccurs="0"/>
<xs:element name="CityName" type="udt:TextType" minOccurs="0"/>
- <xs:element name="CountryID" type="qdt:CountryIDType" minOccurs="0"/>
- <xs:element name="CountrySubDivisionName" type="udt:TextType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="CountryID" type="qdt:CountryIDType"/>
+ <xs:element name="CountrySubDivisionName" type="udt:TextType" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="TradeAllowanceChargeType">
@@ -206,10 +204,10 @@
<xs:element name="ChargeIndicator" type="udt:IndicatorType" minOccurs="0"/>
<xs:element name="CalculationPercent" type="udt:PercentType" minOccurs="0"/>
<xs:element name="BasisAmount" type="udt:AmountType" minOccurs="0"/>
- <xs:element name="ActualAmount" type="udt:AmountType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="ActualAmount" type="udt:AmountType"/>
<xs:element name="ReasonCode" type="qdt:AllowanceChargeReasonCodeType" minOccurs="0"/>
<xs:element name="Reason" type="udt:TextType" minOccurs="0"/>
- <xs:element name="CategoryTradeTax" type="ram:TradeTaxType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="CategoryTradeTax" type="ram:TradeTaxType" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="TradeContactType">
@@ -222,7 +220,7 @@
</xs:complexType>
<xs:complexType name="TradeCountryType">
<xs:sequence>
- <xs:element name="ID" type="qdt:CountryIDType" minOccurs="0"/>
+ <xs:element name="ID" type="qdt:CountryIDType"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="TradePartyType">
@@ -230,26 +228,26 @@
<xs:element name="ID" type="udt:IDType" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="GlobalID" type="udt:IDType" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="Name" type="udt:TextType" minOccurs="0"/>
- <xs:element name="Description" type="udt:TextType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="Description" type="udt:TextType" minOccurs="0"/>
<xs:element name="SpecifiedLegalOrganization" type="ram:LegalOrganizationType" minOccurs="0"/>
- <xs:element name="DefinedTradeContact" type="ram:TradeContactType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="DefinedTradeContact" type="ram:TradeContactType" minOccurs="0"/>
<xs:element name="PostalTradeAddress" type="ram:TradeAddressType" minOccurs="0"/>
- <xs:element name="URIUniversalCommunication" type="ram:UniversalCommunicationType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="URIUniversalCommunication" type="ram:UniversalCommunicationType" minOccurs="0"/>
<xs:element name="SpecifiedTaxRegistration" type="ram:TaxRegistrationType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="TradePaymentTermsType">
<xs:sequence>
- <xs:element name="Description" type="udt:TextType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="Description" type="udt:TextType" minOccurs="0"/>
<xs:element name="DueDateDateTime" type="udt:DateTimeType" minOccurs="0"/>
- <xs:element name="DirectDebitMandateID" type="udt:IDType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="DirectDebitMandateID" type="udt:IDType" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="TradePriceType">
<xs:sequence>
- <xs:element name="ChargeAmount" type="udt:AmountType" maxOccurs="unbounded"/>
+ <xs:element name="ChargeAmount" type="udt:AmountType"/>
<xs:element name="BasisQuantity" type="udt:QuantityType" minOccurs="0"/>
- <xs:element name="AppliedTradeAllowanceCharge" type="ram:TradeAllowanceChargeType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="AppliedTradeAllowanceCharge" type="ram:TradeAllowanceChargeType" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="TradeProductType">
@@ -257,7 +255,7 @@
<xs:element name="GlobalID" type="udt:IDType" minOccurs="0"/>
<xs:element name="SellerAssignedID" type="udt:IDType" minOccurs="0"/>
<xs:element name="BuyerAssignedID" type="udt:IDType" minOccurs="0"/>
- <xs:element name="Name" type="udt:TextType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="Name" type="udt:TextType"/>
<xs:element name="Description" type="udt:TextType" minOccurs="0"/>
<xs:element name="ApplicableProductCharacteristic" type="ram:ProductCharacteristicType" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="DesignatedProductClassification" type="ram:ProductClassificationType" minOccurs="0" maxOccurs="unbounded"/>
@@ -266,32 +264,32 @@
</xs:complexType>
<xs:complexType name="TradeSettlementFinancialCardType">
<xs:sequence>
- <xs:element name="ID" type="udt:IDType" minOccurs="0"/>
+ <xs:element name="ID" type="udt:IDType"/>
<xs:element name="CardholderName" type="udt:TextType" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="TradeSettlementHeaderMonetarySummationType">
<xs:sequence>
- <xs:element name="LineTotalAmount" type="udt:AmountType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="ChargeTotalAmount" type="udt:AmountType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="AllowanceTotalAmount" type="udt:AmountType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="TaxBasisTotalAmount" type="udt:AmountType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="TaxTotalAmount" type="udt:AmountType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="RoundingAmount" type="udt:AmountType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="GrandTotalAmount" type="udt:AmountType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="TotalPrepaidAmount" type="udt:AmountType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="DuePayableAmount" type="udt:AmountType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="LineTotalAmount" type="udt:AmountType"/>
+ <xs:element name="ChargeTotalAmount" type="udt:AmountType" minOccurs="0"/>
+ <xs:element name="AllowanceTotalAmount" type="udt:AmountType" minOccurs="0"/>
+ <xs:element name="TaxBasisTotalAmount" type="udt:AmountType"/>
+ <xs:element name="TaxTotalAmount" type="udt:AmountType"/>
+ <xs:element name="RoundingAmount" type="udt:AmountType" minOccurs="0"/>
+ <xs:element name="GrandTotalAmount" type="udt:AmountType"/>
+ <xs:element name="TotalPrepaidAmount" type="udt:AmountType" minOccurs="0"/>
+ <xs:element name="DuePayableAmount" type="udt:AmountType"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="TradeSettlementLineMonetarySummationType">
<xs:sequence>
- <xs:element name="LineTotalAmount" type="udt:AmountType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="LineTotalAmount" type="udt:AmountType"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="TradeSettlementPaymentMeansType">
<xs:sequence>
- <xs:element name="TypeCode" type="qdt:PaymentMeansCodeType" minOccurs="0"/>
- <xs:element name="Information" type="udt:TextType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="TypeCode" type="qdt:PaymentMeansCodeType"/>
+ <xs:element name="Information" type="udt:TextType" minOccurs="0"/>
<xs:element name="ApplicableTradeSettlementFinancialCard" type="ram:TradeSettlementFinancialCardType" minOccurs="0"/>
<xs:element name="PayerPartyDebtorFinancialAccount" type="ram:DebtorFinancialAccountType" minOccurs="0"/>
<xs:element name="PayeePartyCreditorFinancialAccount" type="ram:CreditorFinancialAccountType" minOccurs="0"/>
@@ -300,11 +298,11 @@
</xs:complexType>
<xs:complexType name="TradeTaxType">
<xs:sequence>
- <xs:element name="CalculatedAmount" type="udt:AmountType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="TypeCode" type="qdt:TaxTypeCodeType" minOccurs="0"/>
+ <xs:element name="CalculatedAmount" type="udt:AmountType" minOccurs="0"/>
+ <xs:element name="TypeCode" type="qdt:TaxTypeCodeType"/>
<xs:element name="ExemptionReason" type="udt:TextType" minOccurs="0"/>
- <xs:element name="BasisAmount" type="udt:AmountType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="CategoryCode" type="qdt:TaxCategoryCodeType" minOccurs="0"/>
+ <xs:element name="BasisAmount" type="udt:AmountType" minOccurs="0"/>
+ <xs:element name="CategoryCode" type="qdt:TaxCategoryCodeType"/>
<xs:element name="ExemptionReasonCode" type="udt:CodeType" minOccurs="0"/>
<xs:element name="TaxPointDate" type="udt:DateType" minOccurs="0"/>
<xs:element name="DueDateTypeCode" type="qdt:TimeReferenceCodeType" minOccurs="0"/>
diff --git a/facturx/xsd/factur-x/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd b/facturx/xsd/facturx-en16931/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd
index 5a20d87..b318b17 100644
--- a/facturx/xsd/factur-x/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd
+++ b/facturx/xsd/facturx-en16931/FACTUR-X_EN16931_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd
@@ -7,23 +7,23 @@
<xs:complexType name="AmountType">
<xs:simpleContent>
<xs:extension base="xs:decimal">
- <xs:attribute name="currencyID" type="xs:token"/>
+ <xs:attribute name="currencyID" type="xs:token" use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="BinaryObjectType">
<xs:simpleContent>
<xs:extension base="xs:base64Binary">
- <xs:attribute name="mimeCode" type="xs:token"/>
- <xs:attribute name="filename" type="xs:string"/>
+ <xs:attribute name="mimeCode" type="xs:token" use="required"/>
+ <xs:attribute name="filename" type="xs:string" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="CodeType">
<xs:simpleContent>
<xs:extension base="xs:token">
- <xs:attribute name="listID" type="xs:token"/>
- <xs:attribute name="listVersionID" type="xs:token"/>
+ <xs:attribute name="listID" type="xs:token" use="optional"/>
+ <xs:attribute name="listVersionID" type="xs:token" use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
@@ -33,7 +33,7 @@
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
- <xs:attribute name="format" type="xs:string"/>
+ <xs:attribute name="format" type="xs:string" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
@@ -46,7 +46,7 @@
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
- <xs:attribute name="format" type="xs:string"/>
+ <xs:attribute name="format" type="xs:string" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
@@ -56,7 +56,7 @@
<xs:complexType name="IDType">
<xs:simpleContent>
<xs:extension base="xs:token">
- <xs:attribute name="schemeID" type="xs:token"/>
+ <xs:attribute name="schemeID" type="xs:token" use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
@@ -73,7 +73,7 @@
<xs:complexType name="QuantityType">
<xs:simpleContent>
<xs:extension base="xs:decimal">
- <xs:attribute name="unitCode" type="xs:token"/>
+ <xs:attribute name="unitCode" type="xs:token" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
diff --git a/facturx/xsd/factur-x/FACTUR-X_EXTENDED.xsd b/facturx/xsd/facturx-extended/FACTUR-X_EXTENDED.xsd
index 9358b1c..9358b1c 100644
--- a/facturx/xsd/factur-x/FACTUR-X_EXTENDED.xsd
+++ b/facturx/xsd/facturx-extended/FACTUR-X_EXTENDED.xsd
diff --git a/facturx/xsd/factur-x/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd b/facturx/xsd/facturx-extended/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd
index 1845610..d25fd9b 100644
--- a/facturx/xsd/factur-x/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd
+++ b/facturx/xsd/facturx-extended/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd
@@ -24,167 +24,183 @@
</xs:complexType>
<xs:simpleType name="AllowanceChargeReasonCodeContentType">
<xs:restriction base="xs:token">
- <xs:enumeration value="AA"/>
- <xs:enumeration value="AAA"/>
- <xs:enumeration value="AAC"/>
- <xs:enumeration value="AAD"/>
- <xs:enumeration value="AAE"/>
- <xs:enumeration value="AAF"/>
- <xs:enumeration value="AAH"/>
- <xs:enumeration value="AAI"/>
- <xs:enumeration value="AAS"/>
- <xs:enumeration value="AAT"/>
- <xs:enumeration value="AAV"/>
- <xs:enumeration value="AAY"/>
- <xs:enumeration value="AAZ"/>
- <xs:enumeration value="ABA"/>
- <xs:enumeration value="ABB"/>
- <xs:enumeration value="ABC"/>
- <xs:enumeration value="ABD"/>
- <xs:enumeration value="ABF"/>
- <xs:enumeration value="ABK"/>
- <xs:enumeration value="ABL"/>
- <xs:enumeration value="ABN"/>
- <xs:enumeration value="ABR"/>
- <xs:enumeration value="ABS"/>
- <xs:enumeration value="ABT"/>
- <xs:enumeration value="ABU"/>
- <xs:enumeration value="ACF"/>
- <xs:enumeration value="ACG"/>
- <xs:enumeration value="ACH"/>
- <xs:enumeration value="ACI"/>
- <xs:enumeration value="ACJ"/>
- <xs:enumeration value="ACK"/>
- <xs:enumeration value="ACL"/>
- <xs:enumeration value="ACM"/>
- <xs:enumeration value="ACS"/>
- <xs:enumeration value="ADC"/>
- <xs:enumeration value="ADE"/>
- <xs:enumeration value="ADJ"/>
- <xs:enumeration value="ADK"/>
- <xs:enumeration value="ADL"/>
- <xs:enumeration value="ADM"/>
- <xs:enumeration value="ADN"/>
- <xs:enumeration value="ADO"/>
- <xs:enumeration value="ADP"/>
- <xs:enumeration value="ADQ"/>
- <xs:enumeration value="ADR"/>
- <xs:enumeration value="ADT"/>
- <xs:enumeration value="ADW"/>
- <xs:enumeration value="ADY"/>
- <xs:enumeration value="ADZ"/>
- <xs:enumeration value="AEA"/>
- <xs:enumeration value="AEB"/>
- <xs:enumeration value="AEC"/>
- <xs:enumeration value="AED"/>
- <xs:enumeration value="AEF"/>
- <xs:enumeration value="AEH"/>
- <xs:enumeration value="AEI"/>
- <xs:enumeration value="AEJ"/>
- <xs:enumeration value="AEK"/>
- <xs:enumeration value="AEL"/>
- <xs:enumeration value="AEM"/>
- <xs:enumeration value="AEN"/>
- <xs:enumeration value="AEO"/>
- <xs:enumeration value="AEP"/>
- <xs:enumeration value="AES"/>
- <xs:enumeration value="AET"/>
- <xs:enumeration value="AEU"/>
- <xs:enumeration value="AEV"/>
- <xs:enumeration value="AEW"/>
- <xs:enumeration value="AEX"/>
- <xs:enumeration value="AEY"/>
- <xs:enumeration value="AEZ"/>
- <xs:enumeration value="AJ"/>
- <xs:enumeration value="AU"/>
- <xs:enumeration value="CA"/>
- <xs:enumeration value="CAB"/>
- <xs:enumeration value="CAD"/>
- <xs:enumeration value="CAE"/>
- <xs:enumeration value="CAF"/>
- <xs:enumeration value="CAI"/>
- <xs:enumeration value="CAJ"/>
- <xs:enumeration value="CAK"/>
- <xs:enumeration value="CAL"/>
- <xs:enumeration value="CAM"/>
- <xs:enumeration value="CAN"/>
- <xs:enumeration value="CAO"/>
- <xs:enumeration value="CAP"/>
- <xs:enumeration value="CAQ"/>
- <xs:enumeration value="CAR"/>
- <xs:enumeration value="CAS"/>
- <xs:enumeration value="CAT"/>
- <xs:enumeration value="CAU"/>
- <xs:enumeration value="CAV"/>
- <xs:enumeration value="CAW"/>
- <xs:enumeration value="CD"/>
- <xs:enumeration value="CG"/>
- <xs:enumeration value="CS"/>
- <xs:enumeration value="CT"/>
- <xs:enumeration value="DAB"/>
- <xs:enumeration value="DAD"/>
- <xs:enumeration value="DL"/>
- <xs:enumeration value="EG"/>
- <xs:enumeration value="EP"/>
- <xs:enumeration value="ER"/>
- <xs:enumeration value="FAA"/>
- <xs:enumeration value="FAB"/>
- <xs:enumeration value="FAC"/>
- <xs:enumeration value="FC"/>
- <xs:enumeration value="FH"/>
- <xs:enumeration value="FI"/>
- <xs:enumeration value="GAA"/>
- <xs:enumeration value="HAA"/>
- <xs:enumeration value="HD"/>
- <xs:enumeration value="HH"/>
- <xs:enumeration value="IAA"/>
- <xs:enumeration value="IAB"/>
- <xs:enumeration value="ID"/>
- <xs:enumeration value="IF"/>
- <xs:enumeration value="IR"/>
- <xs:enumeration value="IS"/>
- <xs:enumeration value="KO"/>
- <xs:enumeration value="L1"/>
- <xs:enumeration value="LA"/>
- <xs:enumeration value="LAA"/>
- <xs:enumeration value="LAB"/>
- <xs:enumeration value="LF"/>
- <xs:enumeration value="MAE"/>
- <xs:enumeration value="MI"/>
- <xs:enumeration value="ML"/>
- <xs:enumeration value="NAA"/>
- <xs:enumeration value="OA"/>
- <xs:enumeration value="PA"/>
- <xs:enumeration value="PAA"/>
- <xs:enumeration value="PC"/>
- <xs:enumeration value="PL"/>
- <xs:enumeration value="RAB"/>
- <xs:enumeration value="RAC"/>
- <xs:enumeration value="RAD"/>
- <xs:enumeration value="RAF"/>
- <xs:enumeration value="RE"/>
- <xs:enumeration value="RF"/>
- <xs:enumeration value="RH"/>
- <xs:enumeration value="RV"/>
- <xs:enumeration value="SA"/>
- <xs:enumeration value="SAA"/>
- <xs:enumeration value="SAD"/>
- <xs:enumeration value="SAE"/>
- <xs:enumeration value="SAI"/>
- <xs:enumeration value="SG"/>
- <xs:enumeration value="SH"/>
- <xs:enumeration value="SM"/>
- <xs:enumeration value="SU"/>
- <xs:enumeration value="TAB"/>
- <xs:enumeration value="TAC"/>
- <xs:enumeration value="TT"/>
- <xs:enumeration value="TV"/>
- <xs:enumeration value="V1"/>
- <xs:enumeration value="V2"/>
- <xs:enumeration value="WH"/>
- <xs:enumeration value="XAA"/>
- <xs:enumeration value="YY"/>
- <xs:enumeration value="ZZZ"/>
+ <xs:enumeration value="AA"/>
+ <xs:enumeration value="AAA"/>
+ <xs:enumeration value="AAC"/>
+ <xs:enumeration value="AAD"/>
+ <xs:enumeration value="AAE"/>
+ <xs:enumeration value="AAF"/>
+ <xs:enumeration value="AAH"/>
+ <xs:enumeration value="AAI"/>
+ <xs:enumeration value="AAS"/>
+ <xs:enumeration value="AAT"/>
+ <xs:enumeration value="AAV"/>
+ <xs:enumeration value="AAY"/>
+ <xs:enumeration value="AAZ"/>
+ <xs:enumeration value="ABA"/>
+ <xs:enumeration value="ABB"/>
+ <xs:enumeration value="ABC"/>
+ <xs:enumeration value="ABD"/>
+ <xs:enumeration value="ABF"/>
+ <xs:enumeration value="ABK"/>
+ <xs:enumeration value="ABL"/>
+ <xs:enumeration value="ABN"/>
+ <xs:enumeration value="ABR"/>
+ <xs:enumeration value="ABS"/>
+ <xs:enumeration value="ABT"/>
+ <xs:enumeration value="ABU"/>
+ <xs:enumeration value="ACF"/>
+ <xs:enumeration value="ACG"/>
+ <xs:enumeration value="ACH"/>
+ <xs:enumeration value="ACI"/>
+ <xs:enumeration value="ACJ"/>
+ <xs:enumeration value="ACK"/>
+ <xs:enumeration value="ACL"/>
+ <xs:enumeration value="ACM"/>
+ <xs:enumeration value="ACS"/>
+ <xs:enumeration value="ADC"/>
+ <xs:enumeration value="ADE"/>
+ <xs:enumeration value="ADJ"/>
+ <xs:enumeration value="ADK"/>
+ <xs:enumeration value="ADL"/>
+ <xs:enumeration value="ADM"/>
+ <xs:enumeration value="ADN"/>
+ <xs:enumeration value="ADO"/>
+ <xs:enumeration value="ADP"/>
+ <xs:enumeration value="ADQ"/>
+ <xs:enumeration value="ADR"/>
+ <xs:enumeration value="ADT"/>
+ <xs:enumeration value="ADW"/>
+ <xs:enumeration value="ADY"/>
+ <xs:enumeration value="ADZ"/>
+ <xs:enumeration value="AEA"/>
+ <xs:enumeration value="AEB"/>
+ <xs:enumeration value="AEC"/>
+ <xs:enumeration value="AED"/>
+ <xs:enumeration value="AEF"/>
+ <xs:enumeration value="AEH"/>
+ <xs:enumeration value="AEI"/>
+ <xs:enumeration value="AEJ"/>
+ <xs:enumeration value="AEK"/>
+ <xs:enumeration value="AEL"/>
+ <xs:enumeration value="AEM"/>
+ <xs:enumeration value="AEN"/>
+ <xs:enumeration value="AEO"/>
+ <xs:enumeration value="AEP"/>
+ <xs:enumeration value="AES"/>
+ <xs:enumeration value="AET"/>
+ <xs:enumeration value="AEU"/>
+ <xs:enumeration value="AEV"/>
+ <xs:enumeration value="AEW"/>
+ <xs:enumeration value="AEX"/>
+ <xs:enumeration value="AEY"/>
+ <xs:enumeration value="AEZ"/>
+ <xs:enumeration value="AJ"/>
+ <xs:enumeration value="AU"/>
+ <xs:enumeration value="CA"/>
+ <xs:enumeration value="CAB"/>
+ <xs:enumeration value="CAD"/>
+ <xs:enumeration value="CAE"/>
+ <xs:enumeration value="CAF"/>
+ <xs:enumeration value="CAI"/>
+ <xs:enumeration value="CAJ"/>
+ <xs:enumeration value="CAK"/>
+ <xs:enumeration value="CAL"/>
+ <xs:enumeration value="CAM"/>
+ <xs:enumeration value="CAN"/>
+ <xs:enumeration value="CAO"/>
+ <xs:enumeration value="CAP"/>
+ <xs:enumeration value="CAQ"/>
+ <xs:enumeration value="CAR"/>
+ <xs:enumeration value="CAS"/>
+ <xs:enumeration value="CAT"/>
+ <xs:enumeration value="CAU"/>
+ <xs:enumeration value="CAV"/>
+ <xs:enumeration value="CAW"/>
+ <xs:enumeration value="CAX"/>
+ <xs:enumeration value="CAY"/>
+ <xs:enumeration value="CAZ"/>
+ <xs:enumeration value="CD"/>
+ <xs:enumeration value="CG"/>
+ <xs:enumeration value="CS"/>
+ <xs:enumeration value="CT"/>
+ <xs:enumeration value="DAB"/>
+ <xs:enumeration value="DAC"/>
+ <xs:enumeration value="DAD"/>
+ <xs:enumeration value="DAF"/>
+ <xs:enumeration value="DAG"/>
+ <xs:enumeration value="DAH"/>
+ <xs:enumeration value="DAI"/>
+ <xs:enumeration value="DAJ"/>
+ <xs:enumeration value="DAK"/>
+ <xs:enumeration value="DAL"/>
+ <xs:enumeration value="DAM"/>
+ <xs:enumeration value="DAN"/>
+ <xs:enumeration value="DAO"/>
+ <xs:enumeration value="DAP"/>
+ <xs:enumeration value="DAQ"/>
+ <xs:enumeration value="DL"/>
+ <xs:enumeration value="EG"/>
+ <xs:enumeration value="EP"/>
+ <xs:enumeration value="ER"/>
+ <xs:enumeration value="FAA"/>
+ <xs:enumeration value="FAB"/>
+ <xs:enumeration value="FAC"/>
+ <xs:enumeration value="FC"/>
+ <xs:enumeration value="FH"/>
+ <xs:enumeration value="FI"/>
+ <xs:enumeration value="GAA"/>
+ <xs:enumeration value="HAA"/>
+ <xs:enumeration value="HD"/>
+ <xs:enumeration value="HH"/>
+ <xs:enumeration value="IAA"/>
+ <xs:enumeration value="IAB"/>
+ <xs:enumeration value="ID"/>
+ <xs:enumeration value="IF"/>
+ <xs:enumeration value="IR"/>
+ <xs:enumeration value="IS"/>
+ <xs:enumeration value="KO"/>
+ <xs:enumeration value="L1"/>
+ <xs:enumeration value="LA"/>
+ <xs:enumeration value="LAA"/>
+ <xs:enumeration value="LAB"/>
+ <xs:enumeration value="LF"/>
+ <xs:enumeration value="MAE"/>
+ <xs:enumeration value="MI"/>
+ <xs:enumeration value="ML"/>
+ <xs:enumeration value="NAA"/>
+ <xs:enumeration value="OA"/>
+ <xs:enumeration value="PA"/>
+ <xs:enumeration value="PAA"/>
+ <xs:enumeration value="PC"/>
+ <xs:enumeration value="PL"/>
+ <xs:enumeration value="RAB"/>
+ <xs:enumeration value="RAC"/>
+ <xs:enumeration value="RAD"/>
+ <xs:enumeration value="RAF"/>
+ <xs:enumeration value="RE"/>
+ <xs:enumeration value="RF"/>
+ <xs:enumeration value="RH"/>
+ <xs:enumeration value="RV"/>
+ <xs:enumeration value="SA"/>
+ <xs:enumeration value="SAA"/>
+ <xs:enumeration value="SAD"/>
+ <xs:enumeration value="SAE"/>
+ <xs:enumeration value="SAI"/>
+ <xs:enumeration value="SG"/>
+ <xs:enumeration value="SH"/>
+ <xs:enumeration value="SM"/>
+ <xs:enumeration value="SU"/>
+ <xs:enumeration value="TAB"/>
+ <xs:enumeration value="TAC"/>
+ <xs:enumeration value="TT"/>
+ <xs:enumeration value="TV"/>
+ <xs:enumeration value="V1"/>
+ <xs:enumeration value="V2"/>
+ <xs:enumeration value="WH"/>
+ <xs:enumeration value="XAA"/>
+ <xs:enumeration value="YY"/>
+ <xs:enumeration value="ZZZ"/>
<xs:enumeration value="41"/>
<xs:enumeration value="42"/>
<xs:enumeration value="60"/>
@@ -623,6 +639,7 @@
<xs:enumeration value="USN"/>
<xs:enumeration value="UYI"/>
<xs:enumeration value="UYU"/>
+ <xs:enumeration value="UYW"/>
<xs:enumeration value="UZS"/>
<xs:enumeration value="VEF"/>
<xs:enumeration value="VND"/>
@@ -1440,14 +1457,87 @@
</xs:complexType>
<xs:simpleType name="PaymentMeansCodeContentType">
<xs:restriction base="xs:token">
- <xs:enumeration value="10"/>
- <xs:enumeration value="20"/>
- <xs:enumeration value="30"/>
- <xs:enumeration value="48"/>
- <xs:enumeration value="49"/>
- <xs:enumeration value="57"/>
- <xs:enumeration value="58"/>
- <xs:enumeration value="59"/>
+ <xs:enumeration value="1"/>
+ <xs:enumeration value="2"/>
+ <xs:enumeration value="3"/>
+ <xs:enumeration value="4"/>
+ <xs:enumeration value="5"/>
+ <xs:enumeration value="6"/>
+ <xs:enumeration value="7"/>
+ <xs:enumeration value="8"/>
+ <xs:enumeration value="9"/>
+ <xs:enumeration value="10"/>
+ <xs:enumeration value="11"/>
+ <xs:enumeration value="12"/>
+ <xs:enumeration value="13"/>
+ <xs:enumeration value="14"/>
+ <xs:enumeration value="15"/>
+ <xs:enumeration value="16"/>
+ <xs:enumeration value="17"/>
+ <xs:enumeration value="18"/>
+ <xs:enumeration value="19"/>
+ <xs:enumeration value="20"/>
+ <xs:enumeration value="21"/>
+ <xs:enumeration value="22"/>
+ <xs:enumeration value="23"/>
+ <xs:enumeration value="24"/>
+ <xs:enumeration value="25"/>
+ <xs:enumeration value="26"/>
+ <xs:enumeration value="27"/>
+ <xs:enumeration value="28"/>
+ <xs:enumeration value="29"/>
+ <xs:enumeration value="30"/>
+ <xs:enumeration value="31"/>
+ <xs:enumeration value="32"/>
+ <xs:enumeration value="33"/>
+ <xs:enumeration value="34"/>
+ <xs:enumeration value="35"/>
+ <xs:enumeration value="36"/>
+ <xs:enumeration value="37"/>
+ <xs:enumeration value="38"/>
+ <xs:enumeration value="39"/>
+ <xs:enumeration value="40"/>
+ <xs:enumeration value="41"/>
+ <xs:enumeration value="42"/>
+ <xs:enumeration value="43"/>
+ <xs:enumeration value="44"/>
+ <xs:enumeration value="45"/>
+ <xs:enumeration value="46"/>
+ <xs:enumeration value="47"/>
+ <xs:enumeration value="48"/>
+ <xs:enumeration value="49"/>
+ <xs:enumeration value="50"/>
+ <xs:enumeration value="51"/>
+ <xs:enumeration value="52"/>
+ <xs:enumeration value="53"/>
+ <xs:enumeration value="54"/>
+ <xs:enumeration value="55"/>
+ <xs:enumeration value="56"/>
+ <xs:enumeration value="57"/>
+ <xs:enumeration value="58"/>
+ <xs:enumeration value="59"/>
+ <xs:enumeration value="60"/>
+ <xs:enumeration value="61"/>
+ <xs:enumeration value="62"/>
+ <xs:enumeration value="63"/>
+ <xs:enumeration value="64"/>
+ <xs:enumeration value="65"/>
+ <xs:enumeration value="66"/>
+ <xs:enumeration value="67"/>
+ <xs:enumeration value="68"/>
+ <xs:enumeration value="70"/>
+ <xs:enumeration value="74"/>
+ <xs:enumeration value="75"/>
+ <xs:enumeration value="76"/>
+ <xs:enumeration value="77"/>
+ <xs:enumeration value="78"/>
+ <xs:enumeration value="91"/>
+ <xs:enumeration value="92"/>
+ <xs:enumeration value="93"/>
+ <xs:enumeration value="94"/>
+ <xs:enumeration value="95"/>
+ <xs:enumeration value="96"/>
+ <xs:enumeration value="97"/>
<xs:enumeration value="ZZZ"/>
</xs:restriction>
</xs:simpleType>
diff --git a/facturx/xsd/factur-x/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd b/facturx/xsd/facturx-extended/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd
index c64d5e2..c64d5e2 100644
--- a/facturx/xsd/factur-x/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd
+++ b/facturx/xsd/facturx-extended/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd
diff --git a/facturx/xsd/factur-x/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd b/facturx/xsd/facturx-extended/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd
index 6e5c490..6e5c490 100644
--- a/facturx/xsd/factur-x/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd
+++ b/facturx/xsd/facturx-extended/FACTUR-X_EXTENDED_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd
diff --git a/facturx/xsd/facturx-minimum/FACTUR-X_MINIMUM.xsd b/facturx/xsd/facturx-minimum/FACTUR-X_MINIMUM.xsd
new file mode 100644
index 0000000..e51acb3
--- /dev/null
+++ b/facturx/xsd/facturx-minimum/FACTUR-X_MINIMUM.xsd
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:rsm="urn:un:unece:uncefact:data:standard:CrossIndustryInvoice:100"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ xmlns:qdt="urn:un:unece:uncefact:data:standard:QualifiedDataType:100"
+ xmlns:ram="urn:un:unece:uncefact:data:standard:ReusableAggregateBusinessInformationEntity:100"
+ xmlns:udt="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:100"
+ targetNamespace="urn:un:unece:uncefact:data:standard:CrossIndustryInvoice:100"
+ elementFormDefault="qualified">
+ <xs:import namespace="urn:un:unece:uncefact:data:standard:QualifiedDataType:100" schemaLocation="FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd"/>
+ <xs:import namespace="urn:un:unece:uncefact:data:standard:ReusableAggregateBusinessInformationEntity:100" schemaLocation="FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd"/>
+ <xs:import namespace="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:100" schemaLocation="FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd"/>
+ <xs:element name="CrossIndustryInvoice" type="rsm:CrossIndustryInvoiceType"/>
+ <xs:complexType name="CrossIndustryInvoiceType">
+ <xs:sequence>
+ <xs:element name="ExchangedDocumentContext" type="ram:ExchangedDocumentContextType"/>
+ <xs:element name="ExchangedDocument" type="ram:ExchangedDocumentType"/>
+ <xs:element name="SupplyChainTradeTransaction" type="ram:SupplyChainTradeTransactionType"/>
+ </xs:sequence>
+ </xs:complexType>
+</xs:schema>
diff --git a/facturx/xsd/facturx-minimum/FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd b/facturx/xsd/facturx-minimum/FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd
new file mode 100644
index 0000000..d1bd911
--- /dev/null
+++ b/facturx/xsd/facturx-minimum/FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd
@@ -0,0 +1,786 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:qdt="urn:un:unece:uncefact:data:standard:QualifiedDataType:100"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ xmlns:udt="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:100"
+ targetNamespace="urn:un:unece:uncefact:data:standard:QualifiedDataType:100"
+ elementFormDefault="qualified"
+ version="100.D16B">
+ <xs:import namespace="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:100" schemaLocation="FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd"/>
+ <xs:simpleType name="AllowanceChargeReasonCodeContentType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="AA"/>
+ <xs:enumeration value="AAA"/>
+ <xs:enumeration value="AAC"/>
+ <xs:enumeration value="AAD"/>
+ <xs:enumeration value="AAE"/>
+ <xs:enumeration value="AAF"/>
+ <xs:enumeration value="AAH"/>
+ <xs:enumeration value="AAI"/>
+ <xs:enumeration value="AAS"/>
+ <xs:enumeration value="AAT"/>
+ <xs:enumeration value="AAV"/>
+ <xs:enumeration value="AAY"/>
+ <xs:enumeration value="AAZ"/>
+ <xs:enumeration value="ABA"/>
+ <xs:enumeration value="ABB"/>
+ <xs:enumeration value="ABC"/>
+ <xs:enumeration value="ABD"/>
+ <xs:enumeration value="ABF"/>
+ <xs:enumeration value="ABK"/>
+ <xs:enumeration value="ABL"/>
+ <xs:enumeration value="ABN"/>
+ <xs:enumeration value="ABR"/>
+ <xs:enumeration value="ABS"/>
+ <xs:enumeration value="ABT"/>
+ <xs:enumeration value="ABU"/>
+ <xs:enumeration value="ACF"/>
+ <xs:enumeration value="ACG"/>
+ <xs:enumeration value="ACH"/>
+ <xs:enumeration value="ACI"/>
+ <xs:enumeration value="ACJ"/>
+ <xs:enumeration value="ACK"/>
+ <xs:enumeration value="ACL"/>
+ <xs:enumeration value="ACM"/>
+ <xs:enumeration value="ACS"/>
+ <xs:enumeration value="ADC"/>
+ <xs:enumeration value="ADE"/>
+ <xs:enumeration value="ADJ"/>
+ <xs:enumeration value="ADK"/>
+ <xs:enumeration value="ADL"/>
+ <xs:enumeration value="ADM"/>
+ <xs:enumeration value="ADN"/>
+ <xs:enumeration value="ADO"/>
+ <xs:enumeration value="ADP"/>
+ <xs:enumeration value="ADQ"/>
+ <xs:enumeration value="ADR"/>
+ <xs:enumeration value="ADT"/>
+ <xs:enumeration value="ADW"/>
+ <xs:enumeration value="ADY"/>
+ <xs:enumeration value="ADZ"/>
+ <xs:enumeration value="AEA"/>
+ <xs:enumeration value="AEB"/>
+ <xs:enumeration value="AEC"/>
+ <xs:enumeration value="AED"/>
+ <xs:enumeration value="AEF"/>
+ <xs:enumeration value="AEH"/>
+ <xs:enumeration value="AEI"/>
+ <xs:enumeration value="AEJ"/>
+ <xs:enumeration value="AEK"/>
+ <xs:enumeration value="AEL"/>
+ <xs:enumeration value="AEM"/>
+ <xs:enumeration value="AEN"/>
+ <xs:enumeration value="AEO"/>
+ <xs:enumeration value="AEP"/>
+ <xs:enumeration value="AES"/>
+ <xs:enumeration value="AET"/>
+ <xs:enumeration value="AEU"/>
+ <xs:enumeration value="AEV"/>
+ <xs:enumeration value="AEW"/>
+ <xs:enumeration value="AEX"/>
+ <xs:enumeration value="AEY"/>
+ <xs:enumeration value="AEZ"/>
+ <xs:enumeration value="AJ"/>
+ <xs:enumeration value="AU"/>
+ <xs:enumeration value="CA"/>
+ <xs:enumeration value="CAB"/>
+ <xs:enumeration value="CAD"/>
+ <xs:enumeration value="CAE"/>
+ <xs:enumeration value="CAF"/>
+ <xs:enumeration value="CAI"/>
+ <xs:enumeration value="CAJ"/>
+ <xs:enumeration value="CAK"/>
+ <xs:enumeration value="CAL"/>
+ <xs:enumeration value="CAM"/>
+ <xs:enumeration value="CAN"/>
+ <xs:enumeration value="CAO"/>
+ <xs:enumeration value="CAP"/>
+ <xs:enumeration value="CAQ"/>
+ <xs:enumeration value="CAR"/>
+ <xs:enumeration value="CAS"/>
+ <xs:enumeration value="CAT"/>
+ <xs:enumeration value="CAU"/>
+ <xs:enumeration value="CAV"/>
+ <xs:enumeration value="CAW"/>
+ <xs:enumeration value="CAX"/>
+ <xs:enumeration value="CAY"/>
+ <xs:enumeration value="CAZ"/>
+ <xs:enumeration value="CD"/>
+ <xs:enumeration value="CG"/>
+ <xs:enumeration value="CS"/>
+ <xs:enumeration value="CT"/>
+ <xs:enumeration value="DAB"/>
+ <xs:enumeration value="DAC"/>
+ <xs:enumeration value="DAD"/>
+ <xs:enumeration value="DAF"/>
+ <xs:enumeration value="DAG"/>
+ <xs:enumeration value="DAH"/>
+ <xs:enumeration value="DAI"/>
+ <xs:enumeration value="DAJ"/>
+ <xs:enumeration value="DAK"/>
+ <xs:enumeration value="DAL"/>
+ <xs:enumeration value="DAM"/>
+ <xs:enumeration value="DAN"/>
+ <xs:enumeration value="DAO"/>
+ <xs:enumeration value="DAP"/>
+ <xs:enumeration value="DAQ"/>
+ <xs:enumeration value="DL"/>
+ <xs:enumeration value="EG"/>
+ <xs:enumeration value="EP"/>
+ <xs:enumeration value="ER"/>
+ <xs:enumeration value="FAA"/>
+ <xs:enumeration value="FAB"/>
+ <xs:enumeration value="FAC"/>
+ <xs:enumeration value="FC"/>
+ <xs:enumeration value="FH"/>
+ <xs:enumeration value="FI"/>
+ <xs:enumeration value="GAA"/>
+ <xs:enumeration value="HAA"/>
+ <xs:enumeration value="HD"/>
+ <xs:enumeration value="HH"/>
+ <xs:enumeration value="IAA"/>
+ <xs:enumeration value="IAB"/>
+ <xs:enumeration value="ID"/>
+ <xs:enumeration value="IF"/>
+ <xs:enumeration value="IR"/>
+ <xs:enumeration value="IS"/>
+ <xs:enumeration value="KO"/>
+ <xs:enumeration value="L1"/>
+ <xs:enumeration value="LA"/>
+ <xs:enumeration value="LAA"/>
+ <xs:enumeration value="LAB"/>
+ <xs:enumeration value="LF"/>
+ <xs:enumeration value="MAE"/>
+ <xs:enumeration value="MI"/>
+ <xs:enumeration value="ML"/>
+ <xs:enumeration value="NAA"/>
+ <xs:enumeration value="OA"/>
+ <xs:enumeration value="PA"/>
+ <xs:enumeration value="PAA"/>
+ <xs:enumeration value="PC"/>
+ <xs:enumeration value="PL"/>
+ <xs:enumeration value="RAB"/>
+ <xs:enumeration value="RAC"/>
+ <xs:enumeration value="RAD"/>
+ <xs:enumeration value="RAF"/>
+ <xs:enumeration value="RE"/>
+ <xs:enumeration value="RF"/>
+ <xs:enumeration value="RH"/>
+ <xs:enumeration value="RV"/>
+ <xs:enumeration value="SA"/>
+ <xs:enumeration value="SAA"/>
+ <xs:enumeration value="SAD"/>
+ <xs:enumeration value="SAE"/>
+ <xs:enumeration value="SAI"/>
+ <xs:enumeration value="SG"/>
+ <xs:enumeration value="SH"/>
+ <xs:enumeration value="SM"/>
+ <xs:enumeration value="SU"/>
+ <xs:enumeration value="TAB"/>
+ <xs:enumeration value="TAC"/>
+ <xs:enumeration value="TT"/>
+ <xs:enumeration value="TV"/>
+ <xs:enumeration value="V1"/>
+ <xs:enumeration value="V2"/>
+ <xs:enumeration value="WH"/>
+ <xs:enumeration value="XAA"/>
+ <xs:enumeration value="YY"/>
+ <xs:enumeration value="ZZZ"/>
+ <xs:enumeration value="41"/>
+ <xs:enumeration value="42"/>
+ <xs:enumeration value="60"/>
+ <xs:enumeration value="62"/>
+ <xs:enumeration value="63"/>
+ <xs:enumeration value="64"/>
+ <xs:enumeration value="65"/>
+ <xs:enumeration value="66"/>
+ <xs:enumeration value="67"/>
+ <xs:enumeration value="68"/>
+ <xs:enumeration value="70"/>
+ <xs:enumeration value="71"/>
+ <xs:enumeration value="88"/>
+ <xs:enumeration value="95"/>
+ <xs:enumeration value="100"/>
+ <xs:enumeration value="102"/>
+ <xs:enumeration value="103"/>
+ <xs:enumeration value="104"/>
+ <xs:enumeration value="105"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="AllowanceChargeReasonCodeType">
+ <xs:simpleContent>
+ <xs:extension base="qdt:AllowanceChargeReasonCodeContentType"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:simpleType name="CountryIDContentType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="AD"/>
+ <xs:enumeration value="AE"/>
+ <xs:enumeration value="AF"/>
+ <xs:enumeration value="AG"/>
+ <xs:enumeration value="AI"/>
+ <xs:enumeration value="AL"/>
+ <xs:enumeration value="AM"/>
+ <xs:enumeration value="AO"/>
+ <xs:enumeration value="AQ"/>
+ <xs:enumeration value="AR"/>
+ <xs:enumeration value="AS"/>
+ <xs:enumeration value="AT"/>
+ <xs:enumeration value="AU"/>
+ <xs:enumeration value="AW"/>
+ <xs:enumeration value="AX"/>
+ <xs:enumeration value="AZ"/>
+ <xs:enumeration value="BA"/>
+ <xs:enumeration value="BB"/>
+ <xs:enumeration value="BD"/>
+ <xs:enumeration value="BE"/>
+ <xs:enumeration value="BF"/>
+ <xs:enumeration value="BG"/>
+ <xs:enumeration value="BH"/>
+ <xs:enumeration value="BI"/>
+ <xs:enumeration value="BJ"/>
+ <xs:enumeration value="BL"/>
+ <xs:enumeration value="BM"/>
+ <xs:enumeration value="BN"/>
+ <xs:enumeration value="BO"/>
+ <xs:enumeration value="BQ"/>
+ <xs:enumeration value="BR"/>
+ <xs:enumeration value="BS"/>
+ <xs:enumeration value="BT"/>
+ <xs:enumeration value="BV"/>
+ <xs:enumeration value="BW"/>
+ <xs:enumeration value="BY"/>
+ <xs:enumeration value="BZ"/>
+ <xs:enumeration value="CA"/>
+ <xs:enumeration value="CC"/>
+ <xs:enumeration value="CD"/>
+ <xs:enumeration value="CF"/>
+ <xs:enumeration value="CG"/>
+ <xs:enumeration value="CH"/>
+ <xs:enumeration value="CI"/>
+ <xs:enumeration value="CK"/>
+ <xs:enumeration value="CL"/>
+ <xs:enumeration value="CM"/>
+ <xs:enumeration value="CN"/>
+ <xs:enumeration value="CO"/>
+ <xs:enumeration value="CR"/>
+ <xs:enumeration value="CU"/>
+ <xs:enumeration value="CV"/>
+ <xs:enumeration value="CW"/>
+ <xs:enumeration value="CX"/>
+ <xs:enumeration value="CY"/>
+ <xs:enumeration value="CZ"/>
+ <xs:enumeration value="DE"/>
+ <xs:enumeration value="DJ"/>
+ <xs:enumeration value="DK"/>
+ <xs:enumeration value="DM"/>
+ <xs:enumeration value="DO"/>
+ <xs:enumeration value="DZ"/>
+ <xs:enumeration value="EC"/>
+ <xs:enumeration value="EE"/>
+ <xs:enumeration value="EG"/>
+ <xs:enumeration value="EH"/>
+ <xs:enumeration value="ER"/>
+ <xs:enumeration value="ES"/>
+ <xs:enumeration value="ET"/>
+ <xs:enumeration value="FI"/>
+ <xs:enumeration value="FJ"/>
+ <xs:enumeration value="FK"/>
+ <xs:enumeration value="FM"/>
+ <xs:enumeration value="FO"/>
+ <xs:enumeration value="FR"/>
+ <xs:enumeration value="GA"/>
+ <xs:enumeration value="GB"/>
+ <xs:enumeration value="GD"/>
+ <xs:enumeration value="GE"/>
+ <xs:enumeration value="GF"/>
+ <xs:enumeration value="GG"/>
+ <xs:enumeration value="GH"/>
+ <xs:enumeration value="GI"/>
+ <xs:enumeration value="GL"/>
+ <xs:enumeration value="GM"/>
+ <xs:enumeration value="GN"/>
+ <xs:enumeration value="GP"/>
+ <xs:enumeration value="GQ"/>
+ <xs:enumeration value="GR"/>
+ <xs:enumeration value="GS"/>
+ <xs:enumeration value="GT"/>
+ <xs:enumeration value="GU"/>
+ <xs:enumeration value="GW"/>
+ <xs:enumeration value="GY"/>
+ <xs:enumeration value="HK"/>
+ <xs:enumeration value="HM"/>
+ <xs:enumeration value="HN"/>
+ <xs:enumeration value="HR"/>
+ <xs:enumeration value="HT"/>
+ <xs:enumeration value="HU"/>
+ <xs:enumeration value="ID"/>
+ <xs:enumeration value="IE"/>
+ <xs:enumeration value="IL"/>
+ <xs:enumeration value="IM"/>
+ <xs:enumeration value="IN"/>
+ <xs:enumeration value="IO"/>
+ <xs:enumeration value="IQ"/>
+ <xs:enumeration value="IR"/>
+ <xs:enumeration value="IS"/>
+ <xs:enumeration value="IT"/>
+ <xs:enumeration value="JE"/>
+ <xs:enumeration value="JM"/>
+ <xs:enumeration value="JO"/>
+ <xs:enumeration value="JP"/>
+ <xs:enumeration value="KE"/>
+ <xs:enumeration value="KG"/>
+ <xs:enumeration value="KH"/>
+ <xs:enumeration value="KI"/>
+ <xs:enumeration value="KM"/>
+ <xs:enumeration value="KN"/>
+ <xs:enumeration value="KP"/>
+ <xs:enumeration value="KR"/>
+ <xs:enumeration value="KW"/>
+ <xs:enumeration value="KY"/>
+ <xs:enumeration value="KZ"/>
+ <xs:enumeration value="LA"/>
+ <xs:enumeration value="LB"/>
+ <xs:enumeration value="LC"/>
+ <xs:enumeration value="LI"/>
+ <xs:enumeration value="LK"/>
+ <xs:enumeration value="LR"/>
+ <xs:enumeration value="LS"/>
+ <xs:enumeration value="LT"/>
+ <xs:enumeration value="LU"/>
+ <xs:enumeration value="LV"/>
+ <xs:enumeration value="LY"/>
+ <xs:enumeration value="MA"/>
+ <xs:enumeration value="MC"/>
+ <xs:enumeration value="MD"/>
+ <xs:enumeration value="ME"/>
+ <xs:enumeration value="MF"/>
+ <xs:enumeration value="MG"/>
+ <xs:enumeration value="MH"/>
+ <xs:enumeration value="MK"/>
+ <xs:enumeration value="ML"/>
+ <xs:enumeration value="MM"/>
+ <xs:enumeration value="MN"/>
+ <xs:enumeration value="MO"/>
+ <xs:enumeration value="MP"/>
+ <xs:enumeration value="MQ"/>
+ <xs:enumeration value="MR"/>
+ <xs:enumeration value="MS"/>
+ <xs:enumeration value="MT"/>
+ <xs:enumeration value="MU"/>
+ <xs:enumeration value="MV"/>
+ <xs:enumeration value="MW"/>
+ <xs:enumeration value="MX"/>
+ <xs:enumeration value="MY"/>
+ <xs:enumeration value="MZ"/>
+ <xs:enumeration value="NA"/>
+ <xs:enumeration value="NC"/>
+ <xs:enumeration value="NE"/>
+ <xs:enumeration value="NF"/>
+ <xs:enumeration value="NG"/>
+ <xs:enumeration value="NI"/>
+ <xs:enumeration value="NL"/>
+ <xs:enumeration value="NO"/>
+ <xs:enumeration value="NP"/>
+ <xs:enumeration value="NR"/>
+ <xs:enumeration value="NU"/>
+ <xs:enumeration value="NZ"/>
+ <xs:enumeration value="OM"/>
+ <xs:enumeration value="PA"/>
+ <xs:enumeration value="PE"/>
+ <xs:enumeration value="PF"/>
+ <xs:enumeration value="PG"/>
+ <xs:enumeration value="PH"/>
+ <xs:enumeration value="PK"/>
+ <xs:enumeration value="PL"/>
+ <xs:enumeration value="PM"/>
+ <xs:enumeration value="PN"/>
+ <xs:enumeration value="PR"/>
+ <xs:enumeration value="PS"/>
+ <xs:enumeration value="PT"/>
+ <xs:enumeration value="PW"/>
+ <xs:enumeration value="PY"/>
+ <xs:enumeration value="QA"/>
+ <xs:enumeration value="RE"/>
+ <xs:enumeration value="RO"/>
+ <xs:enumeration value="RS"/>
+ <xs:enumeration value="RU"/>
+ <xs:enumeration value="RW"/>
+ <xs:enumeration value="SA"/>
+ <xs:enumeration value="SB"/>
+ <xs:enumeration value="SC"/>
+ <xs:enumeration value="SD"/>
+ <xs:enumeration value="SE"/>
+ <xs:enumeration value="SG"/>
+ <xs:enumeration value="SH"/>
+ <xs:enumeration value="SI"/>
+ <xs:enumeration value="SJ"/>
+ <xs:enumeration value="SK"/>
+ <xs:enumeration value="SL"/>
+ <xs:enumeration value="SM"/>
+ <xs:enumeration value="SN"/>
+ <xs:enumeration value="SO"/>
+ <xs:enumeration value="SR"/>
+ <xs:enumeration value="SS"/>
+ <xs:enumeration value="ST"/>
+ <xs:enumeration value="SV"/>
+ <xs:enumeration value="SX"/>
+ <xs:enumeration value="SY"/>
+ <xs:enumeration value="SZ"/>
+ <xs:enumeration value="TC"/>
+ <xs:enumeration value="TD"/>
+ <xs:enumeration value="TF"/>
+ <xs:enumeration value="TG"/>
+ <xs:enumeration value="TH"/>
+ <xs:enumeration value="TJ"/>
+ <xs:enumeration value="TK"/>
+ <xs:enumeration value="TL"/>
+ <xs:enumeration value="TM"/>
+ <xs:enumeration value="TN"/>
+ <xs:enumeration value="TO"/>
+ <xs:enumeration value="TR"/>
+ <xs:enumeration value="TT"/>
+ <xs:enumeration value="TV"/>
+ <xs:enumeration value="TW"/>
+ <xs:enumeration value="TZ"/>
+ <xs:enumeration value="UA"/>
+ <xs:enumeration value="UG"/>
+ <xs:enumeration value="UM"/>
+ <xs:enumeration value="US"/>
+ <xs:enumeration value="UY"/>
+ <xs:enumeration value="UZ"/>
+ <xs:enumeration value="VA"/>
+ <xs:enumeration value="VC"/>
+ <xs:enumeration value="VE"/>
+ <xs:enumeration value="VG"/>
+ <xs:enumeration value="VI"/>
+ <xs:enumeration value="VN"/>
+ <xs:enumeration value="VU"/>
+ <xs:enumeration value="WF"/>
+ <xs:enumeration value="WS"/>
+ <xs:enumeration value="YE"/>
+ <xs:enumeration value="YT"/>
+ <xs:enumeration value="ZA"/>
+ <xs:enumeration value="ZM"/>
+ <xs:enumeration value="ZW"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="CountryIDType">
+ <xs:simpleContent>
+ <xs:extension base="qdt:CountryIDContentType"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:simpleType name="CurrencyCodeContentType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="AED"/>
+ <xs:enumeration value="ALL"/>
+ <xs:enumeration value="AMD"/>
+ <xs:enumeration value="ANG"/>
+ <xs:enumeration value="AOA"/>
+ <xs:enumeration value="ARS"/>
+ <xs:enumeration value="AUD"/>
+ <xs:enumeration value="AWG"/>
+ <xs:enumeration value="AZN"/>
+ <xs:enumeration value="BAM"/>
+ <xs:enumeration value="BBD"/>
+ <xs:enumeration value="BDT"/>
+ <xs:enumeration value="BGN"/>
+ <xs:enumeration value="BHD"/>
+ <xs:enumeration value="BIF"/>
+ <xs:enumeration value="BMD"/>
+ <xs:enumeration value="BND"/>
+ <xs:enumeration value="BOB"/>
+ <xs:enumeration value="BOV"/>
+ <xs:enumeration value="BRL"/>
+ <xs:enumeration value="BSD"/>
+ <xs:enumeration value="BTN"/>
+ <xs:enumeration value="BWP"/>
+ <xs:enumeration value="BYN"/>
+ <xs:enumeration value="BZD"/>
+ <xs:enumeration value="CAD"/>
+ <xs:enumeration value="CDF"/>
+ <xs:enumeration value="CHE"/>
+ <xs:enumeration value="CHF"/>
+ <xs:enumeration value="CHW"/>
+ <xs:enumeration value="CLF"/>
+ <xs:enumeration value="CLP"/>
+ <xs:enumeration value="CNY"/>
+ <xs:enumeration value="COP"/>
+ <xs:enumeration value="COU"/>
+ <xs:enumeration value="CRC"/>
+ <xs:enumeration value="CUC"/>
+ <xs:enumeration value="CUP"/>
+ <xs:enumeration value="CVE"/>
+ <xs:enumeration value="CZK"/>
+ <xs:enumeration value="DJF"/>
+ <xs:enumeration value="DKK"/>
+ <xs:enumeration value="DOP"/>
+ <xs:enumeration value="DZD"/>
+ <xs:enumeration value="EGP"/>
+ <xs:enumeration value="ERN"/>
+ <xs:enumeration value="ETB"/>
+ <xs:enumeration value="EUR"/>
+ <xs:enumeration value="FJD"/>
+ <xs:enumeration value="FKP"/>
+ <xs:enumeration value="GBP"/>
+ <xs:enumeration value="GEL"/>
+ <xs:enumeration value="GHS"/>
+ <xs:enumeration value="GIP"/>
+ <xs:enumeration value="GMD"/>
+ <xs:enumeration value="GNF"/>
+ <xs:enumeration value="GTQ"/>
+ <xs:enumeration value="GYD"/>
+ <xs:enumeration value="HKD"/>
+ <xs:enumeration value="HNL"/>
+ <xs:enumeration value="HRK"/>
+ <xs:enumeration value="HTG"/>
+ <xs:enumeration value="HUF"/>
+ <xs:enumeration value="IDR"/>
+ <xs:enumeration value="ILS"/>
+ <xs:enumeration value="INR"/>
+ <xs:enumeration value="IQD"/>
+ <xs:enumeration value="IRR"/>
+ <xs:enumeration value="ISK"/>
+ <xs:enumeration value="JMD"/>
+ <xs:enumeration value="JOD"/>
+ <xs:enumeration value="JPY"/>
+ <xs:enumeration value="KES"/>
+ <xs:enumeration value="KGS"/>
+ <xs:enumeration value="KHR"/>
+ <xs:enumeration value="KMF"/>
+ <xs:enumeration value="KPW"/>
+ <xs:enumeration value="KRW"/>
+ <xs:enumeration value="KWD"/>
+ <xs:enumeration value="KYD"/>
+ <xs:enumeration value="KZT"/>
+ <xs:enumeration value="LAK"/>
+ <xs:enumeration value="LBP"/>
+ <xs:enumeration value="LKR"/>
+ <xs:enumeration value="LRD"/>
+ <xs:enumeration value="LSL"/>
+ <xs:enumeration value="LYD"/>
+ <xs:enumeration value="MAD"/>
+ <xs:enumeration value="MDL"/>
+ <xs:enumeration value="MGA"/>
+ <xs:enumeration value="MKD"/>
+ <xs:enumeration value="MMK"/>
+ <xs:enumeration value="MNT"/>
+ <xs:enumeration value="MOP"/>
+ <xs:enumeration value="MRO"/>
+ <xs:enumeration value="MUR"/>
+ <xs:enumeration value="MVR"/>
+ <xs:enumeration value="MWK"/>
+ <xs:enumeration value="MXN"/>
+ <xs:enumeration value="MXV"/>
+ <xs:enumeration value="MYR"/>
+ <xs:enumeration value="MZN"/>
+ <xs:enumeration value="NAD"/>
+ <xs:enumeration value="NGN"/>
+ <xs:enumeration value="NIO"/>
+ <xs:enumeration value="NOK"/>
+ <xs:enumeration value="NPR"/>
+ <xs:enumeration value="NZD"/>
+ <xs:enumeration value="OMR"/>
+ <xs:enumeration value="PAB"/>
+ <xs:enumeration value="PEN"/>
+ <xs:enumeration value="PGK"/>
+ <xs:enumeration value="PHP"/>
+ <xs:enumeration value="PKR"/>
+ <xs:enumeration value="PLN"/>
+ <xs:enumeration value="PYG"/>
+ <xs:enumeration value="QAR"/>
+ <xs:enumeration value="RON"/>
+ <xs:enumeration value="RSD"/>
+ <xs:enumeration value="RUB"/>
+ <xs:enumeration value="RWF"/>
+ <xs:enumeration value="SAR"/>
+ <xs:enumeration value="SBD"/>
+ <xs:enumeration value="SCR"/>
+ <xs:enumeration value="SDG"/>
+ <xs:enumeration value="SEK"/>
+ <xs:enumeration value="SGD"/>
+ <xs:enumeration value="SHP"/>
+ <xs:enumeration value="SLL"/>
+ <xs:enumeration value="SOS"/>
+ <xs:enumeration value="SRD"/>
+ <xs:enumeration value="SSP"/>
+ <xs:enumeration value="STD"/>
+ <xs:enumeration value="SVC"/>
+ <xs:enumeration value="SYP"/>
+ <xs:enumeration value="SZL"/>
+ <xs:enumeration value="THB"/>
+ <xs:enumeration value="TJS"/>
+ <xs:enumeration value="TMT"/>
+ <xs:enumeration value="TND"/>
+ <xs:enumeration value="TOP"/>
+ <xs:enumeration value="TRY"/>
+ <xs:enumeration value="TTD"/>
+ <xs:enumeration value="TWD"/>
+ <xs:enumeration value="TZS"/>
+ <xs:enumeration value="UAH"/>
+ <xs:enumeration value="UGX"/>
+ <xs:enumeration value="USD"/>
+ <xs:enumeration value="USN"/>
+ <xs:enumeration value="UYI"/>
+ <xs:enumeration value="UYU"/>
+ <xs:enumeration value="UYW"/>
+ <xs:enumeration value="UZS"/>
+ <xs:enumeration value="VEF"/>
+ <xs:enumeration value="VND"/>
+ <xs:enumeration value="VUV"/>
+ <xs:enumeration value="WST"/>
+ <xs:enumeration value="XAF"/>
+ <xs:enumeration value="XAG"/>
+ <xs:enumeration value="XAU"/>
+ <xs:enumeration value="XBA"/>
+ <xs:enumeration value="XBB"/>
+ <xs:enumeration value="XBC"/>
+ <xs:enumeration value="XBD"/>
+ <xs:enumeration value="XCD"/>
+ <xs:enumeration value="XDR"/>
+ <xs:enumeration value="XOF"/>
+ <xs:enumeration value="XPD"/>
+ <xs:enumeration value="XPF"/>
+ <xs:enumeration value="XPT"/>
+ <xs:enumeration value="XSU"/>
+ <xs:enumeration value="XTS"/>
+ <xs:enumeration value="XUA"/>
+ <xs:enumeration value="XXX"/>
+ <xs:enumeration value="YER"/>
+ <xs:enumeration value="ZAR"/>
+ <xs:enumeration value="ZMW"/>
+ <xs:enumeration value="ZWL"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="CurrencyCodeType">
+ <xs:simpleContent>
+ <xs:extension base="qdt:CurrencyCodeContentType"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:simpleType name="DocumentCodeContentType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="80"/>
+ <xs:enumeration value="81"/>
+ <xs:enumeration value="82"/>
+ <xs:enumeration value="83"/>
+ <xs:enumeration value="84"/>
+ <xs:enumeration value="130"/>
+ <xs:enumeration value="202"/>
+ <xs:enumeration value="203"/>
+ <xs:enumeration value="204"/>
+ <xs:enumeration value="211"/>
+ <xs:enumeration value="261"/>
+ <xs:enumeration value="262"/>
+ <xs:enumeration value="295"/>
+ <xs:enumeration value="296"/>
+ <xs:enumeration value="308"/>
+ <xs:enumeration value="325"/>
+ <xs:enumeration value="326"/>
+ <xs:enumeration value="380"/>
+ <xs:enumeration value="381"/>
+ <xs:enumeration value="383"/>
+ <xs:enumeration value="384"/>
+ <xs:enumeration value="385"/>
+ <xs:enumeration value="386"/>
+ <xs:enumeration value="387"/>
+ <xs:enumeration value="388"/>
+ <xs:enumeration value="389"/>
+ <xs:enumeration value="390"/>
+ <xs:enumeration value="393"/>
+ <xs:enumeration value="394"/>
+ <xs:enumeration value="395"/>
+ <xs:enumeration value="396"/>
+ <xs:enumeration value="420"/>
+ <xs:enumeration value="456"/>
+ <xs:enumeration value="457"/>
+ <xs:enumeration value="458"/>
+ <xs:enumeration value="527"/>
+ <xs:enumeration value="575"/>
+ <xs:enumeration value="623"/>
+ <xs:enumeration value="633"/>
+ <xs:enumeration value="751"/>
+ <xs:enumeration value="780"/>
+ <xs:enumeration value="935"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="DocumentCodeType">
+ <xs:simpleContent>
+ <xs:extension base="qdt:DocumentCodeContentType"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:simpleType name="FormattedDateTimeFormatContentType">
+ <xs:restriction base="xs:string"/>
+ </xs:simpleType>
+ <xs:complexType name="FormattedDateTimeType">
+ <xs:sequence>
+ <xs:element name="DateTimeString">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute name="format" type="qdt:FormattedDateTimeFormatContentType" use="required"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:simpleType name="PaymentMeansCodeContentType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="10"/>
+ <xs:enumeration value="20"/>
+ <xs:enumeration value="30"/>
+ <xs:enumeration value="42"/>
+ <xs:enumeration value="48"/>
+ <xs:enumeration value="49"/>
+ <xs:enumeration value="57"/>
+ <xs:enumeration value="58"/>
+ <xs:enumeration value="59"/>
+ <xs:enumeration value="97"/>
+ <xs:enumeration value="ZZZ"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="PaymentMeansCodeType">
+ <xs:simpleContent>
+ <xs:extension base="qdt:PaymentMeansCodeContentType"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:simpleType name="TaxCategoryCodeContentType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="AE"/>
+ <xs:enumeration value="E"/>
+ <xs:enumeration value="G"/>
+ <xs:enumeration value="K"/>
+ <xs:enumeration value="L"/>
+ <xs:enumeration value="M"/>
+ <xs:enumeration value="O"/>
+ <xs:enumeration value="S"/>
+ <xs:enumeration value="Z"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="TaxCategoryCodeType">
+ <xs:simpleContent>
+ <xs:extension base="qdt:TaxCategoryCodeContentType"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:simpleType name="TaxTypeCodeContentType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="VAT"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="TaxTypeCodeType">
+ <xs:simpleContent>
+ <xs:extension base="qdt:TaxTypeCodeContentType"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:simpleType name="TimeReferenceCodeContentType">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="5"/>
+ <xs:enumeration value="29"/>
+ <xs:enumeration value="72"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="TimeReferenceCodeType">
+ <xs:simpleContent>
+ <xs:extension base="qdt:TimeReferenceCodeContentType"/>
+ </xs:simpleContent>
+ </xs:complexType>
+</xs:schema>
diff --git a/facturx/xsd/facturx-minimum/FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd b/facturx/xsd/facturx-minimum/FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd
new file mode 100644
index 0000000..e3df3f4
--- /dev/null
+++ b/facturx/xsd/facturx-minimum/FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd
@@ -0,0 +1,194 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:ram="urn:un:unece:uncefact:data:standard:ReusableAggregateBusinessInformationEntity:100"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ xmlns:qdt="urn:un:unece:uncefact:data:standard:QualifiedDataType:100"
+ xmlns:udt="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:100"
+ targetNamespace="urn:un:unece:uncefact:data:standard:ReusableAggregateBusinessInformationEntity:100"
+ elementFormDefault="qualified">
+ <xs:import namespace="urn:un:unece:uncefact:data:standard:QualifiedDataType:100" schemaLocation="FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd"/>
+ <xs:import namespace="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:100" schemaLocation="FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd"/>
+ <xs:complexType name="CreditorFinancialAccountType">
+ <xs:sequence>
+ <xs:element name="IBANID" type="udt:IDType" minOccurs="0"/>
+ <xs:element name="ProprietaryID" type="udt:IDType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="DebtorFinancialAccountType">
+ <xs:sequence>
+ <xs:element name="IBANID" type="udt:IDType"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="DocumentContextParameterType">
+ <xs:sequence>
+ <xs:element name="ID" type="udt:IDType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="ExchangedDocumentContextType">
+ <xs:sequence>
+ <xs:element name="BusinessProcessSpecifiedDocumentContextParameter" type="ram:DocumentContextParameterType" minOccurs="0"/>
+ <xs:element name="GuidelineSpecifiedDocumentContextParameter" type="ram:DocumentContextParameterType"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="ExchangedDocumentType">
+ <xs:sequence>
+ <xs:element name="ID" type="udt:IDType"/>
+ <xs:element name="TypeCode" type="qdt:DocumentCodeType"/>
+ <xs:element name="IssueDateTime" type="udt:DateTimeType"/>
+ <xs:element name="IncludedNote" type="ram:NoteType" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="HeaderTradeAgreementType">
+ <xs:sequence>
+ <xs:element name="BuyerReference" type="udt:TextType" minOccurs="0"/>
+ <xs:element name="SellerTradeParty" type="ram:TradePartyType"/>
+ <xs:element name="BuyerTradeParty" type="ram:TradePartyType"/>
+ <xs:element name="SellerTaxRepresentativeTradeParty" type="ram:TradePartyType" minOccurs="0"/>
+ <xs:element name="BuyerOrderReferencedDocument" type="ram:ReferencedDocumentType" minOccurs="0"/>
+ <xs:element name="ContractReferencedDocument" type="ram:ReferencedDocumentType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="HeaderTradeDeliveryType">
+ <xs:sequence>
+ <xs:element name="ShipToTradeParty" type="ram:TradePartyType" minOccurs="0"/>
+ <xs:element name="ActualDeliverySupplyChainEvent" type="ram:SupplyChainEventType" minOccurs="0"/>
+ <xs:element name="DespatchAdviceReferencedDocument" type="ram:ReferencedDocumentType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="HeaderTradeSettlementType">
+ <xs:sequence>
+ <xs:element name="CreditorReferenceID" type="udt:IDType" minOccurs="0"/>
+ <xs:element name="PaymentReference" type="udt:TextType" minOccurs="0"/>
+ <xs:element name="InvoiceCurrencyCode" type="qdt:CurrencyCodeType"/>
+ <xs:element name="PayeeTradeParty" type="ram:TradePartyType" minOccurs="0"/>
+ <xs:element name="SpecifiedTradeSettlementPaymentMeans" type="ram:TradeSettlementPaymentMeansType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="ApplicableTradeTax" type="ram:TradeTaxType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="BillingSpecifiedPeriod" type="ram:SpecifiedPeriodType" minOccurs="0"/>
+ <xs:element name="SpecifiedTradeAllowanceCharge" type="ram:TradeAllowanceChargeType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="SpecifiedTradePaymentTerms" type="ram:TradePaymentTermsType" minOccurs="0"/>
+ <xs:element name="SpecifiedTradeSettlementHeaderMonetarySummation" type="ram:TradeSettlementHeaderMonetarySummationType"/>
+ <xs:element name="InvoiceReferencedDocument" type="ram:ReferencedDocumentType" minOccurs="0"/>
+ <xs:element name="ReceivableSpecifiedTradeAccountingAccount" type="ram:TradeAccountingAccountType" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="LegalOrganizationType">
+ <xs:sequence>
+ <xs:element name="ID" type="udt:IDType" minOccurs="0"/>
+ <xs:element name="TradingBusinessName" type="udt:TextType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="NoteType">
+ <xs:sequence>
+ <xs:element name="Content" type="udt:TextType"/>
+ <xs:element name="SubjectCode" type="udt:CodeType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="ReferencedDocumentType">
+ <xs:sequence>
+ <xs:element name="IssuerAssignedID" type="udt:IDType"/>
+ <xs:element name="FormattedIssueDateTime" type="qdt:FormattedDateTimeType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="SpecifiedPeriodType">
+ <xs:sequence>
+ <xs:element name="StartDateTime" type="udt:DateTimeType" minOccurs="0"/>
+ <xs:element name="EndDateTime" type="udt:DateTimeType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="SupplyChainEventType">
+ <xs:sequence>
+ <xs:element name="OccurrenceDateTime" type="udt:DateTimeType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="SupplyChainTradeTransactionType">
+ <xs:sequence>
+ <xs:element name="ApplicableHeaderTradeAgreement" type="ram:HeaderTradeAgreementType"/>
+ <xs:element name="ApplicableHeaderTradeDelivery" type="ram:HeaderTradeDeliveryType"/>
+ <xs:element name="ApplicableHeaderTradeSettlement" type="ram:HeaderTradeSettlementType"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="TaxRegistrationType">
+ <xs:sequence>
+ <xs:element name="ID" type="udt:IDType"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="TradeAccountingAccountType">
+ <xs:sequence>
+ <xs:element name="ID" type="udt:IDType"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="TradeAddressType">
+ <xs:sequence>
+ <xs:element name="PostcodeCode" type="udt:CodeType" minOccurs="0"/>
+ <xs:element name="LineOne" type="udt:TextType" minOccurs="0"/>
+ <xs:element name="LineTwo" type="udt:TextType" minOccurs="0"/>
+ <xs:element name="LineThree" type="udt:TextType" minOccurs="0"/>
+ <xs:element name="CityName" type="udt:TextType" minOccurs="0"/>
+ <xs:element name="CountryID" type="qdt:CountryIDType"/>
+ <xs:element name="CountrySubDivisionName" type="udt:TextType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="TradeAllowanceChargeType">
+ <xs:sequence>
+ <xs:element name="ChargeIndicator" type="udt:IndicatorType"/>
+ <xs:element name="CalculationPercent" type="udt:PercentType" minOccurs="0"/>
+ <xs:element name="BasisAmount" type="udt:AmountType" minOccurs="0"/>
+ <xs:element name="ActualAmount" type="udt:AmountType"/>
+ <xs:element name="ReasonCode" type="qdt:AllowanceChargeReasonCodeType" minOccurs="0"/>
+ <xs:element name="Reason" type="udt:TextType" minOccurs="0"/>
+ <xs:element name="CategoryTradeTax" type="ram:TradeTaxType"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="TradePartyType">
+ <xs:sequence>
+ <xs:element name="ID" type="udt:IDType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="GlobalID" type="udt:IDType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="Name" type="udt:TextType"/>
+ <xs:element name="SpecifiedLegalOrganization" type="ram:LegalOrganizationType" minOccurs="0"/>
+ <xs:element name="PostalTradeAddress" type="ram:TradeAddressType" minOccurs="0"/>
+ <xs:element name="URIUniversalCommunication" type="ram:UniversalCommunicationType" minOccurs="0"/>
+ <xs:element name="SpecifiedTaxRegistration" type="ram:TaxRegistrationType" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="TradePaymentTermsType">
+ <xs:sequence>
+ <xs:element name="DueDateDateTime" type="udt:DateTimeType" minOccurs="0"/>
+ <xs:element name="DirectDebitMandateID" type="udt:IDType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="TradeSettlementHeaderMonetarySummationType">
+ <xs:sequence>
+ <xs:element name="LineTotalAmount" type="udt:AmountType" minOccurs="0"/>
+ <xs:element name="ChargeTotalAmount" type="udt:AmountType" minOccurs="0"/>
+ <xs:element name="AllowanceTotalAmount" type="udt:AmountType" minOccurs="0"/>
+ <xs:element name="TaxBasisTotalAmount" type="udt:AmountType"/>
+ <xs:element name="TaxTotalAmount" type="udt:AmountType"/>
+ <xs:element name="GrandTotalAmount" type="udt:AmountType"/>
+ <xs:element name="TotalPrepaidAmount" type="udt:AmountType" minOccurs="0"/>
+ <xs:element name="DuePayableAmount" type="udt:AmountType"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="TradeSettlementPaymentMeansType">
+ <xs:sequence>
+ <xs:element name="TypeCode" type="qdt:PaymentMeansCodeType"/>
+ <xs:element name="PayerPartyDebtorFinancialAccount" type="ram:DebtorFinancialAccountType" minOccurs="0"/>
+ <xs:element name="PayeePartyCreditorFinancialAccount" type="ram:CreditorFinancialAccountType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="TradeTaxType">
+ <xs:sequence>
+ <xs:element name="CalculatedAmount" type="udt:AmountType" minOccurs="0"/>
+ <xs:element name="TypeCode" type="qdt:TaxTypeCodeType"/>
+ <xs:element name="ExemptionReason" type="udt:TextType" minOccurs="0"/>
+ <xs:element name="BasisAmount" type="udt:AmountType" minOccurs="0"/>
+ <xs:element name="CategoryCode" type="qdt:TaxCategoryCodeType"/>
+ <xs:element name="ExemptionReasonCode" type="udt:CodeType" minOccurs="0"/>
+ <xs:element name="DueDateTypeCode" type="qdt:TimeReferenceCodeType" minOccurs="0"/>
+ <xs:element name="RateApplicablePercent" type="udt:PercentType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="UniversalCommunicationType">
+ <xs:sequence>
+ <xs:element name="URIID" type="udt:IDType"/>
+ </xs:sequence>
+ </xs:complexType>
+</xs:schema>
diff --git a/facturx/xsd/facturx-minimum/FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd b/facturx/xsd/facturx-minimum/FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd
new file mode 100644
index 0000000..3e2545e
--- /dev/null
+++ b/facturx/xsd/facturx-minimum/FACTUR-X_MINIMUM_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:udt="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:100"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:100"
+ elementFormDefault="qualified"
+ version="100.D16B">
+ <xs:complexType name="AmountType">
+ <xs:simpleContent>
+ <xs:extension base="xs:decimal">
+ <xs:attribute name="currencyID" type="xs:token" use="optional"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:complexType name="CodeType">
+ <xs:simpleContent>
+ <xs:extension base="xs:token"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:complexType name="DateTimeType">
+ <xs:choice>
+ <xs:element name="DateTimeString">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute name="format" type="xs:string" use="required"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ </xs:choice>
+ </xs:complexType>
+ <xs:complexType name="IDType">
+ <xs:simpleContent>
+ <xs:extension base="xs:token">
+ <xs:attribute name="schemeID" type="xs:token" use="optional"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:complexType name="IndicatorType">
+ <xs:choice>
+ <xs:element name="Indicator" type="xs:boolean"/>
+ </xs:choice>
+ </xs:complexType>
+ <xs:complexType name="PercentType">
+ <xs:simpleContent>
+ <xs:extension base="xs:decimal"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:complexType name="TextType">
+ <xs:simpleContent>
+ <xs:extension base="xs:string"/>
+ </xs:simpleContent>
+ </xs:complexType>
+</xs:schema>