diff dtds/race.xsd @ 74:76d274df9f28

Closes #80: Collapse XSD definitions * Replace spaces with tabs for indenting
author IBBoard <dev@ibboard.co.uk>
date Sun, 10 May 2009 19:18:10 +0000
parents 5eb1bc0a6d96
children 1091082c27eb
line wrap: on
line diff
--- a/dtds/race.xsd	Sun May 10 19:13:10 2009 +0000
+++ b/dtds/race.xsd	Sun May 10 19:18:10 2009 +0000
@@ -2,177 +2,177 @@
 <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"
 targetNamespace="http://ibboard.co.uk/warfoundry/race" xmlns="http://ibboard.co.uk/warfoundry/race" elementFormDefault="qualified">
 <xs:element name="race">
-  <xs:complexType>
-    <xs:all>
-      <xs:element name="units" minOccurs="1">
-        <xs:complexType>
-          <xs:sequence>
-            <xs:element name="unit" minOccurs="1" maxOccurs="unbounded">
-              <xs:complexType>
-                <xs:all>
-                  <xs:element name="stats" minOccurs="1">
-                    <xs:complexType>
-                      <xs:sequence>
-                        <xs:element name="stat" minOccurs="1" maxOccurs="unbounded">
-                          <xs:complexType>
-                            <xs:simpleContent>
-                              <xs:extension base="xs:string">
-                                <xs:attribute name="name" type="xs:string" use="required"/>
-                                      </xs:extension>
-                            </xs:simpleContent>
-                          </xs:complexType>
-                        </xs:element>
-                      </xs:sequence>
-                    </xs:complexType>
-                  </xs:element>
-                  <xs:element name="unitEquipment">
-                    <xs:complexType>
-                      <xs:sequence>
-                        <xs:element name="unitEquipmentItem" maxOccurs="unbounded">
-                          <xs:complexType>
-                            <xs:attribute name="id" type="xs:IDREF" />
-                            <xs:attribute name="required" type="xs:boolean" default="false"/>
-                            <xs:attribute name="exclusivityGroup" type="xs:string" default=""/>
-                            <xs:attribute name="minNum" type="core:nonNegativeOrInfiniteInteger" default="-1"/>
-                            <xs:attribute name="maxNum" type="core:nonNegativeOrInfiniteInteger" default="-1"/>
-                            <xs:attribute name="minPercentage" type="core:percentage" default="100"/>
-                            <xs:attribute name="maxPercentage" type="core:percentage" default="100"/>
-                            <xs:attribute name="roundDirection" type="updowntype" default="up"/>
-                          </xs:complexType>
-                        </xs:element>
-                      </xs:sequence>
-                    </xs:complexType>
-                  </xs:element>
-                  <xs:element name="unitAbilities" minOccurs="0">
-                    <xs:complexType>
-                      <xs:sequence>
-                        <xs:element name="unitAbility" maxOccurs="unbounded">
-                          <xs:complexType>
-                            <xs:attribute name="abilityID" type="xs:IDREF" />
-                            <xs:attribute name="required" type="xs:boolean" default="true"/>
-                          </xs:complexType>
-                        </xs:element>
-                      </xs:sequence>
-                    </xs:complexType>
-                  </xs:element>
-                  <xs:element name="requirements" minOccurs="0">
-                    <xs:complexType>
-                      <xs:sequence>
-                        <xs:element name="requirement">
-                          <xs:complexType>
-                            <xs:simpleContent>
-                              <xs:extension base="xs:string">
-                                <xs:attribute name="requirementName" type="xs:string" use="required"/>
-                              </xs:extension>
-                            </xs:simpleContent>
-                          </xs:complexType>
-                        </xs:element>
-                      </xs:sequence>
-                    </xs:complexType>
-                  </xs:element>
-                  <xs:element name="contains" minOccurs="0">
-                    <xs:complexType>
-                      <xs:sequence>
-                        <xs:element name="containedUnit">
-                          <xs:complexType>
-                            <xs:attribute name="containedID" type="xs:IDREF" use="required"/>
-                          </xs:complexType>
-                        </xs:element>
-                      </xs:sequence>
-                    </xs:complexType>
-                  </xs:element>
-                  <xs:element name="extraData" minOccurs="0">
-                    <xs:complexType>
-                      <xs:sequence>
-                        <xs:element name="data">
-                          <xs:complexType>
-                            <xs:simpleContent>
-                              <xs:extension base="xs:string">
-                                <xs:attribute name="id" type="xs:ID" use="required"/>
-                              </xs:extension>
-                            </xs:simpleContent>
-                          </xs:complexType>
-                        </xs:element>
-                      </xs:sequence>
-                    </xs:complexType>
-                  </xs:element>
-                  <xs:element name="notes" type="xs:string" minOccurs="0" />
-                </xs:all>
-                <xs:attribute name="id" type="xs:ID" />
-                <xs:attribute name="typeName" type="xs:string" use="required"/>
-                <xs:attribute name="cat" type="xs:string" use="required"/>
-                <xs:attribute name="unitPoints" type="core:nonNegativeNonInfiniteDouble" default="0"/>
-                <xs:attribute name="points" type="core:nonNegativeNonInfiniteDouble" use="required"/>
-                <xs:attribute name="minNum" type="xs:nonNegativeInteger" default="0"/>
-                <xs:attribute name="maxNum" type="core:positiveOrInfiniteInteger" default="-1"/>
-                <xs:attribute name="minSize" type="xs:nonNegativeInteger" default="5"/>
-                <xs:attribute name="maxSize" type="core:positiveOrInfiniteInteger" default="-1"/>
-                <xs:attribute name="baseSize" type="xs:nonNegativeInteger" default="0"/>
-              </xs:complexType>
-            </xs:element>
-          </xs:sequence>
-        </xs:complexType>
-      </xs:element>
-      <xs:element name="categories" type="cats:categoriestype" minOccurs="0" />
-      <xs:element name="equipment" minOccurs="0">
-        <xs:complexType>
-          <xs:sequence>
-            <xs:element name="equipmentItem" maxOccurs="unbounded">
-              <xs:complexType>
-                <xs:all>
-                  <xs:element name="description" type="xs:string" minOccurs="0" />
-                </xs:all>
-                <xs:attribute name="id" type="xs:ID" use="required"/>
-                <xs:attribute name="name" type="xs:string" use="required"/>
-                <xs:attribute name="cost" type="core:nonNegativeNonInfiniteDouble" use="required"/>
-                <xs:attribute name="armourType" type="armourtype" default="None"/>
-              </xs:complexType>
-            </xs:element>
-          </xs:sequence>
-        </xs:complexType>
-      </xs:element>
-      <xs:element name="abilities" minOccurs="0">
-        <xs:complexType>
-          <xs:sequence>
-            <xs:element name="ability">
-              <xs:complexType>
-                <xs:all>
-                  <xs:element name="description" type="xs:string" />
-                </xs:all>
-                <xs:attribute name="id" type="xs:ID" use="required"/>
-                <xs:attribute name="name" type="xs:string" use="required"/>
-              </xs:complexType>
-            </xs:element>
-          </xs:sequence>
-        </xs:complexType>
-      </xs:element>
-    </xs:all>
-    <xs:attribute name="id" type="xs:ID" />
-    <xs:attribute name="subid" type="xs:string" default=""/>
-    <xs:attribute name="name" type="xs:string" use="required"/>
-    <xs:attribute name="system" type="xs:string" use="required"/>
-  </xs:complexType>
+	<xs:complexType>
+		<xs:all>
+			<xs:element name="units" minOccurs="1">
+				<xs:complexType>
+					<xs:sequence>
+						<xs:element name="unit" minOccurs="1" maxOccurs="unbounded">
+							<xs:complexType>
+								<xs:all>
+									<xs:element name="stats" minOccurs="1">
+										<xs:complexType>
+											<xs:sequence>
+												<xs:element name="stat" minOccurs="1" maxOccurs="unbounded">
+													<xs:complexType>
+														<xs:simpleContent>
+															<xs:extension base="xs:string">
+																<xs:attribute name="name" type="xs:string" use="required"/>
+																			</xs:extension>
+														</xs:simpleContent>
+													</xs:complexType>
+												</xs:element>
+											</xs:sequence>
+										</xs:complexType>
+									</xs:element>
+									<xs:element name="unitEquipment">
+										<xs:complexType>
+											<xs:sequence>
+												<xs:element name="unitEquipmentItem" maxOccurs="unbounded">
+													<xs:complexType>
+														<xs:attribute name="id" type="xs:IDREF" />
+														<xs:attribute name="required" type="xs:boolean" default="false"/>
+														<xs:attribute name="exclusivityGroup" type="xs:string" default=""/>
+														<xs:attribute name="minNum" type="core:nonNegativeOrInfiniteInteger" default="-1"/>
+														<xs:attribute name="maxNum" type="core:nonNegativeOrInfiniteInteger" default="-1"/>
+														<xs:attribute name="minPercentage" type="core:percentage" default="100"/>
+														<xs:attribute name="maxPercentage" type="core:percentage" default="100"/>
+														<xs:attribute name="roundDirection" type="updowntype" default="up"/>
+													</xs:complexType>
+												</xs:element>
+											</xs:sequence>
+										</xs:complexType>
+									</xs:element>
+									<xs:element name="unitAbilities" minOccurs="0">
+										<xs:complexType>
+											<xs:sequence>
+												<xs:element name="unitAbility" maxOccurs="unbounded">
+													<xs:complexType>
+														<xs:attribute name="abilityID" type="xs:IDREF" />
+														<xs:attribute name="required" type="xs:boolean" default="true"/>
+													</xs:complexType>
+												</xs:element>
+											</xs:sequence>
+										</xs:complexType>
+									</xs:element>
+									<xs:element name="requirements" minOccurs="0">
+										<xs:complexType>
+											<xs:sequence>
+												<xs:element name="requirement">
+													<xs:complexType>
+														<xs:simpleContent>
+															<xs:extension base="xs:string">
+																<xs:attribute name="requirementName" type="xs:string" use="required"/>
+															</xs:extension>
+														</xs:simpleContent>
+													</xs:complexType>
+												</xs:element>
+											</xs:sequence>
+										</xs:complexType>
+									</xs:element>
+									<xs:element name="contains" minOccurs="0">
+										<xs:complexType>
+											<xs:sequence>
+												<xs:element name="containedUnit">
+													<xs:complexType>
+														<xs:attribute name="containedID" type="xs:IDREF" use="required"/>
+													</xs:complexType>
+												</xs:element>
+											</xs:sequence>
+										</xs:complexType>
+									</xs:element>
+									<xs:element name="extraData" minOccurs="0">
+										<xs:complexType>
+											<xs:sequence>
+												<xs:element name="data">
+													<xs:complexType>
+														<xs:simpleContent>
+															<xs:extension base="xs:string">
+																<xs:attribute name="id" type="xs:ID" use="required"/>
+															</xs:extension>
+														</xs:simpleContent>
+													</xs:complexType>
+												</xs:element>
+											</xs:sequence>
+										</xs:complexType>
+									</xs:element>
+									<xs:element name="notes" type="xs:string" minOccurs="0" />
+								</xs:all>
+								<xs:attribute name="id" type="xs:ID" />
+								<xs:attribute name="typeName" type="xs:string" use="required"/>
+								<xs:attribute name="cat" type="xs:string" use="required"/>
+								<xs:attribute name="unitPoints" type="core:nonNegativeNonInfiniteDouble" default="0"/>
+								<xs:attribute name="points" type="core:nonNegativeNonInfiniteDouble" use="required"/>
+								<xs:attribute name="minNum" type="xs:nonNegativeInteger" default="0"/>
+								<xs:attribute name="maxNum" type="core:positiveOrInfiniteInteger" default="-1"/>
+								<xs:attribute name="minSize" type="xs:nonNegativeInteger" default="5"/>
+								<xs:attribute name="maxSize" type="core:positiveOrInfiniteInteger" default="-1"/>
+								<xs:attribute name="baseSize" type="xs:nonNegativeInteger" default="0"/>
+							</xs:complexType>
+						</xs:element>
+					</xs:sequence>
+				</xs:complexType>
+			</xs:element>
+			<xs:element name="categories" type="cats:categoriestype" minOccurs="0" />
+			<xs:element name="equipment" minOccurs="0">
+				<xs:complexType>
+					<xs:sequence>
+						<xs:element name="equipmentItem" maxOccurs="unbounded">
+							<xs:complexType>
+								<xs:all>
+									<xs:element name="description" type="xs:string" minOccurs="0" />
+								</xs:all>
+								<xs:attribute name="id" type="xs:ID" use="required"/>
+								<xs:attribute name="name" type="xs:string" use="required"/>
+								<xs:attribute name="cost" type="core:nonNegativeNonInfiniteDouble" use="required"/>
+								<xs:attribute name="armourType" type="armourtype" default="None"/>
+							</xs:complexType>
+						</xs:element>
+					</xs:sequence>
+				</xs:complexType>
+			</xs:element>
+			<xs:element name="abilities" minOccurs="0">
+				<xs:complexType>
+					<xs:sequence>
+						<xs:element name="ability">
+							<xs:complexType>
+								<xs:all>
+									<xs:element name="description" type="xs:string" />
+								</xs:all>
+								<xs:attribute name="id" type="xs:ID" use="required"/>
+								<xs:attribute name="name" type="xs:string" use="required"/>
+							</xs:complexType>
+						</xs:element>
+					</xs:sequence>
+				</xs:complexType>
+			</xs:element>
+		</xs:all>
+		<xs:attribute name="id" type="xs:ID" />
+		<xs:attribute name="subid" type="xs:string" default=""/>
+		<xs:attribute name="name" type="xs:string" use="required"/>
+		<xs:attribute name="system" type="xs:string" use="required"/>
+	</xs:complexType>
 </xs:element>
 <xs:simpleType name="updowntype">
