V5_layoutbase.xsd 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!--
  3. Licensed Materials - Property of IBM
  4. IBM Cognos Products: rspec
  5. (C) Copyright IBM Corp. 2003, 2014
  6. US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
  7. -->
  8. <!--
  9. Copyright (C) 2008 Cognos ULC, an IBM Company. All rights reserved.
  10. Cognos (R) is a trademark of Cognos ULC, (formerly Cognos Incorporated).
  11. -->
  12. <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
  13. <xs:include schemaLocation="V5_base.xsd"/>
  14. <xs:include schemaLocation="V5_style.xsd"/>
  15. <xs:element name="conditionalRender">
  16. <xs:annotation>
  17. <xs:documentation>If this element is defined the n the layout element containing it will be conditionally rendered based on the evaluation of the variable referenced. If the variable is of type boolean, then the renderFor is not required.</xs:documentation>
  18. </xs:annotation>
  19. <xs:complexType>
  20. <xs:sequence>
  21. <xs:element name="renderFor" minOccurs="0" maxOccurs="unbounded">
  22. <xs:annotation>
  23. <xs:documentation>The layout element will be rendered if the variable evaulates to this value.</xs:documentation>
  24. </xs:annotation>
  25. <xs:complexType>
  26. <xs:attributeGroup ref="ConditionalPartAttributes"/>
  27. </xs:complexType>
  28. </xs:element>
  29. </xs:sequence>
  30. <xs:attributeGroup ref="ConditionalOwnerAttributes"/>
  31. </xs:complexType>
  32. </xs:element>
  33. <xs:element name="XMLAttributes">
  34. <xs:annotation>
  35. <xs:documentation>Allow for specification of arbirary name value pairs in the layout.</xs:documentation>
  36. </xs:annotation>
  37. <xs:complexType>
  38. <xs:sequence maxOccurs="unbounded">
  39. <xs:element name="XMLAttribute">
  40. <xs:complexType>
  41. <xs:attribute name="name" type="xs:string" use="required">
  42. <xs:annotation>
  43. <xs:documentation>Identifies the user data. Because this data is undefined in the enclosing specification, it is the author's responsibility to constrain this value with respect to the unique scoping rules of their application.</xs:documentation>
  44. </xs:annotation>
  45. </xs:attribute>
  46. <xs:attribute name="value" type="xs:string" use="required">
  47. <xs:annotation>
  48. <xs:documentation>Defines the value of the name-value pair.</xs:documentation>
  49. <xs:documentation source="doc_att_value_XMLAttribute"/>
  50. </xs:annotation>
  51. </xs:attribute>
  52. <xs:attribute name="render" type="xs:boolean" default="true">
  53. <xs:annotation>
  54. <xs:documentation>Appends this attribute specification in the output XML. When 'false', this specification will not appear in the output: it serves as annotation only within the report specification.</xs:documentation>
  55. </xs:annotation>
  56. </xs:attribute>
  57. </xs:complexType>
  58. </xs:element>
  59. </xs:sequence>
  60. </xs:complexType>
  61. </xs:element>
  62. <xs:element name="dataSource" type="DataSourceType">
  63. <xs:annotation>
  64. <xs:documentation>Defines a data source for a layout element. The data may be obtained from either a static value, the result of a query data item or the result of evaluating a layout expression.</xs:documentation>
  65. </xs:annotation>
  66. </xs:element>
  67. <xs:element name="conditionalDataSources">
  68. <xs:annotation>
  69. <xs:documentation>Contains a list of conditional data sources. When rendering, the variable pointed to by refVariable will be eveluated and the first conditionalDataSource whose refVariableValue matches the value of the expression will be used. If no match is found, dataSource of the parent element will be applied. </xs:documentation>
  70. </xs:annotation>
  71. <xs:complexType>
  72. <xs:sequence>
  73. <xs:element name="conditionalDataSource" maxOccurs="unbounded">
  74. <xs:complexType>
  75. <xs:complexContent>
  76. <xs:extension base="DataSourceType">
  77. <xs:attributeGroup ref="ConditionalPartAttributes"/>
  78. </xs:extension>
  79. </xs:complexContent>
  80. </xs:complexType>
  81. </xs:element>
  82. </xs:sequence>
  83. <xs:attributeGroup ref="ConditionalOwnerAttributes"/>
  84. </xs:complexType>
  85. </xs:element>
  86. <xs:element name="reportExpression" type="ExpressionType">
  87. <xs:annotation>
  88. <xs:documentation>An expression that is evaluated by the rendering engine at the current rendering context.
  89. Query data item references can be either qualified or un-qualified (e.g. [MasterQuery].[Column1] or [Column1]).
  90. Only un-qualified references are put into the result set definition.
  91. </xs:documentation>
  92. <xs:documentation source="ebnf/EBNF_CRXExpressionGrammar.xml#CRXExpression">Allowable Expression Syntax in EBNF</xs:documentation>
  93. </xs:annotation>
  94. </xs:element>
  95. <xs:element name="defaultMeasure">
  96. <xs:annotation>
  97. <xs:documentation>This element identifies the default measure to be used for a crosstab or chart. If the measures of the crosstab or chart cannot be determined by what is being rendered on the edges, then the default measure will be rendered.</xs:documentation>
  98. </xs:annotation>
  99. <xs:complexType>
  100. <xs:attribute name="refDataItem" type="xs:string" use="required"/>
  101. <xs:attributeGroup ref="SolveOrderAttributes"/>
  102. </xs:complexType>
  103. </xs:element>
  104. <xs:element name="reportDrills">
  105. <xs:annotation>
  106. <xs:documentation>Defines a list of drills.</xs:documentation>
  107. </xs:annotation>
  108. <xs:complexType>
  109. <xs:sequence>
  110. <xs:element name="reportDrill" maxOccurs="unbounded">
  111. <xs:annotation>
  112. <xs:documentation>Represents a drill action that is available for this layout element.</xs:documentation>
  113. </xs:annotation>
  114. <xs:complexType>
  115. <xs:all>
  116. <xs:element name="drillTarget" minOccurs="0">
  117. <xs:annotation>
  118. <xs:documentation>Optionally identify the report that is the destination of the drill. If not specified, then the drill is within this report.</xs:documentation>
  119. </xs:annotation>
  120. <xs:complexType>
  121. <xs:all>
  122. <xs:element ref="reportPath"/>
  123. <xs:element name="drillLinks" minOccurs="0">
  124. <xs:complexType>
  125. <xs:sequence>
  126. <xs:element name="drillLink" maxOccurs="unbounded">
  127. <xs:complexType>
  128. <xs:all>
  129. <xs:element name="drillSourceContext" minOccurs="0">
  130. <xs:annotation>
  131. <xs:documentation>The source context is optional to indicate that no value is being provided for the target parameter. If the target parameter is optional then no prompting should occur.</xs:documentation>
  132. </xs:annotation>
  133. <xs:complexType>
  134. <xs:choice>
  135. <xs:element ref="dataItemContext"/>
  136. <xs:element ref="parameterContext"/>
  137. </xs:choice>
  138. </xs:complexType>
  139. </xs:element>
  140. <xs:element name="drillTargetContext">
  141. <xs:complexType>
  142. <xs:choice>
  143. <xs:element ref="parameterContext"/>
  144. </xs:choice>
  145. </xs:complexType>
  146. </xs:element>
  147. </xs:all>
  148. </xs:complexType>
  149. </xs:element>
  150. </xs:sequence>
  151. </xs:complexType>
  152. </xs:element>
  153. </xs:all>
  154. <xs:attribute name="showInNewWindow" type="xs:boolean" default="false">
  155. <xs:annotation>
  156. <xs:documentation>Indicates whether or not the report is launched in a new window.</xs:documentation>
  157. </xs:annotation>
  158. </xs:attribute>
  159. <xs:attribute name="method" use="optional">
  160. <xs:annotation>
  161. <xs:documentation>Indicates with what method the target report is to be accessed:
  162. - no method specified - the drill through target is launched according to the default action in the portal
  163. - method="edit" - the drill through target is launched with the editor appropriate for the object type in the object model
  164. - method="execute" - the drill through target is launched (and executed) in the report viewer
  165. - method="view" - the report output for the drill through target is viewed in the report viewer
  166. </xs:documentation>
  167. </xs:annotation>
  168. <xs:simpleType>
  169. <xs:restriction base="xs:string">
  170. <xs:enumeration value="edit"/>
  171. <xs:enumeration value="execute"/>
  172. <xs:enumeration value="view"/>
  173. </xs:restriction>
  174. </xs:simpleType>
  175. </xs:attribute>
  176. <xs:attribute name="outputFormat" use="optional">
  177. <xs:annotation>
  178. <xs:documentation>Specifies what format to produce or view. If missing, the format of the report from which the drill originates is used.</xs:documentation>
  179. </xs:annotation>
  180. <xs:simpleType>
  181. <xs:restriction base="xs:string">
  182. <xs:enumeration value="CSV"/>
  183. <xs:enumeration value="HTML"/>
  184. <xs:enumeration value="HTMLFragment"/>
  185. <xs:enumeration value="PDF"/>
  186. <xs:enumeration value="XHTML"/>
  187. <xs:enumeration value="XLS"/>
  188. <xs:enumeration value="XLWA"/>
  189. <xs:enumeration value="singleXLS"/>
  190. <xs:enumeration value="XML"/>
  191. </xs:restriction>
  192. </xs:simpleType>
  193. </xs:attribute>
  194. </xs:complexType>
  195. </xs:element>
  196. <xs:element name="bookmarkRef" minOccurs="0">
  197. <xs:annotation>
  198. <xs:documentation>Defines which bookmark to jump to.</xs:documentation>
  199. </xs:annotation>
  200. <xs:complexType>
  201. <xs:all>
  202. <xs:element ref="dataSource"/>
  203. </xs:all>
  204. </xs:complexType>
  205. </xs:element>
  206. <xs:element name="drillLabel">
  207. <xs:annotation>
  208. <xs:documentation>Label which will appear if the user must choose between different report drills.</xs:documentation>
  209. </xs:annotation>
  210. <xs:complexType>
  211. <xs:all>
  212. <xs:element ref="dataSource"/>
  213. <xs:element ref="conditionalDataSources" minOccurs="0"/>
  214. </xs:all>
  215. </xs:complexType>
  216. </xs:element>
  217. </xs:all>
  218. <xs:attribute name="name" type="xs:string" use="required">
  219. <xs:annotation>
  220. <xs:documentation>Uniquely names the report drill in this report. </xs:documentation>
  221. </xs:annotation>
  222. </xs:attribute>
  223. </xs:complexType>
  224. </xs:element>
  225. </xs:sequence>
  226. </xs:complexType>
  227. </xs:element>
  228. <xs:element name="masterDetailLinks">
  229. <xs:annotation>
  230. <xs:documentation>Defines the master/detail linkages for the detail layout element that this is contained in. If there are no masterDetailLink defined, then the detail query is run unfiltered.</xs:documentation>
  231. </xs:annotation>
  232. <xs:complexType>
  233. <xs:sequence>
  234. <xs:element name="masterDetailLink" minOccurs="0" maxOccurs="unbounded">
  235. <xs:annotation>
  236. <xs:documentation>Links a member set or parameter of the master query to a member set or parameter in the detail query.</xs:documentation>
  237. </xs:annotation>
  238. <xs:complexType>
  239. <xs:all>
  240. <xs:element name="masterContext">
  241. <xs:complexType>
  242. <xs:choice>
  243. <xs:element ref="dataItemContext"/>
  244. </xs:choice>
  245. </xs:complexType>
  246. </xs:element>
  247. <xs:element name="detailContext">
  248. <xs:complexType>
  249. <xs:choice>
  250. <xs:element ref="dataItemContext"/>
  251. <xs:element ref="parameterContext"/>
  252. </xs:choice>
  253. </xs:complexType>
  254. </xs:element>
  255. </xs:all>
  256. </xs:complexType>
  257. </xs:element>
  258. </xs:sequence>
  259. </xs:complexType>
  260. </xs:element>
  261. <xs:element name="reportPath">
  262. <xs:annotation>
  263. <xs:documentation>Used to define a path to a report in Content Manager. The path attribute contains the Content Manger path. </xs:documentation>
  264. </xs:annotation>
  265. <xs:complexType>
  266. <xs:all>
  267. <xs:element ref="XMLAttributes" minOccurs="0"/>
  268. </xs:all>
  269. <xs:attribute name="path" type="xs:string" use="required"/>
  270. </xs:complexType>
  271. </xs:element>
  272. <xs:element name="dataItemContext">
  273. <xs:complexType>
  274. <xs:attribute name="refDataItem" type="xs:string" use="required"/>
  275. </xs:complexType>
  276. </xs:element>
  277. <xs:element name="parameterContext">
  278. <xs:complexType>
  279. <xs:attribute name="parameter" type="xs:string" use="required"/>
  280. </xs:complexType>
  281. </xs:element>
  282. <xs:element name="propertyList">
  283. <xs:annotation>
  284. <xs:documentation>Identifies dataItems that will behave as properties of whichever layout element contains this list. A dataItem listed here will have data available at rendering time at this place in the layout context.</xs:documentation>
  285. </xs:annotation>
  286. <xs:complexType>
  287. <xs:sequence>
  288. <xs:element name="propertyItem" maxOccurs="unbounded">
  289. <xs:complexType>
  290. <xs:attribute name="refDataItem" type="xs:string" use="required"/>
  291. </xs:complexType>
  292. </xs:element>
  293. </xs:sequence>
  294. </xs:complexType>
  295. </xs:element>
  296. <xs:complexType name="DataSourceType">
  297. <xs:choice>
  298. <xs:element name="staticValue">
  299. <xs:simpleType>
  300. <xs:restriction base="xs:string">
  301. <xs:whiteSpace value="preserve"/>
  302. </xs:restriction>
  303. </xs:simpleType>
  304. </xs:element>
  305. <xs:element name="dataItemValue">
  306. <xs:annotation>
  307. <xs:documentation>Represents the value of the specificied data item that is available in the current layout context.</xs:documentation>
  308. </xs:annotation>
  309. <xs:complexType>
  310. <xs:attribute name="refDataItem" type="xs:string" use="required"/>
  311. </xs:complexType>
  312. </xs:element>
  313. <xs:element ref="reportExpression"/>
  314. <xs:element name="dataItemLabel">
  315. <xs:annotation>
  316. <xs:documentation>Represent the label of the data item specifiied. The label is available in the result set.</xs:documentation>
  317. </xs:annotation>
  318. <xs:complexType>
  319. <xs:attribute name="refDataItem" type="xs:string" use="required"/>
  320. </xs:complexType>
  321. </xs:element>
  322. <xs:element name="memberCaption">
  323. <xs:annotation>
  324. <xs:documentation>Represents the caption of the current member context being rendered in the layout. This element is only allowed within a crosstabs or charts where edge members are rendered.</xs:documentation>
  325. </xs:annotation>
  326. <xs:complexType/>
  327. </xs:element>
  328. <xs:element name="cellValue">
  329. <xs:annotation>
  330. <xs:documentation>Represents the value of the current cell context being rendered in the layout. This element is only for crosstabs or charts where the cell values are rendered.</xs:documentation>
  331. </xs:annotation>
  332. <xs:complexType/>
  333. </xs:element>
  334. </xs:choice>
  335. </xs:complexType>
  336. <xs:complexType name="GenericLayoutStyleType">
  337. <xs:all>
  338. <xs:element ref="style" minOccurs="0"/>
  339. <xs:element ref="conditionalStyles" minOccurs="0"/>
  340. <xs:element ref="XMLAttributes" minOccurs="0"/>
  341. </xs:all>
  342. <xs:attributeGroup ref="DefaultLayoutStyleAttributes"/>
  343. </xs:complexType>
  344. <xs:attributeGroup name="DefaultLayoutStyleAttributes">
  345. <xs:attribute name="class" type="xs:string">
  346. <xs:annotation>
  347. <xs:documentation>HTML class name. This value will be transferred to the rendered output as an attribute of the output element. Typically, it is used to designate specific components of the layout for easy identification by CSS and XSL style sheets. The class name is explicit in that if no class name is specified then none will be used in the rendered output.</xs:documentation>
  348. </xs:annotation>
  349. </xs:attribute>
  350. </xs:attributeGroup>
  351. <xs:attributeGroup name="NameLayoutAttributes">
  352. <xs:attribute name="name" type="xs:string">
  353. <xs:annotation>
  354. <xs:documentation>Any layout element may be given a name. The name must be unique for all layout elements in the report. It is primarily allow a layout element to be referenced as a component (layoutComponentRef).</xs:documentation>
  355. </xs:annotation>
  356. </xs:attribute>
  357. </xs:attributeGroup>
  358. <xs:attributeGroup name="CommonLayoutAttributes">
  359. <xs:attributeGroup ref="DefaultLayoutStyleAttributes"/>
  360. <xs:attributeGroup ref="NameLayoutAttributes"/>
  361. </xs:attributeGroup>
  362. <xs:attributeGroup name="KeepWithAttributes">
  363. <xs:annotation>
  364. <xs:documentation/>
  365. </xs:annotation>
  366. <xs:attribute name="keepWithHeader" type="xs:positiveInteger">
  367. <xs:annotation>
  368. <xs:documentation>Renders all headers on same page as first N detail rows, where 'N' is the given numeric value. If not specified then a page break may occur between headers and their associated detail rows. </xs:documentation>
  369. </xs:annotation>
  370. </xs:attribute>
  371. <xs:attribute name="keepWithFooter" type="xs:positiveInteger">
  372. <xs:annotation>
  373. <xs:documentation>Renders all footers on same page as last N detail rows, where 'N' is the given numeric value. If not specified then a page break may occur between footers and their associated detail rows.</xs:documentation>
  374. </xs:annotation>
  375. </xs:attribute>
  376. </xs:attributeGroup>
  377. <xs:attributeGroup name="KeepWithNextPrevAttributes">
  378. <xs:attribute name="keepWithNext" type="xs:positiveInteger">
  379. <xs:annotation>
  380. <xs:documentation>Renders this element with the N next elements on the edge, where 'N' is the given numeric value. If not specified then a page break may occur between this element and the next element on the edge. </xs:documentation>
  381. </xs:annotation>
  382. </xs:attribute>
  383. <xs:attribute name="keepWithPrevious" type="xs:positiveInteger">
  384. <xs:annotation>
  385. <xs:documentation>Renders this element with the N previous elements on the edge, where 'N' is the given numeric value. If not specified then a page break may occur between this element and the previous element on the edge. </xs:documentation>
  386. </xs:annotation>
  387. </xs:attribute>
  388. </xs:attributeGroup>
  389. <xs:attributeGroup name="ResetPageAttributes">
  390. <xs:attribute name="resetPageNumber" type="xs:positiveInteger">
  391. <xs:annotation>
  392. <xs:documentation>If this attribute is specified, then whenever this layout element is rendered, the current page number for the rendering will be reset to the indicated value.</xs:documentation>
  393. </xs:annotation>
  394. </xs:attribute>
  395. <xs:attribute name="resetPageCount" type="xs:positiveInteger">
  396. <xs:annotation>
  397. <xs:documentation>If this attribute is specified, then whenever this layout element is rendered, the current page count for the rendering will be reset to the indicated value.</xs:documentation>
  398. </xs:annotation>
  399. </xs:attribute>
  400. </xs:attributeGroup>
  401. <xs:attributeGroup name="RepeatEveryPageAttributes">
  402. <xs:attribute name="repeatEveryPage" type="xs:boolean" default="false">
  403. <xs:annotation>
  404. <xs:documentation>Controls repetitive rendering of this object on each page. When the frame contains more columns than can be rendered on a given page, an overflow (or "fault right") occurs. When the frame contains more rows than can be rendered on a given page, an page break (or "fault down") occurs. When 'true', this object will be rendered on the next or overflow page. </xs:documentation>
  405. </xs:annotation>
  406. </xs:attribute>
  407. </xs:attributeGroup>
  408. <xs:attributeGroup name="GlobalQuerySingletonAttributes">
  409. <xs:annotation>
  410. <xs:documentation> Any element that has these attributes can act as a global singleton. All elements in the layout that reference same query and have singleton="true" would share the same result set, the row cursor would never be moved pass row 1. All elements in the layout (not including frames) that reference the same query and have singleton="false" would use the resultset of the closest parent frame that references that query, the row context in this case is clear. If no parent frame can be found, then no value will be rendered.
  411. </xs:documentation>
  412. </xs:annotation>
  413. <xs:attribute name="refQuery" type="xs:string" use="optional"/>
  414. <xs:attribute name="singleton" type="xs:boolean" default="false"/>
  415. </xs:attributeGroup>
  416. <xs:attributeGroup name="DescriptionLayoutAttributes">
  417. <xs:attribute name="description" type="xs:string" use="optional"/>
  418. </xs:attributeGroup>
  419. <xs:attributeGroup name="PushToBottom">
  420. <xs:annotation>
  421. <xs:documentation>This attribute indicates that the footer element is to be pushed to the bottom of the rendering. The last instance of the footer element rendered on this page will be the one pushed to the bottom.</xs:documentation>
  422. </xs:annotation>
  423. <xs:attribute name="pushToBottom" type="xs:boolean" default="false"/>
  424. </xs:attributeGroup>
  425. <xs:attributeGroup name="SolveOrderAttributes">
  426. <xs:attribute name="solveOrder" type="xs:integer" default="0">
  427. <xs:annotation>
  428. <xs:documentation source="doc_att_solveOrder_crosstabNodeMember"/>
  429. <xs:documentation source="doc_att_solveOrder_chartNodeMember"/>
  430. <xs:documentation source="doc_att_solveOrder_defaultMeasure"/>
  431. <xs:documentation>Specifies the solve order for this calculation. If no solve order is specified then the solve order will be follow the default rules that the server uses to determine solve order.</xs:documentation>
  432. </xs:annotation>
  433. </xs:attribute>
  434. </xs:attributeGroup>
  435. </xs:schema>