199 lines
6.9 KiB
XML
199 lines
6.9 KiB
XML
|
<?xml version="1.0" encoding="UTF-8"?>
|
||
|
<schema targetNamespace="http://www.group-finity.com/Mascot" elementFormDefault="qualified" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://www.group-finity.com/Mascot">
|
||
|
|
||
|
<element name="Mascot" type="tns:Mascot" />
|
||
|
|
||
|
<complexType name="Mascot">
|
||
|
<sequence>
|
||
|
<element name="ActionList" type="tns:ActionList" maxOccurs="unbounded" minOccurs="0" />
|
||
|
<element name="BehaviorList" type="tns:BehaviorList" maxOccurs="unbounded" minOccurs="0" />
|
||
|
</sequence>
|
||
|
</complexType>
|
||
|
|
||
|
<complexType name="ActionList">
|
||
|
<choice maxOccurs="unbounded" minOccurs="0" >
|
||
|
<element name="Action" type="tns:TopAction" />
|
||
|
</choice>
|
||
|
</complexType>
|
||
|
|
||
|
<complexType name="ActionArguments" abstract="true">
|
||
|
<attribute name="Condition" type="tns:Parameter" />
|
||
|
<attribute name="Duration" type="tns:Parameter" />
|
||
|
<attribute name="TargetX" type="tns:Parameter" />
|
||
|
<attribute name="TargetY" type="tns:Parameter" />
|
||
|
<attribute name="InitialVX" type="tns:Parameter" />
|
||
|
<attribute name="InitialVY" type="tns:Parameter" />
|
||
|
<attribute name="X" type="tns:Parameter" />
|
||
|
<attribute name="Y" type="tns:Parameter" />
|
||
|
<attribute name="LookRight" type="tns:Parameter" />
|
||
|
<attribute name="IeOffsetX" type="tns:Parameter" />
|
||
|
<attribute name="IeOffsetY" type="tns:Parameter" />
|
||
|
<attribute name="Gap" type="tns:Parameter" />
|
||
|
<attribute name="BornX" type="tns:Parameter" />
|
||
|
<attribute name="BornY" type="tns:Parameter" />
|
||
|
<attribute name="BornBehavior" type="tns:Parameter" />
|
||
|
<attribute name="VelocityParam" type="tns:Parameter" />
|
||
|
<attribute name="RegistanceX" type="tns:Parameter" />
|
||
|
<attribute name="RegistanceY" type="tns:Parameter" />
|
||
|
<attribute name="Gravity" type="tns:Parameter" />
|
||
|
</complexType>
|
||
|
|
||
|
<complexType name="Action">
|
||
|
<complexContent>
|
||
|
<extension base="tns:ActionArguments">
|
||
|
<choice>
|
||
|
<element name="Animation" type="tns:Animation" maxOccurs="unbounded" minOccurs="0" />
|
||
|
<sequence>
|
||
|
<choice maxOccurs="unbounded" minOccurs="0" >
|
||
|
<element name="ActionReference" type="tns:ActionReference"/>
|
||
|
<element name="Action" type="tns:LowerAction" />
|
||
|
</choice>
|
||
|
</sequence>
|
||
|
</choice>
|
||
|
<attribute name="Type" use="required">
|
||
|
<simpleType>
|
||
|
<restriction base="string">
|
||
|
<enumeration value="Embedded"></enumeration>
|
||
|
<enumeration value="Move"></enumeration>
|
||
|
<enumeration value="Pause"></enumeration>
|
||
|
<enumeration value="Fixed"></enumeration>
|
||
|
<enumeration value="Composite"></enumeration>
|
||
|
<enumeration value="Select"></enumeration>
|
||
|
</restriction>
|
||
|
</simpleType>
|
||
|
</attribute>
|
||
|
<attribute name="Class">
|
||
|
<simpleType>
|
||
|
<restriction base="string">
|
||
|
<pattern value="com\.group_finity\.mascot\.action\.[a-zA-Z][a-zA-Z0-9]+" />
|
||
|
</restriction>
|
||
|
</simpleType>
|
||
|
</attribute>
|
||
|
<attribute name="BorderType">
|
||
|
<simpleType>
|
||
|
<restriction base="string">
|
||
|
<enumeration value="Floor"></enumeration>
|
||
|
<enumeration value="Wall"></enumeration>
|
||
|
<enumeration value="Ceiling"></enumeration>
|
||
|
</restriction>
|
||
|
</simpleType>
|
||
|
</attribute>
|
||
|
<attribute name="Loop" type="tns:Parameter" />
|
||
|
</extension>
|
||
|
</complexContent>
|
||
|
</complexType>
|
||
|
|
||
|
<complexType name="TopAction">
|
||
|
<complexContent>
|
||
|
<extension base="tns:Action">
|
||
|
<attribute name="Name" type="string" use="required" />
|
||
|
</extension>
|
||
|
</complexContent>
|
||
|
</complexType>
|
||
|
|
||
|
<complexType name="LowerAction">
|
||
|
<complexContent>
|
||
|
<extension base="tns:Action" />
|
||
|
</complexContent>
|
||
|
</complexType>
|
||
|
|
||
|
<complexType name="Animation">
|
||
|
<sequence>
|
||
|
<element name="Pose" type="tns:Pose" maxOccurs="unbounded" minOccurs="1" />
|
||
|
</sequence>
|
||
|
<attribute name="Condition" type="string" />
|
||
|
</complexType>
|
||
|
|
||
|
<complexType name="Pose">
|
||
|
<attribute name="Image" use="required">
|
||
|
<simpleType>
|
||
|
<restriction base="string">
|
||
|
<pattern value=".+\.(png|gif|jpeg|jpg|bmp|PNG|GIF|JPEG|JPG|BMP)" />
|
||
|
</restriction>
|
||
|
</simpleType>
|
||
|
</attribute>
|
||
|
<attribute name="ImageAnchor" use="required">
|
||
|
<simpleType>
|
||
|
<restriction base="string">
|
||
|
<pattern value="-?\d+,-?\d+" />
|
||
|
</restriction>
|
||
|
</simpleType>
|
||
|
</attribute>
|
||
|
<attribute name="Velocity" use="required">
|
||
|
<simpleType>
|
||
|
<restriction base="string">
|
||
|
<pattern value="-?\d+,-?\d+" />
|
||
|
</restriction>
|
||
|
</simpleType>
|
||
|
</attribute>
|
||
|
<attribute name="Duration" type="int" use="required" />
|
||
|
</complexType>
|
||
|
|
||
|
<complexType name="ActionReference">
|
||
|
<complexContent>
|
||
|
<extension base="tns:ActionArguments">
|
||
|
<attribute name="Name" type="string" use="required" />
|
||
|
</extension>
|
||
|
</complexContent>
|
||
|
</complexType>
|
||
|
|
||
|
<complexType name="BehaviorList">
|
||
|
<sequence>
|
||
|
<choice maxOccurs="unbounded" minOccurs="1" >
|
||
|
<element name="Behavior" type="tns:Behavior" />
|
||
|
<element name="Condition" type="tns:BehaviorCondition" />
|
||
|
</choice>
|
||
|
</sequence>
|
||
|
</complexType>
|
||
|
|
||
|
<complexType name="Behavior">
|
||
|
<sequence>
|
||
|
<choice maxOccurs="1" minOccurs="0" >
|
||
|
<element name="NextBehaviorList" type="tns:NextBehaviorList" />
|
||
|
</choice>
|
||
|
</sequence>
|
||
|
<attribute name="Name" type="string" use="required" />
|
||
|
<attribute name="Frequency" type="int" use="required" />
|
||
|
<attribute name="Condition" type="tns:Parameter" />
|
||
|
<attribute name="Hidden" type="boolean" />
|
||
|
</complexType>
|
||
|
|
||
|
<complexType name="NextBehaviorList">
|
||
|
<sequence>
|
||
|
<choice maxOccurs="unbounded" minOccurs="1" >
|
||
|
<element name="BehaviorReference" type="tns:BehaviorReference" />
|
||
|
<element name="Condition" type="tns:BehaviorReferenceCondition" />
|
||
|
</choice>
|
||
|
</sequence>
|
||
|
<attribute name="Add" type="boolean" use="required" />
|
||
|
</complexType>
|
||
|
|
||
|
<complexType name="BehaviorReferenceCondition">
|
||
|
<complexContent>
|
||
|
<extension base="tns:NextBehaviorList">
|
||
|
<attribute name="Condition" type="string" />
|
||
|
</extension>
|
||
|
</complexContent>
|
||
|
</complexType>
|
||
|
|
||
|
<complexType name="BehaviorReference">
|
||
|
<attribute name="Name" type="string" use="required" />
|
||
|
<attribute name="Frequency" type="int" use="required" />
|
||
|
<attribute name="Condition" type="tns:Parameter" />
|
||
|
</complexType>
|
||
|
|
||
|
<complexType name="BehaviorCondition">
|
||
|
<complexContent>
|
||
|
<extension base="tns:BehaviorList">
|
||
|
<attribute name="Condition" type="tns:Parameter" />
|
||
|
</extension>
|
||
|
</complexContent>
|
||
|
</complexType>
|
||
|
|
||
|
<simpleType name="Parameter">
|
||
|
<restriction base="string">
|
||
|
<pattern value="([$#]\{.+\})|(\-?[0-9]+(\.[0-9]+)?)|true|false" />
|
||
|
</restriction>
|
||
|
</simpleType>
|
||
|
|
||
|
</schema>
|