Schema player.xsd


schema location:  C:\Java\projects\ai\RoboPlayer\src\website\project\player.xsd
 
Elements 
fsm 
player 
register 
tacticalInfo 


element fsm
diagram
children state
used by
element player
annotation
documentation 
This node contains information about fsm. Its states and transitions
source
<xs:element name="fsm">
  <xs:annotation>
    <xs:documentation>This node contains information about fsm. Its states and transitions</xs:documentation>
  </xs:annotation>
  <xs:complexType>
    <xs:sequence>
      <xs:element name="state" maxOccurs="unbounded">
        <xs:annotation>
          <xs:documentation>State instance which shuld be added to the fsm</xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:sequence>
            <xs:element name="transition" maxOccurs="unbounded">
              <xs:annotation>
                <xs:documentation>Definition of transition from this state</xs:documentation>
              </xs:annotation>
              <xs:complexType>
                <xs:attribute name="condition" type="xs:string" use="required">
                  <xs:annotation>
                    <xs:documentation>Condition which should be check</xs:documentation>
                  </xs:annotation>
                </xs:attribute>
                <xs:attribute name="state" type="xs:string" use="required">
                  <xs:annotation>
                    <xs:documentation>Destination state</xs:documentation>
                  </xs:annotation>
                </xs:attribute>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
          <xs:attribute name="name" type="xs:string" use="required">
            <xs:annotation>
              <xs:documentation>State name. One of the names registered in register node</xs:documentation>
            </xs:annotation>
          </xs:attribute>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
  </xs:complexType>
</xs:element>

element fsm/state
diagram
children transition
attributes
Name  Type  Use  Default  Fixed  Annotation
name  xs:string  required      
documentation 
State name. One of the names registered in register node
annotation
documentation 
State instance which shuld be added to the fsm
source
<xs:element name="state" maxOccurs="unbounded">
  <xs:annotation>
    <xs:documentation>State instance which shuld be added to the fsm</xs:documentation>
  </xs:annotation>
  <xs:complexType>
    <xs:sequence>
      <xs:element name="transition" maxOccurs="unbounded">
        <xs:annotation>
          <xs:documentation>Definition of transition from this state</xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:attribute name="condition" type="xs:string" use="required">
            <xs:annotation>
              <xs:documentation>Condition which should be check</xs:documentation>
            </xs:annotation>
          </xs:attribute>
          <xs:attribute name="state" type="xs:string" use="required">
            <xs:annotation>
              <xs:documentation>Destination state</xs:documentation>
            </xs:annotation>
          </xs:attribute>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="name" type="xs:string" use="required">
      <xs:annotation>
        <xs:documentation>State name. One of the names registered in register node</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>
</xs:element>

element fsm/state/transition
diagram
attributes
Name  Type  Use  Default  Fixed  Annotation
condition  xs:string  required      
documentation 
Condition which should be check
state  xs:string  required      
documentation 
Destination state
annotation
documentation 
Definition of transition from this state
source
<xs:element name="transition" maxOccurs="unbounded">
  <xs:annotation>
    <xs:documentation>Definition of transition from this state</xs:documentation>
  </xs:annotation>
  <xs:complexType>
    <xs:attribute name="condition" type="xs:string" use="required">
      <xs:annotation>
        <xs:documentation>Condition which should be check</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="state" type="xs:string" use="required">
      <xs:annotation>
        <xs:documentation>Destination state</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>
</xs:element>

