1*cabbd591SAndrew Rist<!--***********************************************************
2*cabbd591SAndrew Rist *
3*cabbd591SAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one
4*cabbd591SAndrew Rist * or more contributor license agreements.  See the NOTICE file
5*cabbd591SAndrew Rist * distributed with this work for additional information
6*cabbd591SAndrew Rist * regarding copyright ownership.  The ASF licenses this file
7*cabbd591SAndrew Rist * to you under the Apache License, Version 2.0 (the
8*cabbd591SAndrew Rist * "License"); you may not use this file except in compliance
9*cabbd591SAndrew Rist * with the License.  You may obtain a copy of the License at
10*cabbd591SAndrew Rist *
11*cabbd591SAndrew Rist *   http://www.apache.org/licenses/LICENSE-2.0
12*cabbd591SAndrew Rist *
13*cabbd591SAndrew Rist * Unless required by applicable law or agreed to in writing,
14*cabbd591SAndrew Rist * software distributed under the License is distributed on an
15*cabbd591SAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*cabbd591SAndrew Rist * KIND, either express or implied.  See the License for the
17*cabbd591SAndrew Rist * specific language governing permissions and limitations
18*cabbd591SAndrew Rist * under the License.
19*cabbd591SAndrew Rist *
20*cabbd591SAndrew Rist ***********************************************************-->
21cdf0e10cSrcweir
22cdf0e10cSrcweir
23cdf0e10cSrcweir
24cdf0e10cSrcweir
25cdf0e10cSrcweir<!ENTITY % chart-class "(line|area|circle|ring|scatter|radar|bar|stock|add-in)">
26cdf0e10cSrcweir<!ENTITY % chart-solid-type "(cuboid|cylinder|cone|pyramid)">
27cdf0e10cSrcweir
28cdf0e10cSrcweir<!-- Chart element -->
29cdf0e10cSrcweir<!ELEMENT chart:chart ( chart:title?, chart:subtitle?, chart:legend?,
30cdf0e10cSrcweir					    chart:plot-area,
31cdf0e10cSrcweir						table:table? )>
32cdf0e10cSrcweir<!ATTLIST chart:chart
33cdf0e10cSrcweir		  chart:class %chart-class; #REQUIRED
34cdf0e10cSrcweir		  chart:add-in-name %string; #IMPLIED
35cdf0e10cSrcweir		  chart:table-number-list %string; #IMPLIED
36cdf0e10cSrcweir		  draw:name %string; #IMPLIED
37cdf0e10cSrcweir		  %draw-position;
38cdf0e10cSrcweir		  %draw-size;
39cdf0e10cSrcweir		  %draw-style-name;
40cdf0e10cSrcweir		  chart:style-name %styleName; #IMPLIED>
41cdf0e10cSrcweir
42cdf0e10cSrcweir<!ATTLIST chart:chart %presentation-class; >
43cdf0e10cSrcweir<!ATTLIST chart:chart %zindex;>
44cdf0e10cSrcweir<!ATTLIST chart:chart %draw-end-position; >
45cdf0e10cSrcweir<!ATTLIST chart:chart draw:id %draw-shape-id; >
46cdf0e10cSrcweir<!ATTLIST chart:chart draw:layer %layerName; #IMPLIED>
47cdf0e10cSrcweir
48cdf0e10cSrcweir<!ATTLIST style:properties
49cdf0e10cSrcweir		  chart:scale-text %boolean; "true"
50cdf0e10cSrcweir		  chart:stock-updown-bars %boolean; "false"
51cdf0e10cSrcweir		  chart:stock-with-volume %boolean; "false"
52cdf0e10cSrcweir		  chart:three-dimensional %boolean; "false"
53cdf0e10cSrcweir		  chart:deep %boolean; "false"
54cdf0e10cSrcweir		  chart:lines %boolean; "false"
55cdf0e10cSrcweir		  chart:percentage %boolean; "false"
56cdf0e10cSrcweir		  chart:solid-type %chart-solid-type; "cuboid"
57cdf0e10cSrcweir		  chart:splines %nonNegativeInteger; "0"
58cdf0e10cSrcweir		  chart:stacked %boolean; "false"
59cdf0e10cSrcweir		  chart:symbol %integer; "-1"
60cdf0e10cSrcweir		  chart:vertical %boolean; "false"
61cdf0e10cSrcweir		  chart:lines-used %nonNegativeInteger; "0"
62cdf0e10cSrcweir		  chart:connect-bars %boolean; "false">
63cdf0e10cSrcweir
64cdf0e10cSrcweir<!-- Main/Sub Title -->
65cdf0e10cSrcweir<!-- the cell-address attribute is currently not supported for titles -->
66cdf0e10cSrcweir<!ELEMENT chart:title (text:p)?>
67cdf0e10cSrcweir<!ATTLIST chart:title
68cdf0e10cSrcweir		  table:cell-range %cell-address; #IMPLIED
69cdf0e10cSrcweir		  svg:x %coordinate; #IMPLIED
70cdf0e10cSrcweir		  svg:y %coordinate; #IMPLIED
71cdf0e10cSrcweir		  chart:style-name %styleName; #IMPLIED >
72cdf0e10cSrcweir
73cdf0e10cSrcweir<!ELEMENT chart:subtitle (text:p)?>
74cdf0e10cSrcweir<!ATTLIST chart:subtitle
75cdf0e10cSrcweir		  table:cell-range %cell-address; #IMPLIED
76cdf0e10cSrcweir		  svg:x %coordinate; #IMPLIED
77cdf0e10cSrcweir		  svg:y %coordinate; #IMPLIED
78cdf0e10cSrcweir		  chart:style-name %styleName; #IMPLIED >
79cdf0e10cSrcweir
80cdf0e10cSrcweir<!-- you must specify either a legend-position or both, x and y coordinates -->
81cdf0e10cSrcweir<!ELEMENT chart:legend EMPTY>
82cdf0e10cSrcweir<!ATTLIST chart:legend
83cdf0e10cSrcweir		  chart:legend-position (top|left|bottom|right) "right"
84cdf0e10cSrcweir		  svg:x %coordinate; #IMPLIED
85cdf0e10cSrcweir		  svg:y %coordinate; #IMPLIED
86cdf0e10cSrcweir		  chart:style-name %styleName; #IMPLIED >
87cdf0e10cSrcweir
88cdf0e10cSrcweir<!-- Plot-Area specification -->
89cdf0e10cSrcweir
90cdf0e10cSrcweir<!ELEMENT chart:plot-area (dr3d:light*,
91cdf0e10cSrcweir						   chart:axis*,
92cdf0e10cSrcweir						   chart:categories?,
93cdf0e10cSrcweir						   chart:series*,
94cdf0e10cSrcweir						   chart:wall?,
95cdf0e10cSrcweir						   chart:floor?) >
96cdf0e10cSrcweir
97cdf0e10cSrcweir<!ATTLIST chart:plot-area
98cdf0e10cSrcweir		  svg:x %coordinate; #IMPLIED
99cdf0e10cSrcweir		  svg:y %coordinate; #IMPLIED
100cdf0e10cSrcweir		  svg:width %length; #IMPLIED
101cdf0e10cSrcweir		  svg:height %length; #IMPLIED
102cdf0e10cSrcweir		  chart:style-name %styleName; #IMPLIED
103cdf0e10cSrcweir		  table:cell-range-address %cell-range-address; #IMPLIED
104cdf0e10cSrcweir		  chart:table-number-list %string; #IMPLIED
105cdf0e10cSrcweir		  chart:data-source-has-labels (none|row|column|both) "none" >
106cdf0e10cSrcweir
107cdf0e10cSrcweir<!-- 3d scene attributes on plot-area -->
108cdf0e10cSrcweir<!ATTLIST chart:plot-area
109cdf0e10cSrcweir		  dr3d:vrp %vector3D; #IMPLIED
110cdf0e10cSrcweir		  dr3d:vpn %vector3D; #IMPLIED
111cdf0e10cSrcweir		  dr3d:vup %vector3D; #IMPLIED
112cdf0e10cSrcweir		  dr3d:projection (parallel|perspective) #IMPLIED
113cdf0e10cSrcweir		  dr3d:transform CDATA #IMPLIED
114cdf0e10cSrcweir		  dr3d:distance %length; #IMPLIED
115cdf0e10cSrcweir		  dr3d:focal-length %length; #IMPLIED
116cdf0e10cSrcweir		  dr3d:shadow-slant %nonNegativeInteger; #IMPLIED
117cdf0e10cSrcweir		  dr3d:shade-mode (flat|phong|gouraud|draft) #IMPLIED
118cdf0e10cSrcweir		  dr3d:ambient-color %color; #IMPLIED
119cdf0e10cSrcweir		  dr3d:lighting-mode %boolean; #IMPLIED >
120cdf0e10cSrcweir
121cdf0e10cSrcweir<!ATTLIST style:properties
122cdf0e10cSrcweir		  chart:series-source (columns|rows) "columns" >
123cdf0e10cSrcweir
124cdf0e10cSrcweir<!ELEMENT chart:wall EMPTY>
125cdf0e10cSrcweir<!ATTLIST chart:wall
126cdf0e10cSrcweir		  svg:width %length; #IMPLIED
127cdf0e10cSrcweir		  chart:style-name %styleName; #IMPLIED >
128cdf0e10cSrcweir
129cdf0e10cSrcweir<!ELEMENT chart:floor EMPTY>
130cdf0e10cSrcweir<!ATTLIST chart:floor
131cdf0e10cSrcweir		  svg:width %length; #IMPLIED
132cdf0e10cSrcweir		  chart:style-name %styleName; #IMPLIED >
133cdf0e10cSrcweir
134cdf0e10cSrcweir<!-- Axis -->
135cdf0e10cSrcweir
136cdf0e10cSrcweir<!ELEMENT chart:axis (chart:title?, chart:grid*)>
137cdf0e10cSrcweir<!ATTLIST chart:axis
138cdf0e10cSrcweir		  chart:class (category|value|series|domain) #REQUIRED
139cdf0e10cSrcweir		  chart:name %string; #IMPLIED
140cdf0e10cSrcweir		  chart:style-name %styleName; #IMPLIED >
141cdf0e10cSrcweir
142cdf0e10cSrcweir<!ATTLIST style:properties
143cdf0e10cSrcweir		  chart:tick-marks-major-inner %boolean; "false"
144cdf0e10cSrcweir		  chart:tick-marks-major-outer %boolean; "true"
145cdf0e10cSrcweir		  chart:tick-marks-minor-inner %boolean; "false"
146cdf0e10cSrcweir		  chart:tick-marks-minor-outer %boolean; "false"
147cdf0e10cSrcweir		  chart:logarithmic %boolean; "false"
148cdf0e10cSrcweir		  chart:maximum %float; #IMPLIED
149cdf0e10cSrcweir		  chart:minimum %float; #IMPLIED
150cdf0e10cSrcweir		  chart:origin %float; #IMPLIED
151cdf0e10cSrcweir		  chart:interval-major %float; #IMPLIED
152cdf0e10cSrcweir		  chart:interval-minor %float; #IMPLIED
153cdf0e10cSrcweir		  chart:gap-width %integer; #IMPLIED
154cdf0e10cSrcweir		  chart:overlap %integer; #IMPLIED
155cdf0e10cSrcweir		  text:line-break %boolean; "true"
156cdf0e10cSrcweir		  chart:display-label %boolean; "true"
157cdf0e10cSrcweir		  chart:label-arrangement (side-by-side|stagger-even|stagger-odd) "side-by-side"
158cdf0e10cSrcweir		  chart:visible %boolean; "true"
159cdf0e10cSrcweir		  chart:link-data-style-to-source %boolean; "true" >
160cdf0e10cSrcweir
161cdf0e10cSrcweir<!ELEMENT chart:grid EMPTY>
162cdf0e10cSrcweir<!ATTLIST chart:grid
163cdf0e10cSrcweir		  chart:class (major|minor) "major"
164cdf0e10cSrcweir		  chart:style-name %styleName; #IMPLIED >
165cdf0e10cSrcweir
166cdf0e10cSrcweir
167cdf0e10cSrcweir<!ELEMENT chart:categories EMPTY>
168cdf0e10cSrcweir<!ATTLIST chart:categories
169cdf0e10cSrcweir		  table:cell-range-address %cell-range-address; #REQUIRED >
170cdf0e10cSrcweir
171cdf0e10cSrcweir<!--
172cdf0e10cSrcweir	each series element must have an cell-range-address element that points
173cdf0e10cSrcweir	to the underlying table data.
174cdf0e10cSrcweir	Impl. Note: Internally all href elements are merged to one table range
175cdf0e10cSrcweir	that represents the data for the whole chart
176cdf0e10cSrcweir-->
177cdf0e10cSrcweir<!ELEMENT chart:series ( chart:domain*,
178cdf0e10cSrcweir						 chart:data-point* )>
179cdf0e10cSrcweir<!ATTLIST chart:series
180cdf0e10cSrcweir		  chart:values-cell-range-address %cell-range-address; #IMPLIED
181cdf0e10cSrcweir		  chart:label-cell-address %cell-address; #IMPLIED
182cdf0e10cSrcweir		  chart:class %chart-class; #IMPLIED
183cdf0e10cSrcweir		  chart:attached-axis %string; #IMPLIED
184cdf0e10cSrcweir		  chart:style-name %styleName; #IMPLIED >
185cdf0e10cSrcweir
186cdf0e10cSrcweir<!ELEMENT chart:domain EMPTY>
187cdf0e10cSrcweir<!ATTLIST chart:domain
188cdf0e10cSrcweir		  table:cell-range-address %cell-range-address; #IMPLIED >
189cdf0e10cSrcweir
190cdf0e10cSrcweir<!ELEMENT chart:data-point EMPTY>
191cdf0e10cSrcweir<!ATTLIST chart:data-point
192cdf0e10cSrcweir		  chart:repeated %nonNegativeInteger; #IMPLIED
193cdf0e10cSrcweir		  chart:style-name %styleName; #IMPLIED >
194cdf0e10cSrcweir
195cdf0e10cSrcweir<!-- statistical properties -->
196cdf0e10cSrcweir
197cdf0e10cSrcweir<!ATTLIST style:properties
198cdf0e10cSrcweir		  chart:mean-value %boolean; #IMPLIED
199cdf0e10cSrcweir		  chart:error-category (none|variance|standard-deviation|percentage|error-margin|constant) "none"
200cdf0e10cSrcweir		  chart:error-percentage %float; #IMPLIED
201cdf0e10cSrcweir		  chart:error-margin %float; #IMPLIED
202cdf0e10cSrcweir		  chart:error-lower-limit %float; #IMPLIED
203cdf0e10cSrcweir		  chart:error-upper-limit %float; #IMPLIED
204cdf0e10cSrcweir		  chart:error-upper-indicator %boolean; #IMPLIED
205cdf0e10cSrcweir		  chart:error-lower-indicator %boolean; #IMPLIED
206cdf0e10cSrcweir		  chart:regression-type (none|linear|logarithmic|exponential|power) "none" >
207cdf0e10cSrcweir
208cdf0e10cSrcweir<!-- data label properties -->
209cdf0e10cSrcweir
210cdf0e10cSrcweir<!ATTLIST style:properties
211cdf0e10cSrcweir		  chart:data-label-number (none|value|percentage) "none"
212cdf0e10cSrcweir		  chart:data-label-text %boolean; "false"
213cdf0e10cSrcweir		  chart:data-label-symbol %boolean; "false" >
214cdf0e10cSrcweir
215cdf0e10cSrcweir<!-- general text properties -->
216cdf0e10cSrcweir
217cdf0e10cSrcweir<!ATTLIST style:properties text:rotation-angle %integer; "0" >
218cdf0e10cSrcweir
219cdf0e10cSrcweir<!-- symbol properties -->
220cdf0e10cSrcweir
221cdf0e10cSrcweir<!ATTLIST style:properties
222cdf0e10cSrcweir		  chart:symbol-width %nonNegativeLength; #IMPLIED
223cdf0e10cSrcweir		  chart:symbol-height %nonNegativeLength; #IMPLIED
224cdf0e10cSrcweir		  chart:symbol-image-name %string; #IMPLIED >
225