annotate schemas/system.xsd @ 455:afc6410e4efc

Re #379: Fix validation of requirements to check for unit * Move to "Unit" requirements, since we assume things depend on units * Rename some classes to more meaningful names from unit-based change * Rename "requires N for M" requirement as we can make it more flexible
author IBBoard <dev@ibboard.co.uk>
date Wed, 22 Feb 2012 20:45:39 +0000
parents 20274b5b0fd6
children
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" xmlns:core="http://ibboard.co.uk/warfoundry/core" xmlns:cats="http://ibboard.co.uk/warfoundry/cats"
276
d576034ad1dd Re #290: Migrate to using key/keyref definitions instead of ID/IDREF type
IBBoard <dev@ibboard.co.uk>
parents: 249
diff changeset
3 targetNamespace="http://ibboard.co.uk/warfoundry/system" xmlns="http://ibboard.co.uk/warfoundry/system" xmlns:sys="http://ibboard.co.uk/warfoundry/system" elementFormDefault="qualified">
224
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
4 <xs:element name="system">
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
5 <xs:complexType>
239
7c14537d4a23 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
6 <xs:sequence>
278
c1d55ea8a2a1 Re #297: Move Categories over to key/keyref from ID/IDREF
IBBoard <dev@ibboard.co.uk>
parents: 276
diff changeset
7 <xs:element name="categories" type="cats:categoriestype">
c1d55ea8a2a1 Re #297: Move Categories over to key/keyref from ID/IDREF
IBBoard <dev@ibboard.co.uk>
parents: 276
diff changeset
8 <xs:key name="catsKey">
c1d55ea8a2a1 Re #297: Move Categories over to key/keyref from ID/IDREF
IBBoard <dev@ibboard.co.uk>
parents: 276
diff changeset
9 <xs:selector xpath="cats:cat"/>
c1d55ea8a2a1 Re #297: Move Categories over to key/keyref from ID/IDREF
IBBoard <dev@ibboard.co.uk>
parents: 276
diff changeset
10 <xs:field xpath="@id"/>
c1d55ea8a2a1 Re #297: Move Categories over to key/keyref from ID/IDREF
IBBoard <dev@ibboard.co.uk>
parents: 276
diff changeset
11 </xs:key>
c1d55ea8a2a1 Re #297: Move Categories over to key/keyref from ID/IDREF
IBBoard <dev@ibboard.co.uk>
parents: 276
diff changeset
12 </xs:element>
224
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
13 <xs:element name="sysStatsList">
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="sysStats" 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="sysStat" maxOccurs="unbounded">
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
20 <xs:complexType>
249
2f8fd45d55e2 Fixes #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 244
diff changeset
21 <xs:sequence>
2f8fd45d55e2 Fixes #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 244
diff changeset
22 <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"/>
2f8fd45d55e2 Fixes #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 244
diff changeset
23 </xs:sequence>
224
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
24 <xs:attribute name="name" type="xs:string" use="required"/>
244
9e4a78464b1a Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 239
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>
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
28 </xs:sequence>
276
d576034ad1dd Re #290: Migrate to using key/keyref definitions instead of ID/IDREF type
IBBoard <dev@ibboard.co.uk>
parents: 249
diff changeset
29 <xs:attribute name="id" type="xs:string" />
244
9e4a78464b1a Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 239
diff changeset
30 <xs:anyAttribute processContents="lax"/>
224
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
31 </xs:complexType>
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
32 </xs:element>
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
33 </xs:sequence>
276
d576034ad1dd Re #290: Migrate to using key/keyref definitions instead of ID/IDREF type
IBBoard <dev@ibboard.co.uk>
parents: 249
diff changeset
34 <xs:attribute name="defaultStats" type="xs:string" use="required" />
244
9e4a78464b1a Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 239
diff changeset
35 <xs:anyAttribute processContents="lax"/>
224
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
36 </xs:complexType>
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
37 </xs:element>
244
9e4a78464b1a Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 239
diff changeset
38 <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"/>
239
7c14537d4a23 Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 224
diff changeset
39 </xs:sequence>
276
d576034ad1dd Re #290: Migrate to using key/keyref definitions instead of ID/IDREF type
IBBoard <dev@ibboard.co.uk>
parents: 249
diff changeset
40 <xs:attribute name="id" type="xs:string" />
224
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
41 <xs:attribute name="name" type="xs:string" use="required"/>
393
b90db11edc64 Re #97: Default army size
IBBoard <dev@ibboard.co.uk>
parents: 392
diff changeset
42 <xs:attribute name="defaultArmySize" type="core:nonNegativeNonInfiniteDouble" default="0"/>
310
f7c3c1b39726 Re #99: Define "points" values in GameSystem
IBBoard <dev@ibboard.co.uk>
parents: 301
diff changeset
43 <xs:attribute name="defaultPtsAbbreviationSingular" type="xs:string" default="pt"/>
f7c3c1b39726 Re #99: Define "points" values in GameSystem
IBBoard <dev@ibboard.co.uk>
parents: 301
diff changeset
44 <xs:attribute name="defaultPtsAbbreviationPlural" type="xs:string" default="pts"/>
f7c3c1b39726 Re #99: Define "points" values in GameSystem
IBBoard <dev@ibboard.co.uk>
parents: 301
diff changeset
45 <xs:attribute name="defaultPtsNameSingular" type="xs:string" default="point"/>
f7c3c1b39726 Re #99: Define "points" values in GameSystem
IBBoard <dev@ibboard.co.uk>
parents: 301
diff changeset
46 <xs:attribute name="defaultPtsNamePlural" type="xs:string" default="points"/>
224
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
47 <xs:attribute name="warn" type="xs:boolean" default="false"/>
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
48 <xs:attribute name="allowAllies" type="xs:boolean" default="true"/>
244
9e4a78464b1a Re #152: Test and fix extensibility of current schemas
IBBoard <dev@ibboard.co.uk>
parents: 239
diff changeset
49 <xs:anyAttribute processContents="lax"/>
224
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
50 </xs:complexType>
276
d576034ad1dd Re #290: Migrate to using key/keyref definitions instead of ID/IDREF type
IBBoard <dev@ibboard.co.uk>
parents: 249
diff changeset
51 <xs:keyref name="defaultStatsRef" refer="statsKey">
d576034ad1dd Re #290: Migrate to using key/keyref definitions instead of ID/IDREF type
IBBoard <dev@ibboard.co.uk>
parents: 249
diff changeset
52 <xs:selector xpath="sys:sysStatsList"/>
d576034ad1dd Re #290: Migrate to using key/keyref definitions instead of ID/IDREF type
IBBoard <dev@ibboard.co.uk>
parents: 249
diff changeset
53 <xs:field xpath="@defaultStats"/>
d576034ad1dd Re #290: Migrate to using key/keyref definitions instead of ID/IDREF type
IBBoard <dev@ibboard.co.uk>
parents: 249
diff changeset
54 </xs:keyref>
d576034ad1dd Re #290: Migrate to using key/keyref definitions instead of ID/IDREF type
IBBoard <dev@ibboard.co.uk>
parents: 249
diff changeset
55 <xs:key name="statsKey">
d576034ad1dd Re #290: Migrate to using key/keyref definitions instead of ID/IDREF type
IBBoard <dev@ibboard.co.uk>
parents: 249
diff changeset
56 <xs:selector xpath="sys:sysStatsList/sys:sysStats"/>
d576034ad1dd Re #290: Migrate to using key/keyref definitions instead of ID/IDREF type
IBBoard <dev@ibboard.co.uk>
parents: 249
diff changeset
57 <xs:field xpath="@id"/>
d576034ad1dd Re #290: Migrate to using key/keyref definitions instead of ID/IDREF type
IBBoard <dev@ibboard.co.uk>
parents: 249
diff changeset
58 </xs:key>
224
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
59 </xs:element>
f097888efcfe Fixes #233: "unitPoints" attribute is badly named
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
60 </xs:schema>