khanat-opennel-code/code/nel/samples/3d/cegui/datafiles/looknfeel/Falagard.xsd
2010-05-06 02:08:41 +02:00

399 lines
20 KiB
XML

<?xml version="1.0" ?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
<xsd:element name="Falagard" type="falagardSpecificationType" />
<xsd:complexType name="falagardSpecificationType">
<xsd:sequence>
<xsd:element name="WidgetLook" type="widgetLookType" minOccurs="0" maxOccurs="unbounded" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="widgetLookType">
<xsd:sequence>
<xsd:element name="PropertyDefinition" type="propertyDefinitionType" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="PropertyLinkDefinition" type="propertyLinkDefinitionType" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="Property" type="propertyType" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="NamedArea" type="namedAreaType" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="Child" type="widgetComponentType" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="ImagerySection" type="imagerySectionType" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="StateImagery" type="stateType" minOccurs="0" maxOccurs="unbounded" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
<xsd:complexType name="propertyDefinitionType">
<xsd:attribute name="type" type="propertyTypeEnum" use="optional" default="Generic" />
<xsd:attribute name="name" type="xsd:string" use="required" />
<xsd:attribute name="initialValue" type="xsd:string" use="optional" default="" />
<xsd:attribute name="layoutOnWrite" type="xsd:boolean" use="optional" default="false" />
<xsd:attribute name="redrawOnWrite" type="xsd:boolean" use="optional" default="false" />
</xsd:complexType>
<xsd:complexType name="propertyLinkDefinitionType">
<xsd:attribute name="type" type="propertyTypeEnum" use="optional" default="Generic" />
<xsd:attribute name="name" type="xsd:string" use="required" />
<xsd:attribute name="widget" type="xsd:string" use="required" />
<xsd:attribute name="targetProperty" type="xsd:string" use="optional" default="" />
<xsd:attribute name="initialValue" type="xsd:string" use="optional" default="" />
<xsd:attribute name="layoutOnWrite" type="xsd:boolean" use="optional" default="false" />
<xsd:attribute name="redrawOnWrite" type="xsd:boolean" use="optional" default="false" />
</xsd:complexType>
<xsd:complexType name="namedAreaType">
<xsd:sequence>
<xsd:element name="Area" type="componentAreaType" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
<xsd:complexType name="stateType">
<xsd:sequence>
<xsd:element name="Layer" type="layerType" minOccurs="0" maxOccurs="unbounded" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
<xsd:attribute name="clipped" type="xsd:boolean" use="optional" default="true" />
</xsd:complexType>
<xsd:complexType name="layerType">
<xsd:sequence>
<xsd:element name="Section" type="sectionSpecType" minOccurs="0" maxOccurs="unbounded" />
</xsd:sequence>
<xsd:attribute name="priority" type="xsd:integer" use="optional" default="0" />
</xsd:complexType>
<xsd:complexType name="sectionSpecType">
<xsd:choice minOccurs="0" maxOccurs="1">
<xsd:element name="Colour" type="colourType" />
<xsd:element name="Colours" type="colourRectType" />
<xsd:element name="ColourProperty" type="settingByPropertyType" />
<xsd:element name="ColourRectProperty" type="settingByPropertyType" />
</xsd:choice>
<xsd:attribute name="look" type="xsd:string" use="optional" default="" />
<xsd:attribute name="section" type="xsd:string" use="required" />
<xsd:attribute name="controlProperty" type="xsd:string" use="optional" default="" />
</xsd:complexType>
<xsd:complexType name="imagerySectionType">
<xsd:sequence>
<xsd:choice minOccurs="0" maxOccurs="1">
<xsd:element name="Colour" type="colourType" />
<xsd:element name="Colours" type="colourRectType" />
<xsd:element name="ColourProperty" type="settingByPropertyType" />
<xsd:element name="ColourRectProperty" type="settingByPropertyType" />
</xsd:choice>
<xsd:element name="FrameComponent" type="frameComponentType" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="ImageryComponent" type="imageryComponentType" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="TextComponent" type="textComponentType" minOccurs="0" maxOccurs="unbounded" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
<xsd:complexType name="frameComponentType">
<xsd:sequence>
<xsd:element name="Area" type="componentAreaType" />
<xsd:element name="Image" type="frameImageType" minOccurs="0" maxOccurs="9" />
<xsd:choice minOccurs="0" maxOccurs="1">
<xsd:element name="Colour" type="colourType" />
<xsd:element name="Colours" type="colourRectType" />
<xsd:element name="ColourProperty" type="settingByPropertyType" />
<xsd:element name="ColourRectProperty" type="settingByPropertyType" />
</xsd:choice>
<xsd:choice minOccurs="0" maxOccurs="1">
<xsd:element name="VertFormat" type="vertFormatType" />
<xsd:element name="VertFormatProperty" type="settingByPropertyType" />
</xsd:choice>
<xsd:choice minOccurs="0" maxOccurs="1">
<xsd:element name="HorzFormat" type="horzFormatType" />
<xsd:element name="HorzFormatProperty" type="settingByPropertyType" />
</xsd:choice>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="textComponentType">
<xsd:sequence>
<xsd:element name="Area" type="componentAreaType" />
<xsd:element name="Text" type="textStringType" minOccurs="0" maxOccurs="1" />
<xsd:element name="TextProperty" type="textPropertyType" minOccurs="0" maxOccurs="1" />
<xsd:element name="FontProperty" type="fontPropertyType" minOccurs="0" maxOccurs="1" />
<xsd:choice minOccurs="0" maxOccurs="1">
<xsd:element name="Colour" type="colourType" />
<xsd:element name="Colours" type="colourRectType" />
<xsd:element name="ColourProperty" type="settingByPropertyType" />
<xsd:element name="ColourRectProperty" type="settingByPropertyType" />
</xsd:choice>
<xsd:choice minOccurs="0" maxOccurs="1">
<xsd:element name="VertFormat" type="vertTextFormatType" />
<xsd:element name="VertFormatProperty" type="settingByPropertyType" />
</xsd:choice>
<xsd:choice minOccurs="0" maxOccurs="1">
<xsd:element name="HorzFormat" type="horzTextFormatType" />
<xsd:element name="HorzFormatProperty" type="settingByPropertyType" />
</xsd:choice>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="imageryComponentType">
<xsd:sequence>
<xsd:element name="Area" type="componentAreaType" />
<xsd:choice>
<xsd:element name="Image" type="imageType" />
<xsd:element name="ImageProperty" type="settingByPropertyType" />
</xsd:choice>
<xsd:choice minOccurs="0" maxOccurs="1">
<xsd:element name="Colour" type="colourType" />
<xsd:element name="Colours" type="colourRectType" />
<xsd:element name="ColourProperty" type="settingByPropertyType" />
<xsd:element name="ColourRectProperty" type="settingByPropertyType" />
</xsd:choice>
<xsd:choice minOccurs="0" maxOccurs="1">
<xsd:element name="VertFormat" type="vertFormatType" />
<xsd:element name="VertFormatProperty" type="settingByPropertyType" />
</xsd:choice>
<xsd:choice minOccurs="0" maxOccurs="1">
<xsd:element name="HorzFormat" type="horzFormatType" />
<xsd:element name="HorzFormatProperty" type="settingByPropertyType" />
</xsd:choice>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="widgetComponentType">
<xsd:sequence>
<xsd:element name="Area" type="componentAreaType" />
<xsd:element name="VertAlignment" type="vertAlignmentType" minOccurs="0" maxOccurs="1" />
<xsd:element name="HorzAlignment" type="horzAlignmentType" minOccurs="0" maxOccurs="1" />
<xsd:element name="Property" type="propertyType" minOccurs="0" maxOccurs="unbounded" />
</xsd:sequence>
<xsd:attribute name="type" type="xsd:string" use="required" />
<xsd:attribute name="nameSuffix" type="xsd:string" use="required" />
<xsd:attribute name="renderer" type="xsd:string" use="optional" default="" />
<xsd:attribute name="look" type="xsd:string" use="optional" default="" />
</xsd:complexType>
<xsd:complexType name="horzFormatType">
<xsd:attribute name="type" type="horzFormatEnum" use="required" />
</xsd:complexType>
<xsd:complexType name="vertFormatType">
<xsd:attribute name="type" type="vertFormatEnum" use="required" />
</xsd:complexType>
<xsd:complexType name="horzTextFormatType">
<xsd:attribute name="type" type="horzTextFormatEnum" use="required" />
</xsd:complexType>
<xsd:complexType name="vertTextFormatType">
<xsd:attribute name="type" type="vertTextFormatEnum" use="required" />
</xsd:complexType>
<xsd:complexType name="horzAlignmentType">
<xsd:attribute name="type" type="horzAlignmentEnum" use="required" />
</xsd:complexType>
<xsd:complexType name="vertAlignmentType">
<xsd:attribute name="type" type="vertAlignmentEnum" use="required" />
</xsd:complexType>
<xsd:complexType name="propertyType">
<xsd:attribute name="name" type="xsd:string" use="required" />
<xsd:attribute name="value" type="xsd:string" use="required" />
</xsd:complexType>
<xsd:complexType name="imageType">
<xsd:attribute name="imageset" type="xsd:string" use="required" />
<xsd:attribute name="image" type="xsd:string" use="required" />
</xsd:complexType>
<xsd:complexType name="frameImageType">
<xsd:attribute name="type" type="frameImageComponentEnum" use="required" />
<xsd:attribute name="imageset" type="xsd:string" use="required" />
<xsd:attribute name="image" type="xsd:string" use="required" />
</xsd:complexType>
<xsd:complexType name="componentAreaType">
<xsd:choice>
<xsd:sequence>
<xsd:element name="Dim" type="dimensionType" minOccurs="4" maxOccurs="4" />
</xsd:sequence>
<xsd:element name="AreaProperty" type="settingByPropertyType" />
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="dimensionType">
<xsd:choice>
<xsd:element name="UnifiedDim" type="unifiedDimType" />
<xsd:element name="AbsoluteDim" type="absoluteDimType" />
<xsd:element name="ImageDim" type="imageDimType" />
<xsd:element name="WidgetDim" type="widgetDimType" />
<xsd:element name="FontDim" type="fontDimType" />
<xsd:element name="PropertyDim" type="propertyDimType" />
</xsd:choice>
<xsd:attribute name="type" type="dimensionTypeEnum" use="required" />
</xsd:complexType>
<xsd:complexType name="fontDimType">
<xsd:sequence>
<xsd:element name="DimOperator" type="dimensionOperatorType" minOccurs="0" maxOccurs="1" />
</xsd:sequence>
<xsd:attribute name="widget" type="xsd:string" use="optional" default="" />
<xsd:attribute name="font" type="xsd:string" use="optional" default="" />
<xsd:attribute name="string" type="xsd:string" use="optional" default="" />
<xsd:attribute name="type" type="fontMetricTypeEnum" use="required" />
<xsd:attribute name="padding" type="xsd:decimal" use="optional" default="0" />
</xsd:complexType>
<xsd:complexType name="propertyDimType">
<xsd:sequence>
<xsd:element name="DimOperator" type="dimensionOperatorType" minOccurs="0" maxOccurs="1" />
</xsd:sequence>
<xsd:attribute name="widget" type="xsd:string" use="optional" default="" />
<xsd:attribute name="name" type="xsd:string" use="required" />
<xsd:attribute name="type" type="propertyDimensionTypeEnum" use="optional" default="" />
</xsd:complexType>
<xsd:complexType name="unifiedDimType">
<xsd:sequence>
<xsd:element name="DimOperator" type="dimensionOperatorType" minOccurs="0" maxOccurs="1" />
</xsd:sequence>
<xsd:attribute name="scale" type="xsd:decimal" use="optional" default="0" />
<xsd:attribute name="offset" type="xsd:integer" use="optional" default="0" />
<xsd:attribute name="type" type="dimensionTypeEnum" use="required" />
</xsd:complexType>
<xsd:complexType name="absoluteDimType">
<xsd:sequence>
<xsd:element name="DimOperator" type="dimensionOperatorType" minOccurs="0" maxOccurs="1" />
</xsd:sequence>
<xsd:attribute name="value" type="xsd:decimal" use="optional" default="0" />
</xsd:complexType>
<xsd:complexType name="imageDimType">
<xsd:sequence>
<xsd:element name="DimOperator" type="dimensionOperatorType" minOccurs="0" maxOccurs="1" />
</xsd:sequence>
<xsd:attribute name="imageset" type="xsd:string" use="required" />
<xsd:attribute name="image" type="xsd:string" use="required" />
<xsd:attribute name="dimension" type="dimensionTypeEnum" use="required" />
</xsd:complexType>
<xsd:complexType name="widgetDimType">
<xsd:sequence>
<xsd:element name="DimOperator" type="dimensionOperatorType" minOccurs="0" maxOccurs="1" />
</xsd:sequence>
<xsd:attribute name="widget" type="xsd:string" use="optional" default="" />
<xsd:attribute name="dimension" type="dimensionTypeEnum" use="required" />
</xsd:complexType>
<xsd:complexType name="settingByPropertyType">
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
<xsd:complexType name="colourRectType">
<xsd:attribute name="topLeft" type="colourValType" use="required" />
<xsd:attribute name="topRight" type="colourValType" use="required" />
<xsd:attribute name="bottomLeft" type="colourValType" use="required" />
<xsd:attribute name="bottomRight" type="colourValType" use="required" />
</xsd:complexType>
<xsd:complexType name="colourType">
<xsd:attribute name="colour" type="colourValType" use="required" />
</xsd:complexType>
<xsd:simpleType name="colourValType">
<xsd:restriction base="xsd:string">
<xsd:pattern value="[a-fA-F0-9]{8}" />
</xsd:restriction>
</xsd:simpleType>
<xsd:complexType name="textStringType">
<xsd:attribute name="string" type="xsd:string" use="optional" default="" />
<xsd:attribute name="font" type="xsd:string" use="optional" default="" />
</xsd:complexType>
<xsd:complexType name="textPropertyType">
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
<xsd:complexType name="fontPropertyType">
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
<xsd:complexType name="dimensionOperatorType">
<xsd:choice>
<xsd:element name="UnifiedDim" type="unifiedDimType" />
<xsd:element name="AbsoluteDim" type="absoluteDimType" />
<xsd:element name="ImageDim" type="imageDimType" />
<xsd:element name="WidgetDim" type="widgetDimType" />
<xsd:element name="FontDim" type="fontDimType" />
<xsd:element name="PropertyDim" type="propertyDimType" />
</xsd:choice>
<xsd:attribute name="op" type="dimensionOperatorEnum" use="required" />
</xsd:complexType>
<xsd:simpleType name="propertyDimensionTypeEnum">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="" />
<xsd:enumeration value="Width" />
<xsd:enumeration value="Height" />
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="dimensionTypeEnum">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="LeftEdge" />
<xsd:enumeration value="TopEdge" />
<xsd:enumeration value="RightEdge" />
<xsd:enumeration value="BottomEdge" />
<xsd:enumeration value="XPosition" />
<xsd:enumeration value="YPosition" />
<xsd:enumeration value="Width" />
<xsd:enumeration value="Height" />
<xsd:enumeration value="XOffset" />
<xsd:enumeration value="YOffset" />
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="vertFormatEnum">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="TopAligned" />
<xsd:enumeration value="CentreAligned" />
<xsd:enumeration value="BottomAligned" />
<xsd:enumeration value="Stretched" />
<xsd:enumeration value="Tiled" />
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="horzFormatEnum">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="LeftAligned" />
<xsd:enumeration value="CentreAligned" />
<xsd:enumeration value="RightAligned" />
<xsd:enumeration value="Stretched" />
<xsd:enumeration value="Tiled" />
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="vertAlignmentEnum">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="TopAligned" />
<xsd:enumeration value="CentreAligned" />
<xsd:enumeration value="BottomAligned" />
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="horzAlignmentEnum">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="LeftAligned" />
<xsd:enumeration value="CentreAligned" />
<xsd:enumeration value="RightAligned" />
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="horzTextFormatEnum">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="LeftAligned" />
<xsd:enumeration value="RightAligned" />
<xsd:enumeration value="CentreAligned" />
<xsd:enumeration value="Justified" />
<xsd:enumeration value="WordWrapLeftAligned" />
<xsd:enumeration value="WordWrapRightAligned" />
<xsd:enumeration value="WordWrapCentreAligned" />
<xsd:enumeration value="WordWrapJustified" />
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="vertTextFormatEnum">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="TopAligned" />
<xsd:enumeration value="BottomAligned" />
<xsd:enumeration value="CentreAligned" />
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="propertyTypeEnum">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="Generic" />
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="fontMetricTypeEnum">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="LineSpacing" />
<xsd:enumeration value="Baseline" />
<xsd:enumeration value="HorzExtent" />
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="dimensionOperatorEnum">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="Noop" />
<xsd:enumeration value="Add" />
<xsd:enumeration value="Subtract" />
<xsd:enumeration value="Multiply" />
<xsd:enumeration value="Divide" />
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="frameImageComponentEnum">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="Background" />
<xsd:enumeration value="TopLeftCorner" />
<xsd:enumeration value="TopRightCorner" />
<xsd:enumeration value="BottomLeftCorner" />
<xsd:enumeration value="BottomRightCorner" />
<xsd:enumeration value="LeftEdge" />
<xsd:enumeration value="RightEdge" />
<xsd:enumeration value="TopEdge" />
<xsd:enumeration value="BottomEdge" />
</xsd:restriction>
</xsd:simpleType>
</xsd:schema>