1--- ods-schema/OpenDocument-v1.2-os-schema.rng 2015-04-08 21:49:54.000000000 -0600 2+++ ods-schema/OpenDocument-v1.2-os-ext-schema.rng 2016-01-01 19:47:48.204868483 -0700 3@@ -62,6 +62,12 @@ 4 xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0" 5 xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" 6 xmlns:smil="urn:oasis:names:tc:opendocument:xmlns:smil-compatible:1.0" 7+ 8+ xmlns:gnm="http://www.gnumeric.org/odf-extension/1.0" 9+ xmlns:css3t="http://www.w3.org/TR/css3-text/" 10+ xmlns:loext="urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0" 11+ xmlns:calcext="urn:org:documentfoundation:names:experimental:calc:xmlns:calcext:1.0" 12+ xmlns:tableooo="http://openoffice.org/2009/table" 13 > 14 <define name="office-process-content"> 15 <optional> 16@@ -2484,6 +2490,11 @@ 17 <ref name="string"/> 18 </attribute> 19 </optional> 20+ <optional> 21+ <attribute name="gnm:error-value"> 22+ <ref name="string"/> 23+ </attribute> 24+ </optional> 25 </group> 26 </choice> 27 </define> 28@@ -3380,6 +3391,9 @@ 29 <optional> 30 <ref name="table-named-expressions"/> 31 </optional> 32+ <optional> 33+ <ref name="gnm-selections"/> 34+ </optional> 35 </element> 36 </define> 37 <define name="table-columns-and-groups"> 38@@ -3670,6 +3684,11 @@ 39 </attribute> 40 </optional> 41 <optional> 42+ <attribute name="gnm:columns-spanned-fake"> 43+ <ref name="boolean"/> 44+ </attribute> 45+ </optional> 46+ <optional> 47 <attribute name="table:number-rows-spanned"> 48 <ref name="positiveInteger"/> 49 </attribute> 50@@ -6369,6 +6388,26 @@ 51 </define> 52 <define name="common-draw-position-attlist"> 53 <optional> 54+ <attribute name="gnm:is-position-manual"> 55+ <ref name="boolean"/> 56+ </attribute> 57+ </optional> 58+ <optional> 59+ <attribute name="gnm:position"> 60+ <ref name="string"/> 61+ </attribute> 62+ </optional> 63+ <optional> 64+ <attribute name="gnm:anchor"> 65+ <ref name="string"/> 66+ </attribute> 67+ </optional> 68+ <optional> 69+ <attribute name="gnm:compass"> 70+ <ref name="string"/> 71+ </attribute> 72+ </optional> 73+ <optional> 74 <attribute name="svg:x"> 75 <ref name="coordinate"/> 76 </attribute> 77@@ -8354,9 +8393,14 @@ 78 <define name="chart-title-attlist"> 79 <interleave> 80 <optional> 81- <attribute name="table:cell-range"> 82- <ref name="cellRangeAddressList"/> 83- </attribute> 84+ <choice> 85+ <attribute name="table:cell-range"> 86+ <ref name="cellRangeAddressList"/> 87+ </attribute> 88+ <attribute name="gnm:expression"> 89+ <ref name="string"/> 90+ </attribute> 91+ </choice> 92 </optional> 93 <ref name="common-draw-position-attlist"/> 94 <optional> 95@@ -8638,6 +8682,9 @@ 96 <optional> 97 <ref name="chart-data-label"/> 98 </optional> 99+ <zeroOrMore> 100+ <ref name="gnm-droplines"/> 101+ </zeroOrMore> 102 </element> 103 </define> 104 <define name="chart-series-attlist"> 105@@ -8648,9 +8695,14 @@ 106 </attribute> 107 </optional> 108 <optional> 109- <attribute name="chart:label-cell-address"> 110- <ref name="cellRangeAddressList"/> 111- </attribute> 112+ <choice> 113+ <attribute name="chart:label-cell-address"> 114+ <ref name="cellRangeAddressList"/> 115+ </attribute> 116+ <attribute name="gnm:label-cell-expression"> 117+ <ref name="string"/> 118+ </attribute> 119+ </choice> 120 </optional> 121 <optional> 122 <attribute name="chart:class"> 123@@ -10473,6 +10525,7 @@ 124 <ref name="common-data-field-attlist"/> 125 <ref name="list-source"/> 126 <ref name="list-source-type"/> 127+ <ref name="gnm-list-linkage-type"/> 128 <ref name="common-linked-cell"/> 129 <ref name="common-source-cell-range"/> 130 <optional> 131@@ -10637,6 +10690,7 @@ 132 <ref name="selected"/> 133 <ref name="common-tab-attlist"/> 134 <ref name="common-title-attlist"/> 135+ <ref name="gnm-value-type-attlist"/> 136 <ref name="common-value-attlist"/> 137 <ref name="common-data-field-attlist"/> 138 <ref name="common-form-visual-effect-attlist"/> 139@@ -12676,11 +12730,28 @@ 140 </element> 141 </define> 142 <define name="number-scientific-number-attlist"> 143- <optional> 144- <attribute name="number:min-exponent-digits"> 145- <ref name="integer"/> 146- </attribute> 147- </optional> 148+ <interleave> 149+ <optional> 150+ <attribute name="number:min-exponent-digits"> 151+ <ref name="integer"/> 152+ </attribute> 153+ </optional> 154+ <optional> 155+ <attribute name="gnm:forced-exponent-sign"> 156+ <ref name="boolean"/> 157+ </attribute> 158+ </optional> 159+ <optional> 160+ <attribute name="gnm:engineering"> 161+ <ref name="boolean"/> 162+ </attribute> 163+ </optional> 164+ <optional> 165+ <attribute name="gnm:literal-E"> 166+ <ref name="boolean"/> 167+ </attribute> 168+ </optional> 169+ </interleave> 170 </define> 171 <define name="number-fraction"> 172 <element name="number:fraction"> 173@@ -12702,10 +12773,22 @@ 174 </attribute> 175 </optional> 176 <optional> 177+ <attribute name="gnm:max-denominator-digits"> 178+ <ref name="integer"/> 179+ </attribute> 180+ </optional> 181+ <optional> 182 <attribute name="number:denominator-value"> 183 <ref name="integer"/> 184 </attribute> 185 </optional> 186+ <optional> 187+ <attribute name="gnm:display-factor"> 188+ <choice> 189+ <value>pi</value> 190+ </choice> 191+ </attribute> 192+ </optional> 193 </interleave> 194 </define> 195 <define name="number-currency-style"> 196@@ -12997,14 +13080,17 @@ 197 </element> 198 </define> 199 <define name="number-hours-attlist"> 200- <optional> 201- <attribute name="number:style"> 202- <choice> 203- <value>short</value> 204- <value>long</value> 205- </choice> 206- </attribute> 207- </optional> 208+ <interleave> 209+ <ref name="gnm-truncate-on-overflow"/> 210+ <optional> 211+ <attribute name="number:style"> 212+ <choice> 213+ <value>short</value> 214+ <value>long</value> 215+ </choice> 216+ </attribute> 217+ </optional> 218+ </interleave> 219 </define> 220 <define name="number-minutes"> 221 <element name="number:minutes"> 222@@ -13013,14 +13099,17 @@ 223 </element> 224 </define> 225 <define name="number-minutes-attlist"> 226- <optional> 227- <attribute name="number:style"> 228- <choice> 229- <value>short</value> 230- <value>long</value> 231- </choice> 232- </attribute> 233- </optional> 234+ <interleave> 235+ <ref name="gnm-truncate-on-overflow"/> 236+ <optional> 237+ <attribute name="number:style"> 238+ <choice> 239+ <value>short</value> 240+ <value>long</value> 241+ </choice> 242+ </attribute> 243+ </optional> 244+ </interleave> 245 </define> 246 <define name="number-seconds"> 247 <element name="number:seconds"> 248@@ -13030,6 +13119,7 @@ 249 </define> 250 <define name="number-seconds-attlist"> 251 <interleave> 252+ <ref name="gnm-truncate-on-overflow"/> 253 <optional> 254 <attribute name="number:style"> 255 <choice> 256@@ -13047,7 +13137,16 @@ 257 </define> 258 <define name="number-am-pm"> 259 <element name="number:am-pm"> 260- <empty/> 261+ <optional> 262+ <attribute name="gnm:am-suffix"> 263+ <ref name="string"/> 264+ </attribute> 265+ </optional> 266+ <optional> 267+ <attribute name="gnm:pm-suffix"> 268+ <ref name="string"/> 269+ </attribute> 270+ </optional> 271 </element> 272 </define> 273 <define name="number-boolean-style"> 274@@ -13097,7 +13196,15 @@ 275 </define> 276 <define name="number-text"> 277 <element name="number:text"> 278- <text/> 279+ <zeroOrMore> 280+ <optional> 281+ <ref name="gnm-invisible"/> 282+ </optional> 283+ <optional> 284+ <ref name="gnm-repeated"/> 285+ </optional> 286+ <text/> 287+ </zeroOrMore> 288 </element> 289 </define> 290 <define name="number-text-content"> 291@@ -13169,6 +13276,11 @@ 292 </choice> 293 </attribute> 294 </optional> 295+ <optional> 296+ <attribute name="gnm:format-magic"> 297+ <ref name="integer"/> 298+ </attribute> 299+ </optional> 300 </interleave> 301 </define> 302 <define name="common-auto-reorder-attlist"> 303@@ -13203,6 +13315,11 @@ 304 </attribute> 305 </optional> 306 <optional> 307+ <attribute name="gnm:min-integer-chars"> 308+ <ref name="integer"/> 309+ </attribute> 310+ </optional> 311+ <optional> 312 <attribute name="number:grouping"> 313 <ref name="boolean"/> 314 </attribute> 315@@ -14101,6 +14218,22 @@ 316 <ref name="string"/> 317 </attribute> 318 </optional> 319+ <optional> 320+ <group> 321+ <attribute name="gnm:arrow-type"> 322+ <ref name="integer"/> 323+ </attribute> 324+ <attribute name="gnm:arrow-a"> 325+ <ref name="double"/> 326+ </attribute> 327+ <attribute name="gnm:arrow-b"> 328+ <ref name="double"/> 329+ </attribute> 330+ <attribute name="gnm:arrow-c"> 331+ <ref name="double"/> 332+ </attribute> 333+ </group> 334+ </optional> 335 </interleave> 336 </define> 337 <define name="draw-stroke-dash"> 338@@ -14383,6 +14516,21 @@ 339 <ref name="boolean"/> 340 </attribute> 341 </optional> 342+ <optional> 343+ <attribute name="gnm:style-print"> 344+ <ref name="string"/> 345+ </attribute> 346+ </optional> 347+ <optional> 348+ <attribute name="gnm:scale-to-X"> 349+ <ref name="positiveInteger"/> 350+ </attribute> 351+ </optional> 352+ <optional> 353+ <attribute name="gnm:scale-to-Y"> 354+ <ref name="positiveInteger"/> 355+ </attribute> 356+ </optional> 357 </interleave> 358 </define> 359 <define name="style-page-layout-properties-elements"> 360@@ -14874,11 +15022,33 @@ 361 </attribute> 362 </optional> 363 <optional> 364+ <attribute name="gnm:font-stretch-pango"> 365+ <ref name="integer"/> 366+ </attribute> 367+ </optional> 368+ <optional> 369+ <attribute name="gnm:font-gravity-pango"> 370+ <ref name="integer"/> 371+ </attribute> 372+ </optional> 373+ <optional> 374+ <attribute name="gnm:auto-font"> 375+ <ref name="boolean"/> 376+ </attribute> 377+ </optional> 378+ <optional> 379 <attribute name="style:text-underline-mode"> 380 <ref name="lineMode"/> 381 </attribute> 382 </optional> 383 <optional> 384+ <attribute name="gnm:text-underline-placement"> 385+ <choice> 386+ <value>low</value> 387+ </choice> 388+ </attribute> 389+ </optional> 390+ <optional> 391 <attribute name="style:text-line-through-mode"> 392 <ref name="lineMode"/> 393 </attribute> 394@@ -15090,6 +15260,18 @@ 395 <define name="style-paragraph-properties-attlist"> 396 <interleave> 397 <optional> 398+ <attribute name="gnm:GnmHAlign"> 399+ <ref name="integer"/> 400+ </attribute> 401+ </optional> 402+ <optional> 403+ <attribute name="css3t:text-justify"> 404+ <choice> 405+ <value>distribute</value> 406+ </choice> 407+ </attribute> 408+ </optional> 409+ <optional> 410 <attribute name="fo:line-height"> 411 <choice> 412 <value>normal</value> 413@@ -15461,14 +15643,21 @@ 414 </optional> 415 </define> 416 <define name="common-background-color-attlist"> 417- <optional> 418- <attribute name="fo:background-color"> 419- <choice> 420- <value>transparent</value> 421+ <interleave> 422+ <optional> 423+ <attribute name="fo:background-color"> 424+ <choice> 425+ <value>transparent</value> 426+ <ref name="color"/> 427+ </choice> 428+ </attribute> 429+ </optional> 430+ <optional> 431+ <attribute name="gnm:background-colour"> 432 <ref name="color"/> 433- </choice> 434- </attribute> 435- </optional> 436+ </attribute> 437+ </optional> 438+ </interleave> 439 </define> 440 <define name="style-background-image"> 441 <optional> 442@@ -15564,6 +15753,36 @@ 443 <ref name="string"/> 444 </attribute> 445 </optional> 446+ <optional> 447+ <attribute name="gnm:border-line-style-top"> 448+ <ref name="string"/> 449+ </attribute> 450+ </optional> 451+ <optional> 452+ <attribute name="gnm:border-line-style-bottom"> 453+ <ref name="string"/> 454+ </attribute> 455+ </optional> 456+ <optional> 457+ <attribute name="gnm:border-line-style-left"> 458+ <ref name="string"/> 459+ </attribute> 460+ </optional> 461+ <optional> 462+ <attribute name="gnm:border-line-style-right"> 463+ <ref name="string"/> 464+ </attribute> 465+ </optional> 466+ <optional> 467+ <attribute name="gnm:diagonal-bl-tr-line-style"> 468+ <ref name="string"/> 469+ </attribute> 470+ </optional> 471+ <optional> 472+ <attribute name="gnm:diagonal-tl-br-line-style"> 473+ <ref name="string"/> 474+ </attribute> 475+ </optional> 476 </define> 477 <define name="common-border-line-width-attlist"> 478 <optional> 479@@ -15904,6 +16123,37 @@ 480 <ref name="boolean"/> 481 </attribute> 482 </optional> 483+ <optional> 484+ <attribute name="gnm:display-formulas"> 485+ <ref name="boolean"/> 486+ </attribute> 487+ </optional> 488+ <optional> 489+ <attribute name="gnm:display-col-header"> 490+ <ref name="boolean"/> 491+ </attribute> 492+ </optional> 493+ <optional> 494+ <attribute name="gnm:display-row-header"> 495+ <ref name="boolean"/> 496+ </attribute> 497+ </optional> 498+ <optional> 499+ <attribute name="gnm:tab-color"> 500+ <ref name="color"/> 501+ </attribute> 502+ </optional> 503+ <optional> 504+ <attribute name="gnm:tab-text-color"> 505+ <ref name="color"/> 506+ </attribute> 507+ </optional> 508+ <optional> 509+ <attribute name="tableooo:tab-color"> 510+ <ref name="color"/> 511+ </attribute> 512+ </optional> 513+ 514 </interleave> 515 </define> 516 <define name="style-table-properties-elements"> 517@@ -16004,6 +16254,11 @@ 518 </attribute> 519 </optional> 520 <optional> 521+ <attribute name="gnm:GnmVAlign"> 522+ <ref name="integer"/> 523+ </attribute> 524+ </optional> 525+ <optional> 526 <attribute name="style:text-align-source"> 527 <choice> 528 <value>fix</value> 529@@ -16028,6 +16283,16 @@ 530 <ref name="common-background-color-attlist"/> 531 <ref name="common-border-attlist"/> 532 <optional> 533+ <attribute name="gnm:pattern-colour"> 534+ <ref name="color"/> 535+ </attribute> 536+ </optional> 537+ <optional> 538+ <attribute name="gnm:pattern"> 539+ <ref name="integer"/> 540+ </attribute> 541+ </optional> 542+ <optional> 543 <attribute name="style:diagonal-tl-br"> 544 <ref name="string"/> 545 </attribute> 546@@ -16104,6 +16369,16 @@ 547 <ref name="boolean"/> 548 </attribute> 549 </optional> 550+ <optional> 551+ <attribute name="gnm:input-title"> 552+ <ref name="string"/> 553+ </attribute> 554+ </optional> 555+ <optional> 556+ <attribute name="gnm:input-msg"> 557+ <ref name="string"/> 558+ </attribute> 559+ </optional> 560 </interleave> 561 </define> 562 <define name="common-style-direction-attlist"> 563@@ -17060,6 +17335,46 @@ 564 <ref name="nonNegativeInteger"/> 565 </attribute> 566 </optional> 567+ <optional> 568+ <attribute name="gnm:auto-dash"> 569+ <ref name="boolean"/> 570+ </attribute> 571+ </optional> 572+ <optional> 573+ <attribute name="gnm:auto-width"> 574+ <ref name="boolean"/> 575+ </attribute> 576+ </optional> 577+ <optional> 578+ <attribute name="gnm:auto-color"> 579+ <ref name="boolean"/> 580+ </attribute> 581+ </optional> 582+ <optional> 583+ <attribute name="gnm:auto-type"> 584+ <ref name="boolean"/> 585+ </attribute> 586+ </optional> 587+ <optional> 588+ <attribute name="gnm:foreground-solid"> 589+ <ref name="boolean"/> 590+ </attribute> 591+ </optional> 592+ <optional> 593+ <attribute name="gnm:pattern"> 594+ <ref name="integer"/> 595+ </attribute> 596+ </optional> 597+ <optional> 598+ <attribute name="gnm:marker-outline-colour"> 599+ <ref name="color"/> 600+ </attribute> 601+ </optional> 602+ <optional> 603+ <attribute name="gnm:marker-fill-colour"> 604+ <ref name="color"/> 605+ </attribute> 606+ </optional> 607 </interleave> 608 </define> 609 <define name="style-graphic-fill-properties-attlist"> 610@@ -17388,6 +17703,10 @@ 611 <value>none</value> 612 <value>cubic-spline</value> 613 <value>b-spline</value> 614+ <value>gnm:closed-spline</value> 615+ <value>gnm:parabolic-cspline</value> 616+ <value>gnm:cubic-cspline</value> 617+ <value>gnm:clamped-cspline</value> 618 </choice> 619 </attribute> 620 </optional> 621@@ -17661,6 +17980,10 @@ 622 <value>logarithmic</value> 623 <value>exponential</value> 624 <value>power</value> 625+ <value>gnm:polynomial</value> 626+ <value>gnm:log-fit</value> 627+ <value>gnm:moving-average</value> 628+ <value>gnm:exponential-smoothed</value> 629 </choice> 630 </attribute> 631 </optional> 632@@ -17697,6 +18020,62 @@ 633 <ref name="boolean"/> 634 </attribute> 635 </optional> 636+ <optional> 637+ <attribute name="gnm:outliers"> 638+ <ref name="boolean"/> 639+ </attribute> 640+ </optional> 641+ <optional> 642+ <attribute name="gnm:multi-series"> 643+ <ref name="boolean"/> 644+ </attribute> 645+ </optional> 646+ <optional> 647+ <attribute name="gnm:vary-style-by-element"> 648+ <ref name="boolean"/> 649+ </attribute> 650+ </optional> 651+ <optional> 652+ <attribute name="gnm:show-negatives"> 653+ <ref name="boolean"/> 654+ </attribute> 655+ </optional> 656+ <optional> 657+ <attribute name="gnm:radius-ratio"> 658+ <ref name="double"/> 659+ </attribute> 660+ </optional> 661+ <optional> 662+ <attribute name="gnm:default-separation"> 663+ <ref name="percent"/> 664+ </attribute> 665+ </optional> 666+ <optional> 667+ <attribute name="gnm:regression-affine"> 668+ <ref name="boolean"/> 669+ </attribute> 670+ </optional> 671+ <optional> 672+ <attribute name="loext:regression-force-intercept"> 673+ <ref name="boolean"/> 674+ </attribute> 675+ </optional> 676+ <optional> 677+ <attribute name="loext:regression-intercept-value"> 678+ <ref name="double"/> 679+ </attribute> 680+ </optional> 681+ <optional> 682+ <attribute name="gnm:regression-polynomial-dims"> 683+ <ref name="nonNegativeInteger"/> 684+ </attribute> 685+ </optional> 686+ <optional> 687+ <attribute name="loext:regression-max-degree"> 688+ <ref name="nonNegativeInteger"/> 689+ </attribute> 690+ </optional> 691+ 692 </interleave> 693 </define> 694 <define name="labelPositions"> 695@@ -18124,4 +18503,85 @@ 696 </element> 697 </zeroOrMore> 698 </define> 699+ 700+ <define name="gnm-selections"> 701+ <element name="gnm:selections"> 702+ <attribute name="gnm:cursor-col"> 703+ <ref name="integer"/> 704+ </attribute> 705+ <attribute name="gnm:cursor-row"> 706+ <ref name="integer"/> 707+ </attribute> 708+ <zeroOrMore> 709+ <ref name="gnm-selection"/> 710+ </zeroOrMore> 711+ </element> 712+ </define> 713+ <define name="gnm-selection"> 714+ <element name="gnm:selection"> 715+ <attribute name="gnm:start-col"> 716+ <ref name="integer"/> 717+ </attribute> 718+ <attribute name="gnm:start-row"> 719+ <ref name="integer"/> 720+ </attribute> 721+ <attribute name="gnm:end-col"> 722+ <ref name="integer"/> 723+ </attribute> 724+ <attribute name="gnm:end-row"> 725+ <ref name="integer"/> 726+ </attribute> 727+ </element> 728+ </define> 729+ <define name="gnm-list-linkage-type"> 730+ <optional> 731+ <attribute name="gnm:list-linkage-type"> 732+ <choice> 733+ <value>selection</value> 734+ <value>selection-indices</value> 735+ </choice> 736+ </attribute> 737+ </optional> 738+ </define> 739+ <define name="gnm-value-type-attlist"> 740+ <optional> 741+ <attribute name="gnm:value-type"> 742+ <ref name="valueType"/> 743+ </attribute> 744+ </optional> 745+ </define> 746+ <define name="gnm-truncate-on-overflow"> 747+ <optional> 748+ <attribute name="gnm:truncate-on-overflow"> 749+ <ref name="boolean"/> 750+ </attribute> 751+ </optional> 752+ </define> 753+ <define name="gnm-invisible"> 754+ <element name="gnm:invisible"> 755+ <optional> 756+ <attribute name="gnm:char"> 757+ <ref name="string"/> 758+ </attribute> 759+ </optional> 760+ <optional> 761+ <attribute name="office:process-content"> 762+ <ref name="boolean"/> 763+ </attribute> 764+ </optional> 765+ <empty/> 766+ </element> 767+ </define> 768+ <define name="gnm-repeated"> 769+ <element name="gnm:repeated"> 770+ <text/> 771+ </element> 772+ </define> 773+ <define name="gnm-droplines"> 774+ <element name="gnm:droplines"> 775+ <attribute name="chart:style-name"> 776+ <ref name="styleNameRef"/> 777+ </attribute> 778+ </element> 779+ </define> 780 </grammar> 781