-  <xs:restriction base="xs:string">
-    <xs:enumeration value="up"/>
-    <xs:enumeration value="down"/>
-  </xs:restriction>
+	<xs:restriction base="xs:string">
+		<xs:enumeration value="up"/>
+		<xs:enumeration value="down"/>
+	</xs:restriction>
 </xs:simpleType>
 <xs:simpleType name="armourtype">
-  <xs:restriction base="xs:string">
-    <xs:enumeration value="None"/>
-    <xs:enumeration value="Shield"/>
-    <xs:enumeration value="LightArmour"/>
-    <xs:enumeration value="LightArmourShield"/>
-    <xs:enumeration value="HeavyArmour"/>
-    <xs:enumeration value="HeavyArmourShield"/>
-    <xs:enumeration value="Barding"/>
-    <xs:enumeration value="BardingShield"/>
-    <xs:enumeration value="BardingLightArmour"/>
-    <xs:enumeration value="BardingLightArmourShield"/>
-    <xs:enumeration value="BardingHeavyArmour"/>
-    <xs:enumeration value="BardingHeavyArmourShield"/>
-  </xs:restriction>
+	<xs:restriction base="xs:string">
+		<xs:enumeration value="None"/>
+		<xs:enumeration value="Shield"/>
+		<xs:enumeration value="LightArmour"/>
+		<xs:enumeration value="LightArmourShield"/>
+		<xs:enumeration value="HeavyArmour"/>
+		<xs:enumeration value="HeavyArmourShield"/>
+		<xs:enumeration value="Barding"/>
+		<xs:enumeration value="BardingShield"/>
+		<xs:enumeration value="BardingLightArmour"/>
+		<xs:enumeration value="BardingLightArmourShield"/>
+		<xs:enumeration value="BardingHeavyArmour"/>
+		<xs:enumeration value="BardingHeavyArmourShield"/>
+	</xs:restriction>
 </xs:simpleType>
 </xs:schema>
\ No newline at end of file