PageRenderTime 18ms CodeModel.GetById 2ms app.highlight 11ms RepoModel.GetById 1ms app.codeStats 0ms

/doc/reports/reports.xsd

http://sigma-h.googlecode.com/
XML Schema | 460 lines | 419 code | 41 blank | 0 comment | 0 complexity | 72182fbf9aa8df32c517071625085d86 MD5 | raw file
  1<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
  2<xs:schema version="1.0" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  3
  4  <xs:element name="report" type="report"/>
  5
  6  <xs:complexType name="adminDimension">
  7    <xs:complexContent>
  8      <xs:extension base="dimension">
  9        <xs:sequence/>
 10      </xs:extension>
 11    </xs:complexContent>
 12  </xs:complexType>
 13
 14  <xs:complexType name="dimension">
 15    <xs:complexContent>
 16      <xs:extension base="baseModelData">
 17        <xs:sequence>
 18          <xs:element name="color" type="xs:string" minOccurs="0"/>
 19        </xs:sequence>
 20      </xs:extension>
 21    </xs:complexContent>
 22  </xs:complexType>
 23
 24  <xs:complexType name="baseModelData">
 25    <xs:sequence>
 26      <xs:element name="allowNestedValues" type="xs:boolean"/>
 27      <xs:element name="properties">
 28        <xs:complexType>
 29          <xs:sequence>
 30            <xs:element name="entry" minOccurs="0" maxOccurs="unbounded">
 31              <xs:complexType>
 32                <xs:sequence>
 33                  <xs:element name="key" minOccurs="0" type="xs:string"/>
 34                  <xs:element name="value" minOccurs="0" type="xs:anyType"/>
 35                </xs:sequence>
 36              </xs:complexType>
 37            </xs:element>
 38          </xs:sequence>
 39        </xs:complexType>
 40      </xs:element>
 41    </xs:sequence>
 42  </xs:complexType>
 43
 44  <xs:complexType name="attributeGroupDimension">
 45    <xs:complexContent>
 46      <xs:extension base="dimension">
 47        <xs:sequence>
 48          <xs:element name="attributeGroupId" type="xs:int"/>
 49        </xs:sequence>
 50      </xs:extension>
 51    </xs:complexContent>
 52  </xs:complexType>
 53
 54  <xs:complexType name="bubbleMapLayer">
 55    <xs:complexContent>
 56      <xs:extension base="mapLayer">
 57        <xs:sequence>
 58          <xs:element name="alpha" type="xs:double"/>
 59          <xs:element name="clustered" type="xs:boolean"/>
 60          <xs:element name="colors" minOccurs="0">
 61            <xs:complexType>
 62              <xs:sequence>
 63                <xs:element name="dimension" type="dimensionElement" minOccurs="0" maxOccurs="unbounded"/>
 64              </xs:sequence>
 65            </xs:complexType>
 66          </xs:element>
 67          <xs:element name="defaultColor" type="xs:int"/>
 68          <xs:element name="indicators" minOccurs="0">
 69            <xs:complexType>
 70              <xs:sequence>
 71                <xs:element name="indicator" type="xs:int" minOccurs="0" maxOccurs="unbounded"/>
 72              </xs:sequence>
 73            </xs:complexType>
 74          </xs:element>
 75          <xs:element name="labelColor" type="xs:int"/>
 76          <xs:element name="maxRadius" type="xs:int"/>
 77          <xs:element name="minRadius" type="xs:int"/>
 78          <xs:element name="numbering" type="numberingType" default="none" minOccurs="0"/>
 79          <xs:element name="pie" type="xs:boolean"/>
 80          <xs:element name="scaling" type="scalingType" default="none" minOccurs="0"/>
 81        </xs:sequence>
 82      </xs:extension>
 83    </xs:complexContent>
 84  </xs:complexType>
 85
 86  <xs:complexType name="mapLayer" abstract="true">
 87    <xs:sequence/>
 88  </xs:complexType>
 89
 90  <xs:complexType name="dimensionElement">
 91    <xs:sequence>
 92      <xs:element name="category" type="categoryElement" minOccurs="0" maxOccurs="unbounded"/>
 93    </xs:sequence>
 94    <xs:attribute name="type" type="xs:string"/>
 95    <xs:attribute name="levelId" type="xs:int"/>
 96    <xs:attribute name="dateUnit" type="xs:string"/>
 97  </xs:complexType>
 98
 99  <xs:complexType name="categoryElement">
