ChartInstance_1.xsd 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!--
  3. Licensed Materials - Property of IBM
  4. IBM Cognos Products: vgs
  5. (C) Copyright IBM Corp. 2013
  6. US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
  7. -->
  8. <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.ibm.com/xmlns/prod/ba/visBundle/chartInstance.1/" targetNamespace="http://www.ibm.com/xmlns/prod/ba/visBundle/chartInstance.1/" elementFormDefault="qualified" attributeFormDefault="unqualified">
  9. <xs:element name="chartInstance">
  10. <xs:annotation>
  11. <xs:documentation>Comment describing your root element</xs:documentation>
  12. </xs:annotation>
  13. <xs:complexType>
  14. <xs:all>
  15. <xs:element name="dataSetInstances" minOccurs="0">
  16. <xs:complexType>
  17. <xs:sequence>
  18. <xs:element name="dataSetInstance" maxOccurs="unbounded">
  19. <xs:annotation>
  20. <xs:documentation>Data is given to the output service is the form of a table. The columns of the table represent the fields used in dataSet definition. </xs:documentation>
  21. </xs:annotation>
  22. <xs:complexType>
  23. <xs:all>
  24. <xs:element name="dataSetFields" minOccurs="0">
  25. <xs:annotation>
  26. <xs:documentation>The fields used in the dataSet defintion. The order of these fields must match the order in the dataSetData representation.</xs:documentation>
  27. </xs:annotation>
  28. <xs:complexType>
  29. <xs:sequence>
  30. <xs:choice maxOccurs="unbounded">
  31. <xs:element name="categoryField">
  32. <xs:complexType>
  33. <xs:all>
  34. <xs:element ref="fieldPropertyValues" minOccurs="0"/>
  35. <xs:element ref="label" minOccurs="0"/>
  36. </xs:all>
  37. <xs:attribute name="name" type="xs:string" use="required"/>
  38. </xs:complexType>
  39. </xs:element>
  40. <xs:element name="valueField">
  41. <xs:annotation>
  42. <xs:documentation>The min, max attributes represent the range of data that this field should be visualized within.</xs:documentation>
  43. </xs:annotation>
  44. <xs:complexType>
  45. <xs:all>
  46. <xs:element ref="fieldPropertyValues" minOccurs="0"/>
  47. <xs:element ref="label" minOccurs="0"/>
  48. <xs:element ref="dataFormat" minOccurs="0">
  49. <xs:annotation>
  50. <xs:documentation>Default data formatting for the field values. Overriden by any formatted specified for the rows of the field.</xs:documentation>
  51. </xs:annotation>
  52. </xs:element>
  53. <xs:element name="dataFormatForRows" minOccurs="0">
  54. <xs:complexType>
  55. <xs:sequence>
  56. <xs:element name="dataFormatForRow" maxOccurs="unbounded">
  57. <xs:annotation>
  58. <xs:documentation>Data format to be used for a specific row in the data for this field</xs:documentation>
  59. </xs:annotation>
  60. <xs:complexType>
  61. <xs:all>
  62. <xs:element ref="dataFormat">
  63. <xs:annotation>
  64. <xs:documentation>Default data formatting for the field values. Overriden by any formatted specified for the rows of the field.</xs:documentation>
  65. </xs:annotation>
  66. </xs:element>
  67. </xs:all>
  68. <xs:attribute name="rows" use="required">
  69. <xs:simpleType>
  70. <xs:restriction base="xs:string">
  71. <xs:pattern value="[0-9]+[0-9,]*"/>
  72. </xs:restriction>
  73. </xs:simpleType>
  74. </xs:attribute>
  75. </xs:complexType>
  76. </xs:element>
  77. </xs:sequence>
  78. </xs:complexType>
  79. </xs:element>
  80. </xs:all>
  81. <xs:attribute name="name" type="xs:string" use="required"/>
  82. <xs:attribute name="min" type="xs:decimal"/>
  83. <xs:attribute name="max" type="xs:decimal"/>
  84. </xs:complexType>
  85. </xs:element>
  86. </xs:choice>
  87. </xs:sequence>
  88. </xs:complexType>
  89. <xs:unique name="dataSetFieldUniqueness">
  90. <xs:selector xpath="*"/>
  91. <xs:field xpath="@name"/>
  92. </xs:unique>
  93. </xs:element>
  94. <xs:element name="dataSetData">
  95. <xs:annotation>
  96. <xs:documentation>JSON structure that represents the data for the vizualization. rowData section is the table of data to be vizualized. Any categorical values are referenced by index in the categoryData section.</xs:documentation>
  97. </xs:annotation>
  98. <xs:simpleType>
  99. <xs:restriction base="xs:string">
  100. <xs:whiteSpace value="preserve"/>
  101. </xs:restriction>
  102. </xs:simpleType>
  103. </xs:element>
  104. </xs:all>
  105. <xs:attribute name="name" type="xs:string" use="required"/>
  106. </xs:complexType>
  107. </xs:element>
  108. </xs:sequence>
  109. </xs:complexType>
  110. <xs:unique name="dataSetUniqueness">
  111. <xs:selector xpath="*"/>
  112. <xs:field xpath="@name"/>
  113. </xs:unique>
  114. </xs:element>
  115. <xs:element name="chartPropertyValues" minOccurs="0">
  116. <xs:complexType>
  117. <xs:sequence>
  118. <xs:element name="chartPropertyValue" maxOccurs="unbounded">
  119. <xs:complexType>
  120. <xs:simpleContent>
  121. <xs:extension base="xs:string">
  122. <xs:attribute name="name" type="xs:string" use="required"/>
  123. </xs:extension>
  124. </xs:simpleContent>
  125. </xs:complexType>
  126. </xs:element>
  127. </xs:sequence>
  128. </xs:complexType>
  129. <xs:unique name="chartPropertyUniqueness">
  130. <xs:selector xpath="*"/>
  131. <xs:field xpath="@name"/>
  132. </xs:unique>
  133. </xs:element>
  134. <xs:element ref="dataFormat" minOccurs="0">
  135. <xs:annotation>
  136. <xs:documentation>Default data formatting to be used for values in the chart. Overridden if more specific formatting can be found.</xs:documentation>
  137. </xs:annotation>
  138. </xs:element>
  139. </xs:all>
  140. <xs:attribute name="type" type="xs:string" use="required"/>
  141. </xs:complexType>
  142. </xs:element>
  143. <xs:element name="fieldPropertyValues">
  144. <xs:complexType>
  145. <xs:sequence>
  146. <xs:element name="fieldPropertyValue" maxOccurs="unbounded">
  147. <xs:complexType>
  148. <xs:simpleContent>
  149. <xs:extension base="xs:string">
  150. <xs:attribute name="name" type="xs:string" use="required"/>
  151. </xs:extension>
  152. </xs:simpleContent>
  153. </xs:complexType>
  154. </xs:element>
  155. </xs:sequence>
  156. </xs:complexType>
  157. <xs:unique name="fieldPropertyUniqueness">
  158. <xs:selector xpath="*"/>
  159. <xs:field xpath="@name"/>
  160. </xs:unique>
  161. </xs:element>
  162. <xs:element name="label" type="TextType"/>
  163. <xs:element name="dataFormat">
  164. <xs:complexType>
  165. <xs:choice>
  166. <xs:element name="numberFormat">
  167. <xs:annotation>
  168. <xs:documentation>Defines attributes of the decimal numeric format. In addition to the attributes for an integer numeric format, decimal format supports decimal digits, delimiter and scientific notation.</xs:documentation>
  169. <xs:documentation source="ebnf/EBNF_LayoutPatterns.xml#NumberFormat"/>
  170. </xs:annotation>
  171. <xs:complexType>
  172. <xs:attribute name="useScientific" type="xs:boolean">
  173. <xs:annotation>
  174. <xs:documentation>Boolean flag to render value in scientific notation; that is, "0.123 E+03". When true, numeric value will be rendered in scientific notation. Otherwise, value will be rendered in decimal format whenever possible, as suggested by the precision attribute. Default value is inherited from user's locale.</xs:documentation>
  175. </xs:annotation>
  176. </xs:attribute>
  177. <xs:attribute name="exponentSize" type="xs:nonNegativeInteger">
  178. <xs:annotation>
  179. <xs:documentation>Count of digits to be displayed following the exponent symbol when rendering in scientific notation. Default value is inherited from user's locale.</xs:documentation>
  180. </xs:annotation>
  181. </xs:attribute>
  182. <xs:attribute name="exponentSymbol" type="xs:string">
  183. <xs:annotation>
  184. <xs:documentation>Character(s) to be displayed as exponent symbol when rendering in scientific notation. Will be rendered following numeric value (mantissa), separated by a space. If a space is desired between symbol and exponent value, it should be included in this attribute. Default value is inherited from user's locale.</xs:documentation>
  185. </xs:annotation>
  186. </xs:attribute>
  187. <xs:attributeGroup ref="CommonFormatAttributes"/>
  188. <xs:attributeGroup ref="DecimalFormatAttributes"/>
  189. <xs:attributeGroup ref="CommonNonStringFormatAttributes"/>
  190. </xs:complexType>
  191. </xs:element>
  192. <xs:element name="currencyFormat">
  193. <xs:annotation>
  194. <xs:documentation>Defines attributes of a numeric currency format.</xs:documentation>
  195. <xs:documentation source="ebnf/EBNF_LayoutPatterns.xml#NumberFormat"/>
  196. </xs:annotation>
  197. <xs:complexType>
  198. <xs:attribute name="currencyCode" type="xs:string">
  199. <xs:annotation>
  200. <xs:documentation>Unique code that identifies currency. ISO 4217 country code is recommended. When omitted, currency is identified by what the query engine can infer from the model for the dataItem and if nothing then it uses the currency associated with the user's content locale.</xs:documentation>
  201. </xs:annotation>
  202. </xs:attribute>
  203. <xs:attribute name="currencySymbol" type="xs:string">
  204. <xs:annotation>
  205. <xs:documentation>Character code to be displayed to identify local currency of numeric value. These character will be precede the numeric value and any [leading] sign. If a blank character is desired between numeric value and this symbol, it should be specified in this attribute. Default value is inherited from user's locale.</xs:documentation>
  206. </xs:annotation>
  207. </xs:attribute>
  208. <xs:attribute name="intlCurrencySymbol" type="xs:string">
  209. <xs:annotation>
  210. <xs:documentation>Character code to be displayed to identify international currency of numeric value. These character will be precede the numeric value and any [leading] sign. If a blank character is desired between numeric value and this symbol, it should be specified in this attribute. Default value is inherited from user's locale.</xs:documentation>
  211. </xs:annotation>
  212. </xs:attribute>
  213. <xs:attribute name="useIntlSymbol" type="xs:boolean">
  214. <xs:annotation>
  215. <xs:documentation>When "true", international currency symbol will be used instead of local currency symbol. Default value is inherited from user's locale.</xs:documentation>
  216. </xs:annotation>
  217. </xs:attribute>
  218. <xs:attribute name="useTrailingSymbol" type="xs:boolean">
  219. <xs:annotation>
  220. <xs:documentation>When "true", characters in [international] currency symbol attribute will be appended to the numeric value and any trailing sign. Any whitespace characters at end of chosen symbol attribute value will be rendered between numeric value and trailing sign. Default value is inherited from user's locale.</xs:documentation>
  221. </xs:annotation>
  222. </xs:attribute>
  223. <xs:attributeGroup ref="CommonFormatAttributes"/>
  224. <xs:attributeGroup ref="DecimalFormatAttributes"/>
  225. <xs:attributeGroup ref="CommonNonStringFormatAttributes"/>
  226. </xs:complexType>
  227. </xs:element>
  228. <xs:element name="percentFormat">
  229. <xs:annotation>
  230. <xs:documentation>Defines attributes of a numeric percentage or per mille format.</xs:documentation>
  231. <xs:documentation source="ebnf/EBNF_LayoutPatterns.xml#NumberFormat"/>
  232. </xs:annotation>
  233. <xs:complexType>
  234. <xs:attribute name="percentSymbol" type="xs:string">
  235. <xs:annotation>
  236. <xs:documentation>Characters to be displayed to identify precent or per mille value. These characters will be appended to the numeric value and any trailing sign. If a blank character is desired between numeric value and this trailing symbol, it should be specified in this attribute. If omitted, symbol will be inherited from user's locale.</xs:documentation>
  237. </xs:annotation>
  238. </xs:attribute>
  239. <xs:attribute name="percentScale" type="xs:nonPositiveInteger">
  240. <xs:annotation>
  241. <xs:documentation>Scale to be applied to value after formatting. If omitted, no percent scale will be applied and the value will formatted according the normal decimal positioning associated with the percent (or permille) symbol.
  242. </xs:documentation>
  243. </xs:annotation>
  244. </xs:attribute>
  245. <xs:attributeGroup ref="CommonFormatAttributes"/>
  246. <xs:attributeGroup ref="DecimalFormatAttributes"/>
  247. <xs:attributeGroup ref="CommonNonStringFormatAttributes"/>
  248. </xs:complexType>
  249. </xs:element>
  250. </xs:choice>
  251. </xs:complexType>
  252. </xs:element>
  253. <xs:simpleType name="TextType">
  254. <xs:annotation>
  255. <xs:documentation>A simple text type that preserves whitespace</xs:documentation>
  256. </xs:annotation>
  257. <xs:restriction base="xs:string">
  258. <xs:whiteSpace value="preserve"/>
  259. </xs:restriction>
  260. </xs:simpleType>
  261. <xs:attributeGroup name="CommonFormatAttributes">
  262. <xs:attribute name="whenMissing" type="xs:string">
  263. <xs:annotation>
  264. <xs:documentation>Characters to be displayed when value to be formatted is missing. If omitted, an empty string is displayed.</xs:documentation>
  265. </xs:annotation>
  266. </xs:attribute>
  267. </xs:attributeGroup>
  268. <xs:attributeGroup name="IntegerFormatAttributes">
  269. <xs:attribute name="sign" type="xs:string">
  270. <xs:annotation>
  271. <xs:documentation>Specifies which character or characters to display before negative numeric values. To display a space between a negative sign and the numeric value, specify it in this attribute. The default value will be inherited from the user's locale.</xs:documentation>
  272. </xs:annotation>
  273. </xs:attribute>
  274. <xs:attribute name="useTrailingSign" type="xs:boolean">
  275. <xs:annotation>
  276. <xs:documentation>When "true", the characters indicated by "sign" attribute will be appended to numeric value. Any whitespace characters at end of sign attribute value will be rendered between numeric value and [trailing] sign. When "false", sign attribute value will precede numeric value. Default value will be inherited from user's locale.</xs:documentation>
  277. </xs:annotation>
  278. </xs:attribute>
  279. <xs:attribute name="maxDigits" type="xs:nonNegativeInteger">
  280. <xs:annotation>
  281. <xs:documentation>Maximum count of digits to be displayed on the left-hand side of decimal point. If value exceeds this limitation, scientific notation will be used. Default value is inherited from user's locale.</xs:documentation>
  282. </xs:annotation>
  283. </xs:attribute>
  284. <xs:attribute name="minDigits" type="xs:nonNegativeInteger">
  285. <xs:annotation>
  286. <xs:documentation>Minimum count of digits to be displayed on the left-hand side of decimal point. If value to be formatted has fewer digits than this limitation, padding characters will be applied to left side of formatted value until minimum digit count is achieved. Default value is inherited from user's locale.</xs:documentation>
  287. </xs:annotation>
  288. </xs:attribute>
  289. <xs:attribute name="paddingCharacter" type="xs:string">
  290. <xs:annotation>
  291. <xs:documentation>When magnitude of value is less than minimum digits attribute, padding characters will be prepended to value until minimum digits restriction is satisfied. Default value is inherited from user's locale.</xs:documentation>
  292. </xs:annotation>
  293. </xs:attribute>
  294. <xs:attribute name="scale" type="xs:short">
  295. <xs:annotation>
  296. <xs:documentation>Number of digits to shift decimal place from actual location for formatting purposes. This attribute is handy when displaying values in "thousands of dollars", or when whole numbers are stored in the database, but they actually represent values with X decimal places. Positive values shift the decimal place to the right, whereas negative values shift the decimal point to the left. Default value is inherited from database column.</xs:documentation>
  297. <xs:documentation source="doc_att_format_scale"/>
  298. </xs:annotation>
  299. </xs:attribute>
  300. <xs:attribute name="useGrouping" type="xs:boolean">
  301. <xs:annotation>
  302. <xs:documentation>When "true", grouping delimiter is applied as defined by grouping size attributes. Default value will be inherited from user's locale.</xs:documentation>
  303. </xs:annotation>
  304. </xs:attribute>
  305. <xs:attribute name="groupDelimiter" type="xs:string">
  306. <xs:annotation>
  307. <xs:documentation>Character delimiter for digit groups. Also known as "thousands separator", this delimiter is applicable only when digit grouping is enabled (i.e. groupDigits attribute is non-zero). Default value is inherited from user's locale.</xs:documentation>
  308. </xs:annotation>
  309. </xs:attribute>
  310. <xs:attribute name="groupSize" type="xs:positiveInteger">
  311. <xs:annotation>
  312. <xs:documentation>This is the primary grouping size, which represents the count of digits left of the decimal point to be grouped together and separated by groupDelimiter character. Default value is inherited from user's locale.</xs:documentation>
  313. </xs:annotation>
  314. </xs:attribute>
  315. <xs:attribute name="groupSecondarySize" type="xs:positiveInteger">
  316. <xs:annotation>
  317. <xs:documentation>Some locales support a secondary grouping size that is applied to the left of the primary group. If specified, this attribute is the count of digits left of [primary] digit group that should be grouped together and separated by groupDelimiter character. If omitted, seconday grouping of digits is same as primary grouping [see groupSize attribute].</xs:documentation>
  318. </xs:annotation>
  319. </xs:attribute>
  320. <xs:attribute name="whenNegative" type="xs:string">
  321. <xs:annotation>
  322. <xs:documentation source="http://www-124.ibm.com/icu/apiref/classDecimalFormat.html#_details">Negative numeric format; 'pattern' attribute is used for positive numbers. Some restrictions apply (see http://www-124.ibm.com/icu/apiref/classDecimalFormat.html#_details).</xs:documentation>
  323. </xs:annotation>
  324. </xs:attribute>
  325. <xs:attribute name="whenZero" type="xs:string">
  326. <xs:annotation>
  327. <xs:documentation>Characters to be displayed when numeric value is zero. If omitted, significance attribute determines number of zeroes to display.</xs:documentation>
  328. </xs:annotation>
  329. </xs:attribute>
  330. </xs:attributeGroup>
  331. <xs:attributeGroup name="DecimalFormatAttributes">
  332. <xs:attribute name="decimalSize" type="xs:nonNegativeInteger">
  333. <xs:annotation>
  334. <xs:documentation>Count of digits to be displayed to right of decimal point. If omitted, fractional [decimal] digits will be displayed as required.</xs:documentation>
  335. </xs:annotation>
  336. </xs:attribute>
  337. <xs:attribute name="decimalDelimiter" type="xs:string">
  338. <xs:annotation>
  339. <xs:documentation>Character delimiter between whole and fractional components of a floating-point number. Also known as "decimal point", this delimiter is applicable only when fractional digits are presented (i.e. decimals attribute is non-zero). Default value is inherited from user's locale.</xs:documentation>
  340. </xs:annotation>
  341. </xs:attribute>
  342. <xs:attributeGroup ref="IntegerFormatAttributes"/>
  343. </xs:attributeGroup>
  344. <xs:attributeGroup name="CommonNonStringFormatAttributes">
  345. <xs:annotation>
  346. <xs:documentation>These attributies define the common properties for non-string formats.</xs:documentation>
  347. </xs:annotation>
  348. <xs:attribute name="digitShaping">
  349. <xs:annotation>
  350. <xs:documentation>The digit shape or system used for displaying numbers. If omitted, the numbers will be nationally shaped.</xs:documentation>
  351. </xs:annotation>
  352. <xs:simpleType>
  353. <xs:restriction base="xs:string">
  354. <xs:enumeration value="national">
  355. <xs:annotation>
  356. <xs:documentation>Digits will be shaped according to the locale.</xs:documentation>
  357. </xs:annotation>
  358. </xs:enumeration>
  359. <xs:enumeration value="none">
  360. <xs:annotation>
  361. <xs:documentation>No digit shaping is performed.</xs:documentation>
  362. </xs:annotation>
  363. </xs:enumeration>
  364. </xs:restriction>
  365. </xs:simpleType>
  366. </xs:attribute>
  367. </xs:attributeGroup>
  368. </xs:schema>