element player
diagram
children tacticalInfo register fsm
attributes
Name  Type  Use  Default  Fixed  Annotation
goalkeeper  xs:boolean  optional  false    
documentation 
This attribute can be set to true if we want this player to be goalkeeper.
debug  xs:boolean  optional  false    
documentation 
This attribute can be set to tru if we want debug information from this player to be displayed on the console.
annotation
documentation 
This is root node in the document
source
<xs:element name="player">
  <xs:annotation>
    <xs:documentation>This is root node in the document</xs:documentation>
  </xs:annotation>
  <xs:complexType>
    <xs:sequence>
      <xs:element ref="tacticalInfo"/>
      <xs:element ref="register"/>
      <xs:element ref="fsm"/>
    </xs:sequence>
    <xs:attribute name="goalkeeper" type="xs:boolean" use="optional" default="false">
      <xs:annotation>
        <xs:documentation>This attribute can be set to true if we want this player to be goalkeeper.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="debug" type="xs:boolean" use="optional" default="false">
      <xs:annotation>
        <xs:documentation>This attribute can be set to tru if we want debug information from this player to be displayed on the console.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>
</xs:element>

element register
diagram
children state condition
used by
element player
annotation
documentation 
This node contains information about state and conditions. Each state and condition which will be used in the program must be declared here
source
<xs:element name="register">
  <xs:annotation>
    <xs:documentation>This node contains information about state and conditions. Each state and condition which will be used in the program must be declared here</xs:documentation>
  </xs:annotation>
  <xs:complexType>
    <xs:sequence>
      <xs:element name="state" maxOccurs="unbounded">
        <xs:annotation>
          <xs:documentation>This node is used to register state</xs:documentation>
        </xs:annotation>
        <xs:complexType mixed="false">
          <xs:attribute name="name" type="xs:string" use="required">
            <xs:annotation>
              <xs:documentation>State name</xs:documentation>
            </xs:annotation>
          </xs:attribute>
          <xs:attribute name="class" type="xs:string" use="required">
            <xs:annotation>
              <xs:documentation>Class which implements State interface.</xs:documentation>
            </xs:annotation>
          </xs:attribute>
        </xs:complexType>
      </xs:element>
      <xs:element name="condition" maxOccurs="unbounded">
        <xs:annotation>
          <xs:documentation>this node is used to register condition</xs:documentation>
        </xs:annotation>
        <xs:complexType mixed="false">
          <xs:attribute name="name" type="xs:string" use="required">
            <xs:annotation>
              <xs:documentation>Condition name</xs:documentation>
            </xs:annotation>
          </xs:attribute>
          <xs:attribute name="class" type="xs:string" use="required">
            <xs:annotation>
              <xs:documentation>Class which implements Condition interface</xs:documentation>
            </xs:annotation>
          </xs:attribute>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
  </xs:complexType>
</xs:element>

element register/state
diagram
attributes
Name  Type  Use  Default  Fixed  Annotation
name  xs:string  required      
documentation 
State name
class  xs:string  required      
documentation 
Class which implements State interface.
annotation
documentation 
This node is used to register state
source
<xs:element name="state" maxOccurs="unbounded">
  <xs:annotation>
    <xs:documentation>This node is used to register state</xs:documentation>
  </xs:annotation>
  <xs:complexType mixed="false">
    <xs:attribute name="name" type="xs:string" use="required">
      <xs:annotation>
        <xs:documentation>State name</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="class" type="xs:string" use="required">
      <xs:annotation>
        <xs:documentation>Class which implements State interface.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>
</xs:element>

element register/condition
diagram
attributes
Name  Type  Use  Default  Fixed  Annotation
name  xs:string  required      
documentation 
Condition name
class  xs:string  required      
documentation 
Class which implements Condition interface
annotation
documentation 
this node is used to register condition
source
<xs:element name="condition" maxOccurs="unbounded">
  <xs:annotation>
    <xs:documentation>this node is used to register condition</xs:documentation>
  </xs:annotation>
  <xs:complexType mixed="false">
    <xs:attribute name="name" type="xs:string" use="required">
      <xs:annotation>
        <xs:documentation>Condition name</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="class" type="xs:string" use="required">
      <xs:annotation>
        <xs:documentation>Class which implements Condition interface</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>
</xs:element>

element tacticalInfo
diagram
children vector rectangle string
used by
element player
annotation
documentation 
This node contains parameters which we need to set int the program.
This parameters can be accessed by using TacticalInfo class.
source
<xs:element name="tacticalInfo">
  <xs:annotation>
    <xs:documentation>This node contains parameters which we need to set int the program.