100    <xs:sequence/>
101    <xs:attribute name="name" type="xs:string" use="required"/>
102    <xs:attribute name="label" type="xs:string"/>
103    <xs:attribute name="color" type="xs:string"/>
104  </xs:complexType>
105
106  <xs:complexType name="categoryProperties">
107    <xs:sequence>
108      <xs:element name="color" type="xs:int" minOccurs="0"/>
109      <xs:element name="label" type="xs:string" minOccurs="0"/>
110    </xs:sequence>
111  </xs:complexType>
112
113  <xs:complexType name="dateDimension">
114    <xs:complexContent>
115      <xs:extension base="dimension">
116        <xs:sequence>
117          <xs:element name="format" type="xs:string" minOccurs="0"/>
118          <xs:element name="unit" type="dateUnit" minOccurs="0"/>
119        </xs:sequence>
120      </xs:extension>
121    </xs:complexContent>
122  </xs:complexType>
123
124  <xs:complexType name="dateRange">
125    <xs:sequence/>
126    <xs:attribute name="max" type="xs:dateTime"/>
127    <xs:attribute name="min" type="xs:dateTime"/>
128  </xs:complexType>
129
130  <xs:complexType name="iconMapLayer">
131    <xs:complexContent>
132      <xs:extension base="mapLayer">
133        <xs:sequence>
134          <xs:element name="activities" minOccurs="0">
135            <xs:complexType>
136              <xs:sequence>
137                <xs:element name="activity" type="xs:int" minOccurs="0" maxOccurs="unbounded"/>
138              </xs:sequence>
139            </xs:complexType>
140          </xs:element>
141          <xs:element name="clustered" type="xs:boolean"/>
142          <xs:element name="icon" type="xs:string" minOccurs="0"/>
143          <xs:element name="indicators" minOccurs="0">
144            <xs:complexType>
145              <xs:sequence>
146                <xs:element name="indicator" type="xs:int" minOccurs="0" maxOccurs="unbounded"/>
147              </xs:sequence>
148            </xs:complexType>
149          </xs:element>
150        </xs:sequence>
151      </xs:extension>
152    </xs:complexContent>
153  </xs:complexType>
154
155  <xs:complexType name="mapElement">
156    <xs:complexContent>
157      <xs:extension base="reportElement">
158        <xs:sequence>
159          <xs:element name="baseMap" type="xs:string"/>
160          <xs:element name="height" type="xs:int" default="480"/>
161          <xs:element name="layers" minOccurs="0">
162            <xs:complexType>
163              <xs:sequence>
164                <xs:choice minOccurs="0" maxOccurs="unbounded">
165                  <xs:element name="bubbles" type="bubbleMapLayer"/>
166                  <xs:element name="icons" type="iconMapLayer"/>
167                </xs:choice>
168              </xs:sequence>
169            </xs:complexType>
170          </xs:element>
171          <xs:element name="width" type="xs:int" default="640"/>
172        </xs:sequence>
173      </xs:extension>
174    </xs:complexContent>
175  </xs:complexType>
176
177  <xs:complexType name="reportElement" abstract="true">
178    <xs:sequence>
179      <xs:element name="filter" type="filterElement" minOccurs="0"/>
180      <xs:element name="sheetTitle" type="xs:string" minOccurs="0"/>
181      <xs:element name="title" type="xs:string" minOccurs="0"/>
182    </xs:sequence>
183  </xs:complexType>
184
185  <xs:complexType name="filterElement">
186    <xs:sequence>
187      <xs:element name="restriction" type="restriction" minOccurs="0" maxOccurs="unbounded"/>
188      <xs:element name="dateRange" type="dateRange" minOccurs="0"/>
189    </xs:sequence>
190  </xs:complexType>
191
192  <xs:complexType name="restriction">
193    <xs:sequence>
194      <xs:element name="category" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
195    </xs:sequence>
196    <xs:attribute name="dimension" type="xs:string"/>
197  </xs:complexType>
198
199  <xs:complexType name="mapIcon">
200    <xs:sequence>
201      <xs:element name="anchorX" type="xs:int"/>
202      <xs:element name="anchorY" type="xs:int"/>
203      <xs:element name="height" type="xs:int"/>
204      <xs:element name="name" type="xs:string" minOccurs="0"/>
205      <xs:element name="width" type="xs:int"/>
206    </xs:sequence>
207  </xs:complexType>
208
209  <xs:complexType name="report">
210    <xs:complexContent>
211      <xs:extension base="reportElement">
212        <xs:sequence>
213          <xs:element name="description" type="xs:string" minOccurs="0"/>
214          <xs:element name="elements" minOccurs="0">
215            <xs:complexType>
216              <xs:sequence>
217                <xs:choice minOccurs="0" maxOccurs="unbounded">
218                  <xs:element name="pivotTable" type="pivotTableElement"/>
219                  <xs:element name="pivotChart" type="pivotChartElement"/>
220                  <xs:element name="table" type="tableElement"/>
221                  <xs:element name="map" type="mapElement"/>
222                  <xs:element name="static" type="staticElement"/>
223                </xs:choice>
224              </xs:sequence>
225            </xs:complexType>
226          </xs:element>
227          <xs:element name="fileName" type="xs:string" minOccurs="0"/>
228        </xs:sequence>
229        <xs:attribute name="day" type="xs:int"/>
230        <xs:attribute name="frequency" type="reportFrequency"/>
231      </xs:extension>
232    </xs:complexContent>
233  </xs:complexType>
234
235  <xs:complexType name="pivotTableElement">
236    <xs:complexContent>
237      <xs:extension base="pivotElement">
238        <xs:sequence>
239          <xs:element name="columns" minOccurs="0">
240            <xs:complexType>
241              <xs:sequence>
242                <xs:element name="dimension" type="dimensionElement" minOccurs="0" maxOccurs="unbounded"/>
243              </xs:sequence>
244            </xs:complexType>
245          </xs:element>
246          <xs:element name="rows" minOccurs="0">
247            <xs:complexType>
248              <xs:sequence>
249                <xs:element name="dimension" type="dimensionElement" minOccurs="0" maxOccurs="unbounded"/>
250              </xs:sequence>
251            </xs:complexType>
252          </xs:element>
253        </xs:sequence>
254      </xs:extension>
255    </xs:complexContent>
256  </xs:complexType>
257
258  <xs:complexType name="pivotElement" abstract="true">
259    <xs:complexContent>
260      <xs:extension base="reportElement">
261        <xs:sequence/>
262      </xs:extension>
263    </xs:complexContent>
264  </xs:complexType>
265
266  <xs:complexType name="pivotChartElement">
267    <xs:complexContent>
268      <xs:extension base="pivotElement">
269        <xs:sequence>
270          <xs:element name="categoryAxisTitle" type="xs:string" minOccurs="0"/>
271          <xs:element name="categories" minOccurs="0">
272            <xs:complexType>
273              <xs:sequence>
274                <xs:element name="dimension" type="dimensionElement" minOccurs="0" maxOccurs="unbounded"/>
275              </xs:sequence>
276            </xs:complexType>
277          </xs:element>
278          <xs:element name="series" minOccurs="0">
279            <xs:complexType>
280              <xs:sequence>
281                <xs:element name="dimension" type="dimensionElement" minOccurs="0" maxOccurs="unbounded"/>
282              </xs:sequence>
283            </xs:complexType>
284          </xs:element>
285          <xs:element name="type" type="type"/>
286          <xs:element name="valueAxisTitle" type="xs:string" minOccurs="0"/>
287        </xs:sequence>
288      </xs:extension>
289    </xs:complexContent>
290  </xs:complexType>
291
292  <xs:complexType name="tableElement">
293    <xs:complexContent>
294      <xs:extension base="reportElement">
295        <xs:sequence>
296          <xs:element name="frozenColumns" type="xs:int" default="0"/>
297          <xs:element name="map" type="mapElement" minOccurs="0"/>
298          <xs:element name="columns" type="tableColumn" minOccurs="0"/>
299          <xs:element name="sortBy" minOccurs="0">
300            <xs:complexType>
301              <xs:sequence>
302                <xs:element name="column" type="tableColumn" minOccurs="0" maxOccurs="unbounded"/>
303              </xs:sequence>
304            </xs:complexType>
305          </xs:element>
306        </xs:sequence>
307      </xs:extension>
308    </xs:complexContent>
309  </xs:complexType>
310
311  <xs:complexType name="tableColumn">
312    <xs:complexContent>
313      <xs:extension base="treeNode">
314        <xs:sequence>
315          <xs:element name="column" type="tableColumn" minOccurs="0" maxOccurs="unbounded"/>
316        </xs:sequence>
317        <xs:attribute name="label" type="xs:string"/>
318        <xs:attribute name="order" type="sortOrder"/>
319        <xs:attribute name="source" type="xs:string"/>
320        <xs:attribute name="sourceId" type="xs:int"/>
321      </xs:extension>
322    </xs:complexContent>
323  </xs:complexType>
324
325  <xs:complexType name="treeNode" abstract="true">
326    <xs:sequence/>
327  </xs:complexType>
328
329  <xs:complexType name="staticElement">
330    <xs:complexContent>
331      <xs:extension base="reportElement">
332        <xs:sequence>
333          <xs:element name="img" type="xs:string" minOccurs="0"/>
334          <xs:element name="text" type="xs:string" minOccurs="0"/>
335        </xs:sequence>
336      </xs:extension>
337    </xs:complexContent>
338  </xs:complexType>
339
340  <xs:complexType name="category">
341    <xs:sequence/>
342    <xs:attribute name="id" type="xs:int"/>
343  </xs:complexType>
344
345  <xs:complexType name="categoryAdapter">
346    <xs:complexContent>
347      <xs:extension base="xmlAdapter">
348        <xs:sequence/>
349      </xs:extension>
350    </xs:complexContent>
351  </xs:complexType>
352
353  <xs:complexType name="xmlAdapter" abstract="true">
354    <xs:sequence/>
355  </xs:complexType>
356
357  <xs:complexType name="dimensionAdapter">
358    <xs:complexContent>
359      <xs:extension base="xmlAdapter">
360        <xs:sequence/>
361      </xs:extension>
362    </xs:complexContent>
363  </xs:complexType>
364
365  <xs:complexType name="filterAdapter">
366    <xs:complexContent>
367      <xs:extension base="xmlAdapter">
368        <xs:sequence/>
369      </xs:extension>
370    </xs:complexContent>
371  </xs:complexType>
372
373  <xs:simpleType name="numberingType">
374    <xs:restriction base="xs:string">
375      <xs:enumeration value="None"/>
376      <xs:enumeration value="ArabicNumerals"/>
377      <xs:enumeration value="LatinAlphabet"/>
378    </xs:restriction>
379  </xs:simpleType>
380
381  <xs:simpleType name="scalingType">
382    <xs:restriction base="xs:string">
383      <xs:enumeration value="None"/>
384      <xs:enumeration value="Graduated"/>
385      <xs:enumeration value="Proportional"/>
386    </xs:restriction>
387  </xs:simpleType>
388
389  <xs:simpleType name="dateUnit">
390    <xs:restriction base="xs:string">
391      <xs:enumeration value="YEAR"/>
392      <xs:enumeration value="QUARTER"/>
393      <xs:enumeration value="MONTH"/>
394      <xs:enumeration value="WEEK"/>
395      <xs:enumeration value="DAY"/>
396    </xs:restriction>
397  </xs:simpleType>
398
399  <xs:simpleType name="dimensionSortOrder">
400    <xs:restriction base="xs:string">
401      <xs:enumeration value="DEFINED"/>
402      <xs:enumeration value="NATURAL_VALUE"/>
403      <xs:enumeration value="NATURAL_LABEL"/>
404      <xs:enumeration value="CUSTOM"/>
405    </xs:restriction>
406  </xs:simpleType>
407
408  <xs:simpleType name="dimensionType">
409    <xs:restriction base="xs:string">
410      <xs:enumeration value="Partner"/>
411      <xs:enumeration value="Activity"/>
412      <xs:enumeration value="ActivityCategory"/>
413      <xs:enumeration value="Database"/>
414      <xs:enumeration value="AdminLevel"/>
415      <xs:enumeration value="Date"/>
416      <xs:enumeration value="Status"/>
417      <xs:enumeration value="Indicator"/>
418      <xs:enumeration value="IndicatorCategory"/>
419      <xs:enumeration value="AttributeGroup"/>
420      <xs:enumeration value="Site"/>
421    </xs:restriction>
422  </xs:simpleType>
423
424  <xs:simpleType name="type">
425    <xs:restriction base="xs:string">
426      <xs:enumeration value="Bar"/>
427      <xs:enumeration value="StackedBar"/>
428      <xs:enumeration value="Line"/>
429      <xs:enumeration value="ClusteredBar"/>
430      <xs:enumeration value="Pie"/>
431    </xs:restriction>
432  </xs:simpleType>
433
434  <xs:simpleType name="sortOrder">
435    <xs:restriction base="xs:string">
436      <xs:enumeration value="Ascending"/>
437      <xs:enumeration value="Descending"/>
438    </xs:restriction>
439  </xs:simpleType>
440
441  <xs:simpleType name="reportFrequency">
442    <xs:restriction base="xs:string">
443      <xs:enumeration value="NotDateBound"/>
444      <xs:enumeration value="Monthly"/>
445      <xs:enumeration value="Weekly"/>
446      <xs:enumeration value="Daily"/>
447      <xs:enumeration value="Adhoc"/>
448    </xs:restriction>
449  </xs:simpleType>
450
451  <xs:simpleType name="sortType">
452    <xs:restriction base="xs:string">
453      <xs:enumeration value="DEFINED"/>
454      <xs:enumeration value="NATURAL_VALUE"/>
455      <xs:enumeration value="NATURAL_LABEL"/>
456      <xs:enumeration value="CUSTOM"/>
457    </xs:restriction>
458  </xs:simpleType>
459</xs:schema>
460