view dtds/army.xsd @ 103:3593d5d756ef

Fixes #124: Remove factory factory * Remove factory factory. Future work on plugins should let the plugin's "activation" methods register the factory
author IBBoard <dev@ibboard.co.uk>
date Sat, 15 Aug 2009 09:40:05 +0000
parents 76d274df9f28
children 2060f23abee9
line wrap: on
line source

<?xml version="1.0"?>
<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">
<xs:element name="army">
	<xs:complexType>
		<xs:all>
			<xs:element name="units" minOccurs="1">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="unit" minOccurs="0" maxOccurs="unbounded">
							<xs:complexType>
								<xs:all>
									<xs:element name="equipment" minOccurs="0" maxOccurs="1">
										<xs:complexType>
											<xs:sequence>
												<xs:element name="equipItem" minOccurs="1" maxOccurs="unbounded">
													<xs:complexType>
														<xs:attribute name="id" type="xs:string" /> <!-- ID reference to either a custom equipment item or a Race equipment item -->
														<xs:attribute name="amount" type="core:nonNegativeDouble" use="required"/><!-- Double used to allow for percentages to be stored -->
														<xs:attribute name="isCustomEquipment" type="xs:boolean" default="false"/>
													</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:all>
								<xs:attribute name="id" type="xs:ID" />
								<xs:attribute name="unitType" type="xs:string" use="required"/>
								<xs:attribute name="unitName" type="xs:string" use="required"/>
								<xs:attribute name="size" type="xs:positiveInteger" use="required"/>
								<xs:attribute name="race" type="xs:string" default=""/>
							</xs:complexType>
						</xs:element>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="customEquipment" minOccurs="1">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="customEquip" minOccurs="0" maxOccurs="unbounded">
							<xs:complexType>
								<xs:sequence>
									<xs:element name="customEquipPart" minOccurs="1" maxOccurs="unbounded">
										<xs:complexType>
											<xs:attribute name="partIDRef" type="xs:string" />
										</xs:complexType>
									</xs:element>
								</xs:sequence>
								<xs:attribute name="id" type="xs:ID" />
							</xs:complexType>
						</xs:element>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
		</xs:all>
		<xs:attribute name="id" type="xs:ID" />
		<xs:attribute name="name" type="xs:string" use="required"/>
		<xs:attribute name="system" type="xs:string" use="required"/>
		<xs:attribute name="race" type="xs:string" use="required"/>
		<xs:attribute name="maxPoints" type="xs:positiveInteger" use="required"/>
	</xs:complexType>
</xs:element>
</xs:schema>