1<!--*********************************************************** 2 * 3 * Licensed to the Apache Software Foundation (ASF) under one 4 * or more contributor license agreements. See the NOTICE file 5 * distributed with this work for additional information 6 * regarding copyright ownership. The ASF licenses this file 7 * to you under the Apache License, Version 2.0 (the 8 * "License"); you may not use this file except in compliance 9 * with the License. You may obtain a copy of the License at 10 * 11 * http://www.apache.org/licenses/LICENSE-2.0 12 * 13 * Unless required by applicable law or agreed to in writing, 14 * software distributed under the License is distributed on an 15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16 * KIND, either express or implied. See the License for the 17 * specific language governing permissions and limitations 18 * under the License. 19 * 20 ***********************************************************--> 21 22 23 24<!ELEMENT table:calculation-settings (table:null-date?, table:iteration?)> 25<!ATTLIST table:calculation-settings 26 table:case-sensitive %boolean; "true" 27 table:precision-as-shown %boolean; "false" 28 table:search-criteria-must-apply-to-whole-cell %boolean; "true" 29 table:automatic-find-labels %boolean; "true" 30 table:use-regular-expressions %boolean; "true" 31 table:null-year %positiveInteger; "1930" 32> 33<!ELEMENT table:null-date EMPTY> 34<!ATTLIST table:null-date 35 table:value-type %valueType; #FIXED "date" 36 table:date-value %date; "1899-12-30" 37> 38<!ELEMENT table:iteration EMPTY> 39<!ATTLIST table:iteration 40 table:status (enable | disable) "disable" 41 table:steps %positiveInteger; "100" 42 table:maximum-difference %float; "0.001" 43> 44 45<!ELEMENT table:tracked-changes (table:cell-content-change | table:insertion | table:deletion | table:movement | table:rejection)*> 46<!ATTLIST table:tracked-changes table:track-changes %boolean; "true" 47 table:protected %boolean; "false" 48 table:protection-key CDATA #IMPLIED 49> 50 51<!ELEMENT table:dependences (table:dependence)+> 52<!ELEMENT table:dependence EMPTY> 53<!ATTLIST table:dependence 54 table:id CDATA #REQUIRED 55> 56<!ELEMENT table:deletions (table:cell-content-deletion | table:change-deletion)+> 57<!ELEMENT table:cell-content-deletion (table:cell-address?, table:change-track-table-cell?)> 58<!ATTLIST table:cell-content-deletion 59 table:id CDATA #IMPLIED 60> 61<!ELEMENT table:change-deletion EMPTY> 62<!ATTLIST table:change-deletion 63 table:id CDATA #IMPLIED 64> 65<!ELEMENT table:insertion (office:change-info, table:dependences?, table:deletions?)> 66<!ATTLIST table:insertion 67 table:id CDATA #REQUIRED 68 table:acceptance-state (accepted | rejected | pending) "pending" 69 table:rejecting-change-id %positiveInteger; #IMPLIED 70 table:type (row | column | table) #REQUIRED 71 table:position %integer; #REQUIRED 72 table:count %positiveInteger; "1" 73 table:table %integer; #IMPLIED 74> 75<!ELEMENT table:deletion (office:change-info, table:dependences?, table:deletions?, table:cut-offs?)> 76<!ATTLIST table:deletion 77 table:id CDATA #REQUIRED 78 table:acceptance-state (accepted | rejected | pending) "pending" 79 table:rejecting-change-id %positiveInteger; #IMPLIED 80 table:type (row | column | table) #REQUIRED 81 table:position %integer; #REQUIRED 82 table:count %positiveInteger; "1" 83 table:table %integer; #IMPLIED 84 table:multi-deletion-spanned %integer; #IMPLIED 85> 86<!ELEMENT table:cut-offs (table:movement-cut-off+ | (table:insertion-cut-off, table:movement-cut-off*))> 87<!ELEMENT table:insertion-cut-off EMPTY> 88<!ATTLIST table:insertion-cut-off 89 table:id CDATA #REQUIRED 90 table:position %integer; #REQUIRED 91> 92<!ELEMENT table:movement-cut-off EMPTY> 93<!ATTLIST table:movement-cut-off 94 table:id CDATA #REQUIRED 95 table:start-position %integer; #IMPLIED 96 table:end-position %integer; #IMPLIED 97 table:position %integer; #IMPLIED 98> 99<!ELEMENT table:movement (table:source-range-address, table:target-range-address, office:change-info, table:dependences?, table:deletions?)> 100<!ATTLIST table:movement 101 table:id CDATA #REQUIRED 102 table:acceptance-state (accepted | rejected | pending) "pending" 103 table:rejecting-change-id %positiveInteger; #IMPLIED 104> 105<!ELEMENT table:target-range-address EMPTY> 106<!ATTLIST table:target-range-address 107 table:column %integer; #IMPLIED 108 table:row %integer; #IMPLIED 109 table:table %integer; #IMPLIED 110 table:start-column %integer; #IMPLIED 111 table:start-row %integer; #IMPLIED 112 table:start-table %integer; #IMPLIED 113 table:end-column %integer; #IMPLIED 114 table:end-row %integer; #IMPLIED 115 table:end-table %integer; #IMPLIED 116> 117<!ELEMENT table:source-range-address EMPTY> 118<!ATTLIST table:source-range-address 119 table:column %integer; #IMPLIED 120 table:row %integer; #IMPLIED 121 table:table %integer; #IMPLIED 122 table:start-column %integer; #IMPLIED 123 table:start-row %integer; #IMPLIED 124 table:start-table %integer; #IMPLIED 125 table:end-column %integer; #IMPLIED 126 table:end-row %integer; #IMPLIED 127 table:end-table %integer; #IMPLIED 128> 129<!ELEMENT table:change-track-table-cell (text:p*)> 130<!ATTLIST table:change-track-table-cell 131 table:cell-address %cell-address; #IMPLIED 132 table:matrix-covered (true | false) "false" 133 table:formula %string; #IMPLIED 134 table:number-matrix-rows-spanned %positiveInteger; #IMPLIED 135 table:number-matrix-columns-spanned %positiveInteger; #IMPLIED 136 table:value-type %valueType; "string" 137 table:value %float; #IMPLIED 138 table:date-value %date; #IMPLIED 139 table:time-value %timeInstance; #IMPLIED 140 table:string-value %string; #IMPLIED 141> 142<!ELEMENT table:cell-content-change (table:cell-address, office:change-info, table:dependences?, table:deletions?, table:previous)> 143<!ATTLIST table:cell-content-change 144 table:id CDATA #REQUIRED 145 table:acceptance-state (accepted | rejected | pending) "pending" 146 table:rejecting-change-id %positiveInteger; #IMPLIED 147> 148<!ELEMENT table:cell-address EMPTY> 149<!ATTLIST table:cell-address 150 table:column %integer; #IMPLIED 151 table:row %integer; #IMPLIED 152 table:table %integer; #IMPLIED 153> 154<!ELEMENT table:previous (table:change-track-table-cell)> 155<!ATTLIST table:previous 156 table:id CDATA #IMPLIED 157> 158<!ELEMENT table:rejection (office:change-info, table:dependences?, table:deletions?)> 159<!ATTLIST table:rejection 160 table:id CDATA #REQUIRED 161 table:acceptance-state (accepted | rejected | pending) "pending" 162 table:rejecting-change-id %positiveInteger; #IMPLIED 163> 164 165<!ENTITY % table-columns "table:table-columns | ( table:table-column | table:table-column-group )+"> 166<!ENTITY % table-header-columns "table:table-header-columns"> 167<!ENTITY % table-rows "table:table-rows | ( table:table-row | table:table-row-group )+"> 168<!ENTITY % table-header-rows "table:table-header-rows"> 169<!ENTITY % table-column-groups "((%table-columns;),(%table-header-columns;,(%table-columns;)?)?) | (%table-header-columns;,(%table-columns;)?)"> 170<!ENTITY % table-row-groups "((%table-rows;),(%table-header-rows;,(%table-rows;)?)?) | (%table-header-rows;,(%table-rows;)?)"> 171<!ELEMENT table:table (table:table-source?, table:scenario?, office:forms?, table:shapes?, (%table-column-groups;), (%table-row-groups;))> 172<!ATTLIST table:table 173 table:name %string; #IMPLIED 174 table:style-name %styleName; #IMPLIED 175 table:protected %boolean; "false" 176 table:protection-key CDATA #IMPLIED 177 table:print-ranges %cell-range-address-list; #IMPLIED 178 table:automatic-print-range %boolean; #IMPLIED 179> 180<!ELEMENT table:table-source EMPTY> 181<!ATTLIST table:table-source 182 table:mode (copy-all | copy-results-only) "copy-all" 183 xlink:type (simple) #FIXED "simple" 184 xlink:actuate (onRequest) "onRequest" 185 xlink:href %uriReference; #REQUIRED 186 table:filter-name CDATA #IMPLIED 187 table:table-name CDATA #IMPLIED 188 table:filter-options CDATA #IMPLIED 189 table:refresh-delay %timeDuration; #IMPLIED 190> 191<!ELEMENT table:scenario EMPTY> 192<!ATTLIST table:scenario 193 table:display-border %boolean; "true" 194 table:border-color %color; #IMPLIED 195 table:copy-back %boolean; "true" 196 table:copy-styles %boolean; "true" 197 table:copy-formulas %boolean; "true" 198 table:is-active %boolean; #REQUIRED 199 table:scenario-ranges %cell-range-address-list; #REQUIRED 200 table:comment CDATA #IMPLIED 201> 202<!ELEMENT table:shapes %shapes;> 203<!ELEMENT table:table-column-group (table:table-header-columns | table:table-column | table:table-column-group)+> 204<!ATTLIST table:table-column-group 205 table:display %boolean; "true" 206> 207<!ELEMENT table:table-header-columns (table:table-column | table:table-column-group)+> 208<!ELEMENT table:table-columns (table:table-column | table:table-column-group)+> 209<!ELEMENT table:table-column EMPTY> 210<!ATTLIST table:table-column 211 table:number-columns-repeated %positiveInteger; "1" 212 table:style-name %styleName; #IMPLIED 213 table:visibility (visible | collapse | filter) "visible" 214 table:default-cell-style-name %styleName; #IMPLIED 215> 216<!ELEMENT table:table-row-group (table:table-header-rows | table:table-row | table:table-row-group)+> 217<!ATTLIST table:table-row-group 218 table:display %boolean; "true" 219> 220<!ELEMENT table:table-header-rows (table:table-row | table:table-row-group)+> 221<!ELEMENT table:table-rows (table:table-row | table:table-row-group)+> 222<!ENTITY % table-cells "(table:table-cell|table:covered-table-cell)+"> 223<!ELEMENT table:table-row %table-cells;> 224<!ATTLIST table:table-row 225 table:number-rows-repeated %positiveInteger; "1" 226 table:style-name %styleName; #IMPLIED 227 table:visibility (visible | collapse | filter) "visible" 228 table:default-cell-style-name %styleName; #IMPLIED 229> 230 231<!ENTITY % text-wo-table "(text:h|text:p|text:ordered-list|text:unordered-list|%shapes;)*"> 232<!ENTITY % cell-content "(table:cell-range-source?,office:annotation?,table:detective?,(table:sub-table|%text-wo-table;))"> 233<!ELEMENT table:table-cell %cell-content;> 234<!ELEMENT table:covered-table-cell %cell-content;> 235<!ATTLIST table:table-cell 236 table:number-columns-repeated %positiveInteger; "1" 237 table:number-rows-spanned %positiveInteger; "1" 238 table:number-columns-spanned %positiveInteger; "1" 239 table:style-name %styleName; #IMPLIED 240 table:validation-name CDATA #IMPLIED 241 table:formula %string; #IMPLIED 242 table:number-matrix-rows-spanned %positiveInteger; #IMPLIED 243 table:number-matrix-columns-spanned %positiveInteger; #IMPLIED 244 table:value-type %valueType; "string" 245 table:value %float; #IMPLIED 246 table:date-value %date; #IMPLIED 247 table:time-value %timeInstance; #IMPLIED 248 table:boolean-value %boolean; #IMPLIED 249 table:string-value %string; #IMPLIED 250 table:currency %string; #IMPLIED 251> 252<!ATTLIST table:covered-table-cell 253 table:number-columns-repeated %positiveInteger; "1" 254 table:style-name %styleName; #IMPLIED 255 table:validation-name CDATA #IMPLIED 256 table:formula %string; #IMPLIED 257 table:number-matrix-rows-spanned %positiveInteger; #IMPLIED 258 table:number-matrix-columns-spanned %positiveInteger; #IMPLIED 259 table:value-type %valueType; "string" 260 table:value %float; #IMPLIED 261 table:date-value %date; #IMPLIED 262 table:time-value %timeInstance; #IMPLIED 263 table:boolean-value %boolean; #IMPLIED 264 table:string-value %string; #IMPLIED 265 table:currency %string; #IMPLIED 266> 267<!-- cell protection in writer: cell attribute; calc uses format --> 268<!ATTLIST table:table-cell table:protected %boolean; "false"> 269 270<!ELEMENT table:cell-range-source EMPTY> 271<!ATTLIST table:cell-range-source 272 table:name %string; #REQUIRED 273 xlink:type (simple) #FIXED "simple" 274 xlink:actuate (onRequest) #FIXED "onRequest" 275 xlink:href %uriReference; #REQUIRED 276 table:filter-name %string; #REQUIRED 277 table:filter-options %string; #IMPLIED 278 table:last-column-spanned %positiveInteger; #REQUIRED 279 table:last-row-spanned %positiveInteger; #REQUIRED 280 table:refresh-delay %timeDuration; #IMPLIED 281> 282 283<!ELEMENT table:detective (table:highlighted-range*, table:operation*)> 284<!ELEMENT table:highlighted-range EMPTY> 285<!ATTLIST table:highlighted-range 286 table:cell-range-address %cell-range-address; #IMPLIED 287 table:direction (from-another-table | to-another-table | from-same-table | to-same-table) #IMPLIED 288 table:contains-error %boolean; #IMPLIED 289 table:marked-invalid %boolean; #IMPLIED 290> 291<!ELEMENT table:operation EMPTY> 292<!ATTLIST table:operation 293 table:name (trace-dependents | remove-dependents | trace-precedents | remove-precedents | trace-errors) #REQUIRED 294 table:index %nonNegativeInteger; #REQUIRED 295> 296 297<!ELEMENT table:content-validations (table:content-validation)+> 298<!ELEMENT table:content-validation (table:help-message?, (table:error-message | (table:error-macro, office:events?))?)> 299<!ATTLIST table:content-validation 300 table:name CDATA #REQUIRED 301 table:condition CDATA #IMPLIED 302 table:base-cell-address %cell-address; #IMPLIED 303 table:allow-empty-cell %boolean; #IMPLIED 304 table:show-list (no | unsorted | sorted-ascending) #IMPLIED 305> 306<!ELEMENT table:help-message (text:p*)> 307<!ATTLIST table:help-message 308 table:title CDATA #IMPLIED 309 table:display %boolean; #IMPLIED 310> 311<!ELEMENT table:error-message (text:p*)> 312<!ATTLIST table:error-message 313 table:title CDATA #IMPLIED 314 table:message-type (stop | warning | information) #IMPLIED 315 table:display %boolean; #IMPLIED 316> 317<!ELEMENT table:error-macro EMPTY> 318<!ATTLIST table:error-macro 319 table:name CDATA #IMPLIED 320 table:execute %boolean; #IMPLIED 321> 322 323<!ELEMENT table:sub-table ((%table-column-groups;) , (%table-row-groups;))> 324 325<!ELEMENT table:label-ranges (table:label-range)*> 326<!ELEMENT table:label-range EMPTY> 327<!ATTLIST table:label-range 328 table:label-cell-range-address %cell-range-address; #REQUIRED 329 table:data-cell-range-address %cell-range-address; #REQUIRED 330 table:orientation (column | row) #REQUIRED 331> 332 333<!ELEMENT table:named-expressions (table:named-range | table:named-expression)*> 334<!ELEMENT table:named-range EMPTY> 335<!ATTLIST table:named-range 336 table:name CDATA #REQUIRED 337 table:cell-range-address %cell-range-address; #REQUIRED 338 table:base-cell-address %cell-address; #IMPLIED 339 table:range-usable-as CDATA "none" 340> 341<!ELEMENT table:named-expression EMPTY> 342<!ATTLIST table:named-expression 343 table:name CDATA #REQUIRED 344 table:expression CDATA #REQUIRED 345 table:base-cell-address %cell-address; #IMPLIED 346> 347 348<!ELEMENT table:filter (table:filter-condition | table:filter-and | table:filter-or)> 349<!ATTLIST table:filter 350 table:target-range-address %cell-range-address; #IMPLIED 351 table:condition-source-range-address %cell-range-address; #IMPLIED 352 table:condition-source (self | cell-range) "self" 353 table:display-duplicates %boolean; "true" 354> 355<!ELEMENT table:filter-and (table:filter-or | table:filter-condition)+> 356<!ELEMENT table:filter-or (table:filter-and | table:filter-condition)+> 357<!ELEMENT table:filter-condition EMPTY> 358<!ATTLIST table:filter-condition 359 table:field-number %nonNegativeInteger; #REQUIRED 360 table:case-sensitive %boolean; "false" 361 table:data-type (text | number) "text" 362 table:value CDATA #REQUIRED 363 table:operator CDATA #REQUIRED 364> 365 366<!ELEMENT table:database-ranges (table:database-range)*> 367<!ELEMENT table:database-range ((table:database-source-sql | table:database-source-table | table:database-source-query)?, table:filter?, table:sort?, table:subtotal-rules?)> 368<!ATTLIST table:database-range 369 table:name CDATA #IMPLIED 370 table:is-selection %boolean; "false" 371 table:on-update-keep-styles %boolean; "false" 372 table:on-update-keep-size %boolean; "true" 373 table:has-persistant-data %boolean; "true" 374 table:orientation (row | column) "row" 375 table:contains-header %boolean; "true" 376 table:display-filter-buttons %boolean; "false" 377 table:target-range-address %cell-range-address; #REQUIRED 378 table:refresh-delay %timeDuration; #IMPLIED 379> 380<!ELEMENT table:database-source-sql EMPTY> 381<!ATTLIST table:database-source-sql 382 table:database-name CDATA #REQUIRED 383 table:sql-statement CDATA #REQUIRED 384 table:parse-sql-statements %boolean; "false" 385> 386<!ELEMENT table:database-source-table EMPTY> 387<!ATTLIST table:database-source-table 388 table:database-name CDATA #REQUIRED 389 table:table-name CDATA #REQUIRED 390> 391<!ELEMENT table:database-source-query EMPTY> 392<!ATTLIST table:database-source-query 393 table:database-name CDATA #REQUIRED 394 table:query-name CDATA #REQUIRED 395> 396 397<!ELEMENT table:sort (table:sort-by)+> 398<!ATTLIST table:sort 399 table:bind-styles-to-content %boolean; "true" 400 table:target-range-address %cell-range-address; #IMPLIED 401 table:case-sensitive %boolean; "false" 402 table:language CDATA #IMPLIED 403 table:country CDATA #IMPLIED 404 table:algorithm CDATA #IMPLIED 405> 406<!ELEMENT table:sort-by EMPTY> 407<!ATTLIST table:sort-by 408 table:field-number %nonNegativeInteger; #REQUIRED 409 table:data-type CDATA "automatic" 410 table:order (ascending | descending) "ascending" 411> 412 413<!ELEMENT table:subtotal-rules (table:sort-groups? | table:subtotal-rule*)?> 414<!ATTLIST table:subtotal-rules 415 table:bind-styles-to-content %boolean; "true" 416 table:case-sensitive %boolean; "false" 417 table:page-breaks-on-group-change %boolean; "false" 418> 419<!ELEMENT table:sort-groups EMPTY> 420<!ATTLIST table:sort-groups 421 table:data-type CDATA "automatic" 422 table:order (ascending | descending) "ascending" 423> 424<!ELEMENT table:subtotal-rule (table:subtotal-field)*> 425<!ATTLIST table:subtotal-rule 426 table:group-by-field-number %nonNegativeInteger; #REQUIRED 427> 428<!ELEMENT table:subtotal-field EMPTY> 429<!ATTLIST table:subtotal-field 430 table:field-number %nonNegativeInteger; #REQUIRED 431 table:function CDATA #REQUIRED 432> 433 434<!ELEMENT table:data-pilot-tables (table:data-pilot-table)*> 435<!ELEMENT table:data-pilot-table ((table:database-source-sql | table:database-source-table | table:database-source-query | table:source-service | table:source-cell-range)?, table:data-pilot-field+)> 436<!ATTLIST table:data-pilot-table 437 table:name CDATA #REQUIRED 438 table:application-data CDATA #IMPLIED 439 table:grand-total (none | row | column | both) "both" 440 table:ignore-empty-rows %boolean; "false" 441 table:identify-categories %boolean; "false" 442 table:target-range-address %cell-range-address; #REQUIRED 443 table:buttons %cell-range-address-list; #REQUIRED 444> 445<!ELEMENT table:source-service EMPTY> 446<!ATTLIST table:source-service 447 table:name CDATA #REQUIRED 448 table:source-name CDATA #REQUIRED 449 table:object-name CDATA #REQUIRED 450 table:username CDATA #IMPLIED 451 table:password CDATA #IMPLIED 452> 453<!ELEMENT table:source-cell-range (table:filter)?> 454<!ATTLIST table:source-cell-range 455 table:cell-range-address %cell-range-address; #REQUIRED 456> 457<!ELEMENT table:data-pilot-field (table:data-pilot-level)?> 458<!ATTLIST table:data-pilot-field 459 table:source-field-name CDATA #REQUIRED 460 table:is-data-layout-field %boolean; "false" 461 table:function CDATA #REQUIRED 462 table:orientation (row | column | data | page | hidden) #REQUIRED 463 table:used-hierarchy %positiveInteger; "1" 464> 465<!ELEMENT table:data-pilot-level (table:data-pilot-subtotals?, table:data-pilot-members?)> 466<!ATTLIST table:data-pilot-level 467 table:display-empty %boolean; #IMPLIED 468> 469<!ELEMENT table:data-pilot-subtotals (table:data-pilot-subtotal)*> 470<!ELEMENT table:data-pilot-subtotal EMPTY> 471<!ATTLIST table:data-pilot-subtotal 472 table:function CDATA #REQUIRED 473> 474<!ELEMENT table:data-pilot-members (table:data-pilot-member)*> 475<!ELEMENT table:data-pilot-member EMPTY> 476<!ATTLIST table:data-pilot-member 477 table:name CDATA #REQUIRED 478 table:display %boolean; #IMPLIED 479 table:display-details %boolean; #IMPLIED 480> 481 482<!ELEMENT table:consolidation EMPTY> 483<!ATTLIST table:consolidation 484 table:function CDATA #REQUIRED 485 table:source-cell-range-addresses %cell-range-address-list; #REQUIRED 486 table:target-cell-address %cell-address; #REQUIRED 487 table:use-label (none | column | row | both) "none" 488 table:link-to-source-data %boolean; "false" 489> 490 491<!ELEMENT table:dde-links (table:dde-link)+> 492<!ELEMENT table:dde-link (office:dde-source, table:table)> 493