blob: 53b26bf86cc9e61a224fec6eb563aa1f5861ab63 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<!--
LML - LLView markup language
Copyright (c) 2011 Forschungszentrum Juelich GmbH
All rights reserved. This program and the accompanying materials
are made available under the terms of the Eclipse Public License v1.0
which accompanies this distribution and is available at
http://www.eclipse.org/legal/epl-v10.html
-->
<schema targetNamespace="http://www.llview.de" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:lml="http://www.llview.de">
<include schemaLocation="nodedisplay.xsd"></include>
<complexType name="splitlayout_type">
<complexContent>
<extension base="lml:layout_type">
<choice>
<sequence>
<element name="left" type="lml:pane_type"></element>
<element name="right" type="lml:pane_type"></element>
</sequence>
<sequence>
<element name="top" type="lml:pane_type"></element>
<element name="bottom" type="lml:pane_type"></element>
</sequence>
</choice>
<attribute name="divpos" type="lml:divpos_type" default="0.5"></attribute>
</extension>
</complexContent>
</complexType>
<complexType name="pane_type">
<annotation>
<documentation>
Describes one side of a splitpane. This tag is later
transformed into a panel. You can split one panel with
left and right-components or top and bottom-components.
First split will cause a horizontal split, second will
cause a vertical split. The gid-attribute is for
referencing graphical object-id-attributes. If there are
child-elements for a pane, gid must not be specified.
Through the divpos-element you are able to set the
percentage of where to put the divider.
</documentation>
</annotation>
<sequence>
<sequence minOccurs="0" maxOccurs="1">
<element name="left" type="lml:pane_type"></element>
<element name="right" type="lml:pane_type"></element>
</sequence>
<sequence minOccurs="0" maxOccurs="1">
<element name="top" type="lml:pane_type"></element>
<element name="bottom" type="lml:pane_type"></element>
</sequence>
</sequence>
<attribute name="gid" type="string"></attribute>
<attribute name="divpos" type="lml:divpos_type" default="0.5"></attribute>
</complexType>
<simpleType name="divpos_type">
<restriction base="double">
<minInclusive value="0"></minInclusive>
<maxInclusive value="1"></maxInclusive>
</restriction>
</simpleType>
<complexType name="layout_type">
<annotation>
<documentation>All layout-types should extend this type</documentation>
</annotation>
<attribute name="id" type="string" use="required"></attribute>
</complexType>
<complexType name="abslayout_type">
<annotation>
<documentation>
Describes a layout with absolute coordinates. Every
component must be added by a comp-tag.
</documentation>
</annotation>
<complexContent>
<extension base="lml:layout_type">
<sequence>
<element name="comp" type="lml:component_type" minOccurs="1" maxOccurs="unbounded"></element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="component_type">
<annotation>
<documentation>Describes the absolute position of one graphical object</documentation>
</annotation>
<attribute name="gid" type="string" use="required">
<annotation>
<documentation>connection to a graphical object</documentation>
</annotation></attribute>
<attribute name="x" type="integer" use="required">
<annotation>
<documentation>left coordinate</documentation>
</annotation></attribute>
<attribute name="y" type="integer" use="required">
<annotation>
<documentation>upper coordinate</documentation>
</annotation></attribute>
<attribute name="w" type="nonNegativeInteger" default="100">
<annotation>
<documentation>width</documentation>
</annotation></attribute>
<attribute name="h" type="nonNegativeInteger" default="100">
<annotation>
<documentation>height</documentation>
</annotation></attribute>
</complexType>
<complexType name="nodedisplaylayout_type">
<annotation>
<documentation>Settings will not be inherited through hierarchy, but default layout will be set for all scheme-elements, which are not defined</documentation>
</annotation>
<complexContent>
<extension base="lml:componentlayout_type">
<sequence>
<element name="el0" type="lml:nodedisplayelement0"></element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="componentlayout_type">
<attribute name="id" type="string">
<annotation>
<documentation>
identification for this component
</documentation>
</annotation>
</attribute>
<attribute name="gid" type="string" use="required">
<annotation>
<documentation>
reference to the graphical object. Layout for the
graphical object is defined within this tag
</documentation>
</annotation>
</attribute>
<attribute name="active" type="boolean" default="true">
<annotation>
<documentation>Defines if this component is active. If active is false, then no data for this graphical component has to be passed. This can be used for requesting information from server. Not active-components do not have to be filled with data from the server.</documentation>
</annotation></attribute>
</complexType>
<complexType name="nodedisplayelement">
<annotation>
<documentation>
Contains all attributes that are equal at all levels
</documentation>
</annotation>
<complexContent>
<extension base="lml:element_type">
<sequence>
<element name="img" type="lml:picture_type"
minOccurs="0" maxOccurs="unbounded">
</element>
</sequence>
<attribute name="rows" type="nonNegativeInteger"
default="0">
<annotation>
<documentation>
Amount of rows of lower elements
</documentation>
</annotation>
</attribute>
<attribute name="cols" type="nonNegativeInteger"
default="8">
<annotation>
<documentation>
Amount of columns of lower elements
</documentation>
</annotation>
</attribute>
<attribute name="hgap" type="nonNegativeInteger"
default="1">
<annotation>
<documentation>
horizontal space between two lower element
</documentation>
</annotation>
</attribute>
<attribute name="vgap" type="nonNegativeInteger"
default="1">
<annotation>
<documentation>
vertical space between two lower elements
</documentation>
</annotation>
</attribute>
<attribute name="fontsize" type="nonNegativeInteger"
default="10">
<annotation>
<documentation>
size of fonts printed in this element (for
example a title)
</documentation>
</annotation>
</attribute>
<attribute name="border" type="nonNegativeInteger"
default="1">
<annotation>
<documentation>
pixels printed for a border around
rectangles
</documentation>
</annotation>
</attribute>
<attribute name="fontfamily" type="string"
default="Monospaced">
<annotation>
<documentation>
Font used for title
</documentation>
</annotation>
</attribute>
<attribute name="showtitle" type="boolean"
default="false">
<annotation>
<documentation>
if true => title for elements of this level
are shown, otherwise title is hidden
</documentation>
</annotation>
</attribute>
<attribute name="titlebackground"
type="lml:hexcolor_type" default="#EFEFEF">
<annotation>
<documentation>
background-color for title-label
</documentation>
</annotation>
</attribute>
<attribute name="background" type="lml:hexcolor_type"
default="#FFF">
<annotation>
<documentation>
background-color for this element
</documentation>
</annotation>
</attribute>
<attribute name="maxlevel" type="nonNegativeInteger">
<annotation>
<documentation>
maximum of levels which are printed in
output, absolute value (maxlevel=3 means all
elements till level 3 included are printed)
</documentation>
</annotation>
</attribute>
<attribute name="mouseborder" type="nonNegativeInteger"
default="2">
<annotation>
<documentation>
border printed when mouse-over this
component
</documentation>
</annotation>
</attribute>
<attribute name="transparent" type="boolean"
default="true">
<annotation>
<documentation>
Defines if this panel is drawn
transparently. Upper-level paintings can
then be seen. If transparent == false => the
whole rectangle is painted by the specific
panel on its own.
</documentation>
</annotation>
</attribute>
<attribute name="bordercolor" type="lml:hexcolor_type"
default="#000">
<annotation>
<documentation>
Color of the border around inner panels.
</documentation>
</annotation>
</attribute>
<attribute name="showfulltitle" type="boolean"
default="true">
<annotation>
<documentation>
If true full implicit name over all levels
of tree is shown, otherwise implicit name is
only generated over current level
</documentation>
</annotation>
</attribute>
<attribute name="highestrowfirst" type="boolean" default="false">
<annotation>
<documentation>Defines the input order of rows within nodedisplaypanel. if true, the row with the highest id is inserted first</documentation>
</annotation></attribute>
<attribute name="highestcolfirst" type="boolean" default="false">
<annotation>
<documentation>Defines the input order of columns within nodedisplaypanel. if true, the column with the highest id is inserted first. Then the first cell within a panel has the highest id of the whole row.</documentation>
</annotation></attribute>
</extension>
</complexContent>
</complexType>
<complexType name="picture_type">
<annotation>
<documentation>
describes a picture, which can be aligned
</documentation>
</annotation>
<attribute name="src" type="anyURI" use="required">
<annotation>
<documentation>
location where to find the picture, only pictures on
the same webserver where the applet lies are allowed
</documentation>
</annotation>
</attribute>
<attribute name="align" default="CENTER"
type="lml:align_type">
<annotation>
<documentation>Position of the picture</documentation>
</annotation>
</attribute>
<attribute name="width" type="lml:percent_type" default="0.1">
<annotation>
<documentation>
width of the picture in percent corresponding to
surrounding panel
</documentation>
</annotation>
</attribute>
<attribute name="height" type="lml:percent_type"
default="0.1">
<annotation>
<documentation>
height of the picture in percent corresponding to
surrounding panel
</documentation>
</annotation>
</attribute>
<attribute name="inneralign" type="lml:align_type" default="CENTER">
<annotation>
<documentation>align is for positioning the image around the display-panel of one physical element. inner-align is for positioning the picture within its rectangle</documentation>
</annotation></attribute>
</complexType>
<complexType name="nodedisplayelement0">
<complexContent>
<extension base="lml:nodedisplayelement">
<sequence>
<element name="el1" type="lml:nodedisplayelement1" minOccurs="0" maxOccurs="unbounded"></element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="nodedisplayelement1">
<complexContent>
<extension base="lml:nodedisplayelement">
<sequence>
<element name="el2" type="lml:nodedisplayelement2" minOccurs="0" maxOccurs="unbounded"></element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="nodedisplayelement2">
<complexContent>
<extension base="lml:nodedisplayelement">
<sequence>
<element name="el3" type="lml:nodedisplayelement3" minOccurs="0" maxOccurs="unbounded"></element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="nodedisplayelement3">
<complexContent>
<extension base="lml:nodedisplayelement">
<sequence>
<element name="el4" type="lml:nodedisplayelement4" minOccurs="0" maxOccurs="unbounded"></element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="nodedisplayelement4">
<complexContent>
<extension base="lml:nodedisplayelement">
<sequence>
<element name="el5" type="lml:nodedisplayelement5" minOccurs="0" maxOccurs="unbounded"></element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="nodedisplayelement5">
<complexContent>
<extension base="lml:nodedisplayelement">
<sequence>
<element name="el6" type="lml:nodedisplayelement6" minOccurs="0" maxOccurs="unbounded"></element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="nodedisplayelement6">
<complexContent>
<extension base="lml:nodedisplayelement">
<sequence>
<element name="el7" type="lml:nodedisplayelement7" minOccurs="0" maxOccurs="unbounded"></element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="nodedisplayelement7">
<complexContent>
<extension base="lml:nodedisplayelement">
<sequence>
<element name="el8" type="lml:nodedisplayelement8" minOccurs="0" maxOccurs="unbounded"></element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="nodedisplayelement8">
<complexContent>
<extension base="lml:nodedisplayelement">
<sequence>
<element name="el9" type="lml:nodedisplayelement9" minOccurs="0" maxOccurs="unbounded"></element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="nodedisplayelement9">
<complexContent>
<extension base="lml:nodedisplayelement">
<sequence>
<element name="el10" type="lml:nodedisplayelement" minOccurs="0" maxOccurs="unbounded"></element>
</sequence>
</extension>
</complexContent>
</complexType>
<simpleType name="align_type">
<restriction base="string">
<enumeration value="WEST"></enumeration>
<enumeration value="EAST"></enumeration>
<enumeration value="NORTH"></enumeration>
<enumeration value="SOUTH"></enumeration>
<enumeration value="CENTER"></enumeration>
</restriction>
</simpleType>
<simpleType name="percent_type">
<restriction base="double">
<minInclusive value="0"></minInclusive>
<maxInclusive value="1"></maxInclusive>
</restriction>
</simpleType>
<complexType name="usagebarlayout_type">
<annotation>
<documentation>
Define special layout-options for a usagebar
</documentation>
</annotation>
<complexContent>
<extension base="lml:componentlayout_type">
<attribute name="scale" default="nodes">
<annotation>
<documentation>
defines which scale should be used. "nodes"
means the scale will be displayed in the
unit nodes, "cpus" means the scale will show
cpus as unit
</documentation>
</annotation>
<simpleType>
<restriction base="string">
<enumeration value="nodes"></enumeration>
<enumeration value="cpus"></enumeration>
</restriction>
</simpleType>
</attribute>
<attribute name="interval" type="positiveInteger" default="4">
<annotation>
<documentation>defines the distance between two scale-lines, in other words two tics on the axis</documentation>
</annotation></attribute>
</extension>
</complexContent>
</complexType>
<complexType name="chartlayout_type">
<annotation>
<documentation>
Definition of layout-tag for charts
</documentation>
</annotation>
<complexContent>
<extension base="lml:componentlayout_type">
<attribute name="border" type="nonNegativeInteger"
default="0">
<annotation>
<documentation>
border in pixels, which is painted around
every bar of a chart
</documentation>
</annotation>
</attribute>
<attribute name="showlegend" type="boolean"
default="true">
<annotation>
<documentation>
if true, legend is shown, otherwise no
legend is painted
</documentation>
</annotation>
</attribute>
<attribute name="backgroundcolor"
type="lml:hexcolor_type" default="#FFF">
<annotation>
<documentation>
Background-color of the chart, usually white
</documentation>
</annotation>
</attribute>
<attribute name="innerbackgroundcolor"
type="lml:hexcolor_type" default="#AAA">
<annotation>
<documentation>
background-color of rectangle, in which the
main diagram is painted
</documentation>
</annotation>
</attribute>
<attribute name="axescolor" type="lml:hexcolor_type"
default="#555">
<annotation>
<documentation>Color of axes</documentation>
</annotation>
</attribute>
<attribute name="bordercolor" type="lml:hexcolor_type"
default="#000">
<annotation>
<documentation>
color of borders around rectangles painted
inside the diagram
</documentation>
</annotation>
</attribute>
<attribute name="gridcolor" type="lml:hexcolor_type"
default="#555">
<annotation>
<documentation>
Color of gridlines, which are painted at
every tic if wanted
</documentation>
</annotation>
</attribute>
<attribute name="cutpaint" type="boolean" default="true">
<annotation>
<documentation>If true, rects and bars outside the diagrams view are not displayed, otherwise rects are painted outside the diagram area if needed</documentation>
</annotation></attribute>
</extension>
</complexContent>
</complexType>
<complexType name="tablelayout_type">
<annotation>
<documentation>Layout for a table</documentation>
</annotation>
<complexContent>
<extension base="lml:componentlayout_type">
<sequence>
<element name="column" type="lml:columnlayout_type" minOccurs="0" maxOccurs="unbounded"></element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="columnlayout_type">
<annotation>
<documentation>
Layout-definitions for exactly one column of a table.
Defines where to position the column, width and if this
column is sorted
</documentation>
</annotation>
<attribute name="cid" type="positiveInteger" use="required">
<annotation>
<documentation>
Reference to the data-column of the table, for which
this component defines the layout
</documentation>
</annotation>
</attribute>
<attribute name="pos" type="nonNegativeInteger">
<annotation>
<documentation>
Position of this column among all other columns.
This attribute begins with 0. If position is not
defined, the applet can decide where to put the
column. Usually it will keep the order defined by
the data-part of this table.
</documentation>
</annotation>
</attribute>
<attribute name="width">
<annotation>
<documentation>
Width of this column in percent corresponding to the
width of the panel, which shows this table.
</documentation>
</annotation>
<simpleType>
<restriction base="double">
<minInclusive value="0"></minInclusive>
<maxInclusive value="1"></maxInclusive>
</restriction>
</simpleType>
</attribute>
<attribute name="sorted" type="lml:columnsortedtype"
default="false">
<annotation>
<documentation>
Defines if the table-content is sorted by this
column.
</documentation>
</annotation>
</attribute>
<attribute name="active" type="boolean" default="true">
<annotation>
<documentation>
This attribute defines if this column should be
shown. If not data for this column must not be
transmitted for data-transmission reduction.
</documentation>
</annotation>
</attribute>
<attribute name="key" type="string">
<annotation>
<documentation>Defines the name of an attribute, which is shown in the table in this column. This is comparable with the name-attribute within the table-tag. The values do not have to be equal. The key-attribute is needed</documentation>
</annotation></attribute>
</complexType>
<simpleType name="columnsortedtype">
<restriction base="string">
<enumeration value="asc"></enumeration>
<enumeration value="desc"></enumeration>
<enumeration value="false"></enumeration>
</restriction>
</simpleType>
<complexType name="infoboxlayout_type">
<complexContent>
<extension base="lml:componentlayout_type">
<sequence>
<element name="typecol"
type="lml:infoboxlayout_coltype" minOccurs="0" maxOccurs="1">
<annotation>
<documentation>this element defines properties for the column containing the keys of information</documentation>
</annotation>
</element>
<element name="infocol" type="lml:infoboxlayout_coltype" minOccurs="0" maxOccurs="1">
<annotation>
<documentation>this element defines properties for the column containing the values of information</documentation>
</annotation></element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="infoboxlayout_coltype">
<attribute name="pos" type="lml:integer01type">
<annotation>
<documentation>
position of column in view
</documentation>
</annotation>
</attribute>
<attribute name="width" default="0.5">
<annotation>
<documentation>
width of column in percent
</documentation>
</annotation>
<simpleType>
<restriction base="double">
<minInclusive value="0"></minInclusive>
<maxInclusive value="1"></maxInclusive>
</restriction>
</simpleType>
</attribute>
<attribute name="sorted" type="lml:columnsortedtype" default="false">
<annotation>
<documentation>defines if infos are sorted by this column</documentation>
</annotation></attribute>
</complexType>
<simpleType name="integer01type">
<annotation>
<documentation>integer values, where only e aus [0,1] is allowed ={0,1}, is used for infoboxlayout_coltype</documentation>
</annotation>
<restriction base="nonNegativeInteger">
<minInclusive value="0"></minInclusive>
<maxInclusive value="1"></maxInclusive>
</restriction>
</simpleType>
</schema>