Project

General

Profile

Docura XML ORDER » Docura_XML_ORDER.xsd

Roman Startsev, 2026-09-02 12:45

 
1
<?xml version="1.0" encoding="UTF-8"?>
2
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
3
           elementFormDefault="qualified"
4
           attributeFormDefault="unqualified">
5

    
6
	<xs:annotation>
7
		<xs:documentation>
8
			Docura XML — ORDER. Purchase order sent by the buyer to the supplier.
9
			UTF-8, one order per file. Dates CCYY-MM-DD, decimal separator ".".
10
			See wiki page Docura_XML_ORDER for field descriptions.
11
		</xs:documentation>
12
	</xs:annotation>
13

    
14
	<!-- ============ Common types ============ -->
15

    
16
	<xs:simpleType name="ILNType">
17
		<xs:restriction base="xs:string">
18
			<xs:pattern value="[0-9]{13}"/>
19
		</xs:restriction>
20
	</xs:simpleType>
21

    
22
	<xs:simpleType name="DateType">
23
		<xs:restriction base="xs:date"/>
24
	</xs:simpleType>
25

    
26
	<xs:simpleType name="CountryType">
27
		<xs:restriction base="xs:string">
28
			<xs:pattern value="[A-Z]{2}"/>
29
		</xs:restriction>
30
	</xs:simpleType>
31

    
32
	<xs:simpleType name="DocumentFunctionCodeType">
33
		<xs:restriction base="xs:string">
34
			<xs:enumeration value="9"/>
35
			<xs:enumeration value="4"/>
36
			<xs:enumeration value="3"/>
37
		</xs:restriction>
38
	</xs:simpleType>
39

    
40
	<xs:simpleType name="UnitOfMeasureType">
41
		<xs:restriction base="xs:string">
42
			<xs:enumeration value="PCE"/>
43
			<xs:enumeration value="KGM"/>
44
			<xs:enumeration value="DPA"/>
45
		</xs:restriction>
46
	</xs:simpleType>
47

    
48
	<!-- Full party (Buyer, Seller, DeliveryPoint, UltimateCustomer) -->
49
	<xs:complexType name="PartyType">
50
		<xs:sequence>
51
			<xs:element name="ILN" type="ILNType"/>
52
			<xs:element name="Name" type="xs:string" minOccurs="0"/>
53
			<xs:element name="TaxID" type="xs:string" minOccurs="0"/>
54
			<xs:element name="UtilizationRegisterNumber" type="xs:string" minOccurs="0"/>
55
			<xs:element name="StreetAndNumber" type="xs:string" minOccurs="0"/>
56
			<xs:element name="CityName" type="xs:string" minOccurs="0"/>
57
			<xs:element name="PostalCode" type="xs:string" minOccurs="0"/>
58
			<xs:element name="Country" type="CountryType" minOccurs="0"/>
59
		</xs:sequence>
60
	</xs:complexType>
61

    
62
	<!-- ============ Root ============ -->
63

    
64
	<xs:element name="Document-Order">
65
		<xs:complexType>
66
			<xs:sequence>
67

    
68
				<xs:element name="Order-Header">
69
					<xs:complexType>
70
						<xs:sequence>
71
							<xs:element name="OrderNumber" type="xs:string"/>
72
							<xs:element name="OrderDate" type="DateType"/>
73
							<xs:element name="ExpectedDeliveryDate" type="DateType" minOccurs="0"/>
74
							<xs:element name="DocumentFunctionCode" type="DocumentFunctionCodeType"/>
75
							<xs:element name="Remarks" type="xs:string" minOccurs="0"/>
76
							<xs:element name="Reference" minOccurs="0">
77
								<xs:complexType>
78
									<xs:sequence>
79
										<xs:element name="ContractNumber" type="xs:string" minOccurs="0"/>
80
										<xs:element name="ContractDate" type="DateType" minOccurs="0"/>
81
									</xs:sequence>
82
								</xs:complexType>
83
							</xs:element>
84
						</xs:sequence>
85
					</xs:complexType>
86
				</xs:element>
87

    
88
				<xs:element name="Document-Parties">
89
					<xs:complexType>
90
						<xs:sequence>
91
							<xs:element name="Sender">
92
								<xs:complexType>
93
									<xs:sequence>
94
										<xs:element name="ILN" type="ILNType"/>
95
										<xs:element name="Name" type="xs:string" minOccurs="0"/>
96
									</xs:sequence>
97
								</xs:complexType>
98
							</xs:element>
99
							<xs:element name="Receiver">
100
								<xs:complexType>
101
									<xs:sequence>
102
										<xs:element name="ILN" type="ILNType"/>
103
										<xs:element name="Name" type="xs:string" minOccurs="0"/>
104
									</xs:sequence>
105
								</xs:complexType>
106
							</xs:element>
107
							<xs:element name="Creator" minOccurs="0">
108
								<xs:complexType>
109
									<xs:sequence>
110
										<xs:element name="Name" type="xs:string" minOccurs="0"/>
111
										<xs:element name="TelephoneNumber" type="xs:string" minOccurs="0"/>
112
										<xs:element name="E-mail" type="xs:string" minOccurs="0"/>
113
									</xs:sequence>
114
								</xs:complexType>
115
							</xs:element>
116
						</xs:sequence>
117
					</xs:complexType>
118
				</xs:element>
119

    
120
				<xs:element name="Order-Parties">
121
					<xs:complexType>
122
						<xs:sequence>
123
							<xs:element name="Buyer" type="PartyType"/>
124
							<xs:element name="Seller" type="PartyType"/>
125
							<xs:element name="DeliveryPoint" type="PartyType"/>
126
							<xs:element name="UltimateCustomer" type="PartyType" minOccurs="0"/>
127
						</xs:sequence>
128
					</xs:complexType>
129
				</xs:element>
130

    
131
				<xs:element name="Order-Lines">
132
					<xs:complexType>
133
						<xs:sequence>
134
							<xs:element name="Line" maxOccurs="unbounded">
135
								<xs:complexType>
136
									<xs:sequence>
137
										<xs:element name="Line-Item">
138
											<xs:complexType>
139
												<xs:sequence>
140
													<xs:element name="LineNumber" type="xs:string"/>
141
													<xs:element name="EAN" minOccurs="0">
142
														<xs:simpleType>
143
															<xs:restriction base="xs:string">
144
																<xs:pattern value="[0-9]{13,14}"/>
145
															</xs:restriction>
146
														</xs:simpleType>
147
													</xs:element>
148
													<xs:element name="SupplierItemCode" type="xs:string" minOccurs="0"/>
149
													<xs:element name="BuyerItemCode" type="xs:string" minOccurs="0"/>
150
													<xs:element name="ItemDescription" type="xs:string" minOccurs="0"/>
151
													<xs:element name="OrderedQuantity" type="xs:decimal"/>
152
													<xs:element name="OrderedBoxes" type="xs:decimal" minOccurs="0"/>
153
													<xs:element name="UnitOfMeasure" type="UnitOfMeasureType" minOccurs="0"/>
154
													<xs:element name="OrderedUnitNetPrice" type="xs:decimal" minOccurs="0"/>
155
													<xs:element name="OrderedNetAmount" type="xs:decimal" minOccurs="0"/>
156
													<xs:element name="NetWeight" type="xs:decimal" minOccurs="0"/>
157
												</xs:sequence>
158
											</xs:complexType>
159
										</xs:element>
160
									</xs:sequence>
161
								</xs:complexType>
162
							</xs:element>
163
						</xs:sequence>
164
					</xs:complexType>
165
				</xs:element>
166

    
167
				<xs:element name="Order-Summary">
168
					<xs:complexType>
169
						<xs:sequence>
170
							<xs:element name="TotalLines" type="xs:nonNegativeInteger"/>
171
							<xs:element name="TotalOrderedAmount" type="xs:decimal"/>
172
							<xs:element name="TotalNetAmount" type="xs:decimal" minOccurs="0"/>
173
							<xs:element name="TotalTaxAmount" type="xs:decimal" minOccurs="0"/>
174
							<xs:element name="TotalGrossAmount" type="xs:decimal" minOccurs="0"/>
175
							<xs:element name="TotalNetWeight" type="xs:decimal" minOccurs="0"/>
176
						</xs:sequence>
177
					</xs:complexType>
178
				</xs:element>
179

    
180
			</xs:sequence>
181
		</xs:complexType>
182
	</xs:element>
183

    
184
</xs:schema>
(1-1/2)