Wiki source code of Xml schema description

Last modified by dap on 2020/06/26 00:40
Show last authors
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_:!;&quot;#&lt;&gt;=?\[\]@{}´ %'-0À-ÖØ-öø-ú&amp;]*" />
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_:!;&quot;#&lt;&gt;=?\[\]@{}´ %'-0À-ÖØ-öø-úü&amp;]*" />
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