Mercurial > repos > IBDev-IBBoard.WarFoundry.API
diff schemas/army.xsd @ 244:9e4a78464b1a
Re #152: Test and fix extensibility of current schemas
* Make xs:anyAttribute and xs:any do lax parsing so that we don't get schema errors
* Move Army schema away from core:extension to straight xs:any
Needs more testing
author | IBBoard <dev@ibboard.co.uk> |
---|---|
date | Sun, 28 Feb 2010 21:09:45 +0000 |
parents | b8883707c489 |
children | 2f8fd45d55e2 |
line wrap: on
line diff
--- a/schemas/army.xsd Sat Feb 27 15:03:18 2010 +0000 +++ b/schemas/army.xsd Sun Feb 28 21:09:45 2010 +0000 @@ -19,28 +19,29 @@ <xs:element name="customEquipPart" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> - <xs:element ref="core:extension" minOccurs="0" /> + <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"/> </xs:sequence> <xs:attribute name="partIDRef" type="xs:string" /> - <xs:anyAttribute/> + <xs:anyAttribute processContents="lax"/> </xs:complexType> </xs:element> + <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"/> </xs:sequence> <xs:attribute name="id" type="xs:ID" /> - <xs:anyAttribute/> + <xs:anyAttribute processContents="lax"/> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> - <xs:element ref="core:extension" minOccurs="0" /> + <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"/> </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:anyAttribute processContents="lax"/> </xs:complexType> </xs:element> @@ -54,13 +55,13 @@ <xs:element name="equipItem" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> - <xs:element ref="core:extension" minOccurs="0" /> + <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"/> </xs:sequence> <xs:attribute name="id" type="xs:string" /> <xs:attribute name="amount" type="core:nonNegativeOrInfiniteIntegerOrPercentage" use="required"/> <xs:attribute name="amountType" type="equipmentAmountType" default="ratio"/> <xs:attribute name="isCustomEquipment" type="xs:boolean" default="false"/> - <xs:anyAttribute/> + <xs:anyAttribute processContents="lax"/> </xs:complexType> </xs:element> </xs:sequence> @@ -72,23 +73,23 @@ <xs:element name="containedUnit"> <xs:complexType> <xs:sequence> - <xs:element ref="core:extension" minOccurs="0" /> + <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"/> </xs:sequence> <xs:attribute name="containedID" type="xs:IDREF" use="required"/> - <xs:anyAttribute/> + <xs:anyAttribute processContents="lax"/> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> - <xs:element ref="core:extension" minOccurs="0" /> + <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"/> </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:anyAttribute processContents="lax"/> </xs:complexType> <xs:simpleType name="equipmentAmountType">