<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.example.org/ureport2" xmlns:tns="http://www.example.org/ureport2" elementFormDefault="qualified">
	<element name="ureport">
		<complexType>
			<sequence>
				<element name="cell" type="tns:cell" maxOccurs="unbounded"/>
				<element name="row" type="tns:row" maxOccurs="unbounded"/>
				<element name="column" type="tns:column" maxOccurs="unbounded"/>
				<element name="header" type="tns:header-footer" minOccurs="0"/>
				<element name="footer" type="tns:header-footer" minOccurs="0"/>
				<element name="paper" type="tns:paper"/>
				<element name="datasource" type="tns:datasource" minOccurs="0" maxOccurs="unbounded"/>
				<element name="search-form" type="tns:search-form" minOccurs="0"/>
			</sequence>
		</complexType>
	</element>
	
	<complexType name="search-form">
		<sequence>
			<element name="input-text" type="tns:input-text" maxOccurs="unbounded" minOccurs="0"/>
			<element name="input-radio" type="tns:input-radio" maxOccurs="unbounded" minOccurs="0"/>
			<element name="input-checkbox" type="tns:input-checkbox" maxOccurs="unbounded" minOccurs="0"/>
			<element name="input-select" type="tns:input-select" maxOccurs="unbounded" minOccurs="0"/>
			<element name="button-submit" type="tns:button-submit"/>
			<element name="button-reset" type="tns:button-reset" minOccurs="0"/>
			<element name="grid" type="tns:grid" maxOccurs="unbounded" minOccurs="0"/>
			<element name="col" type="tns:col" maxOccurs="unbounded" minOccurs="0"/>
		</sequence>
		<attribute name="top-toolbar" type="boolean"/>
	</complexType>
	
	<complexType name="col">
		<sequence>
			<element name="input-text" type="tns:input-text" maxOccurs="unbounded" minOccurs="0"/>
			<element name="input-radio" type="tns:input-radio" maxOccurs="unbounded" minOccurs="0"/>
			<element name="input-checkbox" type="tns:input-checkbox" maxOccurs="unbounded" minOccurs="0"/>
			<element name="input-select" type="tns:input-select" maxOccurs="unbounded" minOccurs="0"/>
			<element name="button-submit" type="tns:button-submit"/>
			<element name="button-reset" type="tns:button-reset" minOccurs="0"/>
			<element name="grid" type="tns:grid" maxOccurs="unbounded" minOccurs="0"/>
			<element name="col" type="tns:col" maxOccurs="unbounded" minOccurs="0"/>
		</sequence>
		<attribute name="size" type="int" use="required"/>
	</complexType>
	
	<complexType name="grid">
		<sequence>
			<element name="input-text" type="tns:input-text" maxOccurs="unbounded" minOccurs="0"/>
			<element name="input-radio" type="tns:input-radio" maxOccurs="unbounded" minOccurs="0"/>
			<element name="input-checkbox" type="tns:input-checkbox" maxOccurs="unbounded" minOccurs="0"/>
			<element name="input-select" type="tns:input-select" maxOccurs="unbounded" minOccurs="0"/>
			<element name="button-submit" type="tns:button-submit"/>
			<element name="button-reset" type="tns:button-reset" minOccurs="0"/>
			<element name="grid" type="tns:grid" maxOccurs="unbounded" minOccurs="0"/>
			<element name="col" type="tns:col" maxOccurs="unbounded" minOccurs="0"/>
		</sequence>
		<attribute name="show-border" type="boolean"/>
		<attribute name="border-width" type="int"/>
		<attribute name="border-color" type="string"/>
	</complexType>
	
	<complexType name="button-submit">
		<attribute name="label" type="string" use="required"/>
		<attribute name="style" type="string"/>
	</complexType>
	<complexType name="button-reset">
		<attribute name="label" type="string" use="required"/>
		<attribute name="style" type="string" use="required"/>
	</complexType>
	
	<complexType name="input" abstract="true">
		<attribute name="label" type="string" use="required"/>
		<attribute name="label-position" use="required">
			<simpleType>
				<restriction base="string">
					<enumeration value="left"/>
					<enumeration value="top"/>
				</restriction>
			</simpleType>
		</attribute>
		<attribute name="bind-parameter" type="string" use="required"/>
	</complexType>
	
	<complexType name="input-text">
		<complexContent>
			<extension base="tns:input"/>
		</complexContent>
	</complexType>
	
	<complexType name="input-datetime">
		<complexContent>
			<extension base="tns:input">
				<attribute name="format" type="string" use="required"/>
			</extension>
		</complexContent>
	</complexType>
	
	<complexType name="input-radio">
		<complexContent>
			<extension base="tns:input">
				<sequence>
					<element name="option" type="tns:input-option" maxOccurs="unbounded"/>
				</sequence>
				<attribute name="options-inline" type="boolean"/>
			</extension>
		</complexContent>
	</complexType>
	
	<complexType name="input-checkbox">
		<complexContent>
			<extension base="tns:input">
				<sequence>
					<element name="option" type="tns:input-option" maxOccurs="unbounded"/>
				</sequence>
				<attribute name="options-inline" type="boolean"/>
			</extension>
		</complexContent>
	</complexType>
	
	<complexType name="input-select">
		<complexContent>
			<extension base="tns:input">
				<sequence>
					<element name="option" type="tns:input-option" maxOccurs="unbounded"/>
				</sequence>
				<attribute name="useDataset" type="boolean"/>
			</extension>
		</complexContent>
	</complexType>
	
	<complexType name="input-option">
		<attribute name="label" type="string" use="required"/>
		<attribute name="value" type="string" use="required"/>
	</complexType>

	<complexType name="header-footer">
		<sequence>
			<element name="left" type="tns:content" minOccurs="0"/>
			<element name="center" type="tns:content" minOccurs="0"/>
			<element name="right" type="tns:content" minOccurs="0"/>
		</sequence>
		<attribute name="font-family" type="string"/>
		<attribute name="font-size" type="int"/>
		<attribute name="forecolor" type="string"/>
		<attribute name="bgcolor" type="string"/>
		<attribute name="bold" type="boolean"/>
		<attribute name="italic" type="boolean"/>
		<attribute name="underline" type="boolean"/>
	</complexType>
	
	<complexType name="content" mixed="true"/>

	<complexType name="paper">
		<attribute name="type" use="required">
			<simpleType>
				<restriction base="string">
					<enumeration value="A0"/>
					<enumeration value="A1"/>
					<enumeration value="A2"/>
					<enumeration value="A3"/>
					<enumeration value="A4"/>
					<enumeration value="A5"/>
					<enumeration value="A6"/>
					<enumeration value="A7"/>
					<enumeration value="A8"/>
					<enumeration value="A9"/>
					<enumeration value="A10"/>
					<enumeration value="B0"/>
					<enumeration value="B1"/>
					<enumeration value="B2"/>
					<enumeration value="B3"/>
					<enumeration value="B4"/>
					<enumeration value="B5"/>
					<enumeration value="B6"/>
					<enumeration value="B7"/>
					<enumeration value="B8"/>
					<enumeration value="B9"/>
					<enumeration value="B10"/>
					<enumeration value="CUSTOM"/>
				</restriction>
			</simpleType>
		</attribute>
		<attribute name="orientation" use="required">
			<simpleType>
				<restriction base="string">
					<enumeration value="portrait"/>
					<enumeration value="landscape"/>
				</restriction>
			</simpleType>
		</attribute>
		
		<attribute name="width" type="int"/>
		<attribute name="height" type="int"/>
		<attribute name="width-mm" type="int"/>
		<attribute name="height-mm" type="int"/>
		
		<attribute name="left-margin" type="int"/>
		<attribute name="left-margin-mm" type="int"/>
		<attribute name="right-margin" type="int"/>
		<attribute name="right-margin-mm" type="int"/>
		<attribute name="top-margin" type="int"/>
		<attribute name="top-margin-mm" type="int"/>
		<attribute name="bottom-margin" type="int"/>
		<attribute name="bottom-margin-mm" type="int"/>
		
		<attribute name="paging-mode">
			<simpleType>
				<restriction base="string">
					<enumeration value="fitpage"/>
					<enumeration value="fixrows"/>
				</restriction>
			</simpleType>
		</attribute>
		<attribute name="fixrows" type="int"/>
		
		<attribute name="column-enabled" type="boolean"/>
		<attribute name="column-count" type="int"/>
		<attribute name="column-margin" type="int"/>
	</complexType>	
	
	<complexType name="row">
		<attribute name="row-number" type="int" use="required"/>
		<attribute name="height" type="int" use="required"/>
		<attribute name="band">
			<simpleType>
				<restriction base="string">
					<enumeration value="headerrepeat"/>
					<enumeration value="footerrepeat"/>
				</restriction>
			</simpleType>
		</attribute>
	</complexType>
	<complexType name="column">
		<attribute name="col-number" type="int" use="required"/>
		<attribute name="width" type="int" use="required"/>
		<attribute name="hide" type="boolean"/>
	</complexType>
	<complexType name="cell">
		<sequence>
			<element name="simple-value" type="tns:simple-value" minOccurs="0"/>
			<element name="image-value" type="tns:image-value" minOccurs="0"/>
			<element name="zxing-value" type="tns:zxing-value" minOccurs="0"/>
			<element name="expression-value" type="tns:expression-value" minOccurs="0"/>
			<element name="dataset-value" type="tns:dataset-value" minOccurs="0"/>
			<element name="chart-value" type="tns:chart-value" minOccurs="0"/>
			<element name="cell-style" type="tns:cell-style" minOccurs="0"/>
			<element name="condition-property-item" type="tns:condition-property-item" minOccurs="0"/>
			<element name="link-parameter" type="tns:link-parameter" maxOccurs="unbounded" minOccurs="0"/>
		</sequence>
		<attribute name="name" type="string" use="required"/>
		<attribute name="row" type="int"/>
		<attribute name="col" type="int"/>
		<attribute name="left-cell" type="string"/>
		<attribute name="top-cell" type="string"/>
		<attribute name="col-span" type="int"/>
		<attribute name="row-span" type="int"/>
		<attribute name="expand" use="required">
			<simpleType>
				<restriction base="string">
					<enumeration value="None"/>
					<enumeration value="Right"/>
					<enumeration value="Down"/>
				</restriction>
			</simpleType>
		</attribute>
		
		<attribute name="fill-blank-rows" type="boolean"/>
		<attribute name="multiple" type="int"/>
		
		<attribute name="link-url" type="string"/>
		<attribute name="link-target-window">
			<simpleType>
				<restriction base="string">
					<enumeration value="_blank"/>
					<enumeration value="_self"/>
				</restriction>
			</simpleType>
		</attribute>
	</complexType>
	
	<complexType name="condition-property-item">
		<sequence>
			<element name="condition" type="tns:condition" maxOccurs="unbounded" minOccurs="0"/>
			<element name="link-parameter" type="tns:link-parameter" maxOccurs="unbounded" minOccurs="0"/>
			<element name="cell-style" type="tns:cell-style" minOccurs="0"/>
			<element name="expr" type="tns:text" minOccurs="0"/>
			<element name="paging" type="tns:condition-paging" minOccurs="0"/>
		</sequence>
		<attribute name="name" type="string" use="required"/>
		<attribute name="row-height" type="int"/>
		<attribute name="col-width" type="int"/>
		<attribute name="new-value" type="string"/>
		<attribute name="link-url" type="string"/>
		<attribute name="link-target-window">
			<simpleType>
				<restriction base="string">
					<enumeration value="_blank"/>
					<enumeration value="_self"/>
				</restriction>
			</simpleType>
		</attribute>
		<attribute name="type" use="required">
			<simpleType>
				<restriction base="string">
					<enumeration value="normal"/>
					<enumeration value="expr"/>
				</restriction>
			</simpleType>
		</attribute>
	</complexType>
	
	<complexType name="condition-paging">
		<attribute name="line" type="int"/>
		<attribute name="position">
			<simpleType>
				<restriction base="string">
					<enumeration value="beofore"/>
					<enumeration value="after"/>
				</restriction>
			</simpleType>
		</attribute>
	</complexType>
	
	<complexType name="cell-style">
		<sequence>
			<element name="left-border" type="tns:border" minOccurs="0"/>
			<element name="right-border" type="tns:border" minOccurs="0"/>
			<element name="top-border" type="tns:border" minOccurs="0"/>
			<element name="bottom-border" type="tns:border" minOccurs="0"/>
		</sequence>
		<attribute name="font-family" type="string"/>
		<attribute name="font-size" type="int"/>
		<attribute name="forecolor" type="string"/>
		<attribute name="bgcolor" type="string"/>
		<attribute name="format" type="string"/>
		<attribute name="bold" type="boolean"/>
		<attribute name="italic" type="boolean"/>
		<attribute name="underline" type="boolean"/>
		<attribute name="wrap-compute" type="boolean"/>
		<attribute name="align" default="left">
			<simpleType>
				<restriction base="string">
					<enumeration value="left"/>
					<enumeration value="center"/>
					<enumeration value="right"/>
				</restriction>
			</simpleType>
		</attribute>
		<attribute name="valign">
			<simpleType>
				<restriction base="string">
					<enumeration value="top"/>
					<enumeration value="middle"/>
					<enumeration value="bottom"/>
				</restriction>
			</simpleType>
		</attribute>
	</complexType>
	
	<complexType name="border">
		<attribute name="width" type="int"/>
		<attribute name="color" type="string"/>
		<attribute name="style" default="solid">
			<simpleType>
				<restriction base="string">
					<enumeration value="solid"/>
					<enumeration value="dashed"/>
					<enumeration value="dotted"/>
				</restriction>
			</simpleType>
		</attribute>
	</complexType>	
	
	<complexType name="simple-value" mixed="true"/>
	
	<complexType name="image-value">
		<sequence>
			<element name="text" type="tns:text" minOccurs="0"/>
		</sequence>
		<attribute name="source" use="required">
			<simpleType>
				<restriction base="string">
					<enumeration value="text"/>
					<enumeration value="expression"/>
				</restriction>
			</simpleType>
		</attribute>
	</complexType>
	
	<complexType name="chart-value">
		<sequence>
			<element name="xaxes" type="tns:xaxes" minOccurs="0"/>
			<element name="yaxes" type="tns:yaxes" minOccurs="0"/>
			<element name="dataset" type="tns:chart-dataset"/>
			<element name="animations-option" type="tns:animations-option" minOccurs="0"/>
			<element name="title-option" type="tns:title-option" minOccurs="0"/>
			<element name="legend-option" type="tns:legend-option" minOccurs="0"/>
			<element name="tooltip-option" type="tns:tooltip-option" minOccurs="0"/>
			<element name="layout-option" type="tns:layout-option" minOccurs="0"/>
		</sequence>
	</complexType>
	
	<complexType name="title-option">
		<attribute name="display" type="boolean"/>
		<attribute name="font-size" type="int"/>
		<attribute name="font-color" type="string"/>
		<attribute name="padding" type="int"/>
		<attribute name="text" type="string"/>
		<attribute name="font-style">
			<simpleType>
				<restriction base="string">
					<enumeration value="normal"/>
					<enumeration value="italic"/>
					<enumeration value="bold"/>
				</restriction>
			</simpleType>
		</attribute>
		<attribute name="position">
			<simpleType>
				<restriction base="string">
					<enumeration value="top"/>
					<enumeration value="bottom"/>
					<enumeration value="left"/>
					<enumeration value="right"/>
				</restriction>
			</simpleType>
		</attribute>
	</complexType>
	
	<complexType name="tooltip-option">
		<attribute name="enabled" type="boolean"/>
		<attribute name="title-font-size" type="int"/>
		<attribute name="body-font-size" type="int"/>
		<attribute name="title-font-color" type="string"/>
		<attribute name="body-font-color" type="string"/>
		<attribute name="title-font-style">
			<simpleType>
				<restriction base="string">
					<enumeration value="normal"/>
					<enumeration value="italic"/>
					<enumeration value="bold"/>
				</restriction>
			</simpleType>
		</attribute>
		<attribute name="body-font-style">
			<simpleType>
				<restriction base="string">
					<enumeration value="normal"/>
					<enumeration value="italic"/>
					<enumeration value="bold"/>
				</restriction>
			</simpleType>
		</attribute>
	</complexType>
	
	<complexType name="legend-option">
		<sequence>
			<element name="labels" type="tns:labels"/>
		</sequence>
		<attribute name="display" type="boolean"/>
		<attribute name="position">
			<simpleType>
				<restriction base="string">
					<enumeration value="left"/>
					<enumeration value="right"/>
					<enumeration value="top"/>
					<enumeration value="bottom"/>
				</restriction>
			</simpleType>
		</attribute>
	</complexType>
	
	<complexType name="labels">
		<attribute name="box-width" type="int"/>
		<attribute name="font-size" type="int"/>
		<attribute name="padding" type="int"/>
		<attribute name="font-color" type="string"/>
		<attribute name="font-style">
			<simpleType>
				<restriction base="string">
					<enumeration value="normal"/>
					<enumeration value="italic"/>
					<enumeration value="bold"/>
				</restriction>
			</simpleType>
		</attribute>
	</complexType>
	
	<complexType name="layout-option">
		<attribute name="padding" type="int"/>
	</complexType>
	
	<complexType name="animations-option">
		<attribute name="duration" type="int"/>
		<attribute name="easing">
			<simpleType>
				<restriction base="string">
					<enumeration value="linear"/>
					<enumeration value="easeInQuad"/>
					<enumeration value="easeOutQuad"/>
					<enumeration value="easeInOutQuad"/>
					<enumeration value="easeInCubic"/>
					<enumeration value="easeOutCubic"/>
					<enumeration value="easeInOutCubic"/>
					<enumeration value="easeInQuart"/>
					<enumeration value="easeOutQuart"/>
					<enumeration value="easeInOutQuart"/>
					<enumeration value="easeInQuint"/>
					<enumeration value="easeOutQuint"/>
					<enumeration value="easeInOutQuint"/>
					<enumeration value="easeInSine"/>
					<enumeration value="easeOutSine"/>
					<enumeration value="easeInOutSine"/>
					<enumeration value="easeInExpo"/>
					<enumeration value="easeOutExpo"/>
					<enumeration value="easeInOutExpo"/>
					<enumeration value="easeInCirc"/>
					<enumeration value="easeOutCirc"/>
					<enumeration value="easeInOutCirc"/>
					<enumeration value="easeInElastic"/>
					<enumeration value="easeOutElastic"/>
					<enumeration value="easeInOutElastic"/>
					<enumeration value="easeInBack"/>
					<enumeration value="easeOutBack"/>
					<enumeration value="easeInOutBack"/>
					<enumeration value="easeInBounce"/>
					<enumeration value="easeOutBounce"/>
					<enumeration value="easeInOutBounce"/>
				</restriction>
			</simpleType>
		</attribute>
	</complexType>
	
	<complexType name="chart-dataset">
		<choice>
				<element name="area-dataset" type="tns:area-dataset"/>
				<element name="line-dataset" type="tns:line-dataset"/>
				<element name="bubble-dataset" type="tns:bubble-dataset"/>
				<element name="polar-dataset" type="tns:polar-dataset"/>
				<element name="bar-dataset" type="tns:bar-dataset"/>
				<element name="pie-dataset" type="tns:pie-dataset"/>
				<element name="scatter-dataset" type="tns:scatter-dataset"/>
				<element name="doughnut-dataset" type="tns:doughnut-dataset"/>
				<element name="radar-dataset" type="tns:radar-dataset"/>
				<element name="horizontal-bar-dataset" type="tns:horizontal-bar-dataset"/>
				<element name="mix-dataset" type="tns:mix-dataset"/>
			</choice>
	</complexType>
	
	<complexType name="mix-dataset">
		<sequence>
			<element name="bar-dataset" type="tns:bar-dataset" minOccurs="0" maxOccurs="unbounded"/>
			<element name="line-dataset" type="tns:line-dataset" minOccurs="0" maxOccurs="unbounded"/>
		</sequence>
	</complexType>
	
	<complexType name="category-dataset">
		<attribute name="dataset-name" type="string"/>
		<attribute name="category-property" type="string"/>
		<attribute name="series-property" type="string"/>
		<attribute name="value-property" type="string"/>
		<attribute name="format" type="string"/>
		<attribute name="collect-type">
			<simpleType>
				<restriction base="string">
					<enumeration value="select"/>
					<enumeration value="count"/>
					<enumeration value="sum"/>
					<enumeration value="avg"/>
					<enumeration value="max"/>
					<enumeration value="min"/>
				</restriction>
			</simpleType>
		</attribute>
	</complexType>
	
	<complexType name="bubble-dataset">
		<attribute name="dataset-name" type="string"/>
		<attribute name="x-property" type="string"/>
		<attribute name="y-property" type="string"/>
		<attribute name="category-property" type="string"/>
		<attribute name="line-tension" type="double"/>
		<attribute name="fill" type="boolean"/>
	</complexType>
	
	<complexType name="scatter-dataset">
		<attribute name="dataset-name" type="string"/>
		<attribute name="x-property" type="string"/>
		<attribute name="y-property" type="string"/>
		<attribute name="r-property" type="string"/>
		<attribute name="category-property" type="string"/>
	</complexType>
	
	<complexType name="line-dataset">
		<complexContent>
			<extension base="tns:category-dataset">
				<attribute name="line-tension" type="double"/>
			</extension>		
		</complexContent>
	</complexType>
	
	<complexType name="bar-dataset">
		<complexContent>
			<extension base="tns:category-dataset">
			</extension>		
		</complexContent>
	</complexType>
	
	<complexType name="horizontal-bar-dataset">
		<complexContent>
			<extension base="tns:category-dataset">
			</extension>		
		</complexContent>
	</complexType>
	
	<complexType name="area-dataset">
		<complexContent>
			<extension base="tns:category-dataset">
			</extension>		
		</complexContent>
	</complexType>
	
	<complexType name="doughnut-dataset">
		<complexContent>
			<extension base="tns:category-dataset">
			</extension>		
		</complexContent>
	</complexType>
	
	<complexType name="pie-dataset">
		<complexContent>
			<extension base="tns:category-dataset">
			</extension>		
		</complexContent>
	</complexType>
	
	<complexType name="polar-dataset">
		<complexContent>
			<extension base="tns:category-dataset">
			</extension>		
		</complexContent>
	</complexType>
	
	<complexType name="radar-dataset">
		<complexContent>
			<extension base="tns:category-dataset">
				<attribute name="line-tension" type="double"/>
				<attribute name="fill" type="boolean"/>
			</extension>		
		</complexContent>
	</complexType>
	
	<complexType name="axes" abstract="true">
		<sequence>
			<element name="scale-label" type="tns:scale-label" minOccurs="0"/>
		</sequence>
		<attribute name="rotation" type="int"/>
	</complexType>
	
	<complexType name="scale-label">
		<attribute name="display" type="boolean"/>
		<attribute name="label-string" type="string"/>
		<attribute name="font-color" type="string"/>
		<attribute name="font-size" type="int"/>
		<attribute name="font-style">
			<simpleType>
				<restriction base="string">
					<enumeration value="normal"/>
					<enumeration value="italic"/>
					<enumeration value="bold"/>
				</restriction>
			</simpleType>
		</attribute>
	</complexType>
	
	<complexType name="xaxes">
		<complexContent>
			<extension base="tns:axes">
				<attribute name="xposition">
					<simpleType>
						<restriction base="string">
							<enumeration value="top"/>
							<enumeration value="bottom"/>
						</restriction>
					</simpleType>
				</attribute>
			</extension>
		</complexContent>
	</complexType>
	
	<complexType name="yaxes">
		<complexContent>
			<extension base="tns:axes">
				<attribute name="xposition">
					<simpleType>
						<restriction base="string">
							<enumeration value="left"/>
							<enumeration value="right"/>
						</restriction>
					</simpleType>
				</attribute>
			</extension>
		</complexContent>
	</complexType>
	
	<complexType name="zxing-value">
		<sequence>
			<element name="text" type="tns:text" minOccurs="0"/>
		</sequence>
		<attribute name="source" use="required">
			<simpleType>
				<restriction base="string">
					<enumeration value="text"/>
					<enumeration value="expression"/>
				</restriction>
			</simpleType>
		</attribute>
		<attribute name="category" use="required">
			<simpleType>
				<restriction base="string">
					<enumeration value="barcode"/>
					<enumeration value="qrcode"/>
				</restriction>
			</simpleType>
		</attribute>
		<attribute name="format"/>
		<attribute name="code-display"/>
	</complexType>
	
	<complexType name="slash-value">
		<sequence>
			<element name="slash" type="tns:slash" maxOccurs="unbounded"/>
			<element name="base64-data" type="tns:text"/>
		</sequence>
	</complexType>
	<complexType name="slash">
		<attribute name="text" type="string" use="required"/>
		<attribute name="x" type="int" use="required"/>
		<attribute name="y" type="int" use="required"/>
		<attribute name="degree" type="int" use="required"/>
	</complexType>
	
	<complexType name="text" mixed="true"/>
	
	<complexType name="expression-value" mixed="true"/>
	
	<complexType name="dataset-value">
		<sequence>
			<element name="condition" type="tns:condition" maxOccurs="unbounded" minOccurs="0"/>
			<element name="group-item" type="tns:group-item" maxOccurs="unbounded" minOccurs="0"/>
		</sequence>
		<attribute name="dataset-name" type="string" use="required"/>
		<attribute name="aggregate" type="string" use="required"/>
		<attribute name="property" type="string" use="required"/>
		<attribute name="order">
			<simpleType>
				<restriction base="string">
					<enumeration value="desc"/>
					<enumeration value="asc"/>
				</restriction>
			</simpleType>
		</attribute>
	</complexType>
	
	<complexType name="link-parameter">
		<sequence>
			<element name="value" type="tns:link-parameter-value"/>
		</sequence>
		<attribute name="name" type="string" use="required"/>
	</complexType>
	
	<complexType name="link-parameter-value" mixed="true"/>
	
	<complexType name="group-item">
		<sequence>
			<element name="condition" type="tns:condition" maxOccurs="unbounded"/>
		</sequence>
		<attribute name="name" type="string" use="required"/>
	</complexType>
	
	<complexType name="condition">
		<sequence>
			<element name="value" type="tns:condition-value"/>
		</sequence>
		<attribute name="property" use="required"/>
		<attribute name="op" use="required">
			<simpleType>
				<restriction base="string">
					<enumeration value="GreatThen"/>
					<enumeration value="EqualsGreatThen"/>
					<enumeration value="LessThen"/>
					<enumeration value="EqualsLessThen"/>
					<enumeration value="Equals"/>
					<enumeration value="NotEquals"/>
					<enumeration value="In"/>
					<enumeration value="Like"/>
				</restriction>
			</simpleType>
		</attribute>
	</complexType>
	<complexType name="condition-value" mixed="true"/>
	
	<complexType name="datasource">
		<sequence>
			<element name="dataset" type="tns:dataset" maxOccurs="unbounded"/>
		</sequence>
		<attribute name="name" type="string" use="required"/>
		
		<attribute name="driver" type="string"/>
		<attribute name="url" type="string"/>
		<attribute name="username" type="string"/>
		<attribute name="password" type="string"/>
		
		<attribute name="bean" type="string"/>
		
		<attribute name="type" use="required">
			<simpleType>
				<restriction base="string">
					<enumeration value="jdbc"/>
					<enumeration value="spring"/>
					<enumeration value="buildin"/>
				</restriction>
			</simpleType>
		</attribute>
	</complexType>
	
	
	<complexType name="dataset">
		<sequence>
			<element name="sql" type="tns:sql" minOccurs="0"/>
			<element name="parameter" type="tns:parameter" minOccurs="0" maxOccurs="unbounded"/>
			<element name="field" type="tns:field" maxOccurs="unbounded"/>
		</sequence>
		<attribute name="name" type="string" use="required"/>
		<attribute name="method" type="string"/>
		<attribute name="type" use="required">
			<simpleType>
				<restriction base="string">
					<enumeration value="sql"/>
					<enumeration value="bean"/>
				</restriction>
			</simpleType>
		</attribute>
	</complexType>
	
	<complexType name="sql" mixed="true"/>
	
	<complexType name="parameter">
		<attribute name="name" type="string" use="required"/>
		<attribute name="type" use="required">
			<simpleType>
				<restriction base="string">
					<enumeration value="Integer"/>
					<enumeration value="Float"/>
					<enumeration value="Boolean"/>
					<enumeration value="String"/>
					<enumeration value="Date"/>
				</restriction>
			</simpleType>
		</attribute>
		<attribute name="default-value" type="string"/>
	</complexType>
	<complexType name="field">
		<attribute name="name" type="string" use="required"/>
	</complexType>
</schema>