HOME XML-SCHEMA XML-EXAMPLES CHESS VARIANTS FBR MBN ANCP FAQ RESOURCES ABOUT

CIF - Move Data - Marker


An example for arrows and marker:

<xs:complexType name="Arrow"> <xs:attribute name="color" type="Color" use="required"/> <xs:attribute name="opacity" type="Opacity" use="optional"/> <xs:attribute name="from" type="Square" use="required"/> <xs:attribute name="to" type="Square" use="required"/> </xs:complexType>

Definition of an arrow with color color, starting on the square from and ending on the square to. In example above an arrow from h5 to f7 with color red is defined. It's also possible to specify the opacity of the color, but normally applications are not using this value.

<xs:simpleType name="Marker"> <xs:union memberTypes="SquareMarker TextMarker SymbolMarker"> </xs:simpleType> <xs:complexType name="SquareMarker"> <xs:attribute name="type" type="MarkerTypeID" use="required"/> <xs:attribute name="color" type="Color" use="required"/> <xs:attribute name="opacity" type="Opacity" use="optional"/> <xs:attribute name="at" type="Square" use="required"/> </xs:complexType> <xs:simpleType name="MarkerTypeID"> <xs:restriction base="xs:string"> <!-- Scid/Scidb/ChessBase support --> <xs:enumeration value="full"/> <!-- Full square will be colored --> <!-- Scid/Scidb support --> <xs:enumeration value="square"/> <!-- Draw a colored square --> <xs:enumeration value="disk"/> <!-- Draw a colored disk --> <xs:enumeration value="circle"/> <!-- Draw a colored circle --> <!-- Aquarium support --> <xs:enumeration value="rectangle"/> <!-- Draw a colored rectangle --> <xs:enumeration value="cross"/> <!-- Draw a colored cross sign --> <xs:enumeration value="littlecross"/> <!-- Draw a little colored cross --> </xs:restriction> </xs:simpleType>

Definition of a marker of type type, with color color at square at. In example above two yellow marker of type full on squares c4 and h5 are visible.

<xs:complexType name="TextMarker"> <xs:simpleContent> <xs:extension base="Character"> <xs:attribute name="type" type="xs:string" fixed="text"/> <xs:attribute name="color" type="Color" use="required"/> <xs:attribute name="opacity" type="Opacity" use="optional"/> <xs:attribute name="at" type="Square" use="required"/> </xs:extension> </xs:simpleContent> </xs:complexType> <xs:simpleType name="Character"> <xs:restriction base="xs:string"> <xs:length value="1"/> </xs:restriction> </xs:simpleType>

Definition of a text marker on square at with color color. The type of this marker, a string of length 1, is defining the text. In example above two green text marker with text (type) x are visible.

<xs:complexType name="SymbolMarker"> <xs:simpleContent> <xs:extension base="Symbol"> <xs:attribute name="opacity" type="Opacity" use="optional"/> <xs:attribute name="at" type="Square" use="required"/> </xs:extension> </xs:simpleContent> </xs:complexType> <xs:simpleType name="Symbol"> <xs:restriction base="xs:string"> <xs:enumeration value="skull"/> <!-- Draw a skull sign --> <xs:enumeration value="mushroom"/> <!-- Draw a mushroom sign --> <xs:enumeration value="strawberry"/> <!-- Draw a strawberry sign --> <xs:enumeration value="parcel"/> <!-- Draw a parcel sign --> </xs:restriction> </xs:simpleType>

Draw a special symbol on the sepcified square.

<xs:complexType name="Line"> <xs:simpleContent> <xs:extension base="Squares"> <xs:attribute name="color" type="Color" use="required"/> <xs:attribute name="opacity" type="Opacity" use="optional"/> </xs:extension> </xs:simpleContent> </xs:complexType>

A line with at least 2 vertices. The color of this line will be given by attribute color. The content is a concatenation of squares.

<xs:complexType name="Region"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="color" type="Color" use="required"/> <xs:attribute name="from" type="Square" use="required"/> <xs:attribute name="to" type="Square" use="required"/> </xs:extension> </xs:simpleContent> </xs:complexType>

A region with the span fromto. The color of this region will be given by attribute color. The content is either empty, or a string spanning the whole region (if possible).

<xs:simpleType name="Square"> <xs:restriction base="xs:string"> <xs:pattern value="[a-a]{1-3}[0-9]{1-2}([A-H][1-8]?)?"/> </xs:restriction> </xs:simpleType> <xs:simpleType name="Squares"> <xs:restriction base="xs:string"> <xs:pattern value="([a-a]{1-3}[0-9]{1-2}([A-H][1-8]?)?)+"/> </xs:restriction> </xs:simpleType>

The allowed square range depends on the attributes files and ranks, given in element game. Normally the valid square range is a1 to h8. The identifiers for the files are: "a"…"z", "aa", "bb", …,"zz","aaa", "bbb", …, "lll". The identifiers for the ranks are: "1"…"64". In 3D Chess a square also contains the letter of the board: "A"…"H". And in 4D Chess the board letter is specifying the column, and this will be followed by the specifier of the row: "1"…"8".

<xs:complexType name="Value"> <xs:simpleContent> <xs:extension base="xs:byte"> <xs:attribute name="at" type="Square" use="required"/> </xs:extension> </xs:simpleContent> </xs:complexType>

Showing a value (for example a bar, the height depends on the numerical value) on the specified square.

<xs:simpleType name="Color"> <xs:restriction base="xs:string"> <xs:enumeration value="red"/> <xs:enumeration value="orange"/> <xs:enumeration value="yellow"/> <xs:enumeration value="green"/> <xs:enumeration value="blue"/> <xs:enumeration value="darkblue"/> <xs:enumeration value="purple"/> <xs:enumeration value="white"/> <xs:enumeration value="black"/> </xs:restriction> </xs:simpleType>

It's the responsibility of the application how it is displaying the color information (RGB value).

The opacity of the color is optional, value zero is not allowed (this value is reserved for undefined opacity, when this attribute is not given).



Google translation

Share this page

C/CIF at Sourceforge

C/CIF at Sourceforge

C/CIF at Launchpad

C/CIF at Launchpad