Mercurial > repos > IBDev-IBBoard.WarFoundry.API
view schemas/system.xsd @ 315:6cb0fb78b9a6
Re #324: Add saving of Race and System data to files
* Convert IWarFoundryFileSaver from a marker interface into an interface with a purpose of its own so that we can support multiple data files in one zip
* Repurpose WarFoundryXmlSaver to be just an Army saver - we still need to make it usable as part of a larger whole
* Add a WarFoundryLoadedObject class for objects loaded from files and make Race/Army/GameSystem inherit from it
author | IBBoard <dev@ibboard.co.uk> |
---|---|
date | Mon, 28 Feb 2011 21:09:20 +0000 |
parents | f7c3c1b39726 |
children | 376da2b24de1 |
line wrap: on
line source
<?xml version="1.0"?> <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/system" xmlns="http://ibboard.co.uk/warfoundry/system" xmlns:sys="http://ibboard.co.uk/warfoundry/system" elementFormDefault="qualified"> <xs:element name="system"> <xs:complexType> <xs:sequence> <xs:element name="categories" type="cats:categoriestype"> <xs:key name="catsKey"> <xs:selector xpath="cats:cat"/> <xs:field xpath="@id"/> </xs:key> </xs:element> <xs:element name="sysStatsList"> <xs:complexType> <xs:sequence> <xs:element name="sysStats" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element name="sysStat" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"/> </xs:sequence> <xs:attribute name="name" type="xs:string" use="required"/> <xs:anyAttribute processContents="lax"/> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name="id" type="xs:string" /> <xs:anyAttribute processContents="lax"/> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name="defaultStats" type="xs:string" use="required" /> <xs:anyAttribute processContents="lax"/> </xs:complexType> </xs:element> <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"/> </xs:sequence> <xs:attribute name="id" type="xs:string" /> <xs:attribute name="name" type="xs:string" use="required"/> <xs:attribute name="defaultArmySize" type="core:nonNegativeNonInfiniteDouble" default="0"/> <xs:attribute name="defaultPtsAbbreviationSingular" type="xs:string" default="pt"/> <xs:attribute name="defaultPtsAbbreviationPlural" type="xs:string" default="pts"/> <xs:attribute name="defaultPtsNameSingular" type="xs:string" default="point"/> <xs:attribute name="defaultPtsNamePlural" type="xs:string" default="points"/> <xs:attribute name="warn" type="xs:boolean" default="false"/> <xs:attribute name="allowAllies" type="xs:boolean" default="true"/> <xs:anyAttribute processContents="lax"/> </xs:complexType> <xs:keyref name="defaultStatsRef" refer="statsKey"> <xs:selector xpath="sys:sysStatsList"/> <xs:field xpath="@defaultStats"/> </xs:keyref> <xs:key name="statsKey"> <xs:selector xpath="sys:sysStatsList/sys:sysStats"/> <xs:field xpath="@id"/> </xs:key> </xs:element> </xs:schema>