blob: d642fc2c146b0f158fa75b6233044c39956ff075 [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="lgui.xsd"></include>
<complexType name="column_type">
<annotation>
<documentation>Describes one column of table.</documentation>
</annotation>
<attribute name="name" type="NCName" use="required"></attribute>
<attribute name="sort" type="lml:sorting_type"></attribute>
<attribute name="description" type="string"></attribute>
<attribute name="id" type="positiveInteger" use="required"></attribute>
</complexType>
<simpleType name="sorting_type">
<annotation>
<documentation>Defines allowed ways of how columns are sorted.</documentation>
</annotation>
<restriction base="string">
<enumeration value="numeric"></enumeration>
<enumeration value="alpha"></enumeration>
<enumeration value="date"></enumeration>
</restriction>
</simpleType>
<complexType name="cell_type">
<annotation>
<documentation>Can be linked to column by using foreign key cid to cid-attribute of column-tag.
Otherwise order of cells define connections to columns.</documentation>
</annotation>
<attribute name="cid" type="positiveInteger">
<annotation>
<documentation>Is cid not defined, order of columns and cells will define which cell is connected to which column.</documentation>
</annotation></attribute>
<attribute name="value" type="string"></attribute>
</complexType>
<complexType name="row_type">
<annotation>
<documentation>One row in final table.</documentation>
</annotation>
<sequence>
<element name="cell" type="lml:cell_type" minOccurs="0" maxOccurs="unbounded"></element>
</sequence>
<attribute name="oid" type="NCName">
<annotation>
<documentation>Reference to object-tag</documentation>
</annotation></attribute>
</complexType>
<complexType name="table_type">
<annotation>
<documentation>
An abstract table. Defines several columns, which can be
sorted by different datatypes. Then data is defined in
row-tags, which can be linked with object-tags.
</documentation>
</annotation>
<complexContent>
<extension base="lml:gobject_type">
<sequence>
<element name="column" type="lml:column_type" minOccurs="0"
maxOccurs="unbounded">
</element>
<element name="row" type="lml:row_type" minOccurs="0"
maxOccurs="unbounded">
<!-- for one column only one cell in a row -->
<unique name="cellCIDUnique">
<selector xpath="cell"/>
<field xpath="@cid"/>
</unique>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
</schema>