annotate schemas/army.xsd @ 244:9e4a78464b1a

Re #152: Test and fix extensibility of current schemas * Make xs:anyAttribute and xs:any do lax parsing so that we don't get schema errors * Move Army schema away from core:extension to straight xs:any Needs more testing
author IBBoard <dev@ibboard.co.uk>
date Sun, 28 Feb 2010 21:09:45 +0000
parents b8883707c489
children 2f8fd45d55e2
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
224
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
1 <?xml version="1.0"?>
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
2 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://ibboard.co.uk/warfoundry/army" xmlns="http://ibboard.co.uk/warfoundry/army" xmlns:core="http://ibboard.co.uk/warfoundry/core" elementFormDefault="qualified">
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
3 <xs:element name="army">
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
4 <xs:complexType>
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
5 <xs:all>
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
6 <xs:element name="units">
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
7 <xs:complexType>
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
8 <xs:sequence>
240
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
9 <xs:element name="unit" minOccurs="0" maxOccurs="unbounded" type="unit"/>
224
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
10 </xs:sequence>
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
11 </xs:complexType>
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
12 </xs:element>
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
13 <xs:element name="customEquipment" minOccurs="0">
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
14 <xs:complexType>
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
15 <xs:sequence>
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
16 <xs:element name="customEquip" minOccurs="0" maxOccurs="unbounded">
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
17 <xs:complexType>
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
18 <xs:sequence>
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
19 <xs:element name="customEquipPart" maxOccurs="unbounded">
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
20 <xs:complexType>
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
21 <xs:sequence>
244
9e4a78464b1a Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 243
diff changeset
22 <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"/>
224
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
23 </xs:sequence>
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
24 <xs:attribute name="partIDRef" type="xs:string" />
244
9e4a78464b1a Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 243
diff changeset
25 <xs:anyAttribute processContents="lax"/>
224
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
26 </xs:complexType>
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
27 </xs:element>
244
9e4a78464b1a Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 243
diff changeset
28 <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"/>
224
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
29 </xs:sequence>
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
30 <xs:attribute name="id" type="xs:ID" />
244
9e4a78464b1a Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 243
diff changeset
31 <xs:anyAttribute processContents="lax"/>
224
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
32 </xs:complexType>
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
33 </xs:element>
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
34 </xs:sequence>
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
35 </xs:complexType>
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
36 </xs:element>
244
9e4a78464b1a Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 243
diff changeset
37 <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"/>
224
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
38 </xs:all>
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
39 <xs:attribute name="id" type="xs:ID" />
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
40 <xs:attribute name="name" type="xs:string" use="required"/>
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
41 <xs:attribute name="system" type="xs:string" use="required"/>
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
42 <xs:attribute name="race" type="xs:string" use="required"/>
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
43 <xs:attribute name="maxPoints" type="xs:positiveInteger" use="required"/>
244
9e4a78464b1a Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 243
diff changeset
44 <xs:anyAttribute processContents="lax"/>
224
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
45 </xs:complexType>
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
46 </xs:element>
240
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
47
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
48 <!-- Re-usable complex types -->
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
49
243
b8883707c489 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 241
diff changeset
50 <xs:complexType name="unit">
240
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
51 <xs:all>
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
52 <xs:element name="equipment" minOccurs="0">
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
53 <xs:complexType>
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
54 <xs:sequence>
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
55 <xs:element name="equipItem" maxOccurs="unbounded">
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
56 <xs:complexType>
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
57 <xs:sequence>
244
9e4a78464b1a Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 243
diff changeset
58 <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"/>
240
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
59 </xs:sequence>
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
60 <xs:attribute name="id" type="xs:string" />
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
61 <xs:attribute name="amount" type="core:nonNegativeOrInfiniteIntegerOrPercentage" use="required"/>
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
62 <xs:attribute name="amountType" type="equipmentAmountType" default="ratio"/>
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
63 <xs:attribute name="isCustomEquipment" type="xs:boolean" default="false"/>
244
9e4a78464b1a Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 243
diff changeset
64 <xs:anyAttribute processContents="lax"/>
240
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
65 </xs:complexType>
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
66 </xs:element>
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
67 </xs:sequence>
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
68 </xs:complexType>
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
69 </xs:element>
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
70 <xs:element name="contains" minOccurs="0">
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
71 <xs:complexType>
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
72 <xs:sequence>
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
73 <xs:element name="containedUnit">
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
74 <xs:complexType>
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
75 <xs:sequence>
244
9e4a78464b1a Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 243
diff changeset
76 <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"/>
240
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
77 </xs:sequence>
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
78 <xs:attribute name="containedID" type="xs:IDREF" use="required"/>
244
9e4a78464b1a Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 243
diff changeset
79 <xs:anyAttribute processContents="lax"/>
240
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
80 </xs:complexType>
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
81 </xs:element>
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
82 </xs:sequence>
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
83 </xs:complexType>
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
84 </xs:element>
244
9e4a78464b1a Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 243
diff changeset
85 <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"/>
240
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
86 </xs:all>
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
87 <xs:attribute name="id" type="xs:ID" />
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
88 <xs:attribute name="unitType" type="xs:string" use="required"/>
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
89 <xs:attribute name="unitName" type="xs:string" use="required"/>
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
90 <xs:attribute name="size" type="xs:positiveInteger" use="required"/>
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
91 <xs:attribute name="race" type="xs:string" default=""/>
244
9e4a78464b1a Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 243
diff changeset
92 <xs:anyAttribute processContents="lax"/>
240
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
93 </xs:complexType>
38a4154c4537 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
94
224
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
95 <xs:simpleType name="equipmentAmountType">
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
96 <xs:restriction base="xs:string">
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
97 <xs:enumeration value="ratio"/>
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
98 <xs:enumeration value="fixed"/>
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
99 </xs:restriction>
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
100 </xs:simpleType>
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
101 </xs:schema>