Sync with 5.1.0
[deliverable/titan.core.git] / regression_test / negativeTest / NegTest_XML_Types.xsd
1 <!--
2 Copyright (c) 2000-2014 Ericsson Telecom AB
3
4 All rights reserved. This program and the accompanying materials
5 are made available under the terms of the Eclipse Public License v1.0
6 which accompanies this distribution, and is available at
7 http://www.eclipse.org/legal/epl-v10.html
8 -->
9 <schema xmlns="http://www.w3.org/2001/XMLSchema"
10 xmlns:n="www.XmlTest.org/negativeTest_XML_Types"
11 targetNamespace="www.XmlTest.org/negativeTest_XML_Types">
12 <annotation>
13 <documentation xml:lang="en">
14 This documentum tests based on
15 XML Schema Part 1: Structures Second Edition
16 Last modified: 2011-04-13, ETHBAAT
17 </documentation>
18 </annotation>
19
20 <simpleType name="b">
21 <restriction base="boolean"/>
22 </simpleType>
23
24 <simpleType name="i">
25 <restriction base="integer"/>
26 </simpleType>
27
28 <simpleType name="j">
29 <restriction base="integer"/>
30 </simpleType>
31
32 <simpleType name="k">
33 <restriction base="integer"/>
34 </simpleType>
35
36 <simpleType name="e">
37 <restriction base="n:MyEnum"/>
38 </simpleType>
39
40 <simpleType name="n">
41 <restriction base="n:NULL"/>
42 </simpleType>
43
44 <simpleType name="f">
45 <restriction base="float"/>
46 </simpleType>
47
48 <simpleType name="r">
49 <restriction base="float"/>
50 </simpleType>
51
52 <simpleType name="FLOAT">
53 <restriction base="float"/>
54 </simpleType>
55
56 <simpleType name="x">
57 <restriction base="float"/>
58 </simpleType>
59
60 <simpleType name="y">
61 <restriction base="float"/>
62 </simpleType>
63
64 <simpleType name="o">
65 <restriction base="n:octetstring"/>
66 </simpleType>
67
68 <simpleType name="s">
69 <restriction base="string"/>
70 </simpleType>
71
72 <!-- 0. elementary -->
73
74 <simpleType name="MyEnum">
75 <restriction base="string">
76 <enumeration value="first"/>
77 <enumeration value="second"/>
78 <enumeration value="third"/>
79 </restriction>
80 </simpleType>
81
82 <simpleType name="NULL">
83 <restriction base="string">
84 <enumeration value="NULL"/>
85 </restriction>
86 </simpleType>
87 <!-- 1. Sequence (record_ -->
88
89 <complexType name="MySeqEmpty">
90 <sequence>
91 </sequence>
92 </complexType>
93
94 <complexType name="MySeqBool">
95 <sequence>
96 <element name="b" type="boolean"/>
97 </sequence>
98 </complexType>
99
100 <complexType name="MySeqNull">
101 <sequence>
102 <element name="n" type="n:NULL"/>
103 </sequence>
104 </complexType>
105
106 <complexType name="MySeqInt">
107 <sequence>
108 <element name="i" type="integer"/>
109 </sequence>
110 </complexType>
111
112 <complexType name="MySeqMyEnum">
113 <sequence>
114 <element name="e" type="n:MyEnum"/>
115 </sequence>
116 </complexType>
117
118 <complexType name="MySeqInt2">
119 <sequence>
120 <element name="i" type="n:i"/>
121 <element name="j" type="n:j"/>
122 </sequence>
123 </complexType>
124
125 <complexType name="MySeqInt2opt">
126 <sequence>
127 <element name="i" type="integer"/>
128 <element name="j" type="integer" minOccurs="0"/>
129 </sequence>
130 </complexType>
131
132 <complexType name="MySeqIntSeqInt2">
133 <sequence>
134 <element name="i" type="integer"/>
135 <element name="jk" type="n:MySeqInt2"/>
136 </sequence>
137 </complexType>
138
139 <complexType name="MySeqIntSeqInt2opt">
140 <sequence>
141 <element name="i" type="integer" minOccurs="0"/>
142 <element name="jk" type="n:MySeqInt2"/>
143 </sequence>
144 </complexType>
145
146 <complexType name="MySeqIntSeqInt2optopt">
147 <sequence>
148 <element name="i" type="integer" minOccurs="0"/>
149 <element name="jk" type="n:MySeqInt2opt"/>
150 </sequence>
151 </complexType>
152
153 <complexType name="MySeqInt3">
154 <sequence>
155 <element name="i" type="integer"/>
156 <element name="j" type="integer"/>
157 <element name="k" type="integer"/>
158 </sequence>
159 </complexType>
160
161 <complexType name="MySeqInt3opt">
162 <sequence>
163 <element name="i" type="integer"/>
164 <element name="j" type="integer"/>
165 <element name="k" type="integer" minOccurs="0"/>
166 </sequence>
167 </complexType>
168
169 <complexType name="MySeqInt4">
170 <sequence>
171 <element name="i" type="integer"/>
172 <element name="j" type="integer"/>
173 <element name="k" type="integer"/>
174 <element name="l" type="integer"/>
175 </sequence>
176 </complexType>
177
178 <complexType name="MySeqInt4opt">
179 <sequence>
180 <element name="i" type="integer"/>
181 <element name="j" type="integer"/>
182 <element name="k" type="integer"/>
183 <element name="l" type="integer" minOccurs="0"/>
184 </sequence>
185 </complexType>
186
187 <complexType name="MySeqReal">
188 <sequence>
189 <element name="x" type="float"/>
190 </sequence>
191 </complexType>
192
193 <complexType name="MySeqReal2">
194 <sequence>
195 <element name="x" type="float"/>
196 <element name="y" type="float"/>
197 </sequence>
198 </complexType>
199
200 <complexType name="MySeqStr">
201 <sequence>
202 <element name="s" type="string"/>
203 </sequence>
204 </complexType>
205
206 <complexType name="MySeqStr2">
207 <sequence>
208 <element name="s" type="string"/>
209 <element name="t" type="string"/>
210 </sequence>
211 </complexType>
212
213 <!-- there is no such thing as a bitstring -->
214 <element name="bitstring" type="decimal"/>
215
216 <complexType name="MySeqBitStr">
217 <sequence>
218 <element name="b" type="n:bitstring"/>
219 </sequence>
220 </complexType>
221
222 <complexType name="MySeqBitStr2">
223 <sequence>
224 <element name="a" type="n:bitstring"/>
225 <element name="b" type="n:bitstring"/>
226 </sequence>
227 </complexType>
228
229 <complexType name="MySeqIntReal">
230 <sequence>
231 <element name="i" type="integer"/>
232 <element name="x" type="float"/>
233 </sequence>
234 </complexType>
235
236 <complexType name="MySeqIntStr">
237 <sequence>
238 <element name="i" type="integer"/>
239 <element name="s" type="string"/>
240 </sequence>
241 </complexType>
242
243 <complexType name="MySeqIntBitStr">
244 <sequence>
245 <element name="i" type="integer"/>
246 <element name="b" type="n:bitstring"/>
247 </sequence>
248 </complexType>
249
250 <!-- there is no such thing as an octetstring, Double tested instead -->
251 <element name="octetstring" type="date"/>
252
253 <complexType name="MySeqOctStr">
254 <sequence>
255 <element name="o" type="n:octetstring"/>
256 </sequence>
257 </complexType>
258
259 <complexType name="MySeqOJKL">
260 <sequence>
261 <element name="o" type="n:octetstring"/>
262 <element name="j" type="integer"/>
263 <element name="k" type="integer"/>
264 <element name="l" type="integer"/>
265 </sequence>
266 </complexType>
267
268 <complexType name="MySeqIOKL">
269 <sequence>
270 <element name="i" type="integer"/>
271 <element name="o" type="n:octetstring"/>
272 <element name="k" type="n:integer"/>
273 <element name="l" type="n:integer"/>
274 </sequence>
275 </complexType>
276
277 <complexType name="MySeqISKL">
278 <sequence>
279 <element name="i" type="integer"/>
280 <element name="s" type="n:MySeqInt4"/>
281 <element name="k" type="integer"/>
282 <element name="l" type="integer"/>
283 </sequence>
284 </complexType>
285
286
287
288 <!-- ===== sequence of sequence of sequence ==== -->
289 <complexType name="MySeqIntSeqIntSeqInt2SeqReal2">
290 <sequence>
291 <element name="i" type="integer" minOccurs="0"/>
292 <element name="jkl" type="n:MySeqIntSeqInt2"/>
293 <element name="xy" type="n:MySeqReal2"/>
294 </sequence>
295 </complexType>
296
297 <complexType name="MySeqIntSeqIntSeqInt2optoptSeqReal2">
298 <sequence>
299 <element name="i" type="integer" minOccurs="0"/>
300 <element name="jkl" type="n:MySeqIntSeqInt2optopt"/>
301 <element name="xy" type="n:MySeqReal2"/>
302 </sequence>
303 </complexType>
304
305 <complexType name="MySeqIntSeqReal2">
306 <sequence>
307 <element name="i" type="integer" minOccurs="0"/>
308 <element name="xy" type="n:MySeqReal2"/>
309 </sequence>
310 </complexType>
311
312 <complexType name="MySeqIntSeqIntSeqInt2">
313 <sequence>
314 <element name="i" type="integer"/>
315 <element name="jkl" type="n:MySeqIntSeqInt2"/>
316 </sequence>
317 </complexType>
318
319 <complexType name="MySeqSeqIntSeqInt2SeqReal2">
320 <sequence>
321 <element name="jkl" type="n:MySeqIntSeqInt2"/>
322 <element name="xy" type="n:MySeqReal2"/>
323 </sequence>
324 </complexType>
325
326 <complexType name="MySeq_SeqSeqIntSeqInt2SeqReal2_SeqSeqIntSeqInt2SeqReal2">
327 <sequence>
328 <element name="s1" type="n:MySeqSeqIntSeqInt2SeqReal2"/>
329 <element name="s2" type="n:MySeqSeqIntSeqInt2SeqReal2"/>
330 </sequence>
331 </complexType>
332
333 <complexType name="MySeq_SeqSeqIntSeqInt2optoptSeqReal2_SeqSeqIntSeqInt2optoptSeqReal2">
334 <sequence>
335 <element name="s1" type="n:MySeqIntSeqIntSeqInt2optoptSeqReal2"/>
336 <element name="s2" type="n:MySeqIntSeqIntSeqInt2optoptSeqReal2"/>
337 </sequence>
338 </complexType>
339
340 <complexType name="MySeqBasicTypes">
341 <sequence>
342 <element name="b" type="boolean"/>
343 <element name="n" type="n:NULL"/>
344 <element name="i" type="integer"/>
345 <element name="e" type="n:MyEnum"/>
346 <element name="r" type="float"/>
347 <element name="bs" type="n:bitstring"/>
348 <element name="os" type="n:octetstring"/>
349 <element name="oi" type="string"/>
350 <element name="roi" type="string"/>
351 </sequence>
352 </complexType>
353
354 <complexType name="MySeqEnum">
355 <sequence>
356 <element name="e" type="n:MyEnum"/>
357 </sequence>
358 </complexType>
359
360 <!-- 2. Sequence of (record of)-->
361
362 <complexType name="MySeqOfBool">
363 <sequence>
364 <element name="b" type="boolean" minOccurs="0" maxOccurs="unbounded"/>
365 </sequence>
366 </complexType>
367
368 <complexType name="MySeqOfNull">
369 <sequence>
370 <element name="n" type="n:NULL" minOccurs="0" maxOccurs="unbounded"/>
371 </sequence>
372 </complexType>
373
374 <complexType name="MySeqOfInt">
375 <sequence>
376 <element name="i" type="integer" minOccurs="0" maxOccurs="unbounded"/>
377 </sequence>
378 </complexType>
379
380 <complexType name="MySeqOfMyEnum">
381 <sequence>
382 <element name="e" type="n:MyEnum" minOccurs="0" maxOccurs="unbounded"/>
383 </sequence>
384 </complexType>
385
386 <complexType name="MySeqOfEnum">
387 <sequence>
388 <element name="e" type="n:MyEnum" minOccurs="0" maxOccurs="unbounded"/>
389 </sequence>
390 </complexType>
391
392 <complexType name="MySeqOfReal">
393 <sequence>
394 <element name="r" type="float" minOccurs="0" maxOccurs="unbounded"/>
395 </sequence>
396 </complexType>
397
398 <complexType name="MySeqOfBitStr">
399 <sequence>
400 <element name="bs" type="n:bitstring" minOccurs="0" maxOccurs="unbounded"/>
401 </sequence>
402 </complexType>
403
404 <complexType name="MySeqOfOctStr">
405 <sequence>
406 <element name="os" type="n:octetstring" minOccurs="0" maxOccurs="unbounded"/>
407 </sequence>
408 </complexType>
409
410 <complexType name="MySeqOfObjId">
411 <sequence>
412 <element name="oi" type="string" minOccurs="0" maxOccurs="unbounded"/>
413 </sequence>
414 </complexType>
415
416 <complexType name="MySeqOfMyUnionBT">
417 <sequence>
418 <element name="u" type="n:MyUnionBasicTypes" minOccurs="0" maxOccurs="unbounded"/>
419 </sequence>
420 </complexType>
421
422 <complexType name="MySeqOfSeqSeqIntSeqInt2SeqReal2">
423 <sequence>
424 <element name="s" type="n:MySeqSeqIntSeqInt2SeqReal2" minOccurs="0" maxOccurs="unbounded"/>
425 </sequence>
426 </complexType>
427
428 <complexType name="MySeqOfMySeqIntSeqIntSeqInt2optoptSeqReal2">
429 <sequence>
430 <element name="s" type="n:MySeqIntSeqIntSeqInt2optoptSeqReal2" minOccurs="0" maxOccurs="unbounded"/>
431 </sequence>
432 </complexType>
433
434
435 <!-- 3. Set -->
436
437
438 <complexType name="MySetBool">
439 <all>
440 <element name="b" type="boolean"/>
441 </all>
442 </complexType>
443
444 <complexType name="MySetNull">
445 <all>
446 <element name="n" type="n:NULL"/>
447 </all>
448 </complexType>
449
450 <complexType name="MySetInt">
451 <all>
452 <element name="i" type="integer"/>
453 </all>
454 </complexType>
455
456 <complexType name="MySetMyEnum">
457 <all>
458 <element name="e" type="n:MyEnum"/>
459 </all>
460 </complexType>
461
462 <complexType name="MySetInt2">
463 <all>
464 <element name="i" type="n:i"/>
465 <element name="j" type="n:j"/>
466 </all>
467 </complexType>
468
469 <complexType name="MySetInt2opt">
470 <all>
471 <element name="i" type="integer"/>
472 <element name="j" type="integer" minOccurs="0"/>
473 </all>
474 </complexType>
475
476 <complexType name="MySetIntSetInt2">
477 <all>
478 <element name="i" type="integer"/>
479 <element name="jk" type="n:MySetInt2"/>
480 </all>
481 </complexType>
482
483 <complexType name="MySetIntSetInt2opt">
484 <all>
485 <element name="i" type="integer" minOccurs="0"/>
486 <element name="jk" type="n:MySetInt2"/>
487 </all>
488 </complexType>
489
490 <complexType name="MySetIntSetInt2optopt">
491 <all>
492 <element name="i" type="integer" minOccurs="0"/>
493 <element name="jk" type="n:MySetInt2opt"/>
494 </all>
495 </complexType>
496
497 <complexType name="MySetInt3">
498 <all>
499 <element name="i" type="integer"/>
500 <element name="j" type="integer"/>
501 <element name="k" type="integer"/>
502 </all>
503 </complexType>
504
505 <complexType name="MySetInt3opt">
506 <all>
507 <element name="i" type="integer"/>
508 <element name="j" type="integer"/>
509 <element name="k" type="integer" minOccurs="0"/>
510 </all>
511 </complexType>
512
513 <complexType name="MySetInt4">
514 <all>
515 <element name="i" type="integer"/>
516 <element name="j" type="integer"/>
517 <element name="k" type="integer"/>
518 <element name="l" type="integer"/>
519 </all>
520 </complexType>
521
522 <complexType name="MySetInt4opt">
523 <all>
524 <element name="i" type="integer"/>
525 <element name="j" type="integer"/>
526 <element name="k" type="integer"/>
527 <element name="l" type="integer" minOccurs="0"/>
528 </all>
529 </complexType>
530
531 <complexType name="MySetReal">
532 <all>
533 <element name="x" type="float"/>
534 </all>
535 </complexType>
536
537 <complexType name="MySetReal2">
538 <all>
539 <element name="x" type="float"/>
540 <element name="y" type="float"/>
541 </all>
542 </complexType>
543
544 <complexType name="MySetStr">
545 <all>
546 <element name="s" type="string"/>
547 </all>
548 </complexType>
549
550 <complexType name="MySetStr2">
551 <all>
552 <element name="s" type="string"/>
553 <element name="t" type="string"/>
554 </all>
555 </complexType>
556
557 <!-- there is no such thing as a bitstring -->
558
559 <complexType name="MySetBitStr">
560 <all>
561 <element name="b" type="n:bitstring"/>
562 </all>
563 </complexType>
564
565 <complexType name="MySetBitStr2">
566 <all>
567 <element name="a" type="n:bitstring"/>
568 <element name="b" type="n:bitstring"/>
569 </all>
570 </complexType>
571
572 <complexType name="MySetIntReal">
573 <all>
574 <element name="i" type="integer"/>
575 <element name="x" type="float"/>
576 </all>
577 </complexType>
578
579 <complexType name="MySetIntStr">
580 <all>
581 <element name="i" type="integer"/>
582 <element name="s" type="string"/>
583 </all>
584 </complexType>
585
586 <complexType name="MySetIntBitStr">
587 <all>
588 <element name="i" type="integer"/>
589 <element name="b" type="n:bitstring"/>
590 </all>
591 </complexType>
592
593 <!-- there is no such thing as an octetstring, Double tested instead -->
594
595 <complexType name="MySetOctStr">
596 <all>
597 <element name="o" type="n:octetstring"/>
598 </all>
599 </complexType>
600
601 <complexType name="MySetOJKL">
602 <all>
603 <element name="o" type="n:octetstring"/>
604 <element name="j" type="integer"/>
605 <element name="k" type="integer"/>
606 <element name="l" type="integer"/>
607 </all>
608 </complexType>
609
610 <complexType name="MySetIOKL">
611 <all>
612 <element name="i" type="integer"/>
613 <element name="o" type="n:octetstring"/>
614 <element name="k" type="n:integer"/>
615 <element name="l" type="n:integer"/>
616 </all>
617 </complexType>
618
619 <complexType name="MySetIOSKL">
620 <all>
621 <element name="i" type="integer"/>
622 <element name="o" type="n:octetstring"/>
623 <element name="s" type="n:MySetInt4"/>
624 <element name="k" type="n:integer"/>
625 <element name="l" type="n:integer"/>
626 </all>
627 </complexType>
628
629 <complexType name="MySetISKL">
630 <all>
631 <element name="i" type="integer"/>
632 <element name="s" type="n:MySetInt4"/>
633 <element name="k" type="integer"/>
634 <element name="l" type="integer"/>
635 </all>
636 </complexType>
637
638
639 <complexType name="MySetISOKL">
640 <all>
641 <element name="i" type="integer"/>
642 <element name="s" type="n:MySetInt4"/>
643 <element name="o" type="n:octetstring"/>
644 <element name="k" type="integer"/>
645 <element name="l" type="integer"/>
646 </all>
647 </complexType>
648
649 <!-- ===== all of all of all ==== -->
650 <complexType name="MySetIntSetIntSetInt2SetReal2">
651 <all>
652 <element name="i" type="integer" minOccurs="0"/>
653 <element name="jkl" type="n:MySetIntSetInt2"/>
654 <element name="xy" type="n:MySetReal2"/>
655 </all>
656 </complexType>
657
658 <complexType name="MySetIntSeqIntSeqInt2optoptSeqReal2">
659 <all>
660 <element name="i" type="integer" minOccurs="0"/>
661 <element name="jkl" type="n:MySetIntSetInt2optopt"/>
662 <element name="xy" type="n:MySetReal2"/>
663 </all>
664 </complexType>
665
666 <complexType name="MySetIntSeqReal2">
667 <all>
668 <element name="i" type="integer" minOccurs="0"/>
669 <element name="xy" type="n:MySetReal2"/>
670 </all>
671 </complexType>
672
673 <complexType name="MySetIntSeqIntSeqInt2">
674 <all>
675 <element name="i" type="integer"/>
676 <element name="jkl" type="n:MySetIntSetInt2"/>
677 </all>
678 </complexType>
679
680 <complexType name="MySetSetIntSetInt2SetReal2">
681 <all>
682 <element name="jkl" type="n:MySetIntSetInt2"/>
683 <element name="xy" type="n:MySetReal2"/>
684 </all>
685 </complexType>
686
687 <complexType name="MySet_SetSetIntSetInt2SetReal2_SetSetIntSetInt2SetReal2">
688 <all>
689 <element name="s1" type="n:MySetSetIntSetInt2SetReal2"/>
690 <element name="s2" type="n:MySetSetIntSetInt2SetReal2"/>
691 </all>
692 </complexType>
693
694 <complexType name="MySetBasicTypes">
695 <all>
696 <element name="b" type="boolean"/>
697 <element name="n" type="n:NULL"/>
698 <element name="i" type="integer"/>
699 <element name="e" type="n:MyEnum"/>
700 <element name="r" type="float"/>
701 <element name="bs" type="n:bitstring"/>
702 <element name="os" type="n:octetstring"/>
703 <element name="oi" type="string"/>
704 <element name="roi" type="string"/>
705 </all>
706 </complexType>
707
708 <complexType name="MySetEnum">
709 <all>
710 <element name="e" type="n:MyEnum"/>
711 </all>
712 </complexType>
713
714
715 <!-- 4. Set of -->
716
717
718 <!-- 5. Union -->
719 <complexType name="MyUnionBasicTypes">
720 <choice>
721 <element name="b" type="boolean"/>
722 <element name="n" type="n:NULL"/>
723 <element name="i" type="integer"/>
724 <element name="e" type="n:MyEnum"/>
725 <element name="r" type="float"/>
726 <element name="bs" type="n:bitstring"/>
727 <element name="os" type="n:octetstring"/>
728 <element name="oi" type="string"/>
729 </choice>
730 </complexType>
731
732 <complexType name="MyUnionComplexTypes">
733 <choice>
734 <element name="u" type="n:MyUnionBasicTypes"/>
735 <element name="sofreal" type="n:MySeqOfReal"/>
736 </choice>
737 </complexType>
738
739 <element name="MyUnionElement" type="n:MyUnionBasicTypes"/>
740
741 <!-- 5. Attribute -->
742 <simpleType name="myAttr">
743 <restriction base="boolean"/>
744 </simpleType>
745
746 <element name="internationalPrice">
747 <complexType>
748 <sequence>
749 <element name="myUnionValue" type="n:MyUnionBasicTypes" minOccurs="0"/>
750 </sequence>
751 <attribute name="currency" type="string"/>
752 <attribute name="value" type="decimal"/>
753 </complexType>
754 </element>
755
756 </schema>
This page took 0.047607 seconds and 5 git commands to generate.