This parameters can be accessed by using TacticalInfo class.</xs:documentation>
  </xs:annotation>
  <xs:complexType>
    <xs:sequence>
      <xs:element name="vector" minOccurs="0" maxOccurs="unbounded">
        <xs:annotation>
          <xs:documentation>This node is used to pass information about vector type (like position)</xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:attribute name="name" type="xs:string" use="required"/>
          <xs:attribute name="x" type="xs:double" use="required"/>
          <xs:attribute name="y" type="xs:double" use="required"/>
        </xs:complexType>
      </xs:element>
      <xs:element name="rectangle" minOccurs="0" maxOccurs="unbounded">
        <xs:annotation>
          <xs:documentation>this node is used to pass information about Rectangle type (like area)</xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:attribute name="name" type="xs:string" use="required"/>
          <xs:attribute name="x1" type="xs:double" use="required"/>
          <xs:attribute name="x2" type="xs:double" use="required"/>
          <xs:attribute name="y1" type="xs:double" use="required"/>
          <xs:attribute name="y2" type="xs:double" use="required"/>
        </xs:complexType>
      </xs:element>
      <xs:element name="string" minOccurs="0" maxOccurs="unbounded">
        <xs:annotation>
          <xs:documentation>This node is used to pass information about string type</xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:attribute name="name" type="xs:string" use="required"/>
          <xs:attribute name="text" type="xs:string" use="required"/>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
  </xs:complexType>
</xs:element>

element tacticalInfo/vector
diagram
attributes
Name  Type  Use  Default  Fixed  Annotation
name  xs:string  required      
x  xs:double  required      
y  xs:double  required      
annotation
documentation 
This node is used to pass information about vector type (like position)
source
<xs:element name="vector" minOccurs="0" maxOccurs="unbounded">
  <xs:annotation>
    <xs:documentation>This node is used to pass information about vector type (like position)</xs:documentation>
  </xs:annotation>
  <xs:complexType>
    <xs:attribute name="name" type="xs:string" use="required"/>
    <xs:attribute name="x" type="xs:double" use="required"/>
    <xs:attribute name="y" type="xs:double" use="required"/>
  </xs:complexType>
</xs:element>

element tacticalInfo/rectangle
diagram
attributes
Name  Type  Use  Default  Fixed  Annotation
name  xs:string  required      
x1  xs:double  required      
x2  xs:double  required      
y1  xs:double  required      
y2  xs:double  required      
annotation
documentation 
this node is used to pass information about Rectangle type (like area)
source
<xs:element name="rectangle" minOccurs="0" maxOccurs="unbounded">
  <xs:annotation>
    <xs:documentation>this node is used to pass information about Rectangle type (like area)</xs:documentation>
  </xs:annotation>
  <xs:complexType>
    <xs:attribute name="name" type="xs:string" use="required"/>
    <xs:attribute name="x1" type="xs:double" use="required"/>
    <xs:attribute name="x2" type="xs:double" use="required"/>
    <xs:attribute name="y1" type="xs:double" use="required"/>
    <xs:attribute name="y2" type="xs:double" use="required"/>
  </xs:complexType>
</xs:element>

element tacticalInfo/string
diagram
attributes
Name  Type  Use  Default  Fixed  Annotation
name  xs:string  required      
text  xs:string  required      
annotation
documentation 
This node is used to pass information about string type
source
<xs:element name="string" minOccurs="0" maxOccurs="unbounded">
  <xs:annotation>
    <xs:documentation>This node is used to pass information about string type</xs:documentation>
  </xs:annotation>
  <xs:complexType>
    <xs:attribute name="name" type="xs:string" use="required"/>
    <xs:attribute name="text" type="xs:string" use="required"/>
  </xs:complexType>
</xs:element>


XML Schema documentation generated with
XML Spy Schema Editor www.xmlspy.com