diff options
-rw-r--r-- | config/config | 2 | ||||
-rw-r--r-- | config/config.xsd | 57 | ||||
-rw-r--r-- | schema/config.xsd | 27 | ||||
-rw-r--r-- | schema/output.xsd | 0 |
4 files changed, 59 insertions, 27 deletions
diff --git a/config/config b/config/config new file mode 100644 index 0000000..1f6b18a --- /dev/null +++ b/config/config @@ -0,0 +1,2 @@ +# Example configuration file +# diff --git a/config/config.xsd b/config/config.xsd new file mode 100644 index 0000000..d0bcbaf --- /dev/null +++ b/config/config.xsd @@ -0,0 +1,57 @@ +<?xml version="1.0" encoding="utf-8"?> +<xs:schema id="XMLSchema1" targetNamespace="http://noddybox.co.uk/schema/sdlgrav/v1/config.xsd" elementFormDefault="qualified" xmlns="http://noddybox.co.uk/schema/sdlgrav/v1/config.xsd" xmlns:mstns="http://noddybox.co.uk/schema/sdlgrav/v1/config.xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema"> + <xs:simpleType name="GravValueType"> + <xs:restriction base="xs:string"> + <xs:minLength value="1" /> + </xs:restriction> + </xs:simpleType> + <xs:complexType name="GravPositionType"> + <xs:sequence> + </xs:sequence> + <xs:attribute name="x" type="GravValueType" /> + <xs:attribute name="y" type="GravValueType" /> + <xs:attribute name="z" type="GravValueType" /> + </xs:complexType> + <xs:complexType name="GravVectorType"> + <xs:sequence /> + <xs:attribute name="dx" type="GravValueType" /> + <xs:attribute name="dy" type="GravValueType" /> + <xs:attribute name="dz" type="GravValueType" /> + </xs:complexType> + <xs:complexType name="GravColourType"> + <xs:sequence> + </xs:sequence> + <xs:attribute name="r" type="GravColourIntensityType" /> + <xs:attribute name="g" type="GravColourIntensityType" /> + <xs:attribute name="b" type="GravColourIntensityType" /> + </xs:complexType> + <xs:simpleType name="GravColourIntensityType"> + <xs:restriction base="xs:nonNegativeInteger"> + <xs:minInclusive value="0" /> + <xs:maxInclusive value="255" /> + </xs:restriction> + </xs:simpleType> + <xs:complexType name="GravConstantsType"> + <xs:sequence /> + <xs:attribute name="G" type="GravValueType" /> + </xs:complexType> + <xs:element name="GravConfig"> + <xs:complexType> + <xs:sequence> + <xs:sequence> + <xs:element name="Universe" type="GravConstantsType" /> + <xs:element name="Mass" type="GravMassType" minOccurs="1" maxOccurs="1" /> + </xs:sequence> + </xs:sequence> + </xs:complexType> + </xs:element> + <xs:complexType name="GravMassType"> + <xs:sequence> + <xs:element name="Position" type="GravPositionType" /> + <xs:element name="Vector" type="GravVectorType" /> + <xs:element name="Colour" type="GravColourType" /> + </xs:sequence> + <xs:attribute name="mass" type="GravValueType" /> + <xs:attribute name="density" type="xs:positiveInteger" /> + </xs:complexType> +</xs:schema> diff --git a/schema/config.xsd b/schema/config.xsd deleted file mode 100644 index 3fe0130..0000000 --- a/schema/config.xsd +++ /dev/null @@ -1,27 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<xs:schema elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema"> -<xs:element name="sdlgrav-config"> - <xs:complexType> - <xs:sequence> - <xs:element name="Recipient" type="xs:string" /> - <xs:element name="House" type="xs:string" /> - <xs:element name="Street" type="xs:string" /> - <xs:element name="Town" type="xs:string" /> - <xs:element name="County" type="xs:string" minOccurs="0" /> - <xs:element name="PostCode" type="xs:string" /> - <xs:element name="Country"> - <xs:simpleType> - <xs:restriction base="xs:string"> - <xs:enumeration value="FR" /> - <xs:enumeration value="DE" /> - <xs:enumeration value="ES" /> - <xs:enumeration value="UK" /> - <xs:enumeration value="US" /> - </xs:restriction> - </xs:simpleType> - </xs:element> - </xs:sequence> - </xs:complexType> -</xs:element> -</xs:schema> - diff --git a/schema/output.xsd b/schema/output.xsd deleted file mode 100644 index e69de29..0000000 --- a/schema/output.xsd +++ /dev/null |