Mercurial > repos > IBBoard.WarFoundry.API
diff dtds/army.xsd @ 36:0a1c5fea6a08
Re #32 - Migrate to schemas
* Convert Army to schema
* Delete old DTDs
author | IBBoard <dev@ibboard.co.uk> |
---|---|
date | Mon, 16 Mar 2009 20:15:02 +0000 |
parents | |
children | e53ed2d613a1 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/dtds/army.xsd Mon Mar 16 20:15:02 2009 +0000 @@ -0,0 +1,55 @@ +<?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" elementFormDefault="qualified"> +<xs:element name="army"> + <xs:complexType> + <xs:all> + <xs:element name="units" type="unitstype" minOccurs="1"/> + <xs:element name="customEquipment" type="customequipmenttype" minOccurs="1" /> + </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:complexType name="unitstype"> + <xs:sequence> + <xs:element name="unit" type="unittype" minOccurs="0" maxOccurs="unbounded"/> + </xs:sequence> +</xs:complexType> +<xs:complexType name="unittype"> + <xs:all> + <xs:element name="equipment" type="equipmenttype" minOccurs="0" maxOccurs="1" /> + </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:complexType name="equipmenttype"> + <xs:sequence> + <xs:element name="equipItem" type="equipitemtype" minOccurs="1" maxOccurs="unbounded"/> + </xs:sequence> +</xs:complexType> +<xs:complexType name="equipitemtype"> + <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="xs:double" use="required"/><!-- Double used to allow for percentages to be stored --> + <xs:attribute name="isCustomEquipment" type="xs:boolean" default="false"/> +</xs:complexType> +<xs:complexType name="customequipmenttype"> + <xs:sequence> + <xs:element name="customEquip" type="customequiptype" minOccurs="0" maxOccurs="unbounded"/> + </xs:sequence> +</xs:complexType> +<xs:complexType name="customequiptype"> + <xs:sequence> + <xs:element name="customEquipPart" type="customequipparttype" minOccurs="1" maxOccurs="unbounded"/> + </xs:sequence> + <xs:attribute name="id" type="xs:ID" /> +</xs:complexType> +<xs:complexType name="customequipparttype"> + <xs:attribute name="partIDRef" type="xs:string" /> +</xs:complexType> +</xs:schema> \ No newline at end of file