diff schemas/warfoundry-core.xsd @ 224:f097888efcfe

Fixes #233: "unitPoints" attribute is badly named * Rename "unitPoints" to "basePoints" * Re-order schema to more sensible name * Use new name in code when parsing XML (object property already has sensible name) Also: * Rename "dtds" folder to more accurate "schemas" * Change references to folder in code
author IBBoard <dev@ibboard.co.uk>
date Mon, 14 Dec 2009 20:50:39 +0000
parents
children 6abf70f31ae4
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/schemas/warfoundry-core.xsd	Mon Dec 14 20:50:39 2009 +0000
@@ -0,0 +1,77 @@
+<?xml version="1.0"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://ibboard.co.uk/warfoundry/core"
+xmlns="http://ibboard.co.uk/warfoundry/core" elementFormDefault="qualified">
+<xs:element name="extension">
+	<xs:complexType>
+		<xs:sequence>
+			<xs:any minOccurs="0" maxOccurs="unbounded" />
+		</xs:sequence>
+	</xs:complexType>
+</xs:element>
+<xs:complexType name="limit">
+	<xs:choice>
+		<xs:element name="percentageLimit">
+			<xs:complexType>
+				<xs:attribute name="limit" type="percentage" use="required"/>
+				<xs:attribute name="round" type="updowntype" default="up" />
+				<xs:anyAttribute/>
+			</xs:complexType>
+		</xs:element>
+		<xs:element name="sizeConstrainedLimit">
+			<xs:complexType>
+				<xs:attribute name="limit" type="xs:nonNegativeInteger" use="required"/>
+				<xs:anyAttribute/>
+			</xs:complexType>
+		</xs:element>
+		<xs:element name="absoluteLimit">
+			<xs:complexType>
+				<xs:attribute name="limit" type="xs:nonNegativeInteger" use="required"/>
+				<xs:anyAttribute/>
+			</xs:complexType>
+		</xs:element>
+		<xs:element name="unitSizeLimit">
+			<xs:complexType>
+				<xs:anyAttribute/>
+			</xs:complexType>
+		</xs:element>
+	</xs:choice>
+</xs:complexType>
+<xs:simpleType name="positiveOrInfiniteInteger">
+	<xs:union memberTypes="xs:positiveInteger infinity"/>
+</xs:simpleType>
+<xs:simpleType name="nonNegativeOrInfiniteInteger">
+	<xs:union memberTypes="xs:nonNegativeInteger infinity"/>
+</xs:simpleType>
+<xs:simpleType name="infinity">
+	<xs:restriction base="xs:integer">
+		<xs:minInclusive value="-1"/>
+		<xs:maxInclusive value="-1"/>
+	</xs:restriction>
+</xs:simpleType>
+<xs:simpleType name="nonNegativeDouble">
+	<xs:restriction base="xs:double">
+		<xs:minInclusive value="0"/>
+	</xs:restriction>
+</xs:simpleType>
+<xs:simpleType name="nonNegativeNonInfiniteDouble">
+	<xs:restriction base="xs:double">
+		<xs:minInclusive value="0"/>
+		<xs:maxExclusive value="INF"/>
+	</xs:restriction>
+</xs:simpleType>
+<xs:simpleType name="percentage">
+	<xs:restriction base="xs:double">
+		<xs:minInclusive value="0"/>
+		<xs:maxInclusive value="100"/>
+	</xs:restriction>
+</xs:simpleType>
+<xs:simpleType name="nonNegativeOrInfiniteIntegerOrPercentage">
+	<xs:union memberTypes="xs:nonNegativeInteger infinity percentage"/>
+</xs:simpleType>
+<xs:simpleType name="updowntype">
+	<xs:restriction base="xs:string">
+		<xs:enumeration value="up"/>
+		<xs:enumeration value="down"/>
+	</xs:restriction>
+</xs:simpleType>
+</xs:schema>
\ No newline at end of file