<!-- if you want to validate this file separately, uncomment this prolog:

<?xml version="1.0" ?>
<!DOCTYPE chapter PUBLIC "-//KDE//DTD DocBook XML V4.1-Based Variant V1.0//EN" "dtd/kdex.dtd">

-->

<sect1 id="kugardata-element">
<sect1info>
<authorgroup>
<author>
<firstname>Alexander</firstname>
<surname>Dymo</surname>
<affiliation>
<address><email>cloudtemple@mksat.net</email></address>
</affiliation>
</author>
<author>
<firstname>Phil</firstname>
<surname>Thompson</surname>
<affiliation>
<address><email>phil@river-bank.demon.co.uk</email></address>
</affiliation>
</author>
<!-- TRANS:ROLES_OF_TRANSLATORS -->
</authorgroup>
</sect1info>
<title><sgmltag class="element">KugarData element</sgmltag></title>

<para>
The <sgmltag class="element">KugarData</sgmltag> element defines a
report's data source.  The basic structure is a collection of rows and
columns. This document does not define data types and their attributes.
<!--at this time. -->The report template defines column data type information.
</para>

<para>
The document creator can apply an &XSL; style sheet to an existing
document to convert it to this format.  If &XSL; is used, the creator
can apply custom macros using &XSL; for column calculations, sorting,
&etc;.
</para>

<synopsis>
&lt;!ELEMENT KugarData (Row*)&gt;
&lt;!ATTLIST KugarData
        Template      CDATA  #REQUIRED&gt;

&lt;!ELEMENT Row EMPTY&gt;
&lt;!ATTLIST Row
        level         CDATA  #REQUIRED
        col1          CDATA  #IMPLIED
        col2          CDATA  #IMPLIED
        ...           CDATA  #IMPLIED
        coln          CDATA  #IMPLIED&gt;
</synopsis>


<sect2 id="kugar-data-element">
<title>Kugar data element</title>
<para>
The <sgmltag class="element">KugarData</sgmltag> element contains zero
or more <sgmltag class="element">Row</sgmltag> elements.  A <sgmltag
class="element">Row</sgmltag> must contain one <sgmltag class="attribute">level</sgmltag>
attribute with a value corresponding to detail level in the template. Other attributes
represent data columns.
</para>
<para>
<anchor id="template-att"/>The value of the <sgmltag class="attribute">Template</sgmltag>
attribute is the &URL; of the report template
used to format the data.
</para>
<!--
<variablelist>
<varlistentry id="template-att">
<term><sgmltag class="attribute">Template</sgmltag></term>
<listitem>
<para>
This is an attribute of the <sgmltag class="element">KugarData</sgmltag>
element.  The value of the attribute is the &URL; of the report template
used to format the data.
</para>
</listitem>
</varlistentry>
-->
</sect2>

<sect2 id="row-element">
<title>Row element</title>

<variablelist>

<varlistentry>
<term>Attributes</term>
<listitem>

<variablelist>

<varlistentry>
<term><anchor id="level-att"/><sgmltag class="attribute">level</sgmltag></term>
<listitem>
<para>
The attribute value indicates which detail in the report template
is used to display data. Rows can contain various column sets for various levels,
so any attribute except <sgmltag class="attribute">level</sgmltag> should
be stated as #IMPLIED.
</para>
</listitem>
</varlistentry>

<varlistentry>
<term><anchor id="column-att"/><sgmltag class="attribute">column</sgmltag></term>
<listitem>
<para>
The name of the attribute is the column name, and uses the format as given
in the <sgmltag class="element">KugarData</sgmltag> definition.
The attribute name is used in the report template to bind the data to the
report fields.
</para>
</listitem>
</varlistentry>
</variablelist>
</listitem>
</varlistentry>
</variablelist>

</sect2>

</sect1>

