Home | About | Partners | Contact Us
VA Linux Systems

glGUI: XML Schema

This is the definition of the file format as an XML Schema. Non-XML people (like myself) may find this somewhat nonintuitive. I will post a version in a different format soon.


<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XML Spy v3.0 NT (http://www.xmlspy.com) by scott franke (zenimax tech) -->
<!DOCTYPE xsd:schema PUBLIC "-//W3C//DTD XMLSCHEMA 19991216//EN" "" [
	<!ENTITY % p 'xsd:'>
	<!ENTITY % s ':xsd'>
]>
<xsd:schema xmlns:xsd="http://www.w3.org/1999/XMLSchema">
	<!--GUI Data-->
	<xsd:element name="listitem" type="listitemType"/>
	<xsd:element name="menuitem" type="menuitemType"/>
	<xsd:element name="radioitem" type="radioitemType"/>
	<xsd:element name="point2d" type="point2dType"/>
	<xsd:element name="rect" type="rectType"/>
	<xsd:element name="state" type="stateType"/>
	<xsd:simpleType base="xsd:string" name="cursorType">
		<xsd:enumeration value="none"/>
		<xsd:enumeration value="bar"/>
		<xsd:enumeration value="underline"/>
	</xsd:simpleType>
	<xsd:simpleType base="xsd:string" name="resizeType">
		<xsd:enumeration value="none"/>
		<xsd:enumeration value="min"/>
		<xsd:enumeration value="max"/>
		<xsd:enumeration value="both"/>
	</xsd:simpleType>
	<xsd:complexType name="listitemType">
		<xsd:attribute name="id" type="xsd:unsignedLong" use="default" value="0"/>
		<xsd:attribute name="text" type="xsd:string"/>
		<xsd:attribute name="iconshader" type="xsd:string"/>
		<xsd:attribute name="toggle" type="xsd:boolean" use="default" value="false"/>
	</xsd:complexType>
	<xsd:complexType name="menuitemType">
		<xsd:attribute name="id" type="xsd:unsignedLong" use="default" value="0"/>
		<xsd:attribute name="text" type="xsd:string"/>
		<xsd:attribute name="iconshader" type="xsd:string"/>
		<xsd:attribute name="toggle" type="xsd:boolean" use="default" value="false"/>
		<xsd:attribute name="submenuid" type="xsd:unsignedLong" use="default" value="0"/>
	</xsd:complexType>
	<xsd:complexType name="point2dType">
		<xsd:attribute name="x" type="xsd:float" use="default" value="0"/>
		<xsd:attribute name="y" type="xsd:float" use="default" value="0"/>
	</xsd:complexType>
	<xsd:complexType name="radioitemType">
		<xsd:attribute name="id" type="xsd:unsignedLong" use="default" value="0"/>
		<xsd:attribute name="text" type="xsd:string"/>
		<xsd:attribute name="iconshader" type="xsd:string"/>
	</xsd:complexType>
	<xsd:complexType name="rectType">
		<xsd:attribute name="xmin" type="xsd:float" use="default" value="0"/>
		<xsd:attribute name="ymin" type="xsd:float" use="default" value="0"/>
		<xsd:attribute name="xmax" type="xsd:float" use="default" value="1"/>
		<xsd:attribute name="ymax" type="xsd:float" use="default" value="1"/>
	</xsd:complexType>
	<xsd:complexType name="stateType">
		<xsd:attribute name="shader" type="xsd:string" value=""/>
		<xsd:attribute name="hovershader" type="xsd:string"/>
		<xsd:attribute name="disableshader" type="xsd:string"/>
		<xsd:attribute name="clickshader" type="xsd:string"/>
	</xsd:complexType>
	<!--GUI Resources-->
	<xsd:element name="coordsys" type="coordsysType"/>
	<xsd:element name="fixedwidthbitmapfont" type="fixedwidthbitmapfontType"/>
	<xsd:element name="polyedgeborder" type="polyedgeborderType"/>
	<xsd:complexType name="coordsysType">
		<xsd:element name="range" minOccurs="1" type="rectType"/>
		<xsd:element name="viewrange" type="rectType"/>
		<xsd:attribute name="name" type="xsd:string" use="required"/>
	</xsd:complexType>
	<xsd:complexType name="fixedwidthbitmapfontType">
		<xsd:attribute name="name" type="xsd:string" use="required"/>
		<xsd:attribute name="shader" type="xsd:string" use="required"/>
		<xsd:attribute name="characterwidth" type="xsd:unsignedShort" use="default" value="16"/>
		<xsd:attribute name="characterheight" type="xsd:unsignedShort" use="default" value="24"/>
		<xsd:attribute name="bitmapwidth" type="xsd:unsignedShort" use="default" value="256"/>
		<xsd:attribute name="bitmapheight" type="xsd:unsignedShort" use="default" value="256"/>
		<xsd:attribute name="charactermapoffset" type="xsd:short" use="default" value="0"/>
	</xsd:complexType>
	<xsd:complexType name="polyedgeborderType">
		<xsd:element name="point2d" minOccurs="3" maxOccurs="unbounded"/>
		<xsd:attribute name="name" type="xsd:string" use="required"/>
	</xsd:complexType>
	<!--GUI Elements and Controls-->
	<xsd:element name="button" type="buttonType"/>
	<xsd:element name="combobox" type="comboboxType"/>
	<xsd:element name="draggableframe" type="draggableframeType"/>
	<xsd:element name="draggableviewframe" type="draggableviewframeType"/>
	<xsd:element name="edittextbox" type="edittextboxType"/>
	<xsd:element name="frame" type="frameType"/>
	<xsd:element name="listbox" type="listboxType"/>
	<xsd:element name="menu" type="menuType"/>
	<xsd:element name="progressbar" type="progressbarType"/>
	<xsd:element name="radiogroup" type="radiogroupType"/>
	<xsd:element name="scrollframe" type="scrollframeType"/>
	<xsd:element name="scrolltextbox" type="scrolltextboxType"/>
	<xsd:element name="resizeparentbutton" type="resizeparentbuttonType"/>
	<xsd:element name="rootframe" type="rootframeType"/>
	<xsd:element name="sliderbar" type="sliderbarType"/>
	<xsd:element name="textbox" type="textboxType"/>
	<xsd:element name="textlabel" type="textlabelType"/>
	<xsd:complexType name="buttonType">
		<xsd:element name="rect"/>
		<xsd:element name="state" minOccurs="0" maxOccurs="unbounded"/>
		<xsd:attribute name="frameid" type="xsd:unsignedLong" use="default" value="0"/>
		<xsd:attribute name="shader" type="xsd:string"/>
		<xsd:attribute name="cursorshader" type="xsd:string"/>
		<xsd:attribute name="coordsys" type="xsd:string"/>
		<xsd:attribute name="tooltiptext" type="xsd:string"/>
		<xsd:attribute name="tooltipframe" type="xsd:unsignedLong" use="default" value="0"/>
		<xsd:attribute name="text" type="xsd:string"/>
		<xsd:attribute name="font" type="xsd:string"/>
		<xsd:attribute name="textscale" type="xsd:float" use="default" value="0.8"/>
		<xsd:attribute name="border" type="xsd:string"/>
		<xsd:attribute name="hovershader" type="xsd:string"/>
		<xsd:attribute name="disableshader" type="xsd:string"/>
		<xsd:attribute name="clickshader" type="xsd:string"/>
	</xsd:complexType>
	<xsd:complexType name="comboboxType">
		<xsd:element name="rect"/>
		<xsd:element name="listitem" minOccurs="0" maxOccurs="unbounded"/>
		<xsd:attribute name="frameid" type="xsd:unsignedLong" use="default" value="0"/>
		<xsd:attribute name="shader" type="xsd:string"/>
		<xsd:attribute name="cursorshader" type="xsd:string"/>
		<xsd:attribute name="coordsys" type="xsd:string"/>
		<xsd:attribute name="tooltiptext" type="xsd:string"/>
		<xsd:attribute name="tooltipframe" type="xsd:unsignedLong"/>
		<xsd:attribute name="itemshader" type="xsd:string"/>
		<xsd:attribute name="hovershader" type="xsd:string"/>
		<xsd:attribute name="selectedshader" type="xsd:string"/>
		<xsd:attribute name="vertical" type="xsd:boolean" use="default" value="true"/>
		<xsd:attribute name="dropiconshader" type="xsd:string"/>
	</xsd:complexType>
	<xsd:complexType name="draggableframeType">
		<xsd:element name="rect"/>
		<xsd:attribute name="frameid" type="xsd:unsignedLong" use="default" value="0"/>
		<xsd:attribute name="shader" type="xsd:string"/>
		<xsd:attribute name="cursorshader" type="xsd:string"/>
		<xsd:attribute name="coordsys" type="xsd:string"/>
		<xsd:attribute name="tooltiptext" type="xsd:string"/>
		<xsd:attribute name="tooltipframe" type="xsd:unsignedLong"/>
		<xsd:attribute name="cliptoparent" type="xsd:boolean" use="default" value="true"/>
	</xsd:complexType>
	<xsd:complexType name="draggableviewframeType">
		<xsd:element name="rect"/>
		<xsd:attribute name="frameid" type="xsd:unsignedLong" use="default" value="0"/>
		<xsd:attribute name="shader" type="xsd:string"/>
		<xsd:attribute name="cursorshader" type="xsd:string"/>
		<xsd:attribute name="coordsys" type="xsd:string"/>
		<xsd:attribute name="tooltiptext" type="xsd:string"/>
		<xsd:attribute name="tooltipframe" type="xsd:unsignedLong"/>
		<xsd:attribute name="keyscrollamount" type="xsd:float" use="default" value="0.5"/>
		<xsd:attribute name="viewwidth" type="xsd:float" use="default" value="0.5"/>
		<xsd:attribute name="viewheight" type="xsd:float" use="default" value="0.5"/>
	</xsd:complexType>
	<xsd:complexType name="edittextboxType">
		<xsd:element name="rect"/>
		<xsd:attribute name="frameid" type="xsd:unsignedLong" use="default" value="0"/>
		<xsd:attribute name="shader" type="xsd:string"/>
		<xsd:attribute name="cursorshader" type="xsd:string"/>
		<xsd:attribute name="coordsys" type="xsd:string"/>
		<xsd:attribute name="tooltiptext" type="xsd:string"/>
		<xsd:attribute name="tooltipframe" type="xsd:unsignedLong"/>
		<xsd:attribute name="text" type="xsd:string"/>
		<xsd:attribute name="font" type="xsd:string"/>
		<xsd:attribute name="textscale" type="xsd:float" use="default" value="0.8"/>
		<xsd:attribute name="border" type="xsd:string"/>
		<xsd:attribute name="columns" type="xsd:unsignedShort" use="default" value="30"/>
		<xsd:attribute name="rows" type="xsd:unsignedShort" use="default" value="40"/>
		<xsd:attribute name="wordwrap" type="xsd:boolean" use="default" value="true"/>
		<xsd:attribute name="cursortype" type="cursorType" use="default" value="none"/>
		<xsd:attribute name="maxrow" type="xsd:unsignedLong" use="default" value="0"/>
	</xsd:complexType>
	<xsd:complexType name="frameType">
		<xsd:element name="rect"/>
		<xsd:attribute name="frameid" type="xsd:unsignedLong" use="default" value="0"/>
		<xsd:attribute name="shader" type="xsd:string"/>
		<xsd:attribute name="coordsys" type="xsd:string"/>
		<xsd:attribute name="tooltiptext" type="xsd:string"/>
		<xsd:attribute name="tooltipframe" type="xsd:unsignedLong"/>
	</xsd:complexType>
	<xsd:complexType name="listboxType">
		<xsd:element name="rect"/>
		<xsd:element name="listitem" minOccurs="0" maxOccurs="unbounded"/>
		<xsd:attribute name="frameid" type="xsd:unsignedLong" use="default" value="0"/>
		<xsd:attribute name="shader" type="xsd:string"/>
		<xsd:attribute name="cursorshader" type="xsd:string"/>
		<xsd:attribute name="coordsys" type="xsd:string"/>
		<xsd:attribute name="tooltiptext" type="xsd:string"/>
		<xsd:attribute name="tooltipframe" type="xsd:unsignedLong"/>
		<xsd:attribute name="itemshader" type="xsd:string"/>
		<xsd:attribute name="hovershader" type="xsd:string"/>
		<xsd:attribute name="selectedshader" type="xsd:string"/>
		<xsd:attribute name="vertical" type="xsd:boolean" use="default" value="true"/>
		<xsd:attribute name="squeeze" type="xsd:boolean" use="default" value="false"/>
		<xsd:attribute name="itemsize" type="xsd:float" use="default" value="1"/>
	</xsd:complexType>
	<xsd:complexType name="menuType">
		<xsd:element name="rect"/>
		<xsd:element name="listitem" minOccurs="0" maxOccurs="unbounded"/>
		<xsd:attribute name="frameid" type="xsd:unsignedLong" use="default" value="0"/>
		<xsd:attribute name="shader" type="xsd:string"/>
		<xsd:attribute name="cursorshader" type="xsd:string"/>
		<xsd:attribute name="coordsys" type="xsd:string"/>
		<xsd:attribute name="tooltiptext" type="xsd:string"/>
		<xsd:attribute name="tooltipframe" type="xsd:unsignedLong"/>
		<xsd:attribute name="itemshader" type="xsd:string"/>
		<xsd:attribute name="hovershader" type="xsd:string"/>
		<xsd:attribute name="selectedshader" type="xsd:string"/>
		<xsd:attribute name="vertical" type="xsd:boolean" use="default" value="true"/>
		<xsd:attribute name="squeeze" type="xsd:boolean" use="default" value="false"/>
		<xsd:attribute name="itemsize" type="xsd:float" use="default" value="1"/>
		<xsd:attribute name="submenuicon" type="xsd:string"/>
	</xsd:complexType>
	<xsd:complexType name="progressbarType">
		<xsd:element name="rect"/>
		<xsd:attribute name="frameid" type="xsd:unsignedLong" use="default" value="0"/>
		<xsd:attribute name="shader" type="xsd:string"/>
		<xsd:attribute name="cursorshader" type="xsd:string"/>
		<xsd:attribute name="coordsys" type="xsd:string"/>
		<xsd:attribute name="tooltiptext" type="xsd:string"/>
		<xsd:attribute name="tooltipframe" type="xsd:unsignedLong"/>
		<xsd:attribute name="text" type="xsd:string"/>
		<xsd:attribute name="font" type="xsd:string"/>
		<xsd:attribute name="textscale" type="xsd:float" use="default" value="0.8"/>
		<xsd:attribute name="border" type="xsd:string"/>
		<xsd:attribute name="rangemin" type="xsd:float" use="default" value="0"/>
		<xsd:attribute name="rangemax" type="xsd:float" use="default" value="100"/>
		<xsd:attribute name="slidershader" type="xsd:string"/>
		<xsd:attribute name="vertical" type="xsd:boolean" use="default" value="false"/>
		<xsd:attribute name="invert" type="xsd:boolean" use="default" value="false"/>
		<xsd:attribute name="squeeze" type="xsd:boolean" use="default" value="false"/>
	</xsd:complexType>
	<xsd:complexType name="radiogroupType">
		<xsd:element name="rect"/>
		<xsd:element name="listitem" minOccurs="0" maxOccurs="unbounded"/>
		<xsd:attribute name="frameid" type="xsd:unsignedLong" use="default" value="0"/>
		<xsd:attribute name="shader" type="xsd:string"/>
		<xsd:attribute name="cursorshader" type="xsd:string"/>
		<xsd:attribute name="coordsys" type="xsd:string"/>
		<xsd:attribute name="tooltiptext" type="xsd:string"/>
		<xsd:attribute name="tooltipframe" type="xsd:unsignedLong"/>
		<xsd:attribute name="columns" type="xsd:positiveInteger" use="default" value="1"/>
		<xsd:attribute name="font" type="xsd:string"/>
		<xsd:attribute name="onshader" type="xsd:string"/>
		<xsd:attribute name="offshader" type="xsd:string"/>
		<xsd:attribute name="onhovershader" type="xsd:string"/>
		<xsd:attribute name="offhovershader" type="xsd:string"/>
	</xsd:complexType>
	<xsd:complexType name="resizeparentbuttonType">
		<xsd:element name="rect"/>
		<xsd:attribute name="frameid" type="xsd:unsignedLong" use="default" value="0"/>
		<xsd:attribute name="shader" type="xsd:string"/>
		<xsd:attribute name="cursorshader" type="xsd:string"/>
		<xsd:attribute name="coordsys" type="xsd:string"/>
		<xsd:attribute name="tooltiptext" type="xsd:string"/>
		<xsd:attribute name="tooltipframe" type="xsd:unsignedLong"/>
		<xsd:attribute name="text" type="xsd:string"/>
		<xsd:attribute name="font" type="xsd:string"/>
		<xsd:attribute name="textscale" type="xsd:float" use="default" value="0.8"/>
		<xsd:attribute name="border" type="xsd:string"/>
		<xsd:attribute name="hovershader" type="xsd:string"/>
		<xsd:attribute name="disableshader" type="xsd:string"/>
		<xsd:attribute name="clickshader" type="xsd:string"/>
		<xsd:attribute name="xresize" type="resizeType"/>
		<xsd:attribute name="yresize" type="resizeType"/>
		<xsd:attribute name="minimumwidth" type="xsd:float" use="default" value="0.1"/>
		<xsd:attribute name="minimumheight" type="xsd:float" use="default" value="0.1"/>
	</xsd:complexType>
	<xsd:complexType name="rootframeType">
		<xsd:attribute name="name" type="xsd:string" use="required"/>
		<xsd:attribute name="frameid" type="xsd:unsignedLong" use="default" value="0"/>
		<xsd:attribute name="shader" type="xsd:string"/>
		<xsd:attribute name="cursorshader" type="xsd:string"/>
		<xsd:attribute name="coordsys" type="xsd:string"/>
		<xsd:attribute name="tooltiptext" type="xsd:string"/>
		<xsd:attribute name="tooltipframe" type="xsd:unsignedLong"/>
	</xsd:complexType>
	<xsd:complexType name="scrollframeType">
		<xsd:element name="rect"/>
		<xsd:attribute name="frameid" type="xsd:unsignedLong" use="default" value="0"/>
		<xsd:attribute name="shader" type="xsd:string"/>
		<xsd:attribute name="cursorshader" type="xsd:string"/>
		<xsd:attribute name="coordsys" type="xsd:string"/>
		<xsd:attribute name="tooltiptext" type="xsd:string"/>
		<xsd:attribute name="tooltipframe" type="xsd:unsignedLong"/>
		<xsd:attribute name="viewwidth" type="xsd:float" use="default" value="1.0"/>
		<xsd:attribute name="viewheight" type="xsd:float" use="default" value="1.0"/>
		<xsd:attribute name="scrollshader" type="xsd:string"/>
		<xsd:attribute name="slidershader" type="xsd:string"/>
	</xsd:complexType>
	<xsd:complexType name="scrolltextboxType">
		<xsd:element name="rect"/>
		<xsd:attribute name="frameid" type="xsd:unsignedLong" use="default" value="0"/>
		<xsd:attribute name="shader" type="xsd:string"/>
		<xsd:attribute name="cursorshader" type="xsd:string"/>
		<xsd:attribute name="coordsys" type="xsd:string"/>
		<xsd:attribute name="tooltiptext" type="xsd:string"/>
		<xsd:attribute name="tooltipframe" type="xsd:unsignedLong"/>
		<xsd:attribute name="columns" type="xsd:positiveInteger" use="default" value="28"/>
		<xsd:attribute name="rows" type="xsd:positiveInteger" use="default" value="26"/>
		<xsd:attribute name="font" type="xsd:string"/>
		<xsd:attribute name="scrollshader" type="xsd:string"/>
		<xsd:attribute name="slidershader" type="xsd:string"/>
		<xsd:attribute name="wordwrap" type="xsd:boolean" use="default" value="true"/>
	</xsd:complexType>
	<xsd:complexType name="sliderbarType">
		<xsd:element name="rect"/>
		<xsd:attribute name="frameid" type="xsd:unsignedLong" use="default" value="0"/>
		<xsd:attribute name="shader" type="xsd:string"/>
		<xsd:attribute name="cursorshader" type="xsd:string"/>
		<xsd:attribute name="coordsys" type="xsd:string"/>
		<xsd:attribute name="tooltiptext" type="xsd:string"/>
		<xsd:attribute name="tooltipframe" type="xsd:unsignedLong"/>
		<xsd:attribute name="text" type="xsd:string"/>
		<xsd:attribute name="font" type="xsd:string"/>
		<xsd:attribute name="textscale" type="xsd:float" use="default" value="0.8"/>
		<xsd:attribute name="border" type="xsd:string"/>
		<xsd:attribute name="rangemin" type="xsd:float" use="default" value="0"/>
		<xsd:attribute name="rangemax" type="xsd:float" use="default" value="100"/>
		<xsd:attribute name="slidershader" type="xsd:string"/>
		<xsd:attribute name="vertical" type="xsd:boolean" use="default" value="false"/>
		<xsd:attribute name="invert" type="xsd:boolean" use="default" value="false"/>
		<xsd:attribute name="squeeze" type="xsd:boolean" use="default" value="false"/>
		<xsd:attribute name="sliderrange" type="xsd:float" use="default" value="10"/>
	</xsd:complexType>
	<xsd:complexType name="textboxType">
		<xsd:element name="rect"/>
		<xsd:attribute name="frameid" type="xsd:unsignedLong" use="default" value="0"/>
		<xsd:attribute name="shader" type="xsd:string"/>
		<xsd:attribute name="cursorshader" type="xsd:string"/>
		<xsd:attribute name="coordsys" type="xsd:string"/>
		<xsd:attribute name="tooltiptext" type="xsd:string"/>
		<xsd:attribute name="tooltipframe" type="xsd:unsignedLong"/>
		<xsd:attribute name="text" type="xsd:string"/>
		<xsd:attribute name="font" type="xsd:string"/>
		<xsd:attribute name="textscale" type="xsd:float" use="default" value="0.8"/>
		<xsd:attribute name="border" type="xsd:string"/>
		<xsd:attribute name="columns" type="xsd:unsignedShort" use="default" value="30"/>
		<xsd:attribute name="rows" type="xsd:unsignedShort" use="default" value="40"/>
		<xsd:attribute name="wordwrap" type="xsd:boolean" use="default" value="true"/>
	</xsd:complexType>
	<xsd:complexType name="textlabelType">
		<xsd:element name="rect"/>
		<xsd:attribute name="frameid" type="xsd:unsignedLong" use="default" value="0"/>
		<xsd:attribute name="shader" type="xsd:string"/>
		<xsd:attribute name="cursorshader" type="xsd:string"/>
		<xsd:attribute name="coordsys" type="xsd:string"/>
		<xsd:attribute name="tooltiptext" type="xsd:string"/>
		<xsd:attribute name="tooltipframe" type="xsd:unsignedLong"/>
		<xsd:attribute name="text" type="xsd:string"/>
		<xsd:attribute name="font" type="xsd:string"/>
		<xsd:attribute name="textscale" type="xsd:float" use="default" value="0.8"/>
		<xsd:attribute name="border" type="xsd:string"/>
	</xsd:complexType>
	<xsd:complexType name="textField">
		<xsd:element name="rect"/>
		<xsd:attribute name="frameid" type="xsd:unsignedLong" use="default" value="0"/>
		<xsd:attribute name="shader" type="xsd:string"/>
		<xsd:attribute name="cursorshader" type="xsd:string"/>
		<xsd:attribute name="coordsys" type="xsd:string"/>
		<xsd:attribute name="tooltiptext" type="xsd:string"/>
		<xsd:attribute name="tooltipframe" type="xsd:unsignedLong"/>
		<xsd:attribute name="text" type="xsd:string"/>
		<xsd:attribute name="font" type="xsd:string"/>
		<xsd:attribute name="textscale" type="xsd:float" use="default" value="0.8"/>
		<xsd:attribute name="border" type="xsd:string"/>
		<xsd:attribute name="width" type="xsd:unsignedShort" use="default" value="30"/>
		<xsd:attribute name="activeupdate" type="xsd:boolean" use="default" value="false"/>
	</xsd:complexType>
</xsd:schema>


All trademarks and copyrights on this page are properties of their respective owners. Forum comments are owned by the poster. The rest is copyright 1999-2000 VA Linux Systems, Inc.