Wiki source code of Xml schema description
Last modified by David Persson on 2020/06/26 00:40
![]() |
2.1 | 1 | {{xslt syntax="html" xsl="attach:Main.Contract-financing.Technical-reference.WebHome@viewXSD.xsl"}} |
2 | |||
3 | <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"> | ||
4 | <xs:element name="CustomerContract"> | ||
5 | <xs:complexType> | ||
6 | <xs:sequence> | ||
7 | <xs:element name="CustomerInfo" minOccurs="1" maxOccurs="unbounded"> | ||
8 | <xs:complexType> | ||
9 | <xs:sequence> | ||
10 | <xs:element name="CustomerNo" type="Identifier15" nillable="false" minOccurs="1" maxOccurs="1"/> | ||
11 | <xs:element name="CustomerInfo" minOccurs="1" maxOccurs="1"> | ||
12 | <xs:complexType> | ||
13 | <xs:sequence> | ||
14 | <xs:element name="Name" type="NameAddressString72" minOccurs="1" maxOccurs="1"/> | ||
15 | <xs:element name="RegNo" type="RegNo" minOccurs="1" maxOccurs="1"/> | ||
16 | <xs:element name="AddressInfo" minOccurs="1" maxOccurs="1"> | ||
17 | <xs:complexType> | ||
18 | <xs:sequence> | ||
19 | <xs:element name="LegalAddress" type="Address" minOccurs="1" maxOccurs="1"/> | ||
20 | <xs:element name="E-MailAddress" type="Email" minOccurs="0" maxOccurs="1"/> | ||
21 | <xs:element name="Cellphone" type="String15" minOccurs="0" maxOccurs="1"/> | ||
22 | </xs:sequence> | ||
23 | </xs:complexType> | ||
24 | </xs:element> | ||
25 | <xs:element name="CustomerContracts" minOccurs="1" maxOccurs="1"> | ||
26 | <xs:complexType> | ||
27 | <xs:sequence> | ||
28 | <xs:element name="NewContract" type="NewContract" minOccurs="0" maxOccurs="unbounded"/> | ||
29 | <xs:element name="ExtendContract" type="ExtendContract" minOccurs="0" maxOccurs="unbounded"/> | ||
30 | <xs:element name="CreditContract" type="CreditContract" minOccurs="0" maxOccurs="unbounded"/> | ||
31 | </xs:sequence> | ||
32 | </xs:complexType> | ||
33 | </xs:element> | ||
34 | </xs:sequence> | ||
35 | <xs:attribute name="LegalEntity" type="LegalEntity" use="optional"/> | ||
36 | </xs:complexType> | ||
37 | </xs:element> | ||
38 | </xs:sequence> | ||
39 | </xs:complexType> | ||
40 | </xs:element> | ||
41 | </xs:sequence> | ||
42 | <xs:attribute name="Version" type="Version" use="required"> | ||
43 | <xs:annotation> | ||
44 | <xs:documentation>Versions supported by this schema</xs:documentation> | ||
45 | </xs:annotation> | ||
46 | </xs:attribute> | ||
47 | <xs:attribute name="CreatedDateTime" type="xs:dateTime" use="required"> | ||
48 | <xs:annotation> | ||
49 | <xs:documentation>Date and time when the file was created</xs:documentation> | ||
50 | </xs:annotation> | ||
51 | </xs:attribute> | ||
52 | <xs:attribute name="CompanyNo" type="CompanyNumber" use="required"/> | ||
53 | <xs:attribute name="CompanyName" type="xs:string" use="required"/> | ||
54 | </xs:complexType> | ||
55 | </xs:element> | ||
56 | <xs:simpleType name="Money"> | ||
57 | <xs:restriction base="xs:decimal"> | ||
58 | <xs:fractionDigits value="2"/> | ||
59 | <xs:minInclusive value="0.01"/> | ||
60 | <xs:maxInclusive value="100000"/> | ||
61 | </xs:restriction> | ||
62 | </xs:simpleType> | ||
63 | <xs:complexType name="Amount"> | ||
64 | <xs:sequence> | ||
65 | <xs:element name="AmountInclVat" type="Money" nillable="false" minOccurs="1" maxOccurs="1"/> | ||
66 | </xs:sequence> | ||
67 | <xs:attribute name="Currency" type="eCurrencyType" use="required"/> | ||
68 | </xs:complexType> | ||
69 | <xs:complexType name="NewContract"> | ||
70 | <xs:sequence> | ||
71 | <xs:element name="ContractTransactionInfo" type="ContractTransactionInfo" nillable="false" minOccurs="1" maxOccurs="1"> | ||
72 | <xs:annotation> | ||
73 | <xs:documentation>Reference, identifyer etc. for the contracttransaction</xs:documentation> | ||
74 | </xs:annotation> | ||
75 | </xs:element> | ||
76 | <xs:element name="Amount" type="Amount" nillable="false" minOccurs="1" maxOccurs="1"/> | ||
77 | <xs:element name="ContractExpectedEndDate" type="xs:date" nillable="false" minOccurs="1" maxOccurs="1"> | ||
78 | <xs:annotation> | ||
79 | <xs:documentation>Expected duration of the contract</xs:documentation> | ||
80 | </xs:annotation> | ||
81 | </xs:element> | ||
82 | <xs:element name="CreditCheckReference" type="String50" nillable="false" minOccurs="1" maxOccurs="1"> | ||
83 | <xs:annotation> | ||
84 | <xs:documentation>Reference to creditcheck decision</xs:documentation> | ||
85 | </xs:annotation> | ||
86 | </xs:element> | ||
87 | </xs:sequence> | ||
88 | </xs:complexType> | ||
89 | <xs:complexType name="ExtendContract"> | ||
90 | <xs:sequence> | ||
91 | <xs:element name="ContractTransactionInfo" type="ContractTransactionInfo" nillable="false" minOccurs="1" maxOccurs="1"> | ||
92 | <xs:annotation> | ||
93 | <xs:documentation>Reference, identifyer etc. for the contracttransaction</xs:documentation> | ||
94 | </xs:annotation> | ||
95 | </xs:element> | ||
96 | <xs:element name="Amount" type="Amount" nillable="false" minOccurs="1" maxOccurs="1"> | ||
97 | <xs:annotation> | ||
98 | <xs:documentation>Amount to extend contract with</xs:documentation> | ||
99 | </xs:annotation> | ||
100 | </xs:element> | ||
101 | <xs:element name="ContractExpectedEndDate" type="xs:date" nillable="false" minOccurs="1" maxOccurs="1"> | ||
102 | <xs:annotation> | ||
103 | <xs:documentation>Expected duration of the contract</xs:documentation> | ||
104 | </xs:annotation> | ||
105 | </xs:element> | ||
106 | <xs:element name="CreditCheckReference" type="String50" nillable="false" minOccurs="1" maxOccurs="1"> | ||
107 | <xs:annotation> | ||
108 | <xs:documentation>Reference to creditcheck decision</xs:documentation> | ||
109 | </xs:annotation> | ||
110 | </xs:element> | ||
111 | </xs:sequence> | ||
112 | </xs:complexType> | ||
113 | <xs:complexType name="CreditContract"> | ||
114 | <xs:sequence> | ||
115 | <xs:element name="ContractTransactionInfo" type="ContractTransactionInfo" nillable="false" minOccurs="1" maxOccurs="1"> | ||
116 | <xs:annotation> | ||
117 | <xs:documentation>Reference, identifyer etc. for the contracttransaction</xs:documentation> | ||
118 | </xs:annotation> | ||
119 | </xs:element> | ||
120 | <xs:element name="Amount" type="Amount" nillable="false" minOccurs="1" maxOccurs="1"/> | ||
121 | </xs:sequence> | ||
122 | </xs:complexType> | ||
123 | <xs:complexType name="ContractTransactionInfo"> | ||
124 | <xs:sequence> | ||
125 | <xs:element name="ContractId" type="xs:unsignedInt" nillable="false" minOccurs="1" maxOccurs="1"> | ||
126 | <xs:annotation> | ||
127 | <xs:documentation>Unique identifier of each contract in the ledger</xs:documentation> | ||
128 | </xs:annotation> | ||
129 | </xs:element> | ||
130 | <xs:element name="TransactionDate" type="xs:date" nillable="false" minOccurs="1" maxOccurs="1"> | ||
131 | <xs:annotation> | ||
132 | <xs:documentation>Date of the contract, contract extend or when the credit was issued depending of the type of transaction</xs:documentation> | ||
133 | </xs:annotation> | ||
134 | </xs:element> | ||
135 | <xs:element name="TransactionId" type="String50" nillable="false" minOccurs="1" maxOccurs="1"> | ||
136 | <xs:annotation> | ||
137 | <xs:documentation>Unique identifier of all types of transactions (NewContract/ExtendContract/CreditTransaction) in the ledger</xs:documentation> | ||
138 | </xs:annotation> | ||
139 | </xs:element> | ||
140 | </xs:sequence> | ||
141 | </xs:complexType> | ||
142 | <xs:simpleType name="Version"> | ||
143 | <xs:restriction base="xs:string"> | ||
144 | <xs:enumeration value="1.0"> | ||
145 | <xs:annotation> | ||
146 | <xs:documentation>Original version</xs:documentation> | ||
147 | </xs:annotation> | ||
148 | </xs:enumeration> | ||
149 | </xs:restriction> | ||
150 | </xs:simpleType> | ||
151 | <xs:simpleType name="eCurrencyType"> | ||
152 | <xs:restriction base="xs:string"> | ||
153 | <xs:enumeration value="SEK"/> | ||
154 | <xs:enumeration value="NOK"/> | ||
155 | <xs:enumeration value="DKK"/> | ||
156 | <xs:enumeration value="EUR"/> | ||
157 | </xs:restriction> | ||
158 | </xs:simpleType> | ||
159 | <xs:simpleType name="Identifier15"> | ||
160 | <xs:restriction base="xs:string"> | ||
161 | <xs:minLength value="1"/> | ||
162 | <xs:maxLength value="15"/> | ||
163 | <xs:pattern value="[a-zA-Z0-9\-]*"/> | ||
164 | </xs:restriction> | ||
165 | </xs:simpleType> | ||
166 | <xs:simpleType name="ISO3166"> | ||
167 | <xs:restriction base="xs:string"> | ||
168 | <xs:minLength value="2"/> | ||
169 | <xs:maxLength value="2"/> | ||
170 | <xs:pattern value="[A-Z]*"/> | ||
171 | </xs:restriction> | ||
172 | </xs:simpleType> | ||
173 | <xs:simpleType name="CompanyNumber"> | ||
174 | <xs:restriction base="xs:string"> | ||
175 | <xs:minLength value="1"/> | ||
176 | <xs:maxLength value="15"/> | ||
177 | <xs:pattern value="[0-9]*"/> | ||
178 | </xs:restriction> | ||
179 | </xs:simpleType> | ||
180 | <xs:simpleType name="String35"> | ||
181 | <xs:restriction base="PXString"> | ||
182 | <xs:maxLength value="35"/> | ||
183 | </xs:restriction> | ||
184 | </xs:simpleType> | ||
185 | <xs:simpleType name="Email"> | ||
186 | <xs:restriction base="PXString"> | ||
187 | <xs:maxLength value="60"/> | ||
188 | <xs:pattern value="[^@]+@[^\.]+\..+"/> | ||
189 | </xs:restriction> | ||
190 | </xs:simpleType> | ||
191 | <xs:simpleType name="String15"> | ||
192 | <xs:restriction base="PXString"> | ||
193 | <xs:maxLength value="15"/> | ||
194 | </xs:restriction> | ||
195 | </xs:simpleType> | ||
196 | <xs:simpleType name="ZipCode"> | ||
197 | <xs:restriction base="xs:string"> | ||
198 | <xs:maxLength value="9"/> | ||
199 | <xs:pattern value="[A-Z0-9\-]+"/> | ||
200 | </xs:restriction> | ||
201 | </xs:simpleType> | ||
202 | <xs:simpleType name="String50"> | ||
203 | <xs:restriction base="PXString"> | ||
204 | <xs:minLength value="1"/> | ||
205 | <xs:maxLength value="50"/> | ||
206 | </xs:restriction> | ||
207 | </xs:simpleType> | ||
208 | <xs:simpleType name="String90"> | ||
209 | <xs:restriction base="PXString"> | ||
210 | <xs:minLength value="1"/> | ||
211 | <xs:maxLength value="90"/> | ||
212 | </xs:restriction> | ||
213 | </xs:simpleType> | ||
214 | <xs:simpleType name="String20"> | ||
215 | <xs:restriction base="PXString"> | ||
216 | <xs:maxLength value="20"/> | ||
217 | </xs:restriction> | ||
218 | </xs:simpleType> | ||
219 | <xs:simpleType name="NameAddressString35"> | ||
220 | <xs:restriction base="PXNameAddressString"> | ||
221 | <xs:minLength value="1"/> | ||
222 | <xs:maxLength value="35"/> | ||
223 | </xs:restriction> | ||
224 | </xs:simpleType> | ||
225 | <xs:simpleType name="NameAddressString36"> | ||
226 | <xs:restriction base="PXNameAddressString"> | ||
227 | <xs:minLength value="1"/> | ||
228 | <xs:maxLength value="36"/> | ||
229 | </xs:restriction> | ||
230 | </xs:simpleType> | ||
231 | <xs:simpleType name="NameAddressString27"> | ||
232 | <xs:restriction base="PXNameAddressString"> | ||
233 | <xs:minLength value="1"/> | ||
234 | <xs:maxLength value="27"/> | ||
235 | </xs:restriction> | ||
236 | </xs:simpleType> | ||
237 | <xs:simpleType name="PXString"> | ||
238 | <xs:restriction base="xs:string"> | ||
239 | <xs:pattern value="[a-zA-Z0-9_:!;"#<>=?\[\]@{}´ %'-0À-ÖØ-öø-ú&]*" /> | ||
240 | <xs:minLength value="1" /> | ||
241 | </xs:restriction> | ||
242 | </xs:simpleType> | ||
243 | <xs:simpleType name="PXNameAddressString"> | ||
244 | <xs:restriction base="xs:string"> | ||
245 | <xs:pattern value="[a-zA-Z0-9_:!;"#<>=?\[\]@{}´ %'-0À-ÖØ-öø-úü&]*" /> | ||
246 | </xs:restriction> | ||
247 | </xs:simpleType> | ||
248 | <xs:complexType name="RegNo"> | ||
249 | <xs:simpleContent> | ||
250 | <xs:extension base="String15"> | ||
251 | <xs:attribute name="CountryCode" type="ISO3166"/> | ||
252 | </xs:extension> | ||
253 | </xs:simpleContent> | ||
254 | </xs:complexType> | ||
255 | <xs:simpleType name="LegalEntity"> | ||
256 | <xs:restriction base="xs:string"> | ||
257 | <xs:enumeration value="Private"/> | ||
258 | </xs:restriction> | ||
259 | </xs:simpleType> | ||
260 | <xs:simpleType name="PXExpiryDate"> | ||
261 | <xs:restriction base="xs:string"> | ||
262 | <xs:length value="5"/> | ||
263 | <xs:pattern value="(0[1-9]|1[012])/(\d{2})"/> | ||
264 | </xs:restriction> | ||
265 | </xs:simpleType> | ||
266 | <xs:simpleType name="NameAddressString72"> | ||
267 | <xs:restriction base="PXNameAddressString"> | ||
268 | <xs:minLength value="1"/> | ||
269 | <xs:maxLength value="72"/> | ||
270 | </xs:restriction> | ||
271 | </xs:simpleType> | ||
272 | <xs:complexType name="Address"> | ||
273 | <xs:sequence> | ||
274 | <xs:element name="Addressee" type="NameAddressString72" minOccurs="1" maxOccurs="1"> | ||
275 | <xs:annotation> | ||
276 | <xs:documentation>Full name of addressee</xs:documentation> | ||
277 | </xs:annotation> | ||
278 | </xs:element> | ||
279 | <xs:element name="StreetAddress" type="NameAddressString35" nillable="false" minOccurs="0" maxOccurs="1"> | ||
280 | <xs:annotation> | ||
281 | <xs:documentation>Street address</xs:documentation> | ||
282 | </xs:annotation> | ||
283 | </xs:element> | ||
284 | <xs:element name="ZipCode" type="ZipCode" nillable="false" minOccurs="1" maxOccurs="1"> | ||
285 | <xs:annotation> | ||
286 | <xs:documentation>Zipcode conforming to country standard</xs:documentation> | ||
287 | </xs:annotation> | ||
288 | </xs:element> | ||
289 | <xs:element name="City" type="NameAddressString27" nillable="false" minOccurs="1" maxOccurs="1"> | ||
290 | <xs:annotation> | ||
291 | <xs:documentation>City</xs:documentation> | ||
292 | </xs:annotation> | ||
293 | </xs:element> | ||
294 | <xs:element name="CoAddress" type="NameAddressString35" nillable="false" minOccurs="0" maxOccurs="1"> | ||
295 | <xs:annotation> | ||
296 | <xs:documentation>Care of address</xs:documentation> | ||
297 | </xs:annotation> | ||
298 | </xs:element> | ||
299 | <xs:element name="CountryCode" type="ISO3166" minOccurs="1" maxOccurs="1"> | ||
300 | <xs:annotation> | ||
301 | <xs:documentation>Country code according to ISO 3166</xs:documentation> | ||
302 | </xs:annotation> | ||
303 | </xs:element> | ||
304 | </xs:sequence> | ||
305 | </xs:complexType> | ||
306 | </xs:schema> | ||
307 | {{/xslt}} | ||
308 | |||
309 |