Mercurial > repos > IBBoard.WarFoundry.API
changeset 159:7b98e71b8511
Re #152: Test and fix extensibility of current schemas
* Add "any" elements and "anyAttributes" to schemas where appropriate
Still need to handle cleansing with XSLT
author | IBBoard <dev@ibboard.co.uk> |
---|---|
date | Wed, 30 Sep 2009 19:08:08 +0000 |
parents | eb9a6d91a6db |
children | 41b927998a41 |
files | dtds/army.xsd dtds/race.xsd dtds/system.xsd dtds/warfoundry-cats.xsd |
diffstat | 4 files changed, 28 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/dtds/army.xsd Tue Sep 29 19:50:46 2009 +0000 +++ b/dtds/army.xsd Wed Sep 30 19:08:08 2009 +0000 @@ -14,10 +14,14 @@ <xs:sequence> <xs:element name="equipItem" minOccurs="1" maxOccurs="unbounded"> <xs:complexType> + <xs:sequence> + <xs:any minOccurs="0" /> + </xs:sequence> <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:nonNegativeOrInfiniteIntegerOrPercentage" use="required"/><!-- Double used to allow for percentages to be stored --> <xs:attribute name="amountType" type="equipmentAmountType" default="ratio"/> <xs:attribute name="isCustomEquipment" type="xs:boolean" default="false"/> + <xs:anyAttribute/> </xs:complexType> </xs:element> </xs:sequence> @@ -28,18 +32,24 @@ <xs:sequence> <xs:element name="containedUnit"> <xs:complexType> + <xs:sequence> + <xs:any minOccurs="0" /> + </xs:sequence> <xs:attribute name="containedID" type="xs:IDREF" use="required"/> + <xs:anyAttribute/> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> + <xs:any minOccurs="0" /> </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:anyAttribute/> </xs:complexType> </xs:element> </xs:sequence> @@ -53,22 +63,29 @@ <xs:sequence> <xs:element name="customEquipPart" minOccurs="1" maxOccurs="unbounded"> <xs:complexType> + <xs:sequence> + <xs:any minOccurs="0" /> + </xs:sequence> <xs:attribute name="partIDRef" type="xs:string" /> + <xs:anyAttribute/> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name="id" type="xs:ID" /> + <xs:anyAttribute/> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> + <xs:any minOccurs="0" /> </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:anyAttribute/> </xs:complexType> </xs:element> <xs:simpleType name="equipmentAmountType">
--- a/dtds/race.xsd Tue Sep 29 19:50:46 2009 +0000 +++ b/dtds/race.xsd Wed Sep 30 19:08:08 2009 +0000 @@ -114,6 +114,7 @@ </xs:complexType> </xs:element> <xs:element name="notes" type="xs:string" minOccurs="0" /> + <xs:any minOccurs="0" /> </xs:all> <xs:attribute name="id" type="xs:ID" /> <xs:attribute name="typeName" type="xs:string" use="required"/> @@ -139,6 +140,7 @@ <xs:complexType> <xs:all> <xs:element name="description" type="xs:string" minOccurs="0" /> + <xs:any minOccurs="0" /> </xs:all> <xs:attribute name="id" type="xs:ID" use="required"/> <xs:attribute name="name" type="xs:string" use="required"/> @@ -158,6 +160,7 @@ <xs:complexType> <xs:all> <xs:element name="description" type="xs:string" /> + <xs:any minOccurs="0" /> </xs:all> <xs:attribute name="id" type="xs:ID" use="required"/> <xs:attribute name="name" type="xs:string" use="required"/> @@ -168,6 +171,7 @@ <xs:anyAttribute/> </xs:complexType> </xs:element> + <xs:any minOccurs="0" /> </xs:all> <xs:attribute name="id" type="xs:ID" /> <xs:attribute name="subid" type="xs:string" default=""/>
--- a/dtds/system.xsd Tue Sep 29 19:50:46 2009 +0000 +++ b/dtds/system.xsd Wed Sep 30 19:08:08 2009 +0000 @@ -14,21 +14,26 @@ <xs:element name="sysStat" minOccurs="1" maxOccurs="unbounded"> <xs:complexType> <xs:attribute name="name" type="xs:string" use="required"/> + <xs:anyAttribute/> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name="id" type="xs:ID" /> + <xs:anyAttribute/> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name="defaultStats" type="xs:IDREF" /> + <xs:anyAttribute/> </xs:complexType> </xs:element> + <xs:any minOccurs="0" /> </xs:all> <xs:attribute name="id" type="xs:ID" /> <xs:attribute name="name" type="xs:string" use="required"/> <xs:attribute name="warn" type="xs:boolean" default="false"/> <xs:attribute name="allowAllies" type="xs:boolean" default="true"/> + <xs:anyAttribute/> </xs:complexType> </xs:element> </xs:schema> \ No newline at end of file
--- a/dtds/warfoundry-cats.xsd Tue Sep 29 19:50:46 2009 +0000 +++ b/dtds/warfoundry-cats.xsd Wed Sep 30 19:08:08 2009 +0000 @@ -11,8 +11,10 @@ <xs:attribute name="maxPoints" type="core:nonNegativeOrInfiniteInteger" default="-1"/> <xs:attribute name="minPercentage" type="core:percentage" default="0"/> <xs:attribute name="maxPercentage" type="core:percentage" default="100"/> + <xs:anyAttribute/> </xs:complexType> </xs:element> </xs:sequence> + <xs:anyAttribute/> </xs:complexType> </xs:schema> \ No newline at end of file