diff options
author | Thorsten Behrens <Thorsten.Behrens@CIB.de> | 2016-08-28 22:21:29 +0200 |
---|---|---|
committer | Thorsten Behrens <Thorsten.Behrens@CIB.de> | 2016-08-28 22:26:16 +0200 |
commit | 70152506d968f407fad3a1cb6959c67f99bd59ce (patch) | |
tree | 0e4494c63df01d560e6a741b8c43696bf45c6f7c | |
parent | a8c5edcea9f58a9295776c2a3f200111a5a749ab (diff) |
add ODF schema files to core repo
Source: https://tools.oasis-open.org/version-control/svn/office/
Please no changes to those files, these are the official, blessed,
OASIS-approved standard schemas, in their respective version.
Change-Id: I8538495fe7d9ece0c4e3ad097460a5f41ee7a403
16 files changed, 73029 insertions, 0 deletions
diff --git a/schema/odf1.0/OpenDocument-manifest-schema-v1.0-os.rng b/schema/odf1.0/OpenDocument-manifest-schema-v1.0-os.rng new file mode 100644 index 000000000000..97fe580eab9a --- /dev/null +++ b/schema/odf1.0/OpenDocument-manifest-schema-v1.0-os.rng @@ -0,0 +1,111 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + OASIS OpenDocument v1.0 + OASIS standard, 1 May 2005 + Relax-NG Manifest Schema + + $Id$ + + © 2002-2005 OASIS Open + © 1999-2005 Sun Microsystems, Inc. +--> + +<grammar + xmlns="http://relaxng.org/ns/structure/1.0" + + datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes" + + xmlns:manifest="urn:oasis:names:tc:opendocument:xmlns:manifest:1.0"> +<define name="manifest"> + <element name="manifest:manifest"> + <oneOrMore> + <ref name="file-entry"/> + </oneOrMore> + </element> +</define> + +<start> + <choice> + <ref name="manifest"/> + </choice> +</start> +<define name="file-entry"> + <element name="manifest:file-entry"> + <ref name="file-entry-attlist"/> + <optional> + <ref name="encryption-data"/> + </optional> + </element> +</define> +<define name="file-entry-attlist" combine="interleave"> + <attribute name="manifest:full-path"> + <data type="string"/> + </attribute> +</define> +<define name="file-entry-attlist" combine="interleave"> + <optional> + <attribute name="manifest:size"> + <data type="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="file-entry-attlist" combine="interleave"> + <attribute name="manifest:media-type"> + <data type="string"/> + </attribute> +</define> +<define name="encryption-data"> + <element name="manifest:encryption-data"> + <ref name="encryption-data-attlist"/> + <ref name="algorithm"/> + <ref name="key-derivation"/> + </element> +</define> +<define name="encryption-data-attlist" combine="interleave"> + <attribute name="manifest:checksum-type"> + <data type="string"/> + </attribute> +</define> +<define name="encryption-data-attlist" combine="interleave"> + <attribute name="manifest:checksum"> + <data type="base64Binary"/> + </attribute> +</define> +<define name="algorithm"> + <element name="manifest:algorithm"> + <ref name="algorithm-attlist"/> + <empty/> + </element> +</define> +<define name="algorithm-attlist" combine="interleave"> + <attribute name="manifest:algorithm-name"> + <data type="string"/> + </attribute> +</define> +<define name="algorithm-attlist" combine="interleave"> + <attribute name="manifest:initialisation-vector"> + <data type="base64Binary"/> + </attribute> +</define> +<define name="key-derivation"> + <element name="manifest:key-derivation"> + <ref name="key-derivation-attlist"/> + <empty/> + </element> +</define> +<define name="key-derivation-attlist" combine="interleave"> + <attribute name="manifest:key-derivation-name"> + <data type="string"/> + </attribute> +</define> +<define name="key-derivation-attlist" combine="interleave"> + <attribute name="manifest:salt"> + <data type="base64Binary"/> + </attribute> +</define> +<define name="key-derivation-attlist" combine="interleave"> + <attribute name="manifest:iteration-count"> + <data type="nonNegativeInteger"/> + </attribute> +</define> +</grammar> diff --git a/schema/odf1.0/OpenDocument-schema-v1.0-os.rng b/schema/odf1.0/OpenDocument-schema-v1.0-os.rng new file mode 100644 index 000000000000..cf4ee51741a5 --- /dev/null +++ b/schema/odf1.0/OpenDocument-schema-v1.0-os.rng @@ -0,0 +1,17666 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + OASIS OpenDocument v1.0 + OASIS Standard, 1 May 2005 + Relax-NG Schema + + $Id$ + + © 2002-2005 OASIS Open + © 1999-2005 Sun Microsystems, Inc. +--> + +<grammar + xmlns="http://relaxng.org/ns/structure/1.0" + xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" + + datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes" + + xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" + xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" + xmlns:config="urn:oasis:names:tc:opendocument:xmlns:config:1.0" + xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0" + xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0" + xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0" + xmlns:presentation="urn:oasis:names:tc:opendocument:xmlns:presentation:1.0" + xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0" + xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0" + xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" + xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0" + xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" + xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0" + xmlns:anim="urn:oasis:names:tc:opendocument:xmlns:animation:1.0" + + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:math="http://www.w3.org/1998/Math/MathML" + xmlns:xforms="http://www.w3.org/2002/xforms" + + xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0" + xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" + xmlns:smil="urn:oasis:names:tc:opendocument:xmlns:smil-compatible:1.0" +> +<define name="office-process-content"> + <optional> + <attribute name="office:process-content" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<start> + <choice> + <ref name="office-document"/> + <ref name="office-document-content"/> + <ref name="office-document-styles"/> + <ref name="office-document-meta"/> + <ref name="office-document-settings"/> + </choice> +</start> +<define name="office-document"> + <element name="office:document"> + <ref name="office-document-attrs"/> + <ref name="office-document-common-attrs"/> + <ref name="office-meta"/> + <ref name="office-settings"/> + <ref name="office-scripts"/> + <ref name="office-font-face-decls"/> + <ref name="office-styles"/> + <ref name="office-automatic-styles"/> + <ref name="office-master-styles"/> + <ref name="office-body"/> + </element> +</define> +<define name="office-document-content"> + <element name="office:document-content"> + <ref name="office-document-common-attrs"/> + <ref name="office-scripts"/> + <ref name="office-font-face-decls"/> + <ref name="office-automatic-styles"/> + <ref name="office-body"/> + </element> +</define> +<define name="office-document-styles"> + <element name="office:document-styles"> + <ref name="office-document-common-attrs"/> + <ref name="office-font-face-decls"/> + <ref name="office-styles"/> + <ref name="office-automatic-styles"/> + <ref name="office-master-styles"/> + </element> +</define> +<define name="office-document-meta"> + <element name="office:document-meta"> + <ref name="office-document-common-attrs"/> + <ref name="office-meta"/> + </element> +</define> +<define name="office-document-settings"> + <element name="office:document-settings"> + <ref name="office-document-common-attrs"/> + <ref name="office-settings"/> + </element> +</define> +<define name="office-document-common-attrs" combine="interleave"> + <optional> + <attribute name="office:version"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="office-document-attrs" combine="interleave"> + <attribute name="office:mimetype"> + <ref name="string"/> + </attribute> +</define> +<define name="office-meta"> + <optional> + <element name="office:meta"> + <ref name="office-meta-content"/> + </element> + </optional> +</define> + +<define name="office-meta-content"> + <ref name="anyElements"/> +</define> + +<define name="office-meta-content-strict"> + <zeroOrMore> + <ref name="office-meta-data"/> + </zeroOrMore> +</define> +<define name="office-body"> + <element name="office:body"> + <ref name="office-body-content"/> + </element> +</define> +<define name="office-body-content" combine="choice"> + <element name="office:text"> + <ref name="office-text-attlist"/> + <ref name="office-text-content-prelude"/> + <zeroOrMore> + <ref name="office-text-content-main"/> + </zeroOrMore> + <ref name="office-text-content-epilogue"/> + </element> +</define> +<define name="office-text-content-prelude"> + <ref name="office-forms"/> + <ref name="text-tracked-changes"/> + <ref name="text-decls"/> + <ref name="table-decls"/> +</define> +<define name="office-text-content-main"> + <choice> + <zeroOrMore> + <ref name="text-content"/> + </zeroOrMore> + <group> + <ref name="text-page-sequence"/> + <zeroOrMore> + <choice> + <ref name="draw-a"/> + <ref name="shape"/> + </choice> + </zeroOrMore> + </group> + </choice> +</define> + +<define name="text-content"> + <choice> + <ref name="text-h"/> + <ref name="text-p"/> + <ref name="text-list"/> + <ref name="text-numbered-paragraph"/> + <ref name="table-table"/> + <ref name="draw-a"/> + <ref name="text-section"/> + <ref name="text-table-of-content"/> + <ref name="text-illustration-index"/> + <ref name="text-table-index"/> + <ref name="text-object-index"/> + <ref name="text-user-index"/> + <ref name="text-alphabetical-index"/> + <ref name="text-bibliography"/> + <ref name="shape"/> + <ref name="change-marks"/> + </choice> +</define> +<define name="office-text-content-epilogue"> + <ref name="table-functions"/> +</define> +<define name="office-text-attlist" combine="interleave"> + <optional> + <attribute name="text:global" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="office-body-content" combine="choice"> + <element name="office:drawing"> + <ref name="office-drawing-attlist"/> + <ref name="office-drawing-content-prelude"/> + <ref name="office-drawing-content-main"/> + <ref name="office-drawing-content-epilogue"/> + </element> +</define> + +<define name="office-drawing-attlist"> + <empty/> +</define> +<define name="office-drawing-content-prelude"> + <ref name="text-decls"/> + <ref name="table-decls"/> +</define> +<define name="office-drawing-content-main"> + <zeroOrMore> + <ref name="draw-page"/> + </zeroOrMore> +</define> +<define name="office-drawing-content-epilogue"> + <ref name="table-functions"/> +</define> +<define name="office-body-content" combine="choice"> + <element name="office:presentation"> + <ref name="office-presentation-attlist"/> + <ref name="office-presentation-content-prelude"/> + <ref name="office-presentation-content-main"/> + <ref name="office-presentation-content-epilogue"/> + </element> +</define> + +<define name="office-presentation-attlist"> + <empty/> +</define> +<define name="office-presentation-content-prelude"> + <ref name="text-decls"/> + <ref name="table-decls"/> + <ref name="presentation-decls"/> +</define> +<define name="office-presentation-content-main"> + <zeroOrMore> + <ref name="draw-page"/> + </zeroOrMore> +</define> +<define name="office-presentation-content-epilogue"> + <ref name="presentation-settings"/> + <ref name="table-functions"/> +</define> +<define name="office-body-content" combine="choice"> + <element name="office:spreadsheet"> + <ref name="office-spreadsheet-attlist"/> + <ref name="office-spreadsheet-content-prelude"/> + <ref name="office-spreadsheet-content-main"/> + <ref name="office-spreadsheet-content-epilogue"/> + </element> +</define> +<define name="office-spreadsheet-content-prelude"> + <optional> + <ref name="table-tracked-changes"/> + </optional> + <ref name="text-decls"/> + <ref name="table-decls"/> +</define> + +<define name="table-decls"> + <optional> + <ref name="table-calculation-settings"/> + </optional> + <optional> + <ref name="table-content-validations"/> + </optional> + <optional> + <ref name="table-label-ranges"/> + </optional> +</define> +<define name="office-spreadsheet-content-main"> + <zeroOrMore> + <ref name="table-table"/> + </zeroOrMore> +</define> +<define name="office-spreadsheet-content-epilogue"> + <ref name="table-functions"/> +</define> + +<define name="table-functions"> + <optional> + <ref name="table-named-expressions"/> + </optional> + <optional> + <ref name="table-database-ranges"/> + </optional> + <optional> + <ref name="table-data-pilot-tables"/> + </optional> + <optional> + <ref name="table-consolidation"/> + </optional> + <optional> + <ref name="table-dde-links"/> + </optional> +</define> +<define name="office-body-content" combine="choice"> + <element name="office:chart"> + <ref name="office-chart-attlist"/> + <ref name="office-chart-content-prelude"/> + <ref name="office-chart-content-main"/> + <ref name="office-chart-content-epilogue"/> + </element> +</define> + +<define name="office-chart-attlist"> + <empty/> +</define> +<define name="office-chart-content-prelude"> + <ref name="text-decls"/> + <ref name="table-decls"/> +</define> +<define name="office-chart-content-main"> + <ref name="chart-chart"/> +</define> +<define name="office-chart-content-epilogue"> + <ref name="table-functions"/> +</define> +<define name="office-body-content" combine="choice"> + <element name="office:image"> + <ref name="office-image-attlist"/> + <ref name="office-image-content-prelude"/> + <ref name="office-image-content-main"/> + <ref name="office-image-content-epilogue"/> + </element> +</define> + +<define name="office-image-attlist"> + <empty/> +</define> +<define name="office-image-content-prelude"> + <empty/> +</define> +<define name="office-image-content-main"> + <ref name="draw-frame"/> +</define> +<define name="office-image-content-epilogue"> + <empty/> +</define> +<define name="office-settings"> + <optional> + <element name="office:settings"> + <oneOrMore> + <ref name="config-config-item-set"/> + </oneOrMore> + </element> + </optional> +</define> +<define name="config-config-item-set"> + <element name="config:config-item-set"> + <ref name="config-config-item-set-attlist"/> + <ref name="config-items"/> + </element> +</define> + +<define name="config-items"> + <oneOrMore> + <choice> + <ref name="config-config-item"/> + <ref name="config-config-item-set"/> + <ref name="config-config-item-map-named"/> + <ref name="config-config-item-map-indexed"/> + </choice> + </oneOrMore> +</define> +<define name="config-config-item-set-attlist" combine="interleave"> + <attribute name="config:name"> + <ref name="string"/> + </attribute> +</define> +<define name="config-config-item"> + <element name="config:config-item"> + <ref name="config-config-item-attlist"/> + <text/> + </element> +</define> +<define name="config-config-item-attlist" combine="interleave"> + <attribute name="config:name"> + <ref name="string"/> + </attribute> +</define> +<define name="config-config-item-attlist" combine="interleave"> + <attribute name="config:type"> + <choice> + <value>boolean</value> + <value>short</value> + <value>int</value> + <value>long</value> + <value>double</value> + <value>string</value> + <value>datetime</value> + <value>base64Binary</value> + </choice> + </attribute> +</define> +<define name="config-config-item-map-indexed"> + <element name="config:config-item-map-indexed"> + <ref name="config-config-item-map-indexed-attlist"/> + <oneOrMore> + <ref name="config-config-item-map-entry"/> + </oneOrMore> + </element> +</define> +<define name="config-config-item-map-indexed-attlist" combine="interleave"> + <attribute name="config:name"> + <ref name="string"/> + </attribute> +</define> +<define name="config-config-item-map-entry"> + <element name="config:config-item-map-entry"> + <ref name="config-config-item-map-entry-attlist"/> + <ref name="config-items"/> + </element> +</define> +<define name="config-config-item-map-entry-attlist" combine="interleave"> + <optional> + <attribute name="config:name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="config-config-item-map-named"> + <element name="config:config-item-map-named"> + <ref name="config-config-item-map-named-attlist"/> + <oneOrMore> + <ref name="config-config-item-map-entry"/> + </oneOrMore> + </element> +</define> +<define name="config-config-item-map-named-attlist" combine="interleave"> + <attribute name="config:name"> + <ref name="string"/> + </attribute> +</define> +<define name="office-scripts"> + <optional> + <element name="office:scripts"> + <zeroOrMore> + <ref name="office-script"/> + </zeroOrMore> + <optional> + <ref name="office-event-listeners"/> + </optional> + </element> + </optional> +</define> +<define name="office-script"> + <element name="office:script"> + <ref name="office-script-attlist"/> + <mixed> + <ref name="anyElements"/> + </mixed> + </element> +</define> +<define name="office-script-attlist"> + <attribute name="script:language"> + <ref name="string"/> + </attribute> +</define> +<define name="office-font-face-decls"> + <optional> + <element name="office:font-face-decls"> + <zeroOrMore> + <ref name="style-font-face"/> + </zeroOrMore> + </element> + </optional> +</define> +<define name="office-styles"> + <optional> + <element name="office:styles"> + <interleave> + <ref name="styles"/> + <zeroOrMore> + <ref name="style-default-style"/> + </zeroOrMore> + <optional> + <ref name="text-outline-style"/> + </optional> + <zeroOrMore> + <ref name="text-notes-configuration"/> + </zeroOrMore> + <optional> + <ref name="text-bibliography-configuration"/> + </optional> + <optional> + <ref name="text-linenumbering-configuration"/> + </optional> + <zeroOrMore> + <ref name="draw-gradient"/> + </zeroOrMore> + <zeroOrMore> + <ref name="svg-linearGradient"/> + </zeroOrMore> + <zeroOrMore> + <ref name="svg-radialGradient"/> + </zeroOrMore> + <zeroOrMore> + <ref name="draw-hatch"/> + </zeroOrMore> + <zeroOrMore> + <ref name="draw-fill-image"/> + </zeroOrMore> + <zeroOrMore> + <ref name="draw-marker"/> + </zeroOrMore> + <zeroOrMore> + <ref name="draw-stroke-dash"/> + </zeroOrMore> + <zeroOrMore> + <ref name="draw-opacity"/> + </zeroOrMore> + <zeroOrMore> + <ref name="style-presentation-page-layout"/> + </zeroOrMore> + </interleave> + </element> + </optional> +</define> +<define name="office-automatic-styles"> + <optional> + <element name="office:automatic-styles"> + <interleave> + <ref name="styles"/> + <zeroOrMore> + <ref name="style-page-layout"/> + </zeroOrMore> + </interleave> + </element> + </optional> +</define> +<define name="office-master-styles"> + <optional> + <element name="office:master-styles"> + <interleave> + <zeroOrMore> + <ref name="style-master-page"/> + </zeroOrMore> + <optional> + <ref name="style-handout-master"/> + </optional> + <optional> + <ref name="draw-layer-set"/> + </optional> + </interleave> + </element> + </optional> +</define> + +<define name="styles"> + <interleave> + <zeroOrMore> + <ref name="style-style"/> + </zeroOrMore> + <zeroOrMore> + <ref name="text-list-style"/> + </zeroOrMore> + <zeroOrMore> + <ref name="number-number-style"/> + </zeroOrMore> + <zeroOrMore> + <ref name="number-currency-style"/> + </zeroOrMore> + <zeroOrMore> + <ref name="number-percentage-style"/> + </zeroOrMore> + <zeroOrMore> + <ref name="number-date-style"/> + </zeroOrMore> + <zeroOrMore> + <ref name="number-time-style"/> + </zeroOrMore> + <zeroOrMore> + <ref name="number-boolean-style"/> + </zeroOrMore> + <zeroOrMore> + <ref name="number-text-style"/> + </zeroOrMore> + </interleave> +</define> +<define name="office-meta-data" combine="choice"> + <element name="meta:generator"> + <ref name="string"/> + </element> +</define> +<define name="office-meta-data" combine="choice"> + <element name="dc:title"> + <ref name="string"/> + </element> +</define> +<define name="office-meta-data" combine="choice"> + <element name="dc:description"> + <ref name="string"/> + </element> +</define> +<define name="office-meta-data" combine="choice"> + <element name="dc:subject"> + <ref name="string"/> + </element> +</define> +<define name="office-meta-data" combine="choice"> + <element name="meta:keyword"> + <ref name="string"/> + </element> +</define> +<define name="office-meta-data" combine="choice"> + <element name="meta:initial-creator"> + <ref name="string"/> + </element> +</define> +<define name="office-meta-data" combine="choice"> + <ref name="dc-creator"/> +</define> +<define name="dc-creator"> + <element name="dc:creator"> + <ref name="string"/> + </element> +</define> +<define name="office-meta-data" combine="choice"> + <element name="meta:printed-by"> + <ref name="string"/> + </element> +</define> +<define name="office-meta-data" combine="choice"> + <element name="meta:creation-date"> + <ref name="dateTime"/> + </element> +</define> +<define name="office-meta-data" combine="choice"> + <ref name="dc-date"/> +</define> +<define name="dc-date"> + <element name="dc:date"> + <ref name="dateTime"/> + </element> +</define> +<define name="office-meta-data" combine="choice"> + <element name="meta:print-date"> + <ref name="dateTime"/> + </element> +</define> +<define name="office-meta-data" combine="choice"> + <element name="meta:template"> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> + <optional> + <attribute name="xlink:type" a:defaultValue="simple"> + <value>simple</value> + </attribute> + </optional> + <optional> + <attribute name="xlink:actuate" a:defaultValue="onRequest"> + <value>onRequest</value> + </attribute> + </optional> + <optional> + <attribute name="xlink:title"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="meta:date"> + <ref name="dateTime"/> + </attribute> + </optional> + </element> +</define> +<define name="office-meta-data" combine="choice"> + <element name="meta:auto-reload"> + <optional> + <attribute name="xlink:type" a:defaultValue="simple"> + <value>simple</value> + </attribute> + </optional> + <optional> + <attribute name="xlink:show" a:defaultValue="replace"> + <value>replace</value> + </attribute> + </optional> + <optional> + <attribute name="xlink:actuate" a:defaultValue="onLoad"> + <value>onLoad</value> + </attribute> + </optional> + <optional> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> + </optional> + <optional> + <attribute name="meta:delay"> + <ref name="duration"/> + </attribute> + </optional> + </element> +</define> +<define name="office-meta-data" combine="choice"> + <element name="meta:hyperlink-behaviour"> + <optional> + <attribute name="office:target-frame-name"> + <ref name="targetFrameName"/> + </attribute> + </optional> + <optional> + <attribute name="xlink:show"> + <choice> + <value>new</value> + <value>replace</value> + </choice> + </attribute> + </optional> + </element> +</define> +<define name="office-meta-data" combine="choice"> + <element name="dc:language"> + <ref name="language"/> + </element> +</define> +<define name="office-meta-data" combine="choice"> + <element name="meta:editing-cycles"> + <ref name="nonNegativeInteger"/> + </element> +</define> +<define name="office-meta-data" combine="choice"> + <element name="meta:editing-duration"> + <ref name="duration"/> + </element> +</define> +<define name="office-meta-data" combine="choice"> + <element name="meta:document-statistic"> + <optional> + <attribute name="meta:page-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="meta:table-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="meta:draw-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="meta:image-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="meta:ole-object-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="meta:paragraph-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="meta:word-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="meta:character-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="frame-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="sentence-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="syllable-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="non-whitespace-character-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="meta:row-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="meta:cell-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="meta:object-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + </element> +</define> +<define name="office-meta-data" combine="choice"> + <element name="meta:user-defined"> + <attribute name="meta:name"> + <ref name="string"/> + </attribute> + <choice> + <group> + <attribute name="meta:value-type"> + <value>float</value> + </attribute> + <ref name="double"/> + </group> + <group> + <attribute name="meta:value-type"> + <value>date</value> + </attribute> + <ref name="dateOrDateTime"/> + </group> + <group> + <attribute name="meta:value-type"> + <value>time</value> + </attribute> + <ref name="duration"/> + </group> + <group> + <attribute name="meta:value-type"> + <value>boolean</value> + </attribute> + <ref name="boolean"/> + </group> + <group> + <attribute name="meta:value-type"> + <value>string</value> + </attribute> + <ref name="string"/> + </group> + <text/> + </choice> + </element> +</define> +<define name="text-h"> + <element name="text:h"> + <ref name="heading-attrs"/> + <ref name="paragraph-attrs"/> + <optional> + <ref name="text-number"/> + </optional> + <zeroOrMore> + <ref name="paragraph-content"/> + </zeroOrMore> + </element> +</define> +<define name="heading-attrs" combine="interleave"> + <attribute name="text:outline-level"> + <ref name="positiveInteger"/> + </attribute> +</define> +<define name="heading-attrs" combine="interleave"> + <optional> + <attribute name="text:restart-numbering" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="heading-attrs" combine="interleave"> + <optional> + <attribute name="text:start-value"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="heading-attrs" combine="interleave"> + <optional> + <attribute name="text:is-list-header" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-number"> + <element name="text:number"> + <ref name="string"/> + </element> +</define> +<define name="text-p"> + <element name="text:p"> + <ref name="paragraph-attrs"/> + <zeroOrMore> + <ref name="paragraph-content"/> + </zeroOrMore> + </element> +</define> +<define name="paragraph-attrs"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="text:class-names"> + <ref name="styleNameRefs"/> + </attribute> + </optional> + <optional> + <attribute name="text:cond-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="paragraph-attrs" combine="interleave"> + <optional> + <ref name="text-id"/> + </optional> +</define> +<define name="text-page-sequence"> + <element name="text:page-sequence"> + <oneOrMore> + <ref name="text-page"/> + </oneOrMore> + </element> +</define> +<define name="text-page"> + <element name="text:page"> + <ref name="text-page-attlist"/> + <empty/> + </element> +</define> +<define name="text-page-attlist"> + <attribute name="text:master-page-name"> + <ref name="styleNameRef"/> + </attribute> +</define> +<define name="text-list"> + <element name="text:list"> + <ref name="text-list-attr"/> + <optional> + <ref name="text-list-header"/> + </optional> + <zeroOrMore> + <ref name="text-list-item"/> + </zeroOrMore> + </element> +</define> +<define name="text-list-attr" combine="interleave"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="text-list-attr" combine="interleave"> + <optional> + <attribute name="text:continue-numbering"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-list-item"> + <element name="text:list-item"> + <ref name="text-list-item-attr"/> + <ref name="text-list-item-content"/> + </element> +</define> +<define name="text-list-item-content"> + <optional> + <ref name="text-number"/> + </optional> + <zeroOrMore> + <choice> + <ref name="text-p"/> + <ref name="text-h"/> + <ref name="text-list"/> + </choice> + </zeroOrMore> +</define> +<define name="text-list-item-attr" combine="interleave"> + <optional> + <attribute name="text:start-value"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="text-list-header"> + <element name="text:list-header"> + <ref name="text-list-item-content"/> + </element> +</define> +<define name="text-numbered-paragraph"> + <element name="text:numbered-paragraph"> + <ref name="text-numbered-paragraph-attr"/> + <optional> + <ref name="text-number"/> + </optional> + <choice> + <ref name="text-p"/> + <ref name="text-h"/> + </choice> + </element> +</define> +<define name="text-numbered-paragraph-attr" combine="interleave"> + <optional> + <attribute name="text:level" a:defaultValue="1"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="text-numbered-paragraph-attr" combine="interleave"> + <ref name="text-list-attr"/> +</define> +<define name="text-numbered-paragraph-attr" combine="interleave"> + <ref name="text-list-item-attr"/> +</define> +<define name="text-section"> + <element name="text:section"> + <ref name="text-section-attr"/> + <choice> + <ref name="text-section-source"/> + <ref name="text-section-source-dde"/> + <empty/> + </choice> + <zeroOrMore> + <ref name="text-content"/> + </zeroOrMore> + </element> +</define> +<define name="text-section-attr" combine="interleave"> + <ref name="sectionAttr"/> +</define> +<define name="sectionAttr" combine="interleave"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="sectionAttr" combine="interleave"> + <attribute name="text:name"> + <ref name="string"/> + </attribute> +</define> +<define name="sectionAttr" combine="interleave"> + <optional> + <attribute name="text:protected"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="sectionAttr" combine="interleave"> + <optional> + <attribute name="text:protection-key"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="text-section-attr" combine="interleave"> + <choice> + <attribute name="text:display"> + <choice> + <value>true</value> + <value>none</value> + </choice> + </attribute> + <group> + <attribute name="text:display"> + <value>condition</value> + </attribute> + <attribute name="text:condition"> + <ref name="string"/> + </attribute> + </group> + <empty/> + </choice> +</define> +<define name="text-section-source"> + <element name="text:section-source"> + <ref name="text-section-source-attr"/> + </element> +</define> +<define name="text-section-source-attr" combine="interleave"> + <optional> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> + <optional> + <attribute name="xlink:type" a:defaultValue="simple"> + <value>simple</value> + </attribute> + </optional> + <optional> + <attribute name="xlink:show" a:defaultValue="embed"> + <value>embed</value> + </attribute> + </optional> + </optional> +</define> +<define name="text-section-source-attr" combine="interleave"> + <optional> + <attribute name="text:section-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="text-section-source-attr" combine="interleave"> + <optional> + <attribute name="text:filter-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="text-section-source-dde"> + <ref name="office-dde-source"/> +</define> +<define name="text-tracked-changes"> + <optional> + <element name="text:tracked-changes"> + <ref name="text-tracked-changes-attr"/> + <zeroOrMore> + <ref name="text-changed-region"/> + </zeroOrMore> + </element> + </optional> +</define> +<define name="text-tracked-changes-attr" combine="interleave"> + <optional> + <attribute name="text:track-changes" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-changed-region"> + <element name="text:changed-region"> + <ref name="text-changed-region-attr"/> + <ref name="text-changed-region-content"/> + </element> +</define> +<define name="text-changed-region-attr" combine="interleave"> + <attribute name="text:id"> + <ref name="ID"/> + </attribute> +</define> +<define name="text-changed-region-content" combine="choice"> + <element name="text:insertion"> + <ref name="office-change-info"/> + </element> +</define> +<define name="text-changed-region-content" combine="choice"> + <element name="text:deletion"> + <ref name="office-change-info"/> + <zeroOrMore> + <ref name="text-content"/> + </zeroOrMore> + </element> +</define> +<define name="text-changed-region-content" combine="choice"> + <element name="text:format-change"> + <ref name="office-change-info"/> + </element> +</define> +<define name="change-marks"> + <choice> + <element name="text:change"> + <ref name="change-mark-attr"/> + </element> + <element name="text:change-start"> + <ref name="change-mark-attr"/> + </element> + <element name="text:change-end"> + <ref name="change-mark-attr"/> + </element> + </choice> +</define> +<define name="change-mark-attr"> + <attribute name="text:change-id"> + <ref name="IDREF"/> + </attribute> +</define> +<define name="text-decls"> + <optional> + <element name="text:variable-decls"> + <zeroOrMore> + <ref name="text-variable-decl"/> + </zeroOrMore> + </element> + </optional> + <optional> + <element name="text:sequence-decls"> + <zeroOrMore> + <ref name="text-sequence-decl"/> + </zeroOrMore> + </element> + </optional> + <optional> + <element name="text:user-field-decls"> + <zeroOrMore> + <ref name="text-user-field-decl"/> + </zeroOrMore> + </element> + </optional> + <optional> + <element name="text:dde-connection-decls"> + <zeroOrMore> + <ref name="text-dde-connection-decl"/> + </zeroOrMore> + </element> + </optional> + <optional> + <ref name="text-alphabetical-index-auto-mark-file"/> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <text/> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:s"> + <optional> + <attribute name="text:c"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:tab"> + <ref name="text-tab-attr"/> + </element> +</define> +<define name="text-tab-attr"> + <optional> + <attribute name="text:tab-ref"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:line-break"> + <empty/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:span"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="text:class-names"> + <ref name="styleNameRefs"/> + </attribute> + </optional> + <zeroOrMore> + <ref name="paragraph-content"/> + </zeroOrMore> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:a"> + <ref name="text-a-attlist"/> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="paragraph-content"/> + </zeroOrMore> + </element> +</define> +<define name="text-a-attlist" combine="interleave"> + <optional> + <attribute name="office:name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="text-a-attlist" combine="interleave"> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> + <optional> + <attribute name="xlink:type" a:defaultValue="simple"> + <value>simple</value> + </attribute> + </optional> + <optional> + <attribute name="xlink:actuate" a:defaultValue="onRequest"> + <value>onRequest</value> + </attribute> + </optional> +</define> +<define name="text-a-attlist" combine="interleave"> + <optional> + <attribute name="office:target-frame-name"> + <ref name="targetFrameName"/> + </attribute> + </optional> + <optional> + <attribute name="xlink:show"> + <choice> + <value>new</value> + <value>replace</value> + </choice> + </attribute> + </optional> +</define> +<define name="text-a-attlist" combine="interleave"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="text:visited-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <choice> + <element name="text:bookmark"> + <attribute name="text:name"> + <ref name="string"/> + </attribute> + </element> + <element name="text:bookmark-start"> + <attribute name="text:name"> + <ref name="string"/> + </attribute> + </element> + <element name="text:bookmark-end"> + <attribute name="text:name"> + <ref name="string"/> + </attribute> + </element> + </choice> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:reference-mark"> + <attribute name="text:name"> + <ref name="string"/> + </attribute> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <choice> + <element name="text:reference-mark-start"> + <attribute name="text:name"> + <ref name="string"/> + </attribute> + </element> + <element name="text:reference-mark-end"> + <attribute name="text:name"> + <ref name="string"/> + </attribute> + </element> + </choice> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:note"> + <ref name="text-note-class"/> + <optional> + <attribute name="text:id"> + <ref name="string"/> + </attribute> + </optional> + <element name="text:note-citation"> + <optional> + <attribute name="text:label"> + <ref name="string"/> + </attribute> + </optional> + <text/> + </element> + <element name="text:note-body"> + <zeroOrMore> + <ref name="text-content"/> + </zeroOrMore> + </element> + </element> +</define> +<define name="text-note-class"> + <attribute name="text:note-class"> + <choice> + <value>footnote</value> + <value>endnote</value> + </choice> + </attribute> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:ruby"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <element name="text:ruby-base"> + <ref name="paragraph-content"/> + </element> + <element name="text:ruby-text"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <text/> + </element> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <ref name="office-annotation"/> +</define> +<define name="paragraph-content" combine="choice"> + <ref name="change-marks"/> +</define> +<define name="paragraph-content" combine="choice"> + <choice> + <ref name="shape"/> + <ref name="draw-a"/> + </choice> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:date"> + <ref name="text-date-attlist"/> + <text/> + </element> +</define> +<define name="text-date-attlist" combine="interleave"> + <interleave> + <ref name="common-field-fixed-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + </interleave> +</define> +<define name="text-date-attlist" combine="interleave"> + <optional> + <attribute name="text:date-value"> + <ref name="dateOrDateTime"/> + </attribute> + </optional> +</define> +<define name="text-date-attlist" combine="interleave"> + <optional> + <attribute name="text:date-adjust"> + <ref name="duration"/> + </attribute> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:time"> + <ref name="text-time-attlist"/> + <text/> + </element> +</define> +<define name="text-time-attlist" combine="interleave"> + <interleave> + <ref name="common-field-fixed-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + </interleave> +</define> +<define name="text-time-attlist" combine="interleave"> + <optional> + <attribute name="text:time-value"> + <ref name="timeOrDateTime"/> + </attribute> + </optional> +</define> +<define name="text-time-attlist" combine="interleave"> + <optional> + <attribute name="text:time-adjust"> + <ref name="duration"/> + </attribute> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:page-number"> + <ref name="text-page-number-attlist"/> + <text/> + </element> +</define> +<define name="text-page-number-attlist" combine="interleave"> + <interleave> + <ref name="common-field-num-format-attlist"/> + <ref name="common-field-fixed-attlist"/> + </interleave> +</define> +<define name="text-page-number-attlist" combine="interleave"> + <optional> + <attribute name="text:page-adjust"> + <ref name="integer"/> + </attribute> + </optional> +</define> +<define name="text-page-number-attlist" combine="interleave"> + <optional> + <attribute name="text:select-page"> + <choice> + <value>previous</value> + <value>current</value> + <value>next</value> + </choice> + </attribute> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:page-continuation"> + <ref name="text-page-continuation-attlist"/> + <text/> + </element> +</define> +<define name="text-page-continuation-attlist" combine="interleave"> + <attribute name="text:select-page"> + <choice> + <value>previous</value> + <value>next</value> + </choice> + </attribute> +</define> +<define name="text-page-continuation-attlist" combine="interleave"> + <optional> + <attribute name="text:string-value"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:sender-firstname"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:sender-lastname"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:sender-initials"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:sender-title"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:sender-position"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:sender-email"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:sender-phone-private"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:sender-fax"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:sender-company"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:sender-phone-work"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:sender-street"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:sender-city"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:sender-postal-code"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:sender-country"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:sender-state-or-province"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:author-name"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:author-initials"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:chapter"> + <ref name="text-chapter-attlist"/> + <text/> + </element> +</define> +<define name="text-chapter-attlist" combine="interleave"> + <attribute name="text:display"> + <choice> + <value>name</value> + <value>number</value> + <value>number-and-name</value> + <value>plain-number-and-name</value> + <value>plain-number</value> + </choice> + </attribute> +</define> +<define name="text-chapter-attlist" combine="interleave"> + <attribute name="text:outline-level"> + <ref name="nonNegativeInteger"/> + </attribute> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:file-name"> + <ref name="text-file-name-attlist"/> + <text/> + </element> +</define> +<define name="text-file-name-attlist" combine="interleave"> + <optional> + <attribute name="text:display"> + <choice> + <value>full</value> + <value>path</value> + <value>name</value> + <value>name-and-extension</value> + </choice> + </attribute> + </optional> +</define> +<define name="text-file-name-attlist" combine="interleave"> + <ref name="common-field-fixed-attlist"/> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:template-name"> + <ref name="text-template-name-attlist"/> + <text/> + </element> +</define> +<define name="text-template-name-attlist"> + <optional> + <attribute name="text:display"> + <choice> + <value>full</value> + <value>path</value> + <value>name</value> + <value>name-and-extension</value> + <value>area</value> + <value>title</value> + </choice> + </attribute> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:sheet-name"> + <text/> + </element> +</define> +<define name="text-variable-decl"> + <element name="text:variable-decl"> + <ref name="common-field-name-attlist"/> + <ref name="common-value-type-attlist"/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:variable-set"> + <interleave> + <ref name="common-field-name-attlist"/> + <ref name="common-field-formula-attlist"/> + <ref name="common-value-and-type-attlist"/> + <ref name="common-field-display-value-none-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + </interleave> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:variable-get"> + <interleave> + <ref name="common-field-name-attlist"/> + <ref name="common-field-display-value-formula-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + </interleave> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:variable-input"> + <interleave> + <ref name="common-field-name-attlist"/> + <ref name="common-field-description-attlist"/> + <ref name="common-value-type-attlist"/> + <ref name="common-field-display-value-none-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + </interleave> + <text/> + </element> +</define> +<define name="text-user-field-decl"> + <element name="text:user-field-decl"> + <ref name="common-field-name-attlist"/> + <optional> + <ref name="common-field-formula-attlist"/> + </optional> + <ref name="common-value-and-type-attlist"/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:user-field-get"> + <interleave> + <ref name="common-field-name-attlist"/> + <ref name="common-field-display-value-formula-none-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + </interleave> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:user-field-input"> + <interleave> + <ref name="common-field-name-attlist"/> + <ref name="common-field-description-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + </interleave> + <text/> + </element> +</define> +<define name="text-sequence-decl"> + <element name="text:sequence-decl"> + <ref name="text-sequence-decl-attlist"/> + </element> +</define> +<define name="text-sequence-decl-attlist" combine="interleave"> + <ref name="common-field-name-attlist"/> +</define> +<define name="text-sequence-decl-attlist" combine="interleave"> + <attribute name="text:display-outline-level"> + <ref name="nonNegativeInteger"/> + </attribute> +</define> +<define name="text-sequence-decl-attlist" combine="interleave"> + <optional> + <attribute name="text:separation-character"> + <ref name="character"/> + </attribute> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:sequence"> + <interleave> + <ref name="common-field-name-attlist"/> + <ref name="common-field-formula-attlist"/> + <ref name="common-field-num-format-attlist"/> + <ref name="text-sequence-ref-name"/> + </interleave> + <text/> + </element> +</define> +<define name="text-sequence-ref-name"> + <optional> + <attribute name="text:ref-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:expression"> + <interleave> + <ref name="common-field-formula-attlist"/> + <optional> + <ref name="common-value-and-type-attlist"/> + </optional> + <ref name="common-field-display-value-formula-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + </interleave> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:text-input"> + <ref name="common-field-description-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:initial-creator"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:creation-date"> + <interleave> + <ref name="common-field-fixed-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + <optional> + <attribute name="text:date-value"> + <ref name="dateOrDateTime"/> + </attribute> + </optional> + </interleave> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:creation-time"> + <interleave> + <ref name="common-field-fixed-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + <optional> + <attribute name="text:time-value"> + <ref name="timeOrDateTime"/> + </attribute> + </optional> + </interleave> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:description"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:user-defined"> + <interleave> + <ref name="common-field-fixed-attlist"/> + <attribute name="text:name"> + <ref name="string"/> + </attribute> + <ref name="common-field-data-style-name-attlist"/> + <optional> + <attribute name="office:value"> + <ref name="double"/> + </attribute> + </optional> + <optional> + <attribute name="office:date-value"> + <ref name="dateOrDateTime"/> + </attribute> + </optional> + <optional> + <attribute name="office:time-value"> + <ref name="duration"/> + </attribute> + </optional> + <optional> + <attribute name="office:boolean-value"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="office:string-value"> + <ref name="string"/> + </attribute> + </optional> + </interleave> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:print-time"> + <interleave> + <ref name="common-field-fixed-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + <optional> + <attribute name="text:time-value"> + <ref name="time"/> + </attribute> + </optional> + </interleave> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:print-date"> + <interleave> + <ref name="common-field-fixed-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + <optional> + <attribute name="text:date-value"> + <ref name="date"/> + </attribute> + </optional> + </interleave> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:printed-by"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:title"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:subject"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:keywords"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:editing-cycles"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:editing-duration"> + <interleave> + <ref name="common-field-fixed-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + <optional> + <attribute name="text:duration"> + <ref name="duration"/> + </attribute> + </optional> + </interleave> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:modification-time"> + <interleave> + <ref name="common-field-fixed-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + <optional> + <attribute name="text:time-value"> + <ref name="time"/> + </attribute> + </optional> + </interleave> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:modification-date"> + <interleave> + <ref name="common-field-fixed-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + <optional> + <attribute name="text:date-value"> + <ref name="date"/> + </attribute> + </optional> + </interleave> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:creator"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element> + <choice> + <name>text:page-count</name> + <name>text:paragraph-count</name> + <name>text:word-count</name> + <name>text:character-count</name> + <name>text:table-count</name> + <name>text:image-count</name> + <name>text:object-count</name> + </choice> + <ref name="common-field-num-format-attlist"/> + <text/> + </element> +</define> +<define name="common-field-database-table"> + <ref name="common-field-database-table-attlist"/> + <ref name="common-field-database-name"/> +</define> +<define name="common-field-database-name" combine="choice"> + <optional> + <attribute name="text:database-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-field-database-name" combine="choice"> + <ref name="form-connection-resource"/> +</define> +<define name="common-field-database-table-attlist" combine="interleave"> + <attribute name="text:table-name"> + <ref name="string"/> + </attribute> +</define> +<define name="common-field-database-table-attlist" combine="interleave"> + <optional> + <attribute name="text:table-type"> + <choice> + <value>table</value> + <value>query</value> + <value>command</value> + </choice> + </attribute> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:database-display"> + <ref name="text-database-display-attlist"/> + <text/> + </element> +</define> +<define name="text-database-display-attlist" combine="interleave"> + <ref name="common-field-database-table"/> +</define> +<define name="text-database-display-attlist" combine="interleave"> + <ref name="common-field-data-style-name-attlist"/> +</define> +<define name="text-database-display-attlist" combine="interleave"> + <attribute name="text:column-name"> + <ref name="string"/> + </attribute> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:database-next"> + <ref name="text-database-next-attlist"/> + </element> +</define> +<define name="text-database-next-attlist" combine="interleave"> + <ref name="common-field-database-table"/> +</define> +<define name="text-database-next-attlist" combine="interleave"> + <optional> + <attribute name="text:condition"> + <ref name="formula"/> + </attribute> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:database-row-select"> + <ref name="text-database-row-select-attlist"/> + </element> +</define> +<define name="text-database-row-select-attlist" combine="interleave"> + <ref name="common-field-database-table"/> +</define> +<define name="text-database-row-select-attlist" combine="interleave"> + <optional> + <attribute name="text:condition"> + <ref name="formula"/> + </attribute> + </optional> +</define> +<define name="text-database-row-select-attlist" combine="interleave"> + <optional> + <attribute name="text:row-number"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:database-row-number"> + <interleave> + <ref name="common-field-database-table"/> + <ref name="common-field-num-format-attlist"/> + <optional> + <attribute name="text:value"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + </interleave> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:database-name"> + <ref name="common-field-database-table"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:page-variable-set"> + <ref name="text-set-page-variable-attlist"/> + <text/> + </element> +</define> +<define name="text-set-page-variable-attlist" combine="interleave"> + <optional> + <attribute name="text:active"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-set-page-variable-attlist" combine="interleave"> + <optional> + <attribute name="text:page-adjust"> + <ref name="integer"/> + </attribute> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:page-variable-get"> + <ref name="text-get-page-variable-attlist"/> + <text/> + </element> +</define> +<define name="text-get-page-variable-attlist" combine="interleave"> + <ref name="common-field-num-format-attlist"/> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:placeholder"> + <ref name="text-placeholder-attlist"/> + <text/> + </element> +</define> +<define name="text-placeholder-attlist" combine="interleave"> + <attribute name="text:placeholder-type"> + <choice> + <value>text</value> + <value>table</value> + <value>text-box</value> + <value>image</value> + <value>object</value> + </choice> + </attribute> +</define> +<define name="text-placeholder-attlist" combine="interleave"> + <ref name="common-field-description-attlist"/> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:conditional-text"> + <ref name="text-conditional-text-attlist"/> + <text/> + </element> +</define> +<define name="text-conditional-text-attlist" combine="interleave"> + <attribute name="text:condition"> + <ref name="formula"/> + </attribute> +</define> +<define name="text-conditional-text-attlist" combine="interleave"> + <attribute name="text:string-value-if-true"> + <ref name="string"/> + </attribute> +</define> +<define name="text-conditional-text-attlist" combine="interleave"> + <attribute name="text:string-value-if-false"> + <ref name="string"/> + </attribute> +</define> +<define name="text-conditional-text-attlist" combine="interleave"> + <optional> + <attribute name="text:current-value"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:hidden-text"> + <ref name="text-hidden-text-attlist"/> + <text/> + </element> +</define> +<define name="text-hidden-text-attlist" combine="interleave"> + <attribute name="text:condition"> + <ref name="formula"/> + </attribute> +</define> +<define name="text-hidden-text-attlist" combine="interleave"> + <attribute name="text:string-value"> + <ref name="string"/> + </attribute> +</define> +<define name="text-hidden-text-attlist" combine="interleave"> + <optional> + <attribute name="text:is-hidden"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <element> + <choice> + <name>text:reference-ref</name> + <name>text:bookmark-ref</name> + </choice> + <interleave> + <ref name="text-common-ref-content"/> + <ref name="text-ref-content"/> + </interleave> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:note-ref"> + <interleave> + <ref name="text-common-ref-content"/> + <ref name="text-note-ref-content"/> + <ref name="text-ref-content"/> + </interleave> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:sequence-ref"> + <interleave> + <ref name="text-common-ref-content"/> + <ref name="text-sequence-ref-content"/> + </interleave> + </element> +</define> +<define name="text-common-ref-content" combine="interleave"> + <text/> +</define> +<define name="text-common-ref-content" combine="interleave"> + <optional> + <attribute name="text:ref-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="text-note-ref-content" combine="interleave"> + <ref name="text-note-class"/> +</define> +<define name="text-ref-content" combine="interleave"> + <optional> + <attribute name="text:reference-format"> + <choice> + <value>page</value> + <value>chapter</value> + <value>direction</value> + <value>text</value> + </choice> + </attribute> + </optional> +</define> +<define name="text-sequence-ref-content" combine="interleave"> + <optional> + <attribute name="text:reference-format"> + <choice> + <value>page</value> + <value>chapter</value> + <value>direction</value> + <value>text</value> + <value>category-and-value</value> + <value>caption</value> + <value>value</value> + </choice> + </attribute> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:script"> + <interleave> + <choice> + <group> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> + <optional> + <attribute name="xlink:type" a:defaultValue="simple"> + <value>simple</value> + </attribute> + </optional> + </group> + <text/> + </choice> + <optional> + <attribute name="script:language"> + <ref name="string"/> + </attribute> + </optional> + </interleave> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:execute-macro"> + <optional> + <attribute name="text:name"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:hidden-paragraph"> + <ref name="text-hidden-paragraph-attlist"/> + <text/> + </element> +</define> +<define name="text-hidden-paragraph-attlist" combine="interleave"> + <attribute name="text:condition"> + <ref name="formula"/> + </attribute> +</define> +<define name="text-hidden-paragraph-attlist" combine="interleave"> + <optional> + <attribute name="text:is-hidden"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:dde-connection"> + <attribute name="text:connection-name"> + <ref name="string"/> + </attribute> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:measure"> + <attribute name="text:kind"> + <choice> + <value>value</value> + <value>unit</value> + <value>gap</value> + </choice> + </attribute> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:table-formula"> + <interleave> + <ref name="common-field-formula-attlist"/> + <ref name="common-field-display-value-formula-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + </interleave> + <text/> + </element> +</define> +<define name="common-value-type-attlist"> + <attribute name="office:value-type"> + <ref name="valueType"/> + </attribute> +</define> +<define name="common-value-and-type-attlist"> + <choice> + <group> + <attribute name="office:value-type"> + <value>float</value> + </attribute> + <attribute name="office:value"> + <ref name="double"/> + </attribute> + </group> + <group> + <attribute name="office:value-type"> + <value>percentage</value> + </attribute> + <attribute name="office:value"> + <ref name="double"/> + </attribute> + </group> + <group> + <attribute name="office:value-type"> + <value>currency</value> + </attribute> + <attribute name="office:value"> + <ref name="double"/> + </attribute> + <optional> + <attribute name="office:currency"> + <ref name="string"/> + </attribute> + </optional> + </group> + <group> + <attribute name="office:value-type"> + <value>date</value> + </attribute> + <attribute name="office:date-value"> + <ref name="dateOrDateTime"/> + </attribute> + </group> + <group> + <attribute name="office:value-type"> + <value>time</value> + </attribute> + <attribute name="office:time-value"> + <ref name="duration"/> + </attribute> + </group> + <group> + <attribute name="office:value-type"> + <value>boolean</value> + </attribute> + <attribute name="office:boolean-value"> + <ref name="boolean"/> + </attribute> + </group> + <group> + <attribute name="office:value-type"> + <value>string</value> + </attribute> + <optional> + <attribute name="office:string-value"> + <ref name="string"/> + </attribute> + </optional> + </group> + </choice> +</define> +<define name="common-field-fixed-attlist"> + <optional> + <attribute name="text:fixed"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="common-field-name-attlist"> + <attribute name="text:name"> + <ref name="variableName"/> + </attribute> +</define> +<define name="common-field-description-attlist"> + <optional> + <attribute name="text:description"> + <text/> + </attribute> + </optional> +</define> +<define name="common-field-display-value-none-attlist"> + <optional> + <attribute name="text:display"> + <choice> + <value>value</value> + <value>none</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-field-display-value-formula-none-attlist"> + <optional> + <attribute name="text:display"> + <choice> + <value>value</value> + <value>formula</value> + <value>none</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-field-display-value-formula-attlist"> + <optional> + <attribute name="text:display"> + <choice> + <value>value</value> + <value>formula</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-field-formula-attlist"> + <optional> + <attribute name="text:formula"> + <ref name="formula"/> + </attribute> + </optional> +</define> +<define name="common-field-data-style-name-attlist"> + <optional> + <attribute name="style:data-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="common-field-num-format-attlist"> + <optional> + <ref name="common-num-format-attlist"/> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:toc-mark-start"> + <ref name="text-toc-mark-start-attrs"/> + </element> +</define> +<define name="text-toc-mark-start-attrs"> + <ref name="text-id"/> + <ref name="text-outline-level"/> +</define> +<define name="text-outline-level"> + <optional> + <attribute name="text:outline-level"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="text-id"> + <attribute name="text:id"> + <ref name="string"/> + </attribute> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:toc-mark-end"> + <ref name="text-id"/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:toc-mark"> + <attribute name="text:string-value"> + <ref name="string"/> + </attribute> + <ref name="text-outline-level"/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:user-index-mark-start"> + <ref name="text-id"/> + <ref name="text-outline-level"/> + <ref name="text-index-name"/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:user-index-mark-end"> + <ref name="text-id"/> + <ref name="text-outline-level"/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:user-index-mark"> + <attribute name="text:string-value"> + <ref name="string"/> + </attribute> + <ref name="text-outline-level"/> + <ref name="text-index-name"/> + </element> +</define> +<define name="text-index-name"> + <attribute name="text:index-name"> + <ref name="string"/> + </attribute> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:alphabetical-index-mark-start"> + <ref name="text-id"/> + <ref name="text-alphabetical-index-mark-attrs"/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:alphabetical-index-mark-end"> + <ref name="text-id"/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:alphabetical-index-mark"> + <attribute name="text:string-value"> + <ref name="string"/> + </attribute> + <ref name="text-alphabetical-index-mark-attrs"/> + </element> +</define> +<define name="text-alphabetical-index-mark-attrs" combine="interleave"> + <optional> + <attribute name="text:key1"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="text:key2"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="text-alphabetical-index-mark-attrs" combine="interleave"> + <optional> + <attribute name="text:string-value-phonetic"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="text:key1-phonetic"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="text:key2-phonetic"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="text-alphabetical-index-mark-attrs" combine="interleave"> + <optional> + <attribute name="text:main-entry" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:bibliography-mark"> + <attribute name="text:bibliography-type"> + <ref name="text-bibliography-types"/> + </attribute> + <zeroOrMore> + <attribute> + <choice> + <name>text:identifier</name> + <name>text:address</name> + <name>text:annote</name> + <name>text:author</name> + <name>text:booktitle</name> + <name>text:chapter</name> + <name>text:edition</name> + <name>text:editor</name> + <name>text:howpublished</name> + <name>text:institution</name> + <name>text:journal</name> + <name>text:month</name> + <name>text:note</name> + <name>text:number</name> + <name>text:organizations</name> + <name>text:pages</name> + <name>text:publisher</name> + <name>text:school</name> + <name>text:series</name> + <name>text:title</name> + <name>text:report-type</name> + <name>text:volume</name> + <name>text:year</name> + <name>text:url</name> + <name>text:custom1</name> + <name>text:custom2</name> + <name>text:custom3</name> + <name>text:custom4</name> + <name>text:custom5</name> + <name>text:isbn</name> + <name>text:issn</name> + </choice> + <ref name="string"/> + </attribute> + </zeroOrMore> + <text/> + </element> +</define> +<define name="text-bibliography-types"> + <choice> + <value>article</value> + <value>book</value> + <value>booklet</value> + <value>conference</value> + <value>custom1</value> + <value>custom2</value> + <value>custom3</value> + <value>custom4</value> + <value>custom5</value> + <value>email</value> + <value>inbook</value> + <value>incollection</value> + <value>inproceedings</value> + <value>journal</value> + <value>manual</value> + <value>mastersthesis</value> + <value>misc</value> + <value>phdthesis</value> + <value>proceedings</value> + <value>techreport</value> + <value>unpublished</value> + <value>www</value> + </choice> +</define> +<define name="text-index-body"> + <element name="text:index-body"> + <zeroOrMore> + <ref name="index-content-main"/> + </zeroOrMore> + </element> +</define> +<define name="index-content-main"> + <choice> + <ref name="text-content"/> + <ref name="text-index-title"/> + </choice> +</define> +<define name="text-index-title"> + <element name="text:index-title"> + <ref name="sectionAttr"/> + <zeroOrMore> + <ref name="index-content-main"/> + </zeroOrMore> + </element> +</define> +<define name="text-table-of-content"> + <element name="text:table-of-content"> + <ref name="sectionAttr"/> + <ref name="text-table-of-content-source"/> + <ref name="text-index-body"/> + </element> +</define> +<define name="text-table-of-content-source"> + <element name="text:table-of-content-source"> + <ref name="text-table-of-content-source-attlist"/> + <optional> + <ref name="text-index-title-template"/> + </optional> + <zeroOrMore> + <ref name="text-table-of-content-entry-template"/> + </zeroOrMore> + <zeroOrMore> + <ref name="text-index-source-styles"/> + </zeroOrMore> + </element> +</define> +<define name="text-table-of-content-source-attlist" combine="interleave"> + <optional> + <attribute name="text:outline-level"> + <choice> + <ref name="positiveInteger"/> + </choice> + </attribute> + </optional> +</define> +<define name="text-table-of-content-source-attlist" combine="interleave"> + <optional> + <attribute name="text:use-outline-level" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-table-of-content-source-attlist" combine="interleave"> + <optional> + <attribute name="text:use-index-marks"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-table-of-content-source-attlist" combine="interleave"> + <optional> + <attribute name="text:use-index-source-styles"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-table-of-content-source-attlist" combine="interleave"> + <optional> + <attribute name="text:index-scope"> + <choice> + <value>document</value> + <value>chapter</value> + </choice> + </attribute> + </optional> +</define> +<define name="text-table-of-content-source-attlist" combine="interleave"> + <optional> + <attribute name="text:relative-tab-stop-position"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-table-of-content-entry-template"> + <element name="text:table-of-content-entry-template"> + <ref name="text-table-of-content-entry-template-attlist"/> + <zeroOrMore> + <ref name="text-table-of-content-children"/> + + </zeroOrMore> + </element> +</define> +<define name="text-table-of-content-children"> + <choice> + <ref name="text-index-entry-chapter"/> + <ref name="text-index-entry-page-number"/> + <ref name="text-index-entry-text"/> + <ref name="text-index-entry-span"/> + <ref name="text-index-entry-tab-stop"/> + <ref name="text-index-entry-link-start"/> + <ref name="text-index-entry-link-end"/> + </choice> +</define> +<define name="text-table-of-content-entry-template-attlist" + combine="interleave"> + <attribute name="text:outline-level"> + <ref name="positiveInteger"/> + </attribute> +</define> +<define name="text-table-of-content-entry-template-attlist" + combine="interleave"> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> +</define> +<define name="text-illustration-index"> + <element name="text:illustration-index"> + <ref name="sectionAttr"/> + <ref name="text-illustration-index-source"/> + <ref name="text-index-body"/> + </element> +</define> +<define name="text-illustration-index-source"> + <element name="text:illustration-index-source"> + <ref name="text-illustration-index-source-attrs"/> + <optional> + <ref name="text-index-title-template"/> + </optional> + <optional> + <ref name="text-illustration-index-entry-template"/> + </optional> + </element> +</define> +<define name="text-illustration-index-source-attrs" combine="interleave"> + <ref name="text-index-scope-attr"/> +</define> +<define name="text-index-scope-attr"> + <optional> + <attribute name="text:index-scope" a:defaultValue="document"> + <choice> + <value>document</value> + <value>chapter</value> + </choice> + </attribute> + </optional> +</define> +<define name="text-illustration-index-source-attrs" combine="interleave"> + <ref name="text-relative-tab-stop-position-attr"/> +</define> +<define name="text-relative-tab-stop-position-attr"> + <optional> + <attribute name="text:relative-tab-stop-position" + a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-illustration-index-source-attrs" combine="interleave"> + <optional> + <attribute name="text:use-caption" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-illustration-index-source-attrs" combine="interleave"> + <optional> + <attribute name="text:caption-sequence-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="text-illustration-index-source-attrs" combine="interleave"> + <optional> + <attribute name="text:caption-sequence-format"> + <choice> + <value>text</value> + <value>category-and-value</value> + <value>caption</value> + </choice> + </attribute> + </optional> +</define> +<define name="text-illustration-index-entry-template"> + <element name="text:illustration-index-entry-template"> + <ref name="text-illustration-index-entry-content"/> + </element> +</define> +<define name="text-illustration-index-entry-content"> + <ref name="text-illustration-index-entry-template-attrs"/> + <zeroOrMore> + <choice> + <ref name="text-index-entry-page-number"/> + <ref name="text-index-entry-text"/> + <ref name="text-index-entry-span"/> + <ref name="text-index-entry-tab-stop"/> + </choice> + </zeroOrMore> +</define> +<define name="text-illustration-index-entry-template-attrs"> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> +</define> +<define name="text-table-index"> + <element name="text:table-index"> + <ref name="sectionAttr"/> + <ref name="text-table-index-source"/> + <ref name="text-index-body"/> + </element> +</define> +<define name="text-table-index-source"> + <element name="text:table-index-source"> + <ref name="text-illustration-index-source-attrs"/> + <optional> + <ref name="text-index-title-template"/> + </optional> + <optional> + <ref name="text-table-index-entry-template"/> + </optional> + </element> +</define> +<define name="text-table-index-entry-template"> + <element name="text:table-index-entry-template"> + <ref name="text-illustration-index-entry-content"/> + </element> +</define> +<define name="text-object-index"> + <element name="text:object-index"> + <ref name="sectionAttr"/> + <ref name="text-object-index-source"/> + <ref name="text-index-body"/> + </element> +</define> +<define name="text-object-index-source"> + <element name="text:object-index-source"> + <ref name="text-object-index-source-attrs"/> + <optional> + <ref name="text-index-title-template"/> + </optional> + <optional> + <ref name="text-object-index-entry-template"/> + </optional> + </element> +</define> +<define name="text-object-index-source-attrs" combine="interleave"> + <ref name="text-index-scope-attr"/> +</define> +<define name="text-object-index-source-attrs" combine="interleave"> + <ref name="text-relative-tab-stop-position-attr"/> +</define> +<define name="text-object-index-source-attrs" combine="interleave"> + <optional> + <attribute name="text:use-spreadsheet-objects" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-object-index-source-attrs" combine="interleave"> + <optional> + <attribute name="text:use-math-objects" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-object-index-source-attrs" combine="interleave"> + <optional> + <attribute name="text:use-draw-objects" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-object-index-source-attrs" combine="interleave"> + <optional> + <attribute name="text:use-chart-objects" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-object-index-source-attrs" combine="interleave"> + <optional> + <attribute name="text:use-other-objects" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-object-index-entry-template"> + <element name="text:object-index-entry-template"> + <ref name="text-illustration-index-entry-content"/> + </element> +</define> +<define name="text-user-index"> + <element name="text:user-index"> + <ref name="sectionAttr"/> + <ref name="text-user-index-source"/> + <ref name="text-index-body"/> + </element> +</define> +<define name="text-user-index-source"> + <element name="text:user-index-source"> + <ref name="text-user-index-source-attr"/> + <optional> + <ref name="text-index-title-template"/> + </optional> + <zeroOrMore> + <ref name="text-user-index-entry-template"/> + </zeroOrMore> + <zeroOrMore> + <ref name="text-index-source-styles"/> + </zeroOrMore> + </element> +</define> +<define name="text-user-index-source-attr" combine="interleave"> + <ref name="text-index-scope-attr"/> + <ref name="text-relative-tab-stop-position-attr"/> + <attribute name="text:index-name"> + <ref name="string"/> + </attribute> +</define> +<define name="text-user-index-source-attr" combine="interleave"> + <optional> + <attribute name="text:use-index-marks" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:use-graphics" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:use-tables" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:use-floating-frames" + a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:use-objects" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-user-index-source-attr" combine="interleave"> + <optional> + <attribute name="text:copy-outline-levels" + a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-user-index-entry-template"> + <element name="text:user-index-entry-template"> + <ref name="text-user-index-entry-template-attrs"/> + <zeroOrMore> + <choice> + <ref name="text-index-entry-chapter"/> + <ref name="text-index-entry-page-number"/> + <ref name="text-index-entry-text"/> + <ref name="text-index-entry-span"/> + <ref name="text-index-entry-tab-stop"/> + </choice> + </zeroOrMore> + </element> +</define> +<define name="text-user-index-entry-template-attrs" combine="interleave"> + <attribute name="text:outline-level"> + <ref name="positiveInteger"/> + </attribute> +</define> +<define name="text-user-index-entry-template-attrs" combine="interleave"> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> +</define> +<define name="text-alphabetical-index"> + <element name="text:alphabetical-index"> + <ref name="sectionAttr"/> + <ref name="text-alphabetical-index-source"/> + <ref name="text-index-body"/> + </element> +</define> +<define name="text-alphabetical-index-source"> + <element name="text:alphabetical-index-source"> + <ref name="text-alphabetical-index-source-attrs"/> + <optional> + <ref name="text-index-title-template"/> + </optional> + <zeroOrMore> + <ref name="text-alphabetical-index-entry-template"/> + </zeroOrMore> + </element> +</define> +<define name="text-alphabetical-index-source-attrs" combine="interleave"> + <ref name="text-index-scope-attr"/> + <ref name="text-relative-tab-stop-position-attr"/> +</define> +<define name="text-alphabetical-index-source-attrs" combine="interleave"> + <optional> + <attribute name="text:ignore-case" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-alphabetical-index-source-attrs" combine="interleave"> + <optional> + <attribute name="text:main-entry-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="text-alphabetical-index-source-attrs" combine="interleave"> + <optional> + <attribute name="text:alphabetical-separators" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-alphabetical-index-source-attrs" combine="interleave"> + <optional> + <attribute name="text:combine-entries" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:combine-entries-with-dash" + a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:combine-entries-with-pp" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-alphabetical-index-source-attrs" combine="interleave"> + <optional> + <attribute name="text:use-keys-as-entries" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-alphabetical-index-source-attrs" combine="interleave"> + <optional> + <attribute name="text:capitalize-entries" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-alphabetical-index-source-attrs" combine="interleave"> + <optional> + <attribute name="text:comma-separated" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-alphabetical-index-source-attrs" combine="interleave"> + <optional> + <attribute name="fo:language"> + <ref name="languageCode"/> + </attribute> + </optional> +</define> +<define name="text-alphabetical-index-source-attrs" combine="interleave"> + <optional> + <attribute name="fo:country"> + <ref name="countryCode"/> + </attribute> + </optional> +</define> +<define name="text-alphabetical-index-source-attrs" combine="interleave"> + <optional> + <attribute name="text:sort-algorithm"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="text-alphabetical-index-auto-mark-file"> + <element name="text:alphabetical-index-auto-mark-file"> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> + <optional> + <attribute name="xlink:type" a:defaultValue="simple"> + <value>simple</value> + </attribute> + </optional> + </element> +</define> +<define name="text-alphabetical-index-entry-template"> + <element name="text:alphabetical-index-entry-template"> + <ref name="text-alphabetical-index-entry-template-attrs"/> + <zeroOrMore> + <choice> + <ref name="text-index-entry-chapter"/> + <ref name="text-index-entry-page-number"/> + <ref name="text-index-entry-text"/> + <ref name="text-index-entry-span"/> + <ref name="text-index-entry-tab-stop"/> + </choice> + </zeroOrMore> + </element> +</define> +<define name="text-alphabetical-index-entry-template-attrs" + combine="interleave"> + <attribute name="text:outline-level"> + <choice> + <value>1</value> + <value>2</value> + <value>3</value> + <value>separator</value> + </choice> + </attribute> +</define> +<define name="text-alphabetical-index-entry-template-attrs" + combine="interleave"> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> +</define> +<define name="text-bibliography"> + <element name="text:bibliography"> + <ref name="sectionAttr"/> + <ref name="text-bibliography-source"/> + <ref name="text-index-body"/> + </element> +</define> +<define name="text-bibliography-source"> + <element name="text:bibliography-source"> + <optional> + <ref name="text-index-title-template"/> + </optional> + <zeroOrMore> + <ref name="text-bibliography-entry-template"/> + </zeroOrMore> + </element> +</define> +<define name="text-bibliography-entry-template"> + <element name="text:bibliography-entry-template"> + <ref name="text-bibliography-entry-template-attrs"/> + <zeroOrMore> + <choice> + <ref name="text-index-entry-span"/> + <ref name="text-index-entry-tab-stop"/> + <ref name="text-index-entry-bibliography"/> + </choice> + </zeroOrMore> + </element> +</define> +<define name="text-bibliography-entry-template-attrs" combine="interleave"> + <attribute name="text:bibliography-type"> + <ref name="text-bibliography-types"/> + </attribute> +</define> +<define name="text-bibliography-entry-template-attrs" combine="interleave"> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> +</define> +<define name="text-index-source-styles"> + <element name="text:index-source-styles"> + <attribute name="text:outline-level"> + <ref name="positiveInteger"/> + </attribute> + <zeroOrMore> + <ref name="text-index-source-style"/> + </zeroOrMore> + </element> +</define> +<define name="text-index-source-style"> + <element name="text:index-source-style"> + <attribute name="text:style-name"> + <ref name="styleName"/> + </attribute> + <empty/> + </element> +</define> +<define name="text-index-title-template"> + <element name="text:index-title-template"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <text/> + </element> +</define> +<define name="text-index-entry-chapter"> + <element name="text:index-entry-chapter"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <ref name="text-index-entry-chapter-attrs"/> + </element> +</define> +<define name="text-index-entry-chapter-attrs"> + <optional> + <attribute name="text:display" a:defaultValue="number"> + <choice> + <value>name</value> + <value>number</value> + <value>number-and-name</value> + </choice> + </attribute> + </optional> +</define> +<define name="text-index-entry-text"> + <element name="text:index-entry-text"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + </element> +</define> +<define name="text-index-entry-page-number"> + <element name="text:index-entry-page-number"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + </element> +</define> +<define name="text-index-entry-span"> + <element name="text:index-entry-span"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <text/> + </element> +</define> +<define name="text-index-entry-bibliography"> + <element name="text:index-entry-bibliography"> + <ref name="text-index-entry-bibliography-attrs"/> + </element> +</define> +<define name="text-index-entry-bibliography-attrs" combine="interleave"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="text-index-entry-bibliography-attrs" combine="interleave"> + <attribute name="text:bibliography-data-field"> + <choice> + <value>address</value> + <value>annote</value> + <value>author</value> + <value>bibliography-type</value> + <value>booktitle</value> + <value>chapter</value> + <value>custom1</value> + <value>custom2</value> + <value>custom3</value> + <value>custom4</value> + <value>custom5</value> + <value>edition</value> + <value>editor</value> + <value>howpublished</value> + <value>identifier</value> + <value>institution</value> + <value>isbn</value> + <value>issn</value> + <value>journal</value> + <value>month</value> + <value>note</value> + <value>number</value> + <value>organizations</value> + <value>pages</value> + <value>publisher</value> + <value>report-type</value> + <value>school</value> + <value>series</value> + <value>title</value> + <value>url</value> + <value>volume</value> + <value>year</value> + </choice> + </attribute> +</define> +<define name="text-index-entry-tab-stop"> + <element name="text:index-entry-tab-stop"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <ref name="text-index-entry-tab-stop-attrs"/> + </element> +</define> +<define name="text-index-entry-tab-stop-attrs" combine="interleave"> + <optional> + <attribute name="style:leader-char"> + <ref name="character"/> + </attribute> + </optional> +</define> +<define name="text-index-entry-tab-stop-attrs" combine="interleave"> + <choice> + <attribute name="style:type"> + <value>right</value> + </attribute> + <group> + <attribute name="style:type"> + <value>left</value> + </attribute> + <attribute name="style:position"> + <ref name="length"/> + </attribute> + </group> + </choice> +</define> +<define name="text-index-entry-link-start"> + <element name="text:index-entry-link-start"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + </element> +</define> +<define name="text-index-entry-link-end"> + <element name="text:index-entry-link-end"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + </element> +</define> +<define name="table-table"> + <element name="table:table"> + <ref name="table-table-attlist"/> + <optional> + <ref name="table-table-source"/> + </optional> + <optional> + <ref name="office-dde-source"/> + </optional> + <optional> + <ref name="table-scenario"/> + </optional> + <optional> + <ref name="office-forms"/> + </optional> + <optional> + <ref name="table-shapes"/> + </optional> + <ref name="table-columns-and-groups"/> + <ref name="table-rows-and-groups"/> + </element> +</define> +<define name="table-columns-and-groups"> + <oneOrMore> + <choice> + <ref name="table-table-column-group"/> + <ref name="table-columns-no-group"/> + </choice> + </oneOrMore> +</define> + +<define name="table-columns-no-group"> + <choice> + <group> + <ref name="table-columns"/> + <optional> + <ref name="table-table-header-columns"/> + <optional> + <ref name="table-columns"/> + </optional> + </optional> + </group> + <group> + <ref name="table-table-header-columns"/> + <optional> + <ref name="table-columns"/> + </optional> + </group> + </choice> +</define> + +<define name="table-columns"> + <choice> + <ref name="table-table-columns"/> + <oneOrMore> + <ref name="table-table-column"/> + </oneOrMore> + </choice> +</define> + +<define name="table-rows-and-groups"> + <oneOrMore> + <choice> + <ref name="table-table-row-group"/> + <ref name="table-rows-no-group"/> + </choice> + </oneOrMore> +</define> + +<define name="table-rows-no-group"> + <choice> + <group> + <ref name="table-rows"/> + <optional> + <ref name="table-table-header-rows"/> + <optional> + <ref name="table-rows"/> + </optional> + </optional> + </group> + <group> + <ref name="table-table-header-rows"/> + <optional> + <ref name="table-rows"/> + </optional> + </group> + </choice> +</define> + +<define name="table-rows"> + <choice> + <ref name="table-table-rows"/> + <oneOrMore> + <ref name="table-table-row"/> + </oneOrMore> + </choice> +</define> +<define name="table-table-attlist" combine="interleave"> + <optional> + <attribute name="table:name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="table-table-attlist" combine="interleave"> + <optional> + <attribute name="table:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="table-table-attlist" combine="interleave"> + <optional> + <attribute name="table:protected" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:protection-key"> + <text/> + </attribute> + </optional> +</define> +<define name="table-table-attlist" combine="interleave"> + <optional> + <attribute name="table:print" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-table-attlist" combine="interleave"> + <optional> + <attribute name="table:print-ranges"> + <ref name="cellRangeAddressList"/> + </attribute> + </optional> +</define> +<define name="table-table-row"> + <element name="table:table-row"> + <ref name="table-table-row-attlist"/> + <oneOrMore> + <choice> + <ref name="table-table-cell"/> + <ref name="table-covered-table-cell"/> + </choice> + </oneOrMore> + </element> +</define> +<define name="table-table-row-attlist" combine="interleave"> + <optional> + <attribute name="table:number-rows-repeated" a:defaultValue="1"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="table-table-row-attlist" combine="interleave"> + <optional> + <attribute name="table:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="table-table-row-attlist" combine="interleave"> + <optional> + <attribute name="table:default-cell-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="table-table-row-attlist" combine="interleave"> + <optional> + <attribute name="table:visibility" a:defaultValue="visible"> + <ref name="table-visibility-value"/> + </attribute> + </optional> +</define> + +<define name="table-visibility-value"> + <choice> + <value>visible</value> + <value>collapse</value> + <value>filter</value> + </choice> +</define> +<define name="table-table-cell"> + <element name="table:table-cell"> + <ref name="table-table-cell-attlist"/> + <ref name="table-table-cell-attlist-extra"/> + <ref name="table-table-cell-content"/> + </element> +</define> + +<define name="table-covered-table-cell"> + <element name="table:covered-table-cell"> + <ref name="table-table-cell-attlist"/> + <ref name="table-table-cell-content"/> + </element> +</define> + +<define name="table-table-cell-content"> + <optional> + <ref name="table-cell-range-source"/> + </optional> + <optional> + <ref name="office-annotation"/> + </optional> + <optional> + <ref name="table-detective"/> + </optional> + <zeroOrMore> + <ref name="text-content"/> + </zeroOrMore> +</define> +<define name="table-table-cell-attlist" combine="interleave"> + <optional> + <attribute name="table:number-columns-repeated" a:defaultValue="1"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="table-table-cell-attlist-extra" combine="interleave"> + <optional> + <attribute name="table:number-columns-spanned" a:defaultValue="1"> + <ref name="positiveInteger"/> + </attribute> + </optional> + <optional> + <attribute name="table:number-rows-spanned" a:defaultValue="1"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="table-table-cell-attlist" combine="interleave"> + <optional> + <attribute name="table:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="table-table-cell-attlist" combine="interleave"> + <optional> + <attribute name="table:content-validation-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="table-table-cell-attlist" combine="interleave"> + <optional> + <attribute name="table:formula"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="table-table-cell-attlist-extra" combine="interleave"> + <optional> + <attribute name="table:number-matrix-columns-spanned"> + <ref name="positiveInteger"/> + </attribute> + </optional> + <optional> + <attribute name="table:number-matrix-rows-spanned"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="table-table-cell-attlist" combine="interleave"> + <optional> + <ref name="common-value-and-type-attlist"/> + </optional> +</define> +<define name="table-table-cell-attlist" combine="interleave"> + <optional> + <attribute name="table:protect" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-table-column"> + <element name="table:table-column"> + <ref name="table-table-column-attlist"/> + <empty/> + </element> +</define> +<define name="table-table-column-attlist" combine="interleave"> + <optional> + <attribute name="table:number-columns-repeated" a:defaultValue="1"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="table-table-column-attlist" combine="interleave"> + <optional> + <attribute name="table:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="table-table-column-attlist" combine="interleave"> + <optional> + <attribute name="table:visibility" a:defaultValue="visible"> + <ref name="table-visibility-value"/> + </attribute> + </optional> +</define> +<define name="table-table-column-attlist" combine="interleave"> + <optional> + <attribute name="table:default-cell-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="table-table-header-columns"> + <element name="table:table-header-columns"> + <oneOrMore> + <ref name="table-table-column"/> + </oneOrMore> + </element> +</define> + +<define name="table-table-columns"> + <element name="table:table-columns"> + <oneOrMore> + <ref name="table-table-column"/> + </oneOrMore> + </element> +</define> +<define name="table-table-column-group"> + <element name="table:table-column-group"> + <ref name="table-table-column-group-attlist"/> + <ref name="table-columns-and-groups"/> + </element> +</define> +<define name="table-table-column-group-attlist" combine="interleave"> + <optional> + <attribute name="table:display" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-table-header-rows"> + <element name="table:table-header-rows"> + <oneOrMore> + <ref name="table-table-row"/> + </oneOrMore> + </element> +</define> + +<define name="table-table-rows"> + <element name="table:table-rows"> + <oneOrMore> + <ref name="table-table-row"/> + </oneOrMore> + </element> +</define> +<define name="table-table-row-group"> + <element name="table:table-row-group"> + <ref name="table-table-row-group-attlist"/> + <ref name="table-rows-and-groups"/> + </element> +</define> +<define name="table-table-row-group-attlist" combine="interleave"> + <optional> + <attribute name="table:display" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-table-attlist" combine="interleave"> + <optional> + <attribute name="table:is-sub-table" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="cellAddress"> + <data type="string"> + <param name="pattern">($?([^\. ']+|'[^']+'))?\.$?[A-Z]+$?[0-9]+</param> + </data> +</define> +<define name="cellRangeAddress"> + <data type="string"> + <param name="pattern">($?([^\. ']+|'[^']+'))?\.$?[A-Z]+$?[0-9]+(:($?([^\. ']+|'[^']+'))?\.$?[A-Z]+$?[0-9]+)?</param> + + </data> +</define> +<define name="cellRangeAddressList"> + <!-- Value is a space separated list of "cellRangeAddress" patterns --> + <data type="string"/> +</define> +<define name="table-table-source"> + <element name="table:table-source"> + <ref name="table-table-source-attlist"/> + <ref name="table-linked-source-attlist"/> + <empty/> + </element> +</define> +<define name="table-table-source-attlist" combine="interleave"> + <optional> + <attribute name="table:mode" a:defaultValue="copy-all"> + <choice> + <value>copy-all</value> + <value>copy-results-only</value> + </choice> + </attribute> + </optional> +</define> +<define name="table-table-source-attlist" combine="interleave"> + <optional> + <attribute name="table:table-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="table-linked-source-attlist" combine="interleave"> + <optional> + <attribute name="xlink:type" a:defaultValue="simple"> + <value>simple</value> + </attribute> + </optional> + <optional> + <attribute name="xlink:actuate" a:defaultValue="onRequest"> + <value>onRequest</value> + </attribute> + </optional> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> +</define> +<define name="table-linked-source-attlist" combine="interleave"> + <optional> + <attribute name="table:filter-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="table-linked-source-attlist" combine="interleave"> + <optional> + <attribute name="table:filter-options"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="table-linked-source-attlist" combine="interleave"> + <optional> + <attribute name="table:refresh-delay"> + <ref name="duration"/> + </attribute> + </optional> +</define> +<define name="table-scenario"> + <element name="table:scenario"> + <ref name="table-scenario-attlist"/> + <empty/> + </element> +</define> +<define name="table-scenario-attlist" combine="interleave"> + <attribute name="table:scenario-ranges"> + <ref name="cellRangeAddressList"/> + </attribute> +</define> +<define name="table-scenario-attlist" combine="interleave"> + <attribute name="table:is-active"> + <ref name="boolean"/> + </attribute> +</define> +<define name="table-scenario-attlist" combine="interleave"> + <optional> + <attribute name="table:display-border" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-scenario-attlist" combine="interleave"> + <optional> + <attribute name="table:border-color"> + <ref name="color"/> + </attribute> + </optional> +</define> +<define name="table-scenario-attlist" combine="interleave"> + <optional> + <attribute name="table:copy-back" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-scenario-attlist" combine="interleave"> + <optional> + <attribute name="table:copy-styles" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-scenario-attlist" combine="interleave"> + <optional> + <attribute name="table:copy-formulas" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-scenario-attlist" combine="interleave"> + <optional> + <attribute name="table:comment"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="table-scenario-attlist" combine="interleave"> + <optional> + <attribute name="table:protected"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-shapes"> + <element name="table:shapes"> + <oneOrMore> + <ref name="shape"/> + </oneOrMore> + </element> +</define> +<define name="table-cell-range-source"> + <element name="table:cell-range-source"> + <ref name="table-table-cell-range-source-attlist"/> + <ref name="table-linked-source-attlist"/> + <empty/> + </element> +</define> +<define name="table-table-cell-range-source-attlist" combine="interleave"> + <attribute name="table:name"> + <ref name="string"/> + </attribute> +</define> +<define name="table-table-cell-range-source-attlist" combine="interleave"> + <attribute name="table:last-column-spanned"> + <ref name="positiveInteger"/> + </attribute> + <attribute name="table:last-row-spanned"> + <ref name="positiveInteger"/> + </attribute> +</define> +<define name="table-detective"> + <element name="table:detective"> + <zeroOrMore> + <ref name="table-highlighted-range"/> + </zeroOrMore> + <zeroOrMore> + <ref name="table-operation"/> + </zeroOrMore> + </element> +</define> +<define name="table-operation"> + <element name="table:operation"> + <ref name="table-operation-attlist"/> + <empty/> + </element> +</define> +<define name="table-operation-attlist" combine="interleave"> + <attribute name="table:name"> + <choice> + <value>trace-dependents</value> + <value>remove-dependents</value> + <value>trace-precedents</value> + <value>remove-precedents</value> + <value>trace-errors</value> + </choice> + </attribute> +</define> +<define name="table-operation-attlist" combine="interleave"> + <attribute name="table:index"> + <ref name="nonNegativeInteger"/> + </attribute> +</define> +<define name="table-highlighted-range"> + <element name="table:highlighted-range"> + <choice> + <group> + <ref name="table-highlighted-range-attlist"/> + </group> + <group> + <ref name="table-highlighted-range-attlist-invalid"/> + </group> + </choice> + <empty/> + </element> +</define> +<define name="table-highlighted-range-attlist" combine="interleave"> + <optional> + <attribute name="table:cell-range-address"> + <ref name="cellRangeAddress"/> + </attribute> + </optional> +</define> +<define name="table-highlighted-range-attlist" combine="interleave"> + <attribute name="table:direction"> + <choice> + <value>from-another-table</value> + <value>to-another-table</value> + <value>from-same-table</value> + </choice> + </attribute> +</define> +<define name="table-highlighted-range-attlist" combine="interleave"> + <optional> + <attribute name="table:contains-error" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-highlighted-range-attlist-invalid" combine="interleave"> + <attribute name="table:marked-invalid"> + <ref name="boolean"/> + </attribute> +</define> +<define name="office-spreadsheet-attlist" combine="interleave"> + <optional> + <attribute name="table:structure-protected" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:protection-key"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="table-calculation-settings"> + <element name="table:calculation-settings"> + <ref name="table-calculation-setting-attlist"/> + <optional> + <ref name="table-null-date"/> + </optional> + <optional> + <ref name="table-iteration"/> + </optional> + </element> +</define> +<define name="table-calculation-setting-attlist" combine="interleave"> + <optional> + <attribute name="table:case-sensitive" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-calculation-setting-attlist" combine="interleave"> + <optional> + <attribute name="table:precision-as-shown" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-calculation-setting-attlist" combine="interleave"> + <optional> + <attribute name="table:search-criteria-must-apply-to-whole-cell" + a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-calculation-setting-attlist" combine="interleave"> + <optional> + <attribute name="table:automatic-find-labels" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-calculation-setting-attlist" combine="interleave"> + <optional> + <attribute name="table:use-regular-expressions" + a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-calculation-setting-attlist" combine="interleave"> + <optional> + <attribute name="table:null-year" a:defaultValue="1930"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="table-null-date"> + <element name="table:null-date"> + <optional> + <attribute name="table:value-type" a:defaultValue="date"> + <ref name="valueType"/> + </attribute> + </optional> + <optional> + <attribute name="table:date-value-type" + a:defaultValue="1899-12-30"> + <ref name="date"/> + </attribute> + </optional> + <empty/> + </element> +</define> +<define name="table-iteration"> + <element name="table:iteration"> + <optional> + <attribute name="table:status" a:defaultValue="disable"> + <choice> + <value>enable</value> + <value>disable</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="table:steps" a:defaultValue="100"> + <ref name="positiveInteger"/> + </attribute> + </optional> + <optional> + <attribute name="table:maximum-difference" + a:defaultValue="0.001"> + <ref name="double"/> + </attribute> + </optional> + <empty/> + </element> +</define> +<define name="table-content-validations"> + <element name="table:content-validations"> + <oneOrMore> + <ref name="table-content-validation"/> + </oneOrMore> + </element> +</define> + +<define name="table-content-validation"> + <element name="table:content-validation"> + <ref name="table-validation-attlist"/> + <optional> + <ref name="table-help-message"/> + </optional> + <optional> + <choice> + <ref name="table-error-message"/> + <group> + <ref name="table-error-macro"/> + <optional> + <ref name="office-event-listeners"/> + </optional> + </group> + </choice> + </optional> + </element> +</define> +<define name="table-validation-attlist" combine="interleave"> + <attribute name="table:name"> + <ref name="string"/> + </attribute> +</define> +<define name="table-validation-attlist" combine="interleave"> + <optional> + <attribute name="table:condition"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="table-validation-attlist" combine="interleave"> + <optional> + <attribute name="table:base-cell-address"> + <ref name="cellAddress"/> + </attribute> + </optional> +</define> +<define name="table-validation-attlist" combine="interleave"> + <optional> + <attribute name="table:allow-empty-cell" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-validation-attlist" combine="interleave"> + <optional> + <attribute name="table:display-list" a:defaultValue="unsorted"> + <choice> + <value>none</value> + <value>unsorted</value> + <value>sort-ascending</value> + </choice> + </attribute> + </optional> +</define> +<define name="table-help-message"> + <element name="table:help-message"> + <optional> + <attribute name="table:title"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="table:display" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> + <zeroOrMore> + <ref name="text-p"/> + </zeroOrMore> + </element> +</define> +<define name="table-error-message"> + <element name="table:error-message"> + <optional> + <attribute name="table:title"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="table:display" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:message-type" a:defaultValue="stop"> + <choice> + <value>stop</value> + <value>warning</value> + <value>information</value> + </choice> + </attribute> + </optional> + <zeroOrMore> + <ref name="text-p"/> + </zeroOrMore> + </element> +</define> +<define name="table-error-macro"> + <element name="table:error-macro"> + <optional> + <attribute name="table:execute" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> + </element> +</define> +<define name="table-label-ranges"> + <element name="table:label-ranges"> + <zeroOrMore> + <ref name="table-label-range"/> + </zeroOrMore> + </element> +</define> + +<define name="table-label-range"> + <element name="table:label-range"> + <ref name="table-label-range-attlist"/> + <empty/> + </element> +</define> +<define name="table-label-range-attlist" combine="interleave"> + <attribute name="table:label-cell-range-address"> + <ref name="cellRangeAddress"/> + </attribute> +</define> +<define name="table-label-range-attlist" combine="interleave"> + <attribute name="table:data-cell-range-address"> + <ref name="cellRangeAddress"/> + </attribute> +</define> +<define name="table-label-range-attlist" combine="interleave"> + <attribute name="table:orientation"> + <choice> + <value>column</value> + <value>row</value> + </choice> + </attribute> +</define> +<define name="table-named-expressions"> + <element name="table:named-expressions"> + <zeroOrMore> + <choice> + <ref name="table-named-range"/> + <ref name="table-named-expression"/> + </choice> + </zeroOrMore> + </element> +</define> + +<define name="table-named-range"> + <element name="table:named-range"> + <ref name="table-named-range-attlist"/> + <empty/> + </element> +</define> + +<define name="table-named-range-attlist" combine="interleave"> + <attribute name="table:name"> + <ref name="string"/> + </attribute> + <attribute name="table:cell-range-address"> + <ref name="cellRangeAddress"/> + </attribute> + <optional> + <attribute name="table:base-cell-address"> + <ref name="cellAddress"/> + </attribute> + </optional> + <optional> + <attribute name="table:range-usable-as" a:defaultValue="none"> + <choice> + <value>none</value> + <list> + <oneOrMore> + <choice> + <value>print-range</value> + <value>filter</value> + <value>repeat-row</value> + <value>repeat-column</value> + </choice> + </oneOrMore> + </list> + </choice> + </attribute> + </optional> +</define> +<define name="table-named-expression"> + <element name="table:named-expression"> + <ref name="table-named-expression-attlist"/> + <empty/> + </element> +</define> + +<define name="table-named-expression-attlist" combine="interleave"> + <attribute name="table:name"> + <ref name="string"/> + </attribute> + <attribute name="table:expression"> + <ref name="string"/> + </attribute> + <optional> + <attribute name="table:base-cell-address"> + <ref name="cellAddress"/> + </attribute> + </optional> +</define> +<define name="table-database-ranges"> + <element name="table:database-ranges"> + <zeroOrMore> + <ref name="table-database-range"/> + </zeroOrMore> + </element> +</define> +<define name="table-database-range"> + <element name="table:database-range"> + <ref name="table-database-range-attlist"/> + <optional> + <choice> + <ref name="table-database-source-sql"/> + <ref name="table-database-source-table"/> + <ref name="table-database-source-query"/> + </choice> + </optional> + <optional> + <ref name="table-filter"/> + </optional> + <optional> + <ref name="table-sort"/> + </optional> + <optional> + <ref name="table-subtotal-rules"/> + </optional> + </element> +</define> +<define name="table-database-range-attlist" combine="interleave"> + <optional> + <attribute name="table:name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="table-database-range-attlist" combine="interleave"> + <optional> + <attribute name="table:is-selection" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-database-range-attlist" combine="interleave"> + <optional> + <attribute name="table:on-update-keep-styles" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-database-range-attlist" combine="interleave"> + <optional> + <attribute name="table:on-update-keep-size" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-database-range-attlist" combine="interleave"> + <optional> + <attribute name="table:has-persistent-data" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-database-range-attlist" combine="interleave"> + <optional> + <attribute name="table:orientation" a:defaultValue="row"> + <choice> + <value>column</value> + <value>row</value> + </choice> + </attribute> + </optional> +</define> +<define name="table-database-range-attlist" combine="interleave"> + <optional> + <attribute name="table:contains-header" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-database-range-attlist" combine="interleave"> + <optional> + <attribute name="table:display-filter-buttons" + a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-database-range-attlist" combine="interleave"> + <attribute name="table:target-range-address"> + <ref name="cellRangeAddress"/> + </attribute> +</define> +<define name="table-database-range-attlist" combine="interleave"> + <optional> + <attribute name="table:refresh-delay"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-database-source-sql"> + <element name="table:database-source-sql"> + <ref name="table-database-source-sql-attlist"/> + <empty/> + </element> +</define> +<define name="table-database-source-sql-attlist" combine="interleave"> + <attribute name="table:database-name"> + <ref name="string"/> + </attribute> +</define> +<define name="table-database-source-sql-attlist" combine="interleave"> + <attribute name="table:sql-statement"> + <ref name="string"/> + </attribute> +</define> +<define name="table-database-source-sql-attlist" combine="interleave"> + <optional> + <attribute name="table:parse-sql-statement" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-database-source-query"> + <element name="table:database-source-table"> + <ref name="table-database-source-table-attlist"/> + <empty/> + </element> +</define> +<define name="table-database-source-table-attlist" combine="interleave"> + <attribute name="table:database-name"> + <ref name="string"/> + </attribute> +</define> +<define name="table-database-source-table-attlist" combine="interleave"> + <attribute name="table:database-table-name"> + <ref name="string"/> + </attribute> +</define> +<define name="table-database-source-table"> + <element name="table:database-source-query"> + <ref name="table-database-source-query-attlist"/> + <empty/> + </element> +</define> +<define name="table-database-source-query-attlist" combine="interleave"> + <attribute name="table:database-name"> + <ref name="string"/> + </attribute> +</define> +<define name="table-database-source-query-attlist" combine="interleave"> + <attribute name="table:query-name"> + <ref name="string"/> + </attribute> +</define> +<define name="table-sort"> + <element name="table:sort"> + <ref name="table-sort-attlist"/> + <oneOrMore> + <ref name="table-sort-by"/> + </oneOrMore> + </element> +</define> +<define name="table-sort-attlist" combine="interleave"> + <optional> + <attribute name="table:bind-styles-to-content" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-sort-attlist" combine="interleave"> + <optional> + <attribute name="table:target-range-address"> + <ref name="cellRangeAddress"/> + </attribute> + </optional> +</define> +<define name="table-sort-attlist" combine="interleave"> + <optional> + <attribute name="table:case-sensitive" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-sort-attlist" combine="interleave"> + <optional> + <attribute name="table:language"> + <ref name="languageCode"/> + </attribute> + </optional> +</define> +<define name="table-sort-attlist" combine="interleave"> + <optional> + <attribute name="table:country"> + <ref name="countryCode"/> + </attribute> + </optional> +</define> +<define name="table-sort-attlist" combine="interleave"> + <optional> + <attribute name="table:algorithm"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="table-sort-by"> + <element name="table:sort-by"> + <ref name="table-sort-by-attlist"/> + <empty/> + </element> +</define> +<define name="table-sort-by-attlist" combine="interleave"> + <attribute name="table:field-number"> + <ref name="nonNegativeInteger"/> + </attribute> +</define> +<define name="table-sort-by-attlist" combine="interleave"> + <optional> + <attribute name="table:data-type" a:defaultValue="automatic"> + <choice> + <value>text</value> + <value>number</value> + <value>automatic</value> + <ref name="string"/> + </choice> + </attribute> + </optional> +</define> +<define name="table-sort-by-attlist" combine="interleave"> + <optional> + <attribute name="table:order" a:defaultValue="ascending"> + <choice> + <value>ascending</value> + <value>descending</value> + </choice> + </attribute> + </optional> +</define> +<define name="table-subtotal-rules"> + <element name="table:subtotal-rules"> + <ref name="table-subtotal-rules-attlist"/> + <optional> + <ref name="table-sort-groups"/> + </optional> + <zeroOrMore> + <ref name="table-subtotal-rule"/> + </zeroOrMore> + </element> +</define> +<define name="table-subtotal-rules-attlist" combine="interleave"> + <optional> + <attribute name="table:bind-styles-to-content" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-subtotal-rules-attlist" combine="interleave"> + <optional> + <attribute name="table:case-sensitive" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-subtotal-rules-attlist" combine="interleave"> + <optional> + <attribute name="table:page-breaks-on-group-change" + a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-sort-groups"> + <element name="table:sort-groups"> + <ref name="table-sort-groups-attlist"/> + <empty/> + </element> +</define> +<define name="table-sort-groups-attlist" combine="interleave"> + <optional> + <attribute name="table:data-type" a:defaultValue="automatic"> + <choice> + <value>text</value> + <value>number</value> + <value>automatic</value> + <ref name="string"/> + </choice> + </attribute> + </optional> +</define> +<define name="table-sort-groups-attlist" combine="interleave"> + <optional> + <attribute name="table:order" a:defaultValue="ascending"> + <choice> + <value>ascending</value> + <value>descending</value> + </choice> + </attribute> + </optional> +</define> +<define name="table-subtotal-rule"> + <element name="table:subtotal-rule"> + <ref name="table-subtotal-rule-attlist"/> + <zeroOrMore> + <ref name="table-subtotal-field"/> + </zeroOrMore> + </element> +</define> +<define name="table-subtotal-rule-attlist" combine="interleave"> + <attribute name="table:group-by-field-number"> + <ref name="nonNegativeInteger"/> + </attribute> +</define> +<define name="table-subtotal-field"> + <element name="table:subtotal-field"> + <ref name="table-subtotal-field-attlist"/> + <empty/> + </element> +</define> +<define name="table-subtotal-field-attlist" combine="interleave"> + <attribute name="table:field-number"> + <ref name="nonNegativeInteger"/> + </attribute> +</define> +<define name="table-subtotal-field-attlist" combine="interleave"> + <attribute name="table:function"> + <choice> + <value>auto</value> + <value>average</value> + <value>count</value> + <value>countnums</value> + <value>max</value> + <value>min</value> + <value>product</value> + <value>stdev</value> + <value>stdevp</value> + <value>sum</value> + <value>var</value> + <value>varp</value> + <ref name="string"/> + </choice> + </attribute> +</define> +<define name="table-filter"> + <element name="table:filter"> + <ref name="table-filter-attlist"/> + <choice> + <ref name="table-filter-condition"/> + <ref name="table-filter-and"/> + <ref name="table-filter-or"/> + </choice> + </element> +</define> +<define name="table-filter-attlist" combine="interleave"> + <optional> + <attribute name="table:target-range-address"> + <ref name="cellRangeAddress"/> + </attribute> + </optional> +</define> +<define name="table-filter-attlist" combine="interleave"> + <optional> + <attribute name="table:condition-source" a:defaultValue="self"> + <choice> + <value>self</value> + <value>cell-range</value> + </choice> + </attribute> + </optional> +</define> +<define name="table-filter-attlist" combine="interleave"> + <optional> + <attribute name="table:condition-source-range-address"> + <ref name="cellRangeAddress"/> + </attribute> + </optional> +</define> +<define name="table-filter-attlist" combine="interleave"> + <optional> + <attribute name="table:display-duplicates" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-filter-and"> + <element name="table:filter-and"> + <oneOrMore> + <choice> + <ref name="table-filter-or"/> + <ref name="table-filter-condition"/> + </choice> + </oneOrMore> + </element> +</define> +<define name="table-filter-or"> + <element name="table:filter-or"> + <oneOrMore> + <choice> + <ref name="table-filter-and"/> + <ref name="table-filter-condition"/> + </choice> + </oneOrMore> + </element> +</define> +<define name="table-filter-condition"> + <element name="table:filter-condition"> + <ref name="table-filter-condition-attlist"/> + <empty/> + </element> +</define> +<define name="table-filter-condition-attlist" combine="interleave"> + <attribute name="table:field-number"> + <ref name="nonNegativeInteger"/> + </attribute> +</define> +<define name="table-filter-condition-attlist" combine="interleave"> + <attribute name="table:value"> + <ref name="string"/> + </attribute> +</define> +<define name="table-filter-condition-attlist" combine="interleave"> + <attribute name="table:operator"> + <ref name="string"/> + </attribute> +</define> +<define name="table-filter-condition-attlist" combine="interleave"> + <optional> + <attribute name="table:case-sensitive" a:defaultValue="false"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="table-filter-condition-attlist" combine="interleave"> + <optional> + <attribute name="table:data-type" a:defaultValue="text"> + <choice> + <value>text</value> + <value>number</value> + </choice> + </attribute> + </optional> +</define> +<define name="table-data-pilot-tables"> + <element name="table:data-pilot-tables"> + <zeroOrMore> + <ref name="table-data-pilot-table"/> + </zeroOrMore> + </element> +</define> +<define name="table-data-pilot-table"> + <element name="table:data-pilot-table"> + <ref name="table-data-pilot-table-attlist"/> + <optional> + <choice> + <ref name="table-database-source-sql"/> + <ref name="table-database-source-table"/> + <ref name="table-database-source-query"/> + <ref name="table-source-service"/> + <ref name="table-source-cell-range"/> + </choice> + </optional> + <oneOrMore> + <ref name="table-data-pilot-field"/> + </oneOrMore> + </element> +</define> +<define name="table-data-pilot-table-attlist" combine="interleave"> + <attribute name="table:name"> + <ref name="string"/> + </attribute> +</define> +<define name="table-data-pilot-table-attlist" combine="interleave"> + <optional> + <attribute name="table:application-data"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="table-data-pilot-table-attlist" combine="interleave"> + <optional> + <attribute name="table:grand-total" a:defaultValue="both"> + <choice> + <value>none</value> + <value>row</value> + <value>column</value> + <value>both</value> + </choice> + </attribute> + </optional> +</define> +<define name="table-data-pilot-table-attlist" combine="interleave"> + <optional> + <attribute name="table:ignore-empty-rows" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-data-pilot-table-attlist" combine="interleave"> + <optional> + <attribute name="table:identify-categories" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-data-pilot-table-attlist" combine="interleave"> + <attribute name="table:target-range-address"> + <ref name="cellRangeAddress"/> + </attribute> +</define> +<define name="table-data-pilot-table-attlist" combine="interleave"> + <optional> + <attribute name="table:buttons"> + <ref name="cellRangeAddressList"/> + </attribute> + </optional> +</define> +<define name="table-data-pilot-table-attlist" combine="interleave"> + <optional> + <attribute name="table:show-filter-button" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-data-pilot-table-attlist" combine="interleave"> + <optional> + <attribute name="table:drill-down-on-double-click" + a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-source-cell-range"> + <element name="table:source-cell-range"> + <ref name="table-source-cell-range-attlist"/> + <optional> + <ref name="table-filter"/> + </optional> + </element> +</define> +<define name="table-source-cell-range-attlist" combine="interleave"> + <attribute name="table:cell-range-address"> + <ref name="cellRangeAddress"/> + </attribute> +</define> +<define name="table-source-service"> + <element name="table:source-service"> + <ref name="table-source-service-attlist"/> + <empty/> + </element> +</define> +<define name="table-source-service-attlist" combine="interleave"> + <attribute name="table:name"> + <ref name="string"/> + </attribute> +</define> +<define name="table-source-service-attlist" combine="interleave"> + <attribute name="table:source-name"> + <ref name="string"/> + </attribute> +</define> +<define name="table-source-service-attlist" combine="interleave"> + <attribute name="table:object-name"> + <ref name="string"/> + </attribute> +</define> +<define name="table-source-service-attlist" combine="interleave"> + <optional> + <attribute name="table:user-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="table-source-service-attlist" combine="interleave"> + <optional> + <attribute name="table:password"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="table-data-pilot-field"> + <element name="table:data-pilot-field"> + <ref name="table-data-pilot-field-attlist"/> + <optional> + <ref name="table-data-pilot-level"/> + </optional> + <optional> + <ref name="table-data-pilot-field-reference"/> + </optional> + <optional> + <ref name="table-data-pilot-groups"/> + </optional> + </element> +</define> +<define name="table-data-pilot-field-attlist" combine="interleave"> + <attribute name="table:source-field-name"> + <ref name="string"/> + </attribute> +</define> +<define name="table-data-pilot-field-attlist" combine="interleave"> + <choice> + <attribute name="table:orientation"> + <choice> + <value>row</value> + <value>column</value> + <value>data</value> + <value>hidden</value> + </choice> + </attribute> + <group> + <attribute name="table:orientation"> + <value>page</value> + </attribute> + <attribute name="table:selected-page"> + <ref name="string"/> + </attribute> + </group> + </choice> +</define> +<define name="table-data-pilot-field-attlist" combine="interleave"> + <optional> + <attribute name="table:is-data-layout-field" a:defaultValue="false"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="table-data-pilot-field-attlist" combine="interleave"> + <optional> + <attribute name="table:function"> + <choice> + <value>auto</value> + <value>average</value> + <value>count</value> + <value>countnums</value> + <value>max</value> + <value>min</value> + <value>product</value> + <value>stdev</value> + <value>stdevp</value> + <value>sum</value> + <value>var</value> + <value>varp</value> + <ref name="string"/> + </choice> + </attribute> + </optional> +</define> +<define name="table-data-pilot-field-attlist" combine="interleave"> + <optional> + <attribute name="table:used-hierarchy" a:defaultValue="-1"> + <ref name="integer"/> + </attribute> + </optional> +</define> +<define name="table-data-pilot-level"> + <element name="table:data-pilot-level"> + <ref name="table-data-pilot-level-attlist"/> + <optional> + <ref name="table-data-pilot-subtotals"/> + </optional> + <optional> + <ref name="table-data-pilot-members"/> + </optional> + <optional> + <ref name="table-data-pilot-display-info"/> + </optional> + <optional> + <ref name="table-data-pilot-sort-info"/> + </optional> + <optional> + <ref name="table-data-pilot-layout-info"/> + </optional> + </element> +</define> +<define name="table-data-pilot-level-attlist" combine="interleave"> + <optional> + <attribute name="table:show-empty"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-data-pilot-subtotals"> + <element name="table:data-pilot-subtotals"> + <zeroOrMore> + <ref name="table-data-pilot-subtotal"/> + </zeroOrMore> + </element> +</define> +<define name="table-data-pilot-subtotal"> + <element name="table:data-pilot-subtotal"> + <ref name="table-data-pilot-subtotal-attlist"/> + <empty/> + </element> +</define> +<define name="table-data-pilot-subtotal-attlist" combine="interleave"> + <attribute name="table:function"> + <choice> + <value>auto</value> + <value>average</value> + <value>count</value> + <value>countnums</value> + <value>max</value> + <value>min</value> + <value>product</value> + <value>stdev</value> + <value>stdevp</value> + <value>sum</value> + <value>var</value> + <value>varp</value> + <ref name="string"/> + </choice> + </attribute> +</define> +<define name="table-data-pilot-members"> + <element name="table:data-pilot-members"> + <zeroOrMore> + <ref name="table-data-pilot-member"/> + </zeroOrMore> + </element> +</define> +<define name="table-data-pilot-member"> + <element name="table:data-pilot-member"> + <ref name="table-data-pilot-member-attlist"/> + <empty/> + </element> +</define> +<define name="table-data-pilot-member-attlist" combine="interleave"> + <attribute name="table:name"> + <ref name="string"/> + </attribute> +</define> +<define name="table-data-pilot-member-attlist" combine="interleave"> + <optional> + <attribute name="table:display"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-data-pilot-member-attlist" combine="interleave"> + <optional> + <attribute name="table:show-details"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-data-pilot-display-info"> + <element name="table:data-pilot-display-info"> + <ref name="table-data-pilot-display-info-attlist"/> + <empty/> + </element> +</define> +<define name="table-data-pilot-display-info-attlist" combine="interleave"> + <attribute name="table:enabled"> + <ref name="boolean"/> + </attribute> +</define> +<define name="table-data-pilot-display-info-attlist" combine="interleave"> + <attribute name="table:data-field"> + <ref name="string"/> + </attribute> +</define> +<define name="table-data-pilot-display-info-attlist" combine="interleave"> + <attribute name="table:member-count"> + <ref name="nonNegativeInteger"/> + </attribute> +</define> +<define name="table-data-pilot-display-info-attlist" combine="interleave"> + <attribute name="table:display-member-mode"> + <choice> + <value>from-top</value> + <value>from-bottom</value> + </choice> + </attribute> +</define> +<define name="table-data-pilot-sort-info"> + <element name="table:data-pilot-sort-info"> + <ref name="table-data-pilot-sort-info-attlist"/> + <empty/> + </element> +</define> +<define name="table-data-pilot-sort-info-attlist" combine="interleave"> + <choice> + <group> + <attribute name="table:sort-mode"> + <value>data</value> + </attribute> + <attribute name="table:data-field"> + <ref name="string"/> + </attribute> + </group> + <attribute name="table:sort-mode"> + <choice> + <value>none</value> + <value>manual</value> + <value>name</value> + </choice> + </attribute> + </choice> +</define> +<define name="table-data-pilot-sort-info-attlist" combine="interleave"> + <attribute name="table:order"> + <choice> + <value>ascending</value> + <value>descending</value> + </choice> + </attribute> +</define> +<define name="table-data-pilot-layout-info"> + <element name="table:data-pilot-layout-info"> + <ref name="table-data-pilot-layout-info-attlist"/> + <empty/> + </element> +</define> +<define name="table-data-pilot-layout-info-attlist" combine="interleave"> + <attribute name="table:layout-mode"> + <choice> + <value>tabular-layout</value> + <value>outline-subtotals-top</value> + <value>outline-subtotals-bottom</value> + </choice> + </attribute> +</define> +<define name="table-data-pilot-layout-info-attlist" combine="interleave"> + <attribute name="table:add-empty-lines"> + <ref name="boolean"/> + </attribute> +</define> +<define name="table-data-pilot-field-reference"> + <element name="table:data-pilot-field-reference"> + <ref name="table-data-pilot-field-reference-attlist"/> + </element> +</define> +<define name="table-data-pilot-field-reference-attlist" combine="interleave"> + <attribute name="table:field-name"> + <ref name="string"/> + </attribute> +</define> +<define name="table-data-pilot-field-reference-attlist" combine="interleave"> + <choice> + <group> + <attribute name="table:member-type"> + <value>named</value> + </attribute> + <attribute name="table:member-name"> + <ref name="string"/> + </attribute> + </group> + <attribute name="table:member-type"> + <choice> + <value>previous</value> + <value>next</value> + </choice> + </attribute> + </choice> +</define> +<define name="table-data-pilot-field-reference-attlist" combine="interleave"> + <attribute name="table:type"> + <choice> + <value>none</value> + <value>member-difference</value> + <value>member-percentage</value> + <value>member-percentage-difference</value> + <value>running-total</value> + <value>row-percentage</value> + <value>column-percentage</value> + <value>total-percentage</value> + <value>index</value> + </choice> + </attribute> +</define> +<define name="table-data-pilot-groups"> + <element name="table:data-pilot-groups"> + <ref name="table-data-pilot-groups-attlist"/> + <oneOrMore> + <ref name="table-data-pilot-group"/> + </oneOrMore> + </element> +</define> +<define name="table-data-pilot-groups-attlist" combine="interleave"> + <attribute name="table:source-field-name"> + <ref name="string"/> + </attribute> +</define> +<define name="table-data-pilot-groups-attlist" combine="interleave"> + <choice> + <attribute name="table:date-start"> + <choice> + <ref name="dateOrDateTime"/> + <value>auto</value> + </choice> + </attribute> + <attribute name="table:start"> + <choice> + <ref name="double"/> + <value>auto</value> + </choice> + </attribute> + </choice> +</define> +<define name="table-data-pilot-groups-attlist" combine="interleave"> + <choice> + <attribute name="table:date-end"> + <choice> + <ref name="dateOrDateTime"/> + <value>auto</value> + </choice> + </attribute> + <attribute name="table:end"> + <choice> + <ref name="double"/> + <value>auto</value> + </choice> + </attribute> + </choice> +</define> +<define name="table-data-pilot-groups-attlist" combine="interleave"> + <attribute name="table:step"> + <ref name="double"/> + </attribute> +</define> +<define name="table-data-pilot-groups-attlist" combine="interleave"> + <attribute name="table:grouped-by"> + <choice> + <value>seconds</value> + <value>minutes</value> + <value>hours</value> + <value>days</value> + <value>months</value> + <value>quarters</value> + <value>years</value> + </choice> + </attribute> +</define> +<define name="table-data-pilot-group"> + <element name="table:data-pilot-group"> + <ref name="table-data-pilot-group-attlist"/> + <oneOrMore> + <ref name="table-data-pilot-group-member"/> + </oneOrMore> + </element> +</define> +<define name="table-data-pilot-group-attlist" combine="interleave"> + <attribute name="table:name"> + <ref name="string"/> + </attribute> +</define> +<define name="table-data-pilot-group-member"> + <element name="table:data-pilot-group-member"> + <ref name="table-data-pilot-group-member-attlist"/> + </element> +</define> +<define name="table-data-pilot-group-member-attlist" combine="interleave"> + <attribute name="table:name"> + <ref name="string"/> + </attribute> +</define> +<define name="table-consolidation"> + <element name="table:consolidation"> + <ref name="table-consolidation-attlist"/> + <empty/> + </element> +</define> +<define name="table-consolidation-attlist" combine="interleave"> + <attribute name="table:function"> + <choice> + <value>auto</value> + <value>average</value> + <value>count</value> + <value>countnums</value> + <value>max</value> + <value>min</value> + <value>product</value> + <value>stdev</value> + <value>stdevp</value> + <value>sum</value> + <value>var</value> + <value>varp</value> + <ref name="string"/> + </choice> + </attribute> +</define> +<define name="table-consolidation-attlist" combine="interleave"> + <attribute name="table:source-cell-range-addresses"> + <ref name="cellRangeAddressList"/> + </attribute> +</define> +<define name="table-consolidation-attlist" combine="interleave"> + <attribute name="table:target-cell-address"> + <ref name="cellAddress"/> + </attribute> +</define> +<define name="table-consolidation-attlist" combine="interleave"> + <optional> + <attribute name="table:use-labels" a:defaultValue="none"> + <choice> + <value>none</value> + <value>row</value> + <value>column</value> + <value>both</value> + </choice> + </attribute> + </optional> +</define> +<define name="table-consolidation-attlist" combine="interleave"> + <optional> + <attribute name="table:link-to-source-data" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-dde-links"> + <element name="table:dde-links"> + <oneOrMore> + <ref name="table-dde-link"/> + </oneOrMore> + </element> +</define> +<define name="table-tracked-changes"> + <element name="table:tracked-changes"> + <ref name="table-tracked-changes-attlist"/> + <zeroOrMore> + <choice> + <ref name="table-cell-content-change"/> + <ref name="table-insertion"/> + <ref name="table-deletion"/> + <ref name="table-movement"/> + </choice> + </zeroOrMore> + </element> +</define> +<define name="table-tracked-changes-attlist" combine="interleave"> + <optional> + <attribute name="table:track-changes" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-insertion"> + <element name="table:insertion"> + <ref name="table-insertion-attlist"/> + <ref name="common-table-change-attlist"/> + <ref name="office-change-info"/> + <optional> + <ref name="table-dependencies"/> + </optional> + <optional> + <ref name="table-deletions"/> + </optional> + </element> +</define> +<define name="table-insertion-attlist" combine="interleave"> + <attribute name="table:type"> + <choice> + <value>row</value> + <value>column</value> + <value>table</value> + </choice> + </attribute> +</define> +<define name="table-insertion-attlist" combine="interleave"> + <attribute name="table:position"> + <ref name="integer"/> + </attribute> +</define> +<define name="table-insertion-attlist" combine="interleave"> + <optional> + <attribute name="table:count" a:defaultValue="1"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="table-insertion-attlist" combine="interleave"> + <optional> + <attribute name="table:table"> + <ref name="integer"/> + </attribute> + </optional> +</define> +<define name="table-dependencies"> + <element name="table:dependencies"> + <oneOrMore> + <ref name="table-dependency"/> + </oneOrMore> + </element> +</define> +<define name="table-dependency"> + <element name="table:dependency"> + <attribute name="table:id"> + <ref name="string"/> + </attribute> + <empty/> + </element> +</define> +<define name="table-deletions"> + <element name="table:deletions"> + <oneOrMore> + <choice> + <ref name="table-cell-content-deletion"/> + <ref name="table-change-deletion"/> + </choice> + </oneOrMore> + </element> +</define> +<define name="table-cell-content-deletion"> + <element name="table:cell-content-deletion"> + <optional> + <attribute name="table:id"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <ref name="table-cell-address"/> + </optional> + <optional> + <ref name="table-change-track-table-cell"/> + </optional> + </element> +</define> +<define name="table-change-deletion"> + <element name="table:change-deletion"> + <optional> + <attribute name="table:id"> + <ref name="string"/> + </attribute> + </optional> + <empty/> + </element> +</define> +<define name="table-deletion"> + <element name="table:deletion"> + <ref name="table-deletion-attlist"/> + <ref name="common-table-change-attlist"/> + <ref name="office-change-info"/> + <optional> + <ref name="table-dependencies"/> + </optional> + <optional> + <ref name="table-deletions"/> + </optional> + <optional> + <ref name="table-cut-offs"/> + </optional> + </element> +</define> +<define name="table-deletion-attlist" combine="interleave"> + <attribute name="table:type"> + <choice> + <value>row</value> + <value>column</value> + <value>table</value> + </choice> + </attribute> +</define> +<define name="table-deletion-attlist" combine="interleave"> + <attribute name="table:position"> + <ref name="integer"/> + </attribute> +</define> +<define name="table-deletion-attlist" combine="interleave"> + <optional> + <attribute name="table:table"> + <ref name="integer"/> + </attribute> + </optional> +</define> +<define name="table-deletion-attlist" combine="interleave"> + <optional> + <attribute name="table:multi-deletion-spanned"> + <ref name="integer"/> + </attribute> + </optional> +</define> +<define name="table-cut-offs"> + <element name="table:cut-offs"> + <choice> + <oneOrMore> + <ref name="table-movement-cut-off"/> + </oneOrMore> + <group> + <ref name="table-insertion-cut-off"/> + <zeroOrMore> + <ref name="table-movement-cut-off"/> + </zeroOrMore> + </group> + </choice> + </element> +</define> +<define name="table-insertion-cut-off"> + <element name="table:insertion-cut-off"> + <ref name="table-insertion-cut-off-attlist"/> + <empty/> + </element> +</define> +<define name="table-insertion-cut-off-attlist" combine="interleave"> + <attribute name="table:id"> + <ref name="string"/> + </attribute> +</define> +<define name="table-insertion-cut-off-attlist" combine="interleave"> + <attribute name="table:position"> + <ref name="integer"/> + </attribute> +</define> +<define name="table-movement-cut-off"> + <element name="table:movement-cut-off"> + <ref name="table-movement-cut-off-attlist"/> + <empty/> + </element> +</define> +<define name="table-movement-cut-off-attlist" combine="interleave"> + <choice> + <attribute name="table:position"> + <ref name="integer"/> + </attribute> + <group> + <attribute name="table:start-position"> + <ref name="integer"/> + </attribute> + <attribute name="table:end-position"> + <ref name="integer"/> + </attribute> + </group> + </choice> +</define> +<define name="table-movement"> + <element name="table:movement"> + <ref name="common-table-change-attlist"/> + <ref name="table-source-range-address"/> + <ref name="table-target-range-address"/> + <ref name="office-change-info"/> + <optional> + <ref name="table-dependencies"/> + </optional> + <optional> + <ref name="table-deletions"/> + </optional> + </element> +</define> +<define name="table-source-range-address"> + <element name="table:source-range-address"> + <ref name="common-table-range-attlist"/> + <empty/> + </element> +</define> + +<define name="table-target-range-address"> + <element name="table:target-range-address"> + <ref name="common-table-range-attlist"/> + <empty/> + </element> +</define> + + +<define name="common-table-range-attlist" combine="interleave"> + <choice> + <group> + <ref name="common-table-cell-address-attlist"/> + </group> + <group> + <ref name="common-table-cell-range-address-attlist"/> + </group> + </choice> +</define> +<define name="common-table-cell-address-attlist" combine="interleave"> + <attribute name="table:column"> + <ref name="integer"/> + </attribute> + <attribute name="table:row"> + <ref name="integer"/> + </attribute> + <attribute name="table:table"> + <ref name="integer"/> + </attribute> +</define> +<define name="common-table-cell-range-address-attlist" combine="interleave"> + <attribute name="table:start-column"> + <ref name="integer"/> + </attribute> + <attribute name="table:start-row"> + <ref name="integer"/> + </attribute> + <attribute name="table:start-table"> + <ref name="integer"/> + </attribute> + <attribute name="table:end-column"> + <ref name="integer"/> + </attribute> + <attribute name="table:end-row"> + <ref name="integer"/> + </attribute> + <attribute name="table:end-table"> + <ref name="integer"/> + </attribute> +</define> +<define name="table-change-track-table-cell" combine="interleave"> + <element name="table:change-track-table-cell"> + <ref name="table-change-track-table-cell-attlist"/> + <zeroOrMore> + <ref name="text-p"/> + </zeroOrMore> + </element> +</define> +<define name="table-change-track-table-cell-attlist" combine="interleave"> + <optional> + <attribute name="table:cell-address"> + <ref name="cellAddress"/> + </attribute> + </optional> +</define> +<define name="table-change-track-table-cell-attlist" combine="interleave"> + <optional> + <attribute name="table:matrix-covered" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-change-track-table-cell-attlist" combine="interleave"> + <optional> + <attribute name="table:formula"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="table:number-matrix-columns-spanned"> + <ref name="positiveInteger"/> + </attribute> + </optional> + <optional> + <attribute name="table:number-matrix-rows-spanned"> + <ref name="positiveInteger"/> + </attribute> + </optional> + <optional> + <ref name="common-value-and-type-attlist"/> + </optional> +</define> +<define name="table-cell-content-change"> + <element name="table:cell-content-change"> + <ref name="common-table-change-attlist"/> + <ref name="table-cell-address"/> + <ref name="office-change-info"/> + <optional> + <ref name="table-dependencies"/> + </optional> + <optional> + <ref name="table-deletions"/> + </optional> + <ref name="table-previous"/> + </element> +</define> +<define name="table-cell-address"> + <element name="table:cell-address"> + <ref name="common-table-cell-address-attlist"/> + <empty/> + </element> +</define> +<define name="table-previous"> + <element name="table:previous"> + <optional> + <attribute name="table:id"> + <ref name="string"/> + </attribute> + </optional> + <ref name="table-change-track-table-cell"/> + </element> +</define> +<define name="common-table-change-attlist" combine="interleave"> + <attribute name="table:id"> + <ref name="string"/> + </attribute> +</define> +<define name="common-table-change-attlist" combine="interleave"> + <optional> + <attribute name="table:acceptance-state" a:defaultValue="pending"> + <choice> + <value>accepted</value> + <value>rejected</value> + <value>pending</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-table-change-attlist" combine="interleave"> + <optional> + <attribute name="table:rejecting-change-id"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="style-handout-master"> + <element name="style:handout-master"> + <ref name="common-presentation-header-footer-attlist"/> + <ref name="style-handout-master-attlist"/> + <zeroOrMore> + <ref name="shape"/> + </zeroOrMore> + </element> +</define> +<define name="style-handout-master-attlist" combine="interleave"> + <optional> + <attribute name="presentation:presentation-page-layout-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="style-handout-master-attlist" combine="interleave"> + <attribute name="style:page-layout-name"> + <ref name="styleNameRef"/> + </attribute> +</define> +<define name="style-handout-master-attlist" combine="interleave"> + <optional> + <attribute name="draw:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="draw-layer-set"> + <element name="draw:layer-set"> + <zeroOrMore> + <ref name="draw-layer"/> + </zeroOrMore> + </element> +</define> +<define name="draw-layer"> + <element name="draw:layer"> + <ref name="draw-layer-attlist"/> + <empty/> + </element> +</define> +<define name="draw-layer-attlist" combine="interleave"> + <attribute name="draw:name"> + <ref name="string"/> + </attribute> +</define> +<define name="draw-layer-attlist" combine="interleave"> + <optional> + <attribute name="draw:protected" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="draw-layer-attlist" combine="interleave"> + <optional> + <attribute name="draw:display" a:defaultValue="always"> + <choice> + <value>always</value> + <value>screen</value> + <value>printer</value> + <value>none</value> + </choice> + </attribute> + </optional> +</define> +<define name="draw-page"> + <element name="draw:page"> + <ref name="common-presentation-header-footer-attlist"/> + <ref name="draw-page-attlist"/> + <optional> + <ref name="office-forms"/> + </optional> + <zeroOrMore> + <ref name="shape"/> + </zeroOrMore> + <optional> + <choice> + <ref name="presentation-animations"/> + <ref name="animation-element"/> + </choice> + </optional> + <optional> + <ref name="presentation-notes"/> + </optional> + </element> +</define> +<define name="draw-page-attlist" combine="interleave"> + <optional> + <attribute name="draw:name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-page-attlist" combine="interleave"> + <optional> + <attribute name="draw:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="draw-page-attlist" combine="interleave"> + <attribute name="draw:master-page-name"> + <ref name="styleNameRef"/> + </attribute> +</define> +<define name="draw-page-attlist" combine="interleave"> + <optional> + <attribute name="presentation:presentation-page-layout-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="common-presentation-header-footer-attlist" combine="interleave"> + <optional> + <attribute name="presentation:use-header-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-presentation-header-footer-attlist" combine="interleave"> + <optional> + <attribute name="presentation:use-footer-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-presentation-header-footer-attlist" combine="interleave"> + <optional> + <attribute name="presentation:use-date-time-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-page-attlist"> + <optional> + <attribute name="draw:id"> + <ref name="ID"/> + </attribute> + </optional> +</define> +<define name="shape"> + <choice> + <ref name="draw-rect"/> + <ref name="draw-line"/> + <ref name="draw-polyline"/> + <ref name="draw-polygon"/> + <ref name="draw-regular-polygon"/> + <ref name="draw-path"/> + <ref name="draw-circle"/> + <ref name="draw-ellipse"/> + <ref name="draw-g"/> + <ref name="draw-page-thumbnail"/> + <ref name="draw-frame"/> + <ref name="draw-measure"/> + <ref name="draw-caption"/> + <ref name="draw-connector"/> + <ref name="draw-control"/> + <ref name="dr3d-scene"/> + <ref name="draw-custom-shape"/> + </choice> +</define> +<define name="draw-rect"> + <element name="draw:rect"> + <ref name="draw-rect-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <ref name="draw-text"/> + </element> +</define> +<define name="draw-rect-attlist" combine="interleave"> + <optional> + <attribute name="draw:corner-radius"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> +</define> +<define name="draw-line"> + <element name="draw:line"> + <ref name="draw-line-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <ref name="draw-text"/> + </element> +</define> +<define name="draw-line-attlist" combine="interleave"> + <attribute name="svg:x1"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:y1"> + <ref name="coordinate"/> + </attribute> +</define> +<define name="draw-line-attlist" combine="interleave"> + <attribute name="svg:x2"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:y2"> + <ref name="coordinate"/> + </attribute> +</define> +<define name="draw-polyline"> + <element name="draw:polyline"> + <ref name="common-draw-points-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-viewbox-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <ref name="draw-text"/> + </element> +</define> +<define name="common-draw-points-attlist"> + <attribute name="draw:points"> + <ref name="points"/> + </attribute> +</define> +<define name="draw-polygon"> + <element name="draw:polygon"> + <ref name="common-draw-points-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-viewbox-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <ref name="draw-text"/> + </element> +</define> +<define name="draw-regular-polygon"> + <element name="draw:regular-polygon"> + <ref name="draw-regular-polygon-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <ref name="draw-text"/> + </element> +</define> +<define name="draw-regular-polygon-attlist" combine="interleave"> + <choice> + <attribute name="draw:concave"> + <value>false</value> + </attribute> + <group> + <attribute name="draw:concave"> + <value>true</value> + </attribute> + <ref name="draw-regular-polygon-sharpness-attlist"/> + </group> + </choice> +</define> +<define name="draw-regular-polygon-attlist" combine="interleave"> + <attribute name="draw:corners"> + <ref name="positiveInteger"/> + </attribute> +</define> +<define name="draw-regular-polygon-sharpness-attlist"> + <attribute name="draw:sharpness"> + <ref name="percent"/> + </attribute> +</define> +<define name="draw-path"> + <element name="draw:path"> + <ref name="common-draw-path-data-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-viewbox-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <ref name="draw-text"/> + </element> +</define> +<define name="common-draw-path-data-attlist"> + <attribute name="svg:d"> + <ref name="pathData"/> + </attribute> +</define> +<define name="draw-circle"> + <element name="draw:circle"> + <ref name="draw-circle-attlist"/> + <ref name="common-draw-circle-ellipse-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <ref name="draw-text"/> + </element> +</define> +<define name="common-draw-circle-ellipse-attlist" combine="interleave"> + <optional> + <attribute name="svg:cx"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:cy"> + <ref name="coordinate"/> + </attribute> + </optional> +</define> +<define name="draw-circle-attlist" combine="interleave"> + <optional> + <attribute name="svg:r"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="common-draw-circle-ellipse-attlist" combine="interleave"> + <optional> + <attribute name="draw:kind" a:defaultValue="full"> + <choice> + <value>full</value> + <value>section</value> + <value>cut</value> + <value>arc</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-draw-circle-ellipse-attlist" combine="interleave"> + <optional> + <attribute name="draw:start-angle"> + <ref name="double"/> + </attribute> + </optional> +</define> +<define name="common-draw-circle-ellipse-attlist" combine="interleave"> + <optional> + <attribute name="draw:end-angle"> + <ref name="double"/> + </attribute> + </optional> +</define> +<define name="draw-ellipse"> + <element name="draw:ellipse"> + <ref name="common-draw-circle-ellipse-attlist"/> + <ref name="draw-ellipse-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <ref name="draw-text"/> + </element> +</define> +<define name="draw-ellipse-attlist" combine="interleave"> + <optional> + <attribute name="svg:rx"> + <ref name="length"/> + </attribute> + <attribute name="svg:ry"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="draw-connector"> + <element name="draw:connector"> + <ref name="draw-connector-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <ref name="draw-text"/> + </element> +</define> +<define name="draw-connector-attlist" combine="interleave"> + <optional> + <attribute name="draw:type" a:defaultValue="standard"> + <choice> + <value>standard</value> + <value>lines</value> + <value>line</value> + <value>curve</value> + </choice> + </attribute> + </optional> +</define> +<define name="draw-connector-attlist" combine="interleave"> + <optional> + <attribute name="svg:x1"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:y1"> + <ref name="coordinate"/> + </attribute> + </optional> +</define> +<define name="draw-connector-attlist" combine="interleave"> + <optional> + <attribute name="draw:start-shape"> + <ref name="IDREF"/> + </attribute> + </optional> +</define> +<define name="draw-connector-attlist" combine="interleave"> + <optional> + <attribute name="draw:start-glue-point"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="draw-connector-attlist" combine="interleave"> + <optional> + <attribute name="svg:x2"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:y2"> + <ref name="coordinate"/> + </attribute> + </optional> +</define> +<define name="draw-connector-attlist" combine="interleave"> + <optional> + <attribute name="draw:end-shape"> + <ref name="IDREF"/> + </attribute> + </optional> +</define> +<define name="draw-connector-attlist" combine="interleave"> + <optional> + <attribute name="draw:end-glue-point"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="draw-connector-attlist" combine="interleave"> + <optional> + <attribute name="draw:line-skew"> + <list> + <ref name="length"/> + <optional> + <ref name="length"/> + <optional> + <ref name="length"/> + </optional> + </optional> + </list> + </attribute> + </optional> +</define> +<define name="draw-caption"> + <element name="draw:caption"> + <ref name="draw-caption-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <ref name="draw-text"/> + </element> +</define> +<define name="draw-caption-attlist" combine="interleave"> + <optional> + <attribute name="draw:caption-point-x"> + <ref name="coordinate"/> + </attribute> + <attribute name="draw:caption-point-y"> + <ref name="coordinate"/> + </attribute> + </optional> +</define> +<define name="draw-caption-attlist" combine="interleave"> + <optional> + <attribute name="draw:corner-radius"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> +</define> +<define name="draw-measure"> + <element name="draw:measure"> + <ref name="draw-measure-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <ref name="draw-text"/> + </element> +</define> +<define name="draw-measure-attlist" combine="interleave"> + <attribute name="svg:x1"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:y1"> + <ref name="coordinate"/> + </attribute> +</define> +<define name="draw-measure-attlist" combine="interleave"> + <attribute name="svg:x2"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:y2"> + <ref name="coordinate"/> + </attribute> +</define> +<define name="draw-control"> + <element name="draw:control"> + <ref name="draw-control-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + </element> +</define> +<define name="draw-control-attlist" combine="interleave"> + <attribute name="draw:control"> + <ref name="IDREF"/> + </attribute> +</define> +<define name="draw-page-thumbnail"> + <element name="draw:page-thumbnail"> + <ref name="draw-page-thumbnail-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="presentation-shape-attlist"/> + <ref name="common-draw-shape-with-styles-attlist"/> + <empty/> + </element> +</define> +<define name="draw-page-thumbnail-attlist"> + <optional> + <attribute name="draw:page-number"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="draw-g"> + <element name="draw:g"> + <ref name="draw-g-attlist"/> + <ref name="common-draw-z-index-attlist"/> + <ref name="common-draw-name-attlist"/> + <ref name="common-draw-id-attlist"/> + <ref name="common-draw-style-name-attlist"/> + <ref name="common-text-spreadsheet-shape-attlist"/> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <zeroOrMore> + <ref name="shape"/> + </zeroOrMore> + </element> +</define> +<define name="draw-g-attlist" combine="interleave"> + <optional> + <attribute name="svg:y"> + <ref name="coordinate"/> + </attribute> + </optional> +</define> +<define name="common-draw-name-attlist" combine="interleave"> + <optional> + <attribute name="draw:name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-draw-position-attlist"> + <optional> + <attribute name="svg:x"> + <ref name="coordinate"/> + </attribute> + </optional> + <optional> + <attribute name="svg:y"> + <ref name="coordinate"/> + </attribute> + </optional> +</define> +<define name="common-draw-size-attlist"> + <optional> + <attribute name="svg:width"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="svg:height"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="common-draw-transform-attlist"> + <optional> + <attribute name="draw:transform"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-draw-viewbox-attlist"> + <attribute name="svg:viewBox"> + <list> + <ref name="integer"/> + <ref name="integer"/> + <ref name="integer"/> + <ref name="integer"/> + </list> + </attribute> +</define> +<define name="common-draw-style-name-attlist"> + <choice> + <group> + <optional> + <attribute name="draw:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="draw:class-names"> + <ref name="styleNameRefs"/> + </attribute> + </optional> + </group> + <group> + <optional> + <attribute name="presentation:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="presentation:class-names"> + <ref name="styleNameRefs"/> + </attribute> + </optional> + </group> + </choice> +</define> +<define name="common-draw-text-style-name-attlist"> + <optional> + <attribute name="draw:text-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="common-draw-layer-name-attlist"> + <optional> + <attribute name="draw:layer"> + <data type="string"/> + </attribute> + </optional> +</define> +<define name="common-draw-id-attlist"> + <optional> + <attribute name="draw:id"> + <ref name="ID"/> + </attribute> + </optional> +</define> +<define name="common-draw-z-index-attlist"> + <optional> + <attribute name="draw:z-index"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="common-text-spreadsheet-shape-attlist" combine="interleave"> + <optional> + <attribute name="table:end-cell-address"> + <ref name="cellAddress"/> + </attribute> + </optional> + <optional> + <attribute name="table:end-x"> + <ref name="coordinate"/> + </attribute> + </optional> + <optional> + <attribute name="table:end-y"> + <ref name="coordinate"/> + </attribute> + </optional> +</define> +<define name="common-text-spreadsheet-shape-attlist" combine="interleave"> + <optional> + <attribute name="table:table-background"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="common-text-spreadsheet-shape-attlist" combine="interleave"> + <ref name="common-text-anchor-attlist"/> +</define> + +<define name="common-text-anchor-attlist" combine="interleave"> + <optional> + <attribute name="text:anchor-type"> + <choice> + <value>page</value> + <value>frame</value> + <value>paragraph</value> + <value>char</value> + <value>as-char</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-text-anchor-attlist" combine="interleave"> + <optional> + <attribute name="text:anchor-page-number"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="draw-text"> + <zeroOrMore> + <choice> + <ref name="text-p"/> + <ref name="text-list"/> + </choice> + </zeroOrMore> +</define> +<define name="common-draw-shape-with-styles-attlist"> + <ref name="common-draw-z-index-attlist"/> + <ref name="common-draw-id-attlist"/> + <ref name="common-draw-layer-name-attlist"/> + <ref name="common-draw-style-name-attlist"/> + <ref name="common-draw-transform-attlist"/> + <ref name="common-draw-name-attlist"/> + <ref name="common-text-spreadsheet-shape-attlist"/> +</define> +<define name="common-draw-shape-with-text-and-styles-attlist"> + <ref name="common-draw-shape-with-styles-attlist"/> + <ref name="common-draw-text-style-name-attlist"/> +</define> +<define name="draw-glue-point"> + <element name="draw:glue-point"> + <ref name="draw-glue-point-attlist"/> + <empty/> + </element> +</define> +<define name="draw-glue-point-attlist" combine="interleave"> + <attribute name="draw:id"> + <ref name="nonNegativeInteger"/> + </attribute> +</define> +<define name="draw-glue-point-attlist" combine="interleave"> + <attribute name="svg:x"> + <choice> + <ref name="distance"/> + <ref name="percent"/> + </choice> + </attribute> + <attribute name="svg:y"> + <choice> + <ref name="distance"/> + <ref name="percent"/> + </choice> + </attribute> +</define> +<define name="draw-glue-point-attlist" combine="interleave"> + <attribute name="draw:align"> + <choice> + <value>top-left</value> + <value>top</value> + <value>top-right</value> + <value>left</value> + <value>center</value> + <value>right</value> + <value>bottom-left</value> + <value>bottom-right</value> + </choice> + </attribute> +</define> +<define name="draw-glue-points-attlist" combine="interleave"> + <attribute name="draw:escape-direction"> + <choice> + <value>auto</value> + <value>left</value> + <value>right</value> + <value>up</value> + <value>down</value> + <value>horizontal</value> + <value>vertical</value> + </choice> + </attribute> +</define> +<define name="draw-frame"> + <element name="draw:frame"> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-rel-size-attlist"/> + <ref name="presentation-shape-attlist"/> + <ref name="draw-frame-attlist"/> + <zeroOrMore> + <choice> + <ref name="draw-text-box"/> + <ref name="draw-image"/> + <ref name="draw-object"/> + <ref name="draw-object-ole"/> + <ref name="draw-applet"/> + <ref name="draw-floating-frame"/> + <ref name="draw-plugin"/> + </choice> + </zeroOrMore> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <optional> + <ref name="draw-image-map"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <optional> + <choice> + <ref name="draw-contour-polygon"/> + <ref name="draw-contour-path"/> + </choice> + </optional> + </element> +</define> +<define name="common-draw-rel-size-attlist"> + <ref name="common-draw-size-attlist"/> + <optional> + <attribute name="style:rel-width"> + <choice> + <ref name="percent"/> + <value>scale</value> + <value>scale-min</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:rel-height"> + <choice> + <ref name="percent"/> + <value>scale</value> + <value>scale-min</value> + </choice> + </attribute> + </optional> +</define> +<define name="draw-frame-attlist" combine="interleave"> + <optional> + <attribute name="draw:copy-of"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-text-box"> + <element name="draw:text-box"> + <ref name="draw-text-box-attlist"/> + <zeroOrMore> + <ref name="text-content"/> + </zeroOrMore> + </element> +</define> +<define name="draw-text-box-attlist" combine="interleave"> + <optional> + <attribute name="draw:chain-next-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-text-box-attlist" combine="interleave"> + <optional> + <attribute name="draw:corner-radius"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> +</define> +<define name="draw-text-box-attlist" combine="interleave"> + <optional> + <attribute name="fo:min-height"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="fo:min-width"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> +</define> +<define name="draw-text-box-attlist" combine="interleave"> + <optional> + <attribute name="fo:max-height"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="fo:max-width"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> +</define> +<define name="draw-image"> + <element name="draw:image"> + <ref name="draw-image-attlist"/> + <choice> + <ref name="common-draw-data-attlist"/> + <ref name="office-binary-data"/> + </choice> + <ref name="draw-text"/> + </element> +</define> +<define name="common-draw-data-attlist" combine="interleave"> + <group> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> + <optional> + <attribute name="xlink:type" a:defaultValue="simple"> + <choice> + <value>simple</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="xlink:show" a:defaultValue="embed"> + <choice> + <value>embed</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="xlink:actuate" a:defaultValue="onLoad"> + <choice> + <value>onLoad</value> + </choice> + </attribute> + </optional> + </group> +</define> + +<define name="office-binary-data"> + <element name="office:binary-data"> + <ref name="base64Binary"/> + </element> +</define> +<define name="draw-image-attlist" combine="interleave"> + <optional> + <attribute name="draw:filter-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-object"> + <element name="draw:object"> + <ref name="draw-object-attlist"/> + <choice> + <ref name="common-draw-data-attlist"/> + <ref name="office-document"/> + <ref name="math-math"/> + </choice> + </element> +</define> + +<define name="draw-object-ole"> + <element name="draw:object-ole"> + <ref name="draw-object-ole-attlist"/> + <choice> + <ref name="common-draw-data-attlist"/> + <ref name="office-binary-data"/> + </choice> + </element> +</define> +<define name="draw-object-attlist" combine="interleave"> + <optional> + <attribute name="draw:notify-on-update-of-ranges"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-object-ole-attlist" combine="interleave"> + <optional> + <attribute name="draw:class-id"/> + </optional> +</define> +<define name="draw-applet"> + <element name="draw:applet"> + <ref name="draw-applet-attlist"/> + <optional> + <ref name="common-draw-data-attlist"/> + </optional> + <zeroOrMore> + <ref name="draw-param"/> + </zeroOrMore> + </element> +</define> +<define name="draw-applet-attlist" combine="interleave"> + <optional> + <attribute name="draw:code"/> + </optional> +</define> +<define name="draw-applet-attlist" combine="interleave"> + <optional> + <attribute name="draw:object"/> + </optional> +</define> +<define name="draw-applet-attlist" combine="interleave"> + <optional> + <attribute name="draw:archive"/> + </optional> +</define> +<define name="draw-applet-attlist" combine="interleave"> + <optional> + <attribute name="draw:may-script" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="draw-plugin"> + <element name="draw:plugin"> + <ref name="draw-plugin-attlist"/> + <ref name="common-draw-data-attlist"/> + <zeroOrMore> + <ref name="draw-param"/> + </zeroOrMore> + </element> +</define> +<define name="draw-plugin-attlist" combine="interleave"> + <optional> + <attribute name="draw:mime-type"/> + </optional> +</define> +<define name="draw-param"> + <element name="draw:param"> + <ref name="draw-param-attlist"/> + <empty/> + </element> +</define> +<define name="draw-param-attlist" combine="interleave"> + <optional> + <attribute name="draw:name"/> + </optional> +</define> +<define name="draw-param-attlist" combine="interleave"> + <optional> + <attribute name="draw:value"/> + </optional> +</define> +<define name="draw-floating-frame"> + <element name="draw:floating-frame"> + <ref name="draw-floating-frame-attlist"/> + <ref name="common-draw-data-attlist"/> + </element> +</define> +<define name="draw-floating-frame-attlist" combine="interleave"> + <optional> + <attribute name="draw:frame-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-contour-polygon"> + <element name="draw:contour-polygon"> + <ref name="common-contour-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-viewbox-attlist"/> + <ref name="common-draw-points-attlist"/> + <empty/> + </element> +</define> + +<define name="draw-contour-path"> + <element name="draw:contour-path"> + <ref name="common-contour-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-viewbox-attlist"/> + <ref name="common-draw-path-data-attlist"/> + <empty/> + </element> +</define> +<define name="common-contour-attlist" combine="interleave"> + <attribute name="draw:recreate-on-edit"> + <ref name="boolean"/> + </attribute> +</define> +<define name="svg-desc"> + <element name="svg:desc"> + <text/> + </element> +</define> +<define name="draw-a"> + <element name="draw:a"> + <ref name="draw-a-attlist"/> + <ref name="draw-frame"/> + </element> +</define> +<define name="draw-a-attlist" combine="interleave"> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> + <optional> + <attribute name="xlink:type" a:defaultValue="simple"> + <value>simple</value> + </attribute> + </optional> + <optional> + <attribute name="xlink:actuate" a:defaultValue="onRequest"> + <choice> + <value>onRequest</value> + </choice> + </attribute> + </optional> +</define> +<define name="draw-a-attlist" combine="interleave"> + <optional> + <attribute name="office:target-frame-name"> + <ref name="targetFrameName"/> + </attribute> + </optional> + <optional> + <attribute name="xlink:show"> + <choice> + <value>new</value> + <value>replace</value> + </choice> + </attribute> + </optional> +</define> +<define name="draw-a-attlist" combine="interleave"> + <optional> + <attribute name="office:name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-a-attlist" combine="interleave"> + <optional> + <attribute name="office:server-map" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="draw-image-map"> + <element name="draw:image-map"> + <zeroOrMore> + <choice> + <ref name="draw-area-rectangle"/> + <ref name="draw-area-circle"/> + <ref name="draw-area-polygon"/> + </choice> + </zeroOrMore> + </element> +</define> +<define name="draw-area-rectangle"> + <element name="draw:area-rectangle"> + <ref name="common-draw-area-attlist"/> + <attribute name="svg:x"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:y"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:width"> + <ref name="length"/> + </attribute> + <attribute name="svg:height"> + <ref name="length"/> + </attribute> + <optional> + <ref name="svg-desc"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + </element> +</define> +<define name="draw-area-circle"> + <element name="draw:area-circle"> + <ref name="common-draw-area-attlist"/> + <attribute name="svg:cx"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:cy"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:r"> + <ref name="length"/> + </attribute> + <optional> + <ref name="svg-desc"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + </element> +</define> +<define name="draw-area-polygon"> + <element name="draw:area-polygon"> + <ref name="common-draw-area-attlist"/> + <attribute name="svg:x"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:y"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:width"> + <ref name="length"/> + </attribute> + <attribute name="svg:height"> + <ref name="length"/> + </attribute> + <ref name="common-draw-viewbox-attlist"/> + <ref name="common-draw-points-attlist"/> + <optional> + <ref name="svg-desc"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + </element> +</define> +<define name="common-draw-area-attlist" combine="interleave"> + <optional> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> + </optional> + <optional> + <attribute name="xlink:type" a:defaultValue="simple"> + <choice> + <value>simple</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="office:target-frame-name"> + <ref name="targetFrameName"/> + </attribute> + </optional> + <optional> + <attribute name="xlink:show"> + <choice> + <value>new</value> + <value>replace</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-draw-area-attlist" combine="interleave"> + <optional> + <attribute name="office:name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-draw-area-attlist" combine="interleave"> + <optional> + <attribute name="draw:nohref"> + <choice> + <value>nohref</value> + </choice> + </attribute> + </optional> +</define> +<define name="dr3d-scene"> + <element name="dr3d:scene"> + <ref name="dr3d-scene-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-style-name-attlist"/> + <ref name="common-draw-z-index-attlist"/> + <ref name="common-draw-id-attlist"/> + <ref name="common-draw-layer-name-attlist"/> + <ref name="common-text-spreadsheet-shape-attlist"/> + <ref name="common-dr3d-transform-attlist"/> + <zeroOrMore> + <ref name="dr3d-light"/> + </zeroOrMore> + <zeroOrMore> + <ref name="shapes3d"/> + </zeroOrMore> + </element> +</define> + +<define name="shapes3d"> + <choice> + <ref name="dr3d-scene"/> + <ref name="dr3d-extrude"/> + <ref name="dr3d-sphere"/> + <ref name="dr3d-rotate"/> + <ref name="dr3d-cube"/> + </choice> +</define> +<define name="dr3d-scene-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:vrp"> + <ref name="vector3D"/> + </attribute> + </optional> + <optional> + <attribute name="dr3d:vpn"> + <ref name="vector3D"/> + </attribute> + </optional> + <optional> + <attribute name="dr3d:vup"> + <ref name="vector3D"/> + </attribute> + </optional> +</define> +<define name="dr3d-scene-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:projection"> + <choice> + <value>parallel</value> + <value>perspective</value> + </choice> + </attribute> + </optional> +</define> +<define name="dr3d-scene-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:distance"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="dr3d-scene-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:focal-length"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="dr3d-scene-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:shadow-slant"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="dr3d-scene-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:shade-mode"> + <choice> + <value>flat</value> + <value>phong</value> + <value>gouraud</value> + <value>draft</value> + </choice> + </attribute> + </optional> +</define> +<define name="dr3d-scene-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:ambient-color"> + <ref name="color"/> + </attribute> + </optional> +</define> +<define name="dr3d-scene-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:lighting-mode"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="common-dr3d-transform-attlist"> + <optional> + <attribute name="dr3d:transform"/> + </optional> +</define> +<define name="dr3d-light"> + <element name="dr3d:light"> + <ref name="dr3d-light-attlist"/> + <empty/> + </element> +</define> +<define name="dr3d-light-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:diffuse-color"> + <ref name="color"/> + </attribute> + </optional> +</define> +<define name="dr3d-light-attlist" combine="interleave"> + <attribute name="dr3d:direction"> + <ref name="vector3D"/> + </attribute> +</define> +<define name="dr3d-light-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:enabled"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="dr3d-light-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:specular"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="dr3d-cube"> + <element name="dr3d:cube"> + <ref name="dr3d-cube-attlist"/> + <ref name="common-draw-z-index-attlist"/> + <ref name="common-draw-id-attlist"/> + <ref name="common-draw-layer-name-attlist"/> + <ref name="common-draw-style-name-attlist"/> + <ref name="common-dr3d-transform-attlist"/> + <empty/> + </element> +</define> +<define name="dr3d-cube-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:min-edge"> + <ref name="vector3D"/> + </attribute> + </optional> + <optional> + <attribute name="dr3d:max-edge"> + <ref name="vector3D"/> + </attribute> + </optional> +</define> +<define name="dr3d-sphere"> + <element name="dr3d:sphere"> + <ref name="dr3d-sphere-attlist"/> + <ref name="common-draw-z-index-attlist"/> + <ref name="common-draw-id-attlist"/> + <ref name="common-draw-layer-name-attlist"/> + <ref name="common-draw-style-name-attlist"/> + <ref name="common-dr3d-transform-attlist"/> + <empty/> + </element> +</define> +<define name="dr3d-sphere-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:center"> + <ref name="vector3D"/> + </attribute> + </optional> +</define> +<define name="dr3d-sphere-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:size"> + <ref name="vector3D"/> + </attribute> + </optional> +</define> +<define name="dr3d-extrude"> + <element name="dr3d:extrude"> + <ref name="common-draw-path-data-attlist"/> + <ref name="common-draw-viewbox-attlist"/> + <ref name="common-draw-id-attlist"/> + <ref name="common-draw-z-index-attlist"/> + <ref name="common-draw-layer-name-attlist"/> + <ref name="common-draw-style-name-attlist"/> + <ref name="common-dr3d-transform-attlist"/> + <empty/> + </element> +</define> +<define name="dr3d-rotate"> + <element name="dr3d:rotate"> + <ref name="common-draw-viewbox-attlist"/> + <ref name="common-draw-path-data-attlist"/> + <ref name="common-draw-z-index-attlist"/> + <ref name="common-draw-id-attlist"/> + <ref name="common-draw-layer-name-attlist"/> + <ref name="common-draw-style-name-attlist"/> + <ref name="common-dr3d-transform-attlist"/> + <empty/> + </element> +</define> +<define name="draw-custom-shape"> + <element name="draw:custom-shape"> + <ref name="draw-custom-shape-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <ref name="draw-text"/> + <optional> + <ref name="draw-enhanced-geometry"/> + </optional> + </element> +</define> +<define name="draw-custom-shape-attlist" combine="interleave"> + <optional> + <attribute name="draw:engine"> + <ref name="namespacedToken"/> + </attribute> + </optional> +</define> +<define name="draw-custom-shape-attlist" combine="interleave"> + <optional> + <attribute name="draw:data"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry"> + <element name="draw:enhanced-geometry"> + <ref name="draw-enhanced-geometry-attlist"/> + <zeroOrMore> + <ref name="draw-equation"/> + </zeroOrMore> + <zeroOrMore> + <ref name="draw-handle"/> + </zeroOrMore> + </element> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:type" a:defaultValue="non-primitive"> + <ref name="custom-shape-type"/> + </attribute> + </optional> +</define> + +<define name="custom-shape-type"> + <choice> + <value>non-primitive</value> + <ref name="string"/> + </choice> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="svg:viewBox"> + <list> + <ref name="integer"/> + <ref name="integer"/> + <ref name="integer"/> + <ref name="integer"/> + </list> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:mirror-vertical" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="draw:mirror-horizontal" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:text-rotate-angle" a:defaultValue="0"> + <ref name="double"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-allowed" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:text-path-allowed" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:concentric-gradient-fill-allowed" + a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-brightness" a:defaultValue="33%"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-depth" a:defaultValue="36pt 0"> + <list> + <ref name="length"/> + <ref name="double"/> + </list> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-diffusion" a:defaultValue="0%"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-number-of-line-segments" + a:defaultValue="30"> + <ref name="integer"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-light-face" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-first-light-harsh" + a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-second-light-harsh" + a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-first-light-level" + a:defaultValue="66%"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-second-light-level" + a:defaultValue="66%"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-first-light-direction" + a:defaultValue="(5 0 1)"> + <ref name="vector3D"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-second-light-direction" + a:defaultValue="(-5 0 1)"> + <ref name="vector3D"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-metal" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:shade-mode" a:defaultValue="flat"> + <choice> + <value>flat</value> + <value>phong</value> + <value>gouraud</value> + <value>draft</value> + </choice> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-rotation-angle" a:defaultValue="0 0"> + <list> + <ref name="double"/> + <ref name="double"/> + </list> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-rotation-center"> + <ref name="vector3D"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-shininess" a:defaultValue="50%"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-skew" a:defaultValue="50 45"> + <list> + <ref name="double"/> + <ref name="double"/> + </list> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-specularity" a:defaultValue="0%"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:projection" a:defaultValue="parallel"> + <choice> + <value>parallel</value> + <value>perspective</value> + </choice> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-viewpoint" + a:defaultValue="3.5cm -3.5cm 25cm"> + <ref name="point3D"/> + </attribute> + </optional> +</define> + +<define name="point3D"> + <data type="string"/> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-origin" a:defaultValue="0.5 -0.5"> + <list> + <ref name="double"/> + <ref name="double"/> + </list> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-color" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:enhanced-path"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:path-stretchpoint-x" a:defaultValue="0"> + <ref name="double"/> + </attribute> + </optional> + <optional> + <attribute name="draw:path-stretchpoint-y" a:defaultValue="0"> + <ref name="double"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:text-areas"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:glue-points"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:glue-point-type" a:defaultValue="none"> + <choice> + <value>none</value> + <value>segments</value> + <value>rectangle</value> + </choice> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:glue-point-leaving-directions"/> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:text-path" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:text-path-mode" a:defaultValue="normal"> + <choice> + <value>normal</value> + <value>path</value> + <value>shape</value> + </choice> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:text-path-scale" a:defaultValue="path"> + <choice> + <value>path</value> + <value>shape</value> + </choice> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:text-path-same-letter-heights" + a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:modifiers"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-equation"> + <element name="draw:equation"> + <ref name="draw-equation-attlist"/> + <empty/> + </element> +</define> +<define name="draw-equation-attlist" combine="interleave"> + <optional> + <attribute name="draw:name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-equation-attlist" combine="interleave"> + <optional> + <attribute name="draw:formula"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-handle"> + <element name="draw:handle"> + <ref name="draw-handle-attlist"/> + <empty/> + </element> +</define> +<define name="draw-handle-attlist" combine="interleave"> + <optional> + <attribute name="draw:handle-mirror-vertical" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="draw-handle-attlist" combine="interleave"> + <optional> + <attribute name="draw:handle-mirror-horizontal" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="draw-handle-attlist" combine="interleave"> + <optional> + <attribute name="draw:handle-switched" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="draw-handle-attlist" combine="interleave"> + <attribute name="draw:handle-position"> + <ref name="string"/> + </attribute> +</define> +<define name="draw-handle-attlist" combine="interleave"> + <optional> + <attribute name="draw:handle-range-x-minimum"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-handle-attlist" combine="interleave"> + <optional> + <attribute name="draw:handle-range-x-maximum"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-handle-attlist" combine="interleave"> + <optional> + <attribute name="draw:handle-range-y-minimum"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-handle-attlist" combine="interleave"> + <optional> + <attribute name="draw:handle-range-y-maximum"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-handle-attlist" combine="interleave"> + <optional> + <attribute name="draw:handle-polar"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-handle-attlist" combine="interleave"> + <optional> + <attribute name="draw:handle-radius-range-minimum"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-handle-attlist" combine="interleave"> + <optional> + <attribute name="draw:handle-radius-range-maximum"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="presentation-shape-attlist" combine="interleave"> + <optional> + <attribute name="presentation:class"> + <ref name="presentation-classes"/> + </attribute> + </optional> +</define> +<define name="presentation-classes"> + <choice> + <value>title</value> + <value>outline</value> + <value>subtitle</value> + <value>text</value> + <value>graphic</value> + <value>object</value> + <value>chart</value> + <value>table</value> + <value>orgchart</value> + <value>page</value> + <value>notes</value> + <value>handout</value> + <value>header</value> + <value>footer</value> + <value>date-time</value> + <value>page-number</value> + </choice> +</define> +<define name="presentation-shape-attlist" combine="interleave"> + <optional> + <attribute name="presentation:placeholder"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="presentation-shape-attlist" combine="interleave"> + <optional> + <attribute name="presentation:user-transformed"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="presentation-animations"> + <element name="presentation:animations"> + <zeroOrMore> + <choice> + <ref name="presentation-animation-elements"/> + <ref name="presentation-animation-group"/> + </choice> + </zeroOrMore> + </element> +</define> +<define name="presentation-animation-elements"> + <choice> + <ref name="presentation-show-shape"/> + <ref name="presentation-show-text"/> + <ref name="presentation-hide-shape"/> + <ref name="presentation-hide-text"/> + <ref name="presentation-dim"/> + <ref name="presentation-play"/> + </choice> +</define> +<define name="presentation-sound"> + <element name="presentation:sound"> + <ref name="presentation-sound-attlist"/> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> + <optional> + <attribute name="xlink:type" a:defaultValue="simple"> + <choice> + <value>simple</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="xlink:actuate" a:defaultValue="onRequest"> + <choice> + <value>onRequest</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="xlink:show"> + <choice> + <value>new</value> + <value>replace</value> + </choice> + </attribute> + </optional> + <empty/> + </element> +</define> +<define name="presentation-sound-attlist" combine="interleave"> + <optional> + <attribute name="presentation:play-full"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="presentation-show-shape"> + <element name="presentation:show-shape"> + <ref name="common-presentation-effect-attlist"/> + <optional> + <ref name="presentation-sound"/> + </optional> + </element> +</define> +<define name="common-presentation-effect-attlist" combine="interleave"> + <attribute name="draw:shape-id"> + <ref name="IDREF"/> + </attribute> +</define> +<define name="common-presentation-effect-attlist" combine="interleave"> + <optional> + <attribute name="presentation:effect" a:defaultValue="none"> + <ref name="presentationEffects"/> + </attribute> + </optional> +</define> +<define name="presentationEffects"> + <choice> + <value>none</value> + <value>fade</value> + <value>move</value> + <value>stripes</value> + <value>open</value> + <value>close</value> + <value>dissolve</value> + <value>wavyline</value> + <value>random</value> + <value>lines</value> + <value>laser</value> + <value>appear</value> + <value>hide</value> + <value>move-short</value> + <value>checkerboard</value> + <value>rotate</value> + <value>stretch</value> + </choice> +</define> +<define name="common-presentation-effect-attlist" combine="interleave"> + <optional> + <attribute name="presentation:direction" a:defaultValue="none"> + <ref name="presentationEffectDirections"/> + </attribute> + </optional> +</define> +<define name="presentationEffectDirections"> + <choice> + <value>none</value> + <value>from-left</value> + <value>from-top</value> + <value>from-right</value> + <value>from-bottom</value> + <value>from-center</value> + <value>from-upper-left</value> + <value>from-upper-right</value> + <value>from-lower-left</value> + <value>from-lower-right</value> + <value>to-left</value> + <value>to-top</value> + <value>to-right</value> + <value>to-bottom</value> + <value>to-upper-left</value> + <value>to-upper-right</value> + <value>to-lower-right</value> + <value>to-lower-left</value> + <value>path</value> + <value>spiral-inward-left</value> + <value>spiral-inward-right</value> + <value>spiral-outward-left</value> + <value>spiral-outward-right</value> + <value>vertical</value> + <value>horizontal</value> + <value>to-center</value> + <value>clockwise</value> + <value>counter-clockwise</value> + </choice> +</define> +<define name="common-presentation-effect-attlist" combine="interleave"> + <optional> + <attribute name="presentation:speed" a:defaultValue="medium"> + <ref name="presentationSpeeds"/> + </attribute> + </optional> +</define> +<define name="presentationSpeeds"> + <choice> + <value>slow</value> + <value>medium</value> + <value>fast</value> + </choice> +</define> +<define name="common-presentation-effect-attlist" combine="interleave"> + <optional> + <attribute name="presentation:delay"> + <ref name="duration"/> + </attribute> + </optional> +</define> +<define name="common-presentation-effect-attlist" combine="interleave"> + <optional> + <attribute name="presentation:start-scale" a:defaultValue="100%"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="common-presentation-effect-attlist" combine="interleave"> + <optional> + <attribute name="presentation:path-id"/> + </optional> +</define> +<define name="presentation-show-text"> + <element name="presentation:show-text"> + <ref name="common-presentation-effect-attlist"/> + <optional> + <ref name="presentation-sound"/> + </optional> + </element> +</define> +<define name="presentation-hide-shape"> + <element name="presentation:hide-shape"> + <ref name="common-presentation-effect-attlist"/> + <optional> + <ref name="presentation-sound"/> + </optional> + </element> +</define> +<define name="presentation-hide-text"> + <element name="presentation:hide-text"> + <ref name="common-presentation-effect-attlist"/> + <optional> + <ref name="presentation-sound"/> + </optional> + </element> +</define> +<define name="presentation-dim"> + <element name="presentation:dim"> + <ref name="presentation-dim-attlist"/> + <optional> + <ref name="presentation-sound"/> + </optional> + </element> +</define> +<define name="presentation-dim-attlist" combine="interleave"> + <attribute name="draw:shape-id"> + <ref name="IDREF"/> + </attribute> +</define> +<define name="presentation-dim-attlist" combine="interleave"> + <attribute name="draw:color"> + <ref name="color"/> + </attribute> +</define> +<define name="presentation-play"> + <element name="presentation:play"> + <ref name="presentation-play-attlist"/> + <empty/> + </element> +</define> +<define name="presentation-play-attlist" combine="interleave"> + <attribute name="draw:shape-id"> + <ref name="IDREF"/> + </attribute> + <optional> + <attribute name="presentation:speed" a:defaultValue="medium"> + <ref name="presentationSpeeds"/> + </attribute> + </optional> +</define> +<define name="presentation-animation-group"> + <element name="presentation:animation-group"> + <zeroOrMore> + <ref name="presentation-animation-elements"/> + </zeroOrMore> + </element> +</define> +<define name="common-anim-attlist" combine="interleave"> + <optional> + <attribute name="presentation:node-type" a:defaultValue="default"> + <choice> + <value>default</value> + <value>on-click</value> + <value>with-previous</value> + <value>after-previous</value> + <value>timing-root</value> + <value>main-sequence</value> + <value>interactive-sequence</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-anim-attlist" combine="interleave"> + <optional> + <attribute name="presentation:preset-id"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-anim-attlist" combine="interleave"> + <optional> + <attribute name="presentation:preset-sub-type"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-anim-attlist" combine="interleave"> + <optional> + <attribute name="presentation:preset-class" a:defaultValue="custom"> + <choice> + <value>custom</value> + <value>entrance</value> + <value>exit</value> + <value>emphasis</value> + <value>motion-path</value> + <value>ole-action</value> + <value>media-call</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-anim-attlist" combine="interleave"> + <optional> + <attribute name="presentation:master-element"> + <ref name="IDREF"/> + </attribute> + </optional> +</define> +<define name="common-anim-attlist" combine="interleave"> + <optional> + <attribute name="presentation:group-id"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="presentation-event-listener"> + <element name="presentation:event-listener"> + <ref name="presentation-event-listener-attlist"/> + <optional> + <ref name="presentation-sound"/> + </optional> + </element> +</define> +<define name="presentation-event-listener-attlist" combine="interleave"> + <attribute name="script:event-name"> + <ref name="string"/> + </attribute> +</define> +<define name="presentation-event-listener-attlist" combine="interleave"> + <attribute name="presentation:action"> + <choice> + <value>none</value> + <value>previous-page</value> + <value>next-page</value> + <value>first-page</value> + <value>last-page</value> + <value>hide</value> + <value>stop</value> + <value>execute</value> + <value>show</value> + <value>verb</value> + <value>fade-out</value> + <value>sound</value> + </choice> + </attribute> +</define> +<define name="presentation-event-listener-attlist" combine="interleave"> + <optional> + <attribute name="presentation:effect" a:defaultValue="none"> + <ref name="presentationEffects"/> + </attribute> + </optional> +</define> +<define name="presentation-event-listener-attlist" combine="interleave"> + <optional> + <attribute name="presentation:direction" a:defaultValue="none"> + <ref name="presentationEffectDirections"/> + </attribute> + </optional> +</define> +<define name="presentation-event-listener-attlist" combine="interleave"> + <optional> + <attribute name="presentation:speed" a:defaultValue="medium"> + <ref name="presentationSpeeds"/> + </attribute> + </optional> +</define> +<define name="presentation-event-listener-attlist" combine="interleave"> + <optional> + <attribute name="presentation:start-scale" a:defaultValue="100%"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="presentation-event-listener-attlist" combine="interleave"> + <optional> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> + </optional> + <optional> + <attribute name="xlink:type" a:defaultValue="simple"> + <choice> + <value>simple</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="xlink:show" a:defaultValue="embed"> + <choice> + <value>embed</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="xlink:actuate" a:defaultValue="onRequest"> + <choice> + <value>onRequest</value> + </choice> + </attribute> + </optional> +</define> +<define name="presentation-event-listener-attlist" combine="interleave"> + <optional> + <attribute name="presentation:verb"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <element name="presentation:header"> + <empty/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="presentation:footer"> + <empty/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="presentation:date-time"> + <empty/> + </element> +</define> +<define name="presentation-decls"> + <zeroOrMore> + <ref name="presentation-decl"/> + </zeroOrMore> +</define> +<define name="presentation-decl" combine="choice"> + <element name="presentation:header-decl"> + <ref name="presentation-header-decl-attlist"/> + <text/> + </element> +</define> +<define name="presentation-header-decl-attlist" combine="interleave"> + <attribute name="presentation:name"> + <ref name="string"/> + </attribute> +</define> +<define name="presentation-decl" combine="choice"> + <element name="presentation:footer-decl"> + <ref name="presentation-footer-decl-attlist"/> + <text/> + </element> +</define> +<define name="presentation-footer-decl-attlist" combine="interleave"> + <attribute name="presentation:name"> + <ref name="string"/> + </attribute> +</define> +<define name="presentation-decl" combine="choice"> + <element name="presentation:date-time-decl"> + <ref name="presentation-date-time-decl-attlist"/> + <text/> + </element> +</define> +<define name="presentation-date-time-decl-attlist" combine="interleave"> + <attribute name="presentation:name"> + <ref name="string"/> + </attribute> +</define> +<define name="presentation-date-time-decl-attlist" combine="interleave"> + <attribute name="presentation:source"> + <choice> + <value>fixed</value> + <value>current-date</value> + </choice> + </attribute> +</define> +<define name="presentation-date-time-decl-attlist" combine="interleave"> + <optional> + <attribute name="style:data-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="presentation-settings"> + <optional> + <element name="presentation:settings"> + <ref name="presentation-settings-attlist"/> + <zeroOrMore> + <ref name="presentation-show"/> + </zeroOrMore> + </element> + </optional> +</define> +<define name="presentation-settings-attlist" combine="interleave"> + <optional> + <attribute name="presentation:start-page"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="presentation-settings-attlist" combine="interleave"> + <optional> + <attribute name="presentation:show"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="presentation-settings-attlist" combine="interleave"> + <optional> + <attribute name="presentation:full-screen" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="presentation-settings-attlist" combine="interleave"> + <optional> + <attribute name="presentation:endless" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="presentation-settings-attlist" combine="interleave"> + <optional> + <attribute name="presentation:pause"> + <ref name="duration"/> + </attribute> + </optional> +</define> +<define name="presentation-settings-attlist" combine="interleave"> + <optional> + <attribute name="presentation:show-logo" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="presentation-settings-attlist" combine="interleave"> + <optional> + <attribute name="presentation:force-manual" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="presentation-settings-attlist" combine="interleave"> + <optional> + <attribute name="presentation:mouse-visible" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="presentation-settings-attlist" combine="interleave"> + <optional> + <attribute name="presentation:mouse-as-pen" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="presentation-settings-attlist" combine="interleave"> + <optional> + <attribute name="presentation:start-with-navigator" + a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="presentation-settings-attlist" combine="interleave"> + <optional> + <attribute name="presentation:animations" a:defaultValue="enabled"> + <choice> + <value>enabled</value> + <value>disabled</value> + </choice> + </attribute> + </optional> +</define> +<define name="presentation-settings-attlist" combine="interleave"> + <optional> + <attribute name="presentation:transition-on-click" + a:defaultValue="enabled"> + <choice> + <value>enabled</value> + <value>disabled</value> + </choice> + </attribute> + </optional> +</define> +<define name="presentation-settings-attlist" combine="interleave"> + <optional> + <attribute name="presentation:stay-on-top" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="presentation-show"> + <element name="presentation:show"> + <ref name="presentation-show-attlist"/> + <empty/> + </element> +</define> +<define name="presentation-show-attlist" combine="interleave"> + <attribute name="presentation:name"> + <ref name="string"/> + </attribute> +</define> +<define name="presentation-show-attlist" combine="interleave"> + <attribute name="presentation:pages"/> +</define> +<define name="chart-chart"> + <element name="chart:chart"> + <ref name="chart-chart-attlist"/> + <optional> + <ref name="chart-title"/> + </optional> + <optional> + <ref name="chart-subtitle"/> + </optional> + <optional> + <ref name="chart-footer"/> + </optional> + <optional> + <ref name="chart-legend"/> + </optional> + <ref name="chart-plot-area"/> + <optional> + <ref name="table-table"/> + </optional> + </element> +</define> +<define name="chart-chart-attlist" combine="interleave"> + <attribute name="chart:class"> + <ref name="namespacedToken"/> + </attribute> +</define> +<define name="chart-chart-attlist" combine="interleave"> + <ref name="common-draw-size-attlist"/> +</define> +<define name="chart-chart-attlist" combine="interleave"> + <optional> + <attribute name="chart:column-mapping"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="chart-chart-attlist" combine="interleave"> + <optional> + <attribute name="chart:row-mapping"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="chart-chart-attlist" combine="interleave"> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="chart-title"> + <element name="chart:title"> + <ref name="chart-title-attlist"/> + <optional> + <ref name="text-p"/> + </optional> + </element> +</define> +<define name="chart-title-attlist" combine="interleave"> + <optional> + <attribute name="table:cell-range"> + <ref name="cellAddress"/> + </attribute> + </optional> +</define> +<define name="chart-title-attlist" combine="interleave"> + <ref name="common-draw-position-attlist"/> +</define> +<define name="chart-title-attlist" combine="interleave"> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="chart-subtitle"> + <element name="chart:subtitle"> + <ref name="chart-title-attlist"/> + <optional> + <ref name="text-p"/> + </optional> + </element> +</define> +<define name="chart-footer"> + <element name="chart:footer"> + <ref name="chart-title-attlist"/> + <optional> + <ref name="text-p"/> + </optional> + </element> +</define> +<define name="chart-legend"> + <element name="chart:legend"> + <ref name="chart-legend-attlist"/> + <empty/> + </element> +</define> +<define name="chart-legend-attlist" combine="interleave"> + <choice> + <group> + <attribute name="chart:legend-position"> + <choice> + <value>start</value> + <value>end</value> + <value>top</value> + <value>bottom</value> + </choice> + </attribute> + <optional> + <attribute name="chart:legend-align"> + <choice> + <value>start</value> + <value>center</value> + <value>end</value> + </choice> + </attribute> + </optional> + </group> + <attribute name="chart:legend-position"> + <choice> + <value>top-start</value> + <value>bottom-start</value> + <value>top-end</value> + <value>bottom-end</value> + </choice> + </attribute> + <empty/> + </choice> +</define> +<define name="chart-legend-attlist" combine="interleave"> + <ref name="common-draw-position-attlist"/> +</define> +<define name="chart-legend-attlist" combine="interleave"> + <choice> + <attribute name="style:legend-expansion"> + <choice> + <value>wide</value> + <value>high</value> + <value>balanced</value> + </choice> + </attribute> + <group> + <attribute name="style:legend-expansion"> + <value>custom</value> + </attribute> + <attribute name="style:legend-expansion-aspect-ratio"> + <ref name="double"/> + </attribute> + </group> + <empty/> + </choice> +</define> +<define name="chart-legend-attlist" combine="interleave"> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="chart-plot-area"> + <element name="chart:plot-area"> + <ref name="chart-plot-area-attlist"/> + <zeroOrMore> + <ref name="dr3d-light"/> + </zeroOrMore> + <zeroOrMore> + <ref name="chart-axis"/> + </zeroOrMore> + <zeroOrMore> + <ref name="chart-series"/> + </zeroOrMore> + <optional> + <ref name="chart-stock-gain-marker"/> + </optional> + <optional> + <ref name="chart-stock-loss-marker"/> + </optional> + <optional> + <ref name="chart-stock-range-line"/> + </optional> + <optional> + <ref name="chart-wall"/> + </optional> + <optional> + <ref name="chart-floor"/> + </optional> + </element> +</define> +<define name="chart-plot-area-attlist" combine="interleave"> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> +</define> +<define name="chart-plot-area-attlist" combine="interleave"> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="chart-plot-area-attlist" combine="interleave"> + <optional> + <attribute name="table:cell-range-address"> + <ref name="cellRangeAddress"/> + </attribute> + </optional> +</define> +<define name="chart-plot-area-attlist" combine="interleave"> + <optional> + <attribute name="chart:data-source-has-labels" a:defaultValue="none"> + <choice> + <value>none</value> + <value>row</value> + <value>column</value> + <value>both</value> + </choice> + </attribute> + </optional> +</define> +<define name="chart-plot-area-attlist" combine="interleave"> + <ref name="dr3d-scene-attlist"/> + <ref name="common-dr3d-transform-attlist"/> +</define> +<define name="chart-wall"> + <element name="chart:wall"> + <ref name="chart-wall-attlist"/> + <empty/> + </element> +</define> +<define name="chart-wall-attlist" combine="interleave"> + <optional> + <attribute name="svg:width"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="chart-wall-attlist" combine="interleave"> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="chart-floor"> + <element name="chart:floor"> + <ref name="chart-floor-attlist"/> + <empty/> + </element> +</define> +<define name="chart-floor-attlist" combine="interleave"> + <optional> + <attribute name="svg:width"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="chart-floor-attlist" combine="interleave"> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="chart-axis"> + <element name="chart:axis"> + <ref name="chart-axis-attlist"/> + <optional> + <ref name="chart-title"/> + </optional> + <optional> + <ref name="chart-categories"/> + </optional> + <zeroOrMore> + <ref name="chart-grid"/> + </zeroOrMore> + </element> +</define> +<define name="chart-axis-attlist" combine="interleave"> + <attribute name="chart:dimension"> + <choice> + <value>x</value> + <value>y</value> + <value>z</value> + </choice> + </attribute> +</define> +<define name="chart-axis-attlist" combine="interleave"> + <optional> + <attribute name="chart:name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="chart-axis-attlist" combine="interleave"> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="chart-grid"> + <element name="chart:grid"> + <ref name="chart-grid-attlist"/> + </element> +</define> +<define name="chart-grid-attlist" combine="interleave"> + <optional> + <attribute name="chart:class" a:defaultValue="major"> + <choice> + <value>major</value> + <value>minor</value> + </choice> + </attribute> + </optional> +</define> +<define name="chart-grid-attlist" combine="interleave"> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="chart-series"> + <element name="chart:series"> + <ref name="chart-series-attlist"/> + <zeroOrMore> + <ref name="chart-domain"/> + </zeroOrMore> + <optional> + <ref name="chart-mean-value"/> + </optional> + <optional> + <ref name="chart-regression-curve"/> + </optional> + <optional> + <ref name="chart-error-indicator"/> + </optional> + <zeroOrMore> + <ref name="chart-data-point"/> + </zeroOrMore> + </element> +</define> +<define name="chart-series-attlist" combine="interleave"> + <optional> + <attribute name="chart:values-cell-range-address"> + <ref name="cellRangeAddress"/> + </attribute> + </optional> +</define> +<define name="chart-series-attlist" combine="interleave"> + <optional> + <attribute name="chart:label-cell-address"> + <ref name="cellAddress"/> + </attribute> + </optional> +</define> +<define name="chart-series-attlist" combine="interleave"> + <optional> + <attribute name="chart:class"> + <ref name="namespacedToken"/> + </attribute> + </optional> +</define> +<define name="chart-series-attlist" combine="interleave"> + <optional> + <attribute name="chart:attached-axis"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="chart-series-attlist" combine="interleave"> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="chart-domain"> + <element name="chart:domain"> + <optional> + <attribute name="table:cell-range-address"> + <ref name="cellRangeAddress"/> + </attribute> + </optional> + </element> +</define> +<define name="chart-categories"> + <element name="chart:categories"> + <optional> + <attribute name="table:cell-range-address"> + <ref name="cellRangeAddress"/> + </attribute> + </optional> + </element> +</define> +<define name="chart-data-point"> + <element name="chart:data-point"> + <ref name="chart-data-point-attlist"/> + <empty/> + </element> +</define> +<define name="chart-data-point-attlist" combine="interleave"> + <optional> + <attribute name="chart:repeated"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="chart-data-point-attlist" combine="interleave"> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> + +<define name="chart-mean-value"> + <element name="chart:mean-value"> + <ref name="chart-mean-value-attlist"/> + <empty/> + </element> +</define> +<define name="chart-mean-value-attlist" combine="interleave"> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="chart-error-indicator"> + <element name="chart:error-indicator"> + <ref name="chart-error-indicator-attlist"/> + <empty/> + </element> +</define> +<define name="chart-error-indicator-attlist" combine="interleave"> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="chart-regression-curve"> + <element name="chart:regression-curve"> + <ref name="chart-regression-curve-attlist"/> + <empty/> + </element> +</define> +<define name="chart-regression-curve-attlist" combine="interleave"> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="chart-stock-gain-marker"> + <element name="chart:stock-gain-marker"> + <ref name="common-stock-marker-attlist"/> + </element> +</define> +<define name="chart-stock-loss-marker"> + <element name="chart:stock-loss-marker"> + <ref name="common-stock-marker-attlist"/> + </element> +</define> +<define name="chart-stock-range-line"> + <element name="chart:stock-range-line"> + <ref name="common-stock-marker-attlist"/> + </element> +</define> +<define name="common-stock-marker-attlist"> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="office-forms"> + <optional> + <element name="office:forms"> + <ref name="office-forms-attlist"/> + <zeroOrMore> + <choice> + <ref name="form-form"/> + <ref name="xforms-model"/> + </choice> + </zeroOrMore> + </element> + </optional> +</define> +<define name="office-forms-attlist" combine="interleave"> + <optional> + <attribute name="form:automatic-focus" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="office-forms-attlist" combine="interleave"> + <optional> + <attribute name="form:apply-design-mode" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="form-form"> + <element name="form:form"> + <ref name="common-form-control-attlist"/> + <ref name="form-form-attlist"/> + <optional> + <ref name="form-properties"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <choice> + <ref name="controls"/> + <ref name="form-form"/> + </choice> + </zeroOrMore> + <optional> + <ref name="form-connection-resource"/> + </optional> + </element> +</define> +<define name="form-form-attlist" combine="interleave"> + <optional> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> + <optional> + <attribute name="xlink:type" a:defaultValue="simple"> + <value>simple</value> + </attribute> + </optional> + <optional> + <attribute name="xlink:actuate" a:defaultValue="onRequest"> + <value>onRequest</value> + </attribute> + </optional> + </optional> +</define> +<define name="form-form-attlist" combine="interleave"> + <optional> + <attribute name="office:target-frame" a:defaultValue="_blank"> + <ref name="targetFrameName"/> + </attribute> + </optional> +</define> +<define name="form-form-attlist" combine="interleave"> + <optional> + <attribute name="form:method" a:defaultValue="get"> + <choice> + <value>get</value> + <value>post</value> + <ref name="string"/> + </choice> + </attribute> + </optional> +</define> +<define name="form-form-attlist" combine="interleave"> + <optional> + <attribute name="form:enctype" + a:defaultValue="application/x-www-form-urlencoded"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="form-form-attlist" combine="interleave"> + <optional> + <attribute name="form:allow-deletes" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="form-form-attlist" combine="interleave"> + <optional> + <attribute name="form:allow-inserts" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="form-form-attlist" combine="interleave"> + <optional> + <attribute name="form:allow-updates" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="form-form-attlist" combine="interleave"> + <optional> + <attribute name="form:apply-filter" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="form-form-attlist" combine="interleave"> + <optional> + <attribute name="form:command-type" a:defaultValue="command"> + <choice> + <value>table</value> + <value>query</value> + <value>command</value> + </choice> + </attribute> + </optional> +</define> +<define name="form-form-attlist" combine="interleave"> + <optional> + <attribute name="form:command"/> + </optional> +</define> +<define name="form-form-attlist" combine="interleave"> + <optional> + <attribute name="form:datasource"> + <choice> + <ref name="anyURI"/> + <ref name="string"/> + </choice> + </attribute> + </optional> +</define> +<define name="form-form-attlist" combine="interleave"> + <optional> + <attribute name="form:master-fields"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="form-form-attlist" combine="interleave"> + <optional> + <attribute name="form:detail-fields"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="form-form-attlist" combine="interleave"> + <optional> + <attribute name="form:escape-processing" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="form-form-attlist" combine="interleave"> + <optional> + <attribute name="form:filter"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="form-form-attlist" combine="interleave"> + <optional> + <attribute name="form:ignore-result" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="form-form-attlist" combine="interleave"> + <optional> + <attribute name="form:navigation-mode"> + <ref name="navigation"/> + </attribute> + </optional> +</define> + +<define name="navigation"> + <choice> + <value>none</value> + <value>current</value> + <value>parent</value> + </choice> +</define> +<define name="form-form-attlist" combine="interleave"> + <optional> + <attribute name="form:order"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="form-form-attlist" combine="interleave"> + <optional> + <attribute name="form:tab-cycle"> + <ref name="tab-cycles"/> + </attribute> + </optional> +</define> +<define name="tab-cycles"> + <choice> + <value>records</value> + <value>current</value> + <value>page</value> + </choice> +</define> +<define name="form-connection-resource"> + <element name="form:connection-resource"> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> + <empty/> + </element> +</define> +<define name="xforms-model"> + <element name="xforms:model"> + <ref name="anyAttListOrElements"/> + </element> +</define> +<define name="column-controls" combine="choice"> + <element name="form:text"> + <ref name="form-text-attlist"/> + <ref name="common-form-control-content"/> + </element> +</define> +<define name="controls" combine="choice"> + <ref name="column-controls"/> +</define> +<define name="form-text-attlist"> + <ref name="form-control-attlist"/> + <ref name="common-current-value-attlist"/> + <ref name="common-disabled-attlist"/> + <ref name="common-maxlength-attlist"/> + <ref name="common-printable-attlist"/> + <ref name="common-readonly-attlist"/> + <ref name="common-tab-attlist"/> + <ref name="common-title-attlist"/> + <ref name="common-value-attlist"/> + <ref name="common-convert-empty-attlist"/> + <ref name="common-data-field-attlist"/> +</define> +<define name="form-control-attlist"> + <ref name="common-form-control-attlist"/> + <ref name="common-control-id-attlist"/> + <ref name="xforms-bind-attlist"/> +</define> +<define name="common-form-control-content"> + <optional> + <ref name="form-properties"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> +</define> +<define name="column-controls" combine="choice"> + <element name="form:textarea"> + <ref name="form-textarea-attlist"/> + <ref name="common-form-control-content"/> + <zeroOrMore> + <ref name="text-p"/> + </zeroOrMore> + </element> +</define> +<define name="form-textarea-attlist"> + <ref name="form-control-attlist"/> + <ref name="common-current-value-attlist"/> + <ref name="common-disabled-attlist"/> + <ref name="common-maxlength-attlist"/> + <ref name="common-printable-attlist"/> + <ref name="common-readonly-attlist"/> + <ref name="common-tab-attlist"/> + <ref name="common-title-attlist"/> + <ref name="common-value-attlist"/> + <ref name="common-convert-empty-attlist"/> + <ref name="common-data-field-attlist"/> +</define> +<define name="controls" combine="choice"> + <element name="form:password"> + <ref name="form-password-attlist"/> + <ref name="common-form-control-content"/> + </element> +</define> +<define name="form-password-attlist" combine="interleave"> + <ref name="form-control-attlist"/> + <ref name="common-disabled-attlist"/> + <ref name="common-maxlength-attlist"/> + <ref name="common-printable-attlist"/> + <ref name="common-tab-attlist"/> + <ref name="common-title-attlist"/> + <ref name="common-value-attlist"/> + <ref name="common-convert-empty-attlist"/> +</define> +<define name="form-password-attlist" combine="interleave"> + <optional> + <attribute name="form:echo-char" a:defaultValue="*"> + <ref name="character"/> + </attribute> + </optional> +</define> +<define name="controls" combine="choice"> + <element name="form:file"> + <ref name="form-file-attlist"/> + <ref name="common-form-control-content"/> + </element> +</define> +<define name="form-file-attlist" combine="interleave"> + <ref name="form-control-attlist"/> + <ref name="common-current-value-attlist"/> + <ref name="common-disabled-attlist"/> + <ref name="common-maxlength-attlist"/> + <ref name="common-printable-attlist"/> + <ref name="common-readonly-attlist"/> + <ref name="common-tab-attlist"/> + <ref name="common-title-attlist"/> + <ref name="common-value-attlist"/> +</define> +<define name="column-controls" combine="choice"> + <element name="form:formatted-text"> + <ref name="form-formatted-text-attlist"/> + <ref name="common-form-control-content"/> + </element> +</define> +<define name="form-formatted-text-attlist" combine="interleave"> + <ref name="form-control-attlist"/> + <ref name="common-current-value-attlist"/> + <ref name="common-disabled-attlist"/> + <ref name="common-maxlength-attlist"/> + <ref name="common-printable-attlist"/> + <ref name="common-readonly-attlist"/> + <ref name="common-tab-attlist"/> + <ref name="common-title-attlist"/> + <ref name="common-value-attlist"/> + <ref name="common-convert-empty-attlist"/> + <ref name="common-data-field-attlist"/> +</define> +<define name="form-formatted-text-attlist" combine="interleave"> + <optional> + <attribute name="form:max-value"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="form-formatted-text-attlist" combine="interleave"> + <optional> + <attribute name="form:min-value"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="form-formatted-text-attlist" combine="interleave"> + <optional> + <attribute name="form:validation" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="column-controls" combine="choice"> + <element name="form:number"> + <ref name="form-number-attlist"/> + <ref name="common-numeric-control-attlist"/> + <ref name="common-form-control-content"/> + </element> +</define> +<define name="common-numeric-control-attlist"> + <ref name="form-control-attlist"/> + <ref name="common-disabled-attlist"/> + <ref name="common-maxlength-attlist"/> + <ref name="common-printable-attlist"/> + <ref name="common-readonly-attlist"/> + <ref name="common-tab-attlist"/> + <ref name="common-title-attlist"/> + <ref name="common-convert-empty-attlist"/> + <ref name="common-data-field-attlist"/> +</define> +<define name="form-number-attlist" combine="interleave"> + <optional> + <attribute name="form:value"> + <ref name="double"/> + </attribute> + </optional> +</define> +<define name="form-number-attlist" combine="interleave"> + <optional> + <attribute name="form:current-value"> + <ref name="double"/> + </attribute> + </optional> +</define> +<define name="form-number-attlist" combine="interleave"> + <optional> + <attribute name="form:min-value"> + <ref name="double"/> + </attribute> + </optional> +</define> +<define name="form-number-attlist" combine="interleave"> + <optional> + <attribute name="form:max-value"> + <ref name="double"/> + </attribute> + </optional> +</define> +<define name="column-controls" combine="choice"> + <element name="form:date"> + <ref name="form-date-attlist"/> + <ref name="common-numeric-control-attlist"/> + <ref name="common-form-control-content"/> + </element> +</define> +<define name="controls" combine="choice"> + <element name="form:time"> + <ref name="form-time-attlist"/> + <ref name="common-numeric-control-attlist"/> + <ref name="common-form-control-content"/> + </element> +</define> +<define name="form-date-attlist" combine="interleave"> + <optional> + <attribute name="form:value"> + <ref name="date"/> + </attribute> + </optional> +</define> +<define name="form-time-attlist" combine="interleave"> + <optional> + <attribute name="form:value"> + <ref name="time"/> + </attribute> + </optional> +</define> +<define name="form-date-attlist" combine="interleave"> + <optional> + <attribute name="form:current-value"> + <ref name="date"/> + </attribute> + </optional> +</define> +<define name="form-time-attlist" combine="interleave"> + <optional> + <attribute name="form:current-value"> + <ref name="time"/> + </attribute> + </optional> +</define> +<define name="form-date-attlist" combine="interleave"> + <optional> + <attribute name="form:min-value"> + <ref name="date"/> + </attribute> + </optional> +</define> +<define name="form-time-attlist" combine="interleave"> + <optional> + <attribute name="form:min-value"> + <ref name="time"/> + </attribute> + </optional> +</define> +<define name="form-date-attlist" combine="interleave"> + <optional> + <attribute name="form:max-value"> + <ref name="date"/> + </attribute> + </optional> +</define> +<define name="form-time-attlist" combine="interleave"> + <optional> + <attribute name="form:max-value"> + <ref name="time"/> + </attribute> + </optional> +</define> +<define name="controls" combine="choice"> + <element name="form:fixed-text"> + <ref name="form-fixed-text-attlist"/> + <ref name="common-form-control-content"/> + </element> +</define> +<define name="form-fixed-text-attlist" combine="interleave"> + <ref name="form-control-attlist"/> + <ref name="for"/> + <ref name="common-disabled-attlist"/> + <ref name="label"/> + <ref name="common-printable-attlist"/> + <ref name="common-title-attlist"/> +</define> +<define name="form-fixed-text-attlist" combine="interleave"> + <optional> + <attribute name="form:multi-line" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="column-controls" combine="choice"> + <element name="form:combobox"> + <ref name="form-combobox-attlist"/> + <ref name="common-form-control-content"/> + <zeroOrMore> + <ref name="form-item"/> + </zeroOrMore> + </element> +</define> +<define name="form-combobox-attlist" combine="interleave"> + <ref name="form-control-attlist"/> + <ref name="common-current-value-attlist"/> + <ref name="common-disabled-attlist"/> + <ref name="dropdown"/> + <ref name="common-maxlength-attlist"/> + <ref name="common-printable-attlist"/> + <ref name="common-readonly-attlist"/> + <ref name="size"/> + <ref name="common-tab-attlist"/> + <ref name="common-title-attlist"/> + <ref name="common-value-attlist"/> + <ref name="common-convert-empty-attlist"/> + <ref name="common-data-field-attlist"/> + <ref name="list-source"/> + <ref name="list-source-type"/> +</define> +<define name="form-combobox-attlist" combine="interleave"> + <optional> + <attribute name="form:auto-complete"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="form-item"> + <element name="form:item"> + <ref name="form-item-attlist"/> + <text/> + </element> +</define> +<define name="form-item-attlist" combine="interleave"> + <ref name="label"/> +</define> +<define name="column-controls" combine="choice"> + <element name="form:listbox"> + <ref name="form-listbox-attlist"/> + <ref name="common-form-control-content"/> + <zeroOrMore> + <ref name="form-option"/> + </zeroOrMore> + </element> +</define> +<define name="form-listbox-attlist" combine="interleave"> + <ref name="form-control-attlist"/> + <ref name="common-disabled-attlist"/> + <ref name="dropdown"/> + <ref name="common-printable-attlist"/> + <ref name="size"/> + <ref name="common-tab-attlist"/> + <ref name="common-title-attlist"/> + <ref name="bound-column"/> + <ref name="common-data-field-attlist"/> + <ref name="list-source"/> + <ref name="list-source-type"/> +</define> +<define name="form-listbox-attlist" combine="interleave"> + <optional> + <attribute name="form:multiple" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="form-listbox-attlist" combine="interleave"> + <optional> + <attribute name="form:xforms-list-source"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="form-option"> + <element name="form:option"> + <ref name="form-option-attlist"/> + <text/> + </element> +</define> +<define name="form-option-attlist" combine="interleave"> + <ref name="current-selected"/> + <ref name="selected"/> + <ref name="label"/> + <ref name="common-value-attlist"/> +</define> +<define name="controls" combine="choice"> + <element name="form:button"> + <ref name="form-button-attlist"/> + <ref name="common-form-control-content"/> + </element> +</define> +<define name="form-button-attlist" combine="interleave"> + <ref name="form-control-attlist"/> + <ref name="button-type"/> + <ref name="common-disabled-attlist"/> + <ref name="label"/> + <ref name="image-data"/> + <ref name="common-printable-attlist"/> + <ref name="common-tab-attlist"/> + <ref name="target-frame"/> + <ref name="target-location"/> + <ref name="common-title-attlist"/> + <ref name="common-value-attlist"/> + <ref name="common-form-relative-image-position-attlist"/> +</define> +<define name="form-button-attlist" combine="interleave"> + <optional> + <attribute name="form:default-button" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="form-button-attlist" combine="interleave"> + <optional> + <attribute name="form:toggle" a:default-value="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="form-button-attlist" combine="interleave"> + <optional> + <attribute name="form:focus-on-click"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="form-button-attlist" combine="interleave"> + <optional> + <attribute name="form:xforms-submission"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="controls" combine="choice"> + <element name="form:image"> + <ref name="form-image-attlist"/> + <ref name="common-form-control-content"/> + </element> +</define> +<define name="form-image-attlist" combine="interleave"> + <ref name="form-control-attlist"/> + <ref name="button-type"/> + <ref name="common-disabled-attlist"/> + <ref name="image-data"/> + <ref name="common-printable-attlist"/> + <ref name="common-tab-attlist"/> + <ref name="target-frame"/> + <ref name="target-location"/> + <ref name="common-title-attlist"/> + <ref name="common-value-attlist"/> +</define> +<define name="column-controls" combine="choice"> + <element name="form:checkbox"> + <ref name="form-checkbox-attlist"/> + <ref name="common-form-control-content"/> + </element> +</define> +<define name="form-checkbox-attlist" combine="interleave"> + <ref name="form-control-attlist"/> + <ref name="common-disabled-attlist"/> + <ref name="label"/> + <ref name="common-printable-attlist"/> + <ref name="common-tab-attlist"/> + <ref name="common-title-attlist"/> + <ref name="common-value-attlist"/> + <ref name="common-data-field-attlist"/> + <ref name="common-form-visual-effect-attlist"/> + <ref name="common-form-relative-image-position-attlist"/> +</define> +<define name="states"> + <choice> + <value>unchecked</value> + <value>checked</value> + <value>unknown</value> + </choice> +</define> +<define name="form-checkbox-attlist" combine="interleave"> + <optional> + <attribute name="form:current-state"> + <ref name="states"/> + </attribute> + </optional> +</define> +<define name="form-checkbox-attlist" combine="interleave"> + <optional> + <attribute name="form:is-tristate" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="form-checkbox-attlist" combine="interleave"> + <optional> + <attribute name="form:state" a:defaultValue="unchecked"> + <ref name="states"/> + </attribute> + </optional> +</define> +<define name="controls" combine="choice"> + <element name="form:radio"> + <ref name="form-radio-attlist"/> + <ref name="common-form-control-content"/> + </element> +</define> +<define name="form-radio-attlist" combine="interleave"> + <ref name="form-control-attlist"/> + <ref name="current-selected"/> + <ref name="common-disabled-attlist"/> + <ref name="label"/> + <ref name="common-printable-attlist"/> + <ref name="selected"/> + <ref name="common-tab-attlist"/> + <ref name="common-title-attlist"/> + <ref name="common-value-attlist"/> + <ref name="common-data-field-attlist"/> + <ref name="common-form-visual-effect-attlist"/> + <ref name="common-form-relative-image-position-attlist"/> +</define> +<define name="controls" combine="choice"> + <element name="form:frame"> + <ref name="form-frame-attlist"/> + <ref name="common-form-control-content"/> + </element> +</define> +<define name="form-frame-attlist" combine="interleave"> + <ref name="form-control-attlist"/> + <ref name="common-disabled-attlist"/> + <ref name="for"/> + <ref name="label"/> + <ref name="common-printable-attlist"/> + <ref name="common-title-attlist"/> +</define> +<define name="controls" combine="choice"> + <element name="form:image-frame"> + <ref name="form-image-frame-attlist"/> + <ref name="common-form-control-content"/> + </element> +</define> +<define name="form-image-frame-attlist" combine="interleave"> + <ref name="form-control-attlist"/> + <ref name="common-disabled-attlist"/> + <ref name="image-data"/> + <ref name="common-printable-attlist"/> + <ref name="common-readonly-attlist"/> + <ref name="common-title-attlist"/> + <ref name="common-data-field-attlist"/> +</define> +<define name="controls" combine="choice"> + <element name="form:hidden"> + <ref name="form-hidden-attlist"/> + <ref name="common-form-control-content"/> + </element> +</define> +<define name="form-hidden-attlist" combine="interleave"> + <ref name="form-control-attlist"/> + <ref name="common-value-attlist"/> +</define> +<define name="controls" combine="choice"> + <element name="form:grid"> + <ref name="form-grid-attlist"/> + <ref name="common-form-control-content"/> + <zeroOrMore> + <ref name="form-column"/> + </zeroOrMore> + </element> +</define> +<define name="form-grid-attlist" combine="interleave"> + <ref name="form-control-attlist"/> + <ref name="common-disabled-attlist"/> + <ref name="common-printable-attlist"/> + <ref name="common-tab-attlist"/> + <ref name="common-title-attlist"/> +</define> +<define name="form-column"> + <element name="form:column"> + <ref name="form-column-attlist"/> + <oneOrMore> + <ref name="column-controls"/> + </oneOrMore> + </element> +</define> +<define name="form-column-attlist" combine="interleave"> + <ref name="common-form-control-attlist"/> + <ref name="label"/> + <ref name="text-style-name"/> +</define> +<define name="text-style-name"> + <optional> + <attribute name="form:text-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="controls" combine="choice"> + <element name="form:value-range"> + <ref name="form-value-range-attlist"/> + <ref name="common-form-control-content"/> + </element> +</define> +<define name="form-value-range-attlist" combine="interleave"> + <ref name="form-control-attlist"/> + <ref name="common-disabled-attlist"/> + <ref name="common-printable-attlist"/> + <ref name="common-tab-attlist"/> + <ref name="common-title-attlist"/> + <ref name="common-value-attlist"/> +</define> +<define name="form-value-range-attlist" combine="interleave"> + <optional> + <attribute name="form:max-value"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="form-value-range-attlist" combine="interleave"> + <optional> + <attribute name="form:min-value"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="form-value-range-attlist" combine="interleave"> + <optional> + <attribute name="form:step-size" a:defaultName="1"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="form-value-range-attlist" combine="interleave"> + <optional> + <attribute name="form:page-step-size"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="form-value-range-attlist" combine="interleave"> + <optional> + <attribute name="form:delay-for-repeat"> + <ref name="duration"/> + </attribute> + </optional> +</define> +<define name="form-value-range-attlist" combine="interleave"> + <optional> + <attribute name="form:orientation"> + <choice> + <value>horizontal</value> + <value>vertical</value> + </choice> + </attribute> + </optional> +</define> +<define name="controls" combine="choice"> + <element name="form:generic-control"> + <ref name="form-generic-control-attlist"/> + <ref name="common-form-control-content"/> + </element> +</define> +<define name="form-generic-control-attlist" combine="interleave"> + <ref name="form-control-attlist"/> +</define> +<define name="common-form-control-attlist" combine="interleave"> + <optional> + <attribute name="form:name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-form-control-attlist" combine="interleave"> + <optional> + <attribute name="form:control-implementation"> + <ref name="namespacedToken"/> + </attribute> + </optional> +</define> +<define name="xforms-bind-attlist"> + <optional> + <attribute name="xforms:bind"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="types"> + <choice> + <value>submit</value> + <value>reset</value> + <value>push</value> + <value>url</value> + </choice> +</define> +<define name="button-type"> + <optional> + <attribute name="form:button-type" a:defaultValue="push"> + <ref name="types"/> + </attribute> + </optional> +</define> +<define name="common-control-id-attlist"> + <attribute name="form:id"> + <ref name="ID"/> + </attribute> +</define> +<define name="current-selected"> + <optional> + <attribute name="form:current-selected" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="common-value-attlist"> + <optional> + <attribute name="form:value"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-current-value-attlist"> + <optional> + <attribute name="form:current-value"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-disabled-attlist"> + <optional> + <attribute name="form:disabled" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="dropdown"> + <optional> + <attribute name="form:dropdown" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="for"> + <optional> + <attribute name="form:for"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="image-data"> + <optional> + <attribute name="form:image-data"> + <ref name="anyURI"/> + </attribute> + </optional> +</define> +<define name="label"> + <optional> + <attribute name="form:label"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-maxlength-attlist"> + <optional> + <attribute name="form:max-length"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="common-printable-attlist"> + <optional> + <attribute name="form:printable" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="common-readonly-attlist"> + <optional> + <attribute name="form:readonly" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="selected"> + <optional> + <attribute name="form:selected" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="size"> + <optional> + <attribute name="form:size"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="common-tab-attlist" combine="interleave"> + <optional> + <attribute name="form:tab-index" a:defaultValue="0"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="common-tab-attlist" combine="interleave"> + <optional> + <attribute name="form:tab-stop" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="target-frame"> + <optional> + <attribute name="office:target-frame" a:defaultValue="_blank"> + <ref name="targetFrameName"/> + </attribute> + </optional> +</define> +<define name="target-location"> + <optional> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> + </optional> +</define> +<define name="common-title-attlist"> + <optional> + <attribute name="form:title"/> + </optional> +</define> +<define name="common-form-visual-effect-attlist" combine="interleave"> + <optional> + <attribute name="form:visual-effect"> + <choice> + <value>flat</value> + <value>3d</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-form-relative-image-position-attlist" + combine="interleave"> + <choice> + <optional> + <attribute name="form:image-position" a:defaultValue="center"> + <value>center</value> + </attribute> + </optional> + <group> + <attribute name="form:image-position"> + <choice> + <value>start</value> + <value>end</value> + <value>top</value> + <value>bottom</value> + </choice> + </attribute> + <optional> + <attribute name="form:image-align" a:defaultValue="center"> + <choice> + <value>start</value> + <value>center</value> + <value>end</value> + </choice> + </attribute> + </optional> + </group> + </choice> +</define> +<define name="bound-column"> + <optional> + <attribute name="form:bound-column"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-convert-empty-attlist"> + <optional> + <attribute name="form:convert-empty-to-null" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="common-data-field-attlist"> + <optional> + <attribute name="form:data-field"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="list-source"> + <optional> + <attribute name="form:list-source"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="list-source-type"> + <optional> + <attribute name="form:list-source-type"> + <choice> + <value>table</value> + <value>query</value> + <value>sql</value> + <value>sql-pass-through</value> + <value>value-list</value> + <value>table-fields</value> + </choice> + </attribute> + </optional> +</define> +<define name="form-properties"> + <element name="form:properties"> + <oneOrMore> + <ref name="form-property"/> + </oneOrMore> + </element> +</define> +<define name="form-property" combine="choice"> + <element name="form:property"> + <ref name="form-property-name"/> + <ref name="form-property-value-and-type-attlist"/> + </element> +</define> +<define name="form-property-name" combine="interleave"> + <attribute name="form:property-name"> + <ref name="string"/> + </attribute> +</define> +<define name="form-property-value-and-type-attlist" combine="interleave"> + <choice> + <ref name="common-value-and-type-attlist"/> + <attribute name="office:value-type"> + <value>void</value> + </attribute> + </choice> +</define> +<define name="form-property" combine="choice"> + <element name="form:list-property"> + <ref name="form-property-name"/> + <ref name="form-property-type-and-value-list"/> + </element> +</define> +<define name="form-property-type-and-value-list"> + <choice> + <group> + <attribute name="office:value-type"> + <value>float</value> + </attribute> + <zeroOrMore> + <element name="form:list-value"> + <attribute name="office:value"> + <ref name="double"/> + </attribute> + </element> + </zeroOrMore> + </group> + <group> + <attribute name="office:value-type"> + <value>percentage</value> + </attribute> + <zeroOrMore> + <element name="form:list-value"> + <attribute name="office:value"> + <ref name="double"/> + </attribute> + </element> + </zeroOrMore> + </group> + <group> + <attribute name="office:value-type"> + <value>currency</value> + </attribute> + <zeroOrMore> + <element name="form:list-value"> + <attribute name="office:value"> + <ref name="double"/> + </attribute> + <optional> + <attribute name="office:currency"> + <ref name="string"/> + </attribute> + </optional> + </element> + </zeroOrMore> + </group> + <group> + <attribute name="office:value-type"> + <value>date</value> + </attribute> + <zeroOrMore> + <element name="form:list-value"> + <attribute name="office:date-value"> + <ref name="dateOrDateTime"/> + </attribute> + </element> + </zeroOrMore> + </group> + <group> + <attribute name="office:value-type"> + <value>time</value> + </attribute> + <zeroOrMore> + <element name="form:list-value"> + <attribute name="office:time-value"> + <ref name="duration"/> + </attribute> + </element> + </zeroOrMore> + </group> + <group> + <attribute name="office:value-type"> + <value>boolean</value> + </attribute> + <zeroOrMore> + <element name="form:list-value"> + <attribute name="office:boolean-value"> + <ref name="boolean"/> + </attribute> + </element> + </zeroOrMore> + </group> + <group> + <attribute name="office:value-type"> + <value>string</value> + </attribute> + <zeroOrMore> + <element name="form:list-value"> + <attribute name="office:string-value"> + <ref name="string"/> + </attribute> + </element> + </zeroOrMore> + </group> + <attribute name="office:value-type"> + <value>void</value> + </attribute> + </choice> +</define> +<define name="office-annotation"> + <element name="office:annotation"> + <ref name="office-annotation-attlist"/> + <ref name="draw-caption-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <optional> + <ref name="dc-creator"/> + </optional> + <optional> + <ref name="dc-date"/> + </optional> + <optional> + <ref name="meta-date-string"/> + </optional> + <zeroOrMore> + <choice> + <ref name="text-p"/> + <ref name="text-list"/> + </choice> + </zeroOrMore> + </element> +</define> +<define name="office-annotation-attlist" combine="interleave"> + <optional> + <attribute name="office:display"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="meta-date-string"> + <element name="meta:date-string"> + <ref name="string"/> + </element> +</define> +<define name="common-num-format-prefix-suffix-attlist" combine="interleave"> + <optional> + <attribute name="style:num-prefix"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="style:num-suffix"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-num-format-attlist" combine="interleave"> + <choice> + <attribute name="style:num-format"> + <choice> + <value>1</value> + <value>i</value> + <value>I</value> + <ref name="string"/> + <empty/> + </choice> + </attribute> + <group> + <attribute name="style:num-format"> + <choice> + <value>a</value> + <value>A</value> + </choice> + </attribute> + <ref name="style-num-letter-sync-attlist"/> + </group> + <empty/> + </choice> +</define> +<define name="style-num-letter-sync-attlist" combine="interleave"> + <optional> + <attribute name="style:num-letter-sync"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="office-change-info"> + <element name="office:change-info"> + <ref name="dc-creator"/> + <ref name="dc-date"/> + <zeroOrMore> + <ref name="text-p"/> + </zeroOrMore> + </element> +</define> +<define name="office-event-listeners"> + <element name="office:event-listeners"> + <zeroOrMore> + <choice> + <ref name="script-event-listener"/> + <ref name="presentation-event-listener"/> + </choice> + </zeroOrMore> + </element> +</define> +<define name="script-event-listener" combine="interleave"> + <element name="script:event-listener"> + <ref name="script-event-listener-attlist"/> + <empty/> + </element> +</define> +<define name="script-event-listener-attlist" combine="interleave"> + <attribute name="script:event-name"> + <ref name="string"/> + </attribute> +</define> +<define name="script-event-listener-attlist" combine="interleave"> + <attribute name="script:language"> + <ref name="string"/> + </attribute> +</define> +<define name="script-event-listener-attlist" combine="interleave"> + <choice> + <attribute name="script:macro-name"> + <ref name="string"/> + </attribute> + <group> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> + <optional> + <attribute name="xlink:type" a:defaultValue="simple"> + <value>simple</value> + </attribute> + </optional> + <optional> + <attribute name="xlink:actuate" a:defaultValue="onRequest"> + <value>onRequest</value> + </attribute> + </optional> + </group> + </choice> +</define> +<define name="math-math"> + <element name="math:math"> + <ref name="mathMarkup"/> + </element> +</define> + +<!-- To avoid inclusion of the complete MathML schema, anything --> +<!-- is allowed within a math:math top-level element --> +<define name="mathMarkup"> + <zeroOrMore> + <choice> + <attribute> + <anyName/> + </attribute> + <text/> + <element> + <anyName/> + <ref name="mathMarkup"/> + </element> + </choice> + </zeroOrMore> +</define> +<define name="text-dde-connection-decl"> + <element name="text:dde-connection-decl"> + <ref name="text-dde-connection-decl-attlist"/> + <ref name="common-dde-connection-decl-attlist"/> + </element> +</define> +<define name="text-dde-connection-decl-attlist" combine="interleave"> + <attribute name="office:name"> + <ref name="string"/> + </attribute> +</define> +<define name="common-dde-connection-decl-attlist" combine="interleave"> + <attribute name="office:dde-application"> + <ref name="string"/> + </attribute> +</define> +<define name="common-dde-connection-decl-attlist" combine="interleave"> + <attribute name="office:dde-topic"> + <ref name="string"/> + </attribute> +</define> +<define name="common-dde-connection-decl-attlist" combine="interleave"> + <attribute name="office:dde-item"> + <ref name="string"/> + </attribute> +</define> +<define name="common-dde-connection-decl-attlist" combine="interleave"> + <optional> + <attribute name="office:automatic-update" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-dde-link"> + <element name="table:dde-link"> + <ref name="office-dde-source"/> + <ref name="table-table"/> + </element> +</define> +<define name="office-dde-source"> + <element name="office:dde-source"> + <ref name="office-dde-source-attlist"/> + <ref name="common-dde-connection-decl-attlist"/> + </element> +</define> +<define name="office-dde-source-attlist" combine="interleave"> + <optional> + <attribute name="office:name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="office-dde-source-attlist" combine="interleave"> + <optional> + <attribute name="office:conversion-mode" + a:defaultValue="into-default-style-data-style"> + <choice> + <value>into-default-style-data-style</value> + <value>into-english-number</value> + <value>keep-text</value> + </choice> + </attribute> + </optional> +</define> +<define name="animation-element" combine="choice"> + <element name="anim:animate"> + <ref name="common-anim-target-attlist"/> + <ref name="common-anim-named-target-attlist"/> + <ref name="common-anim-values-attlist"/> + <ref name="common-anim-spline-mode-attlist"/> + <ref name="common-spline-anim-value-attlist"/> + <ref name="common-repeat-timing-attlist"/> + <ref name="common-fill-timing-attlist"/> + <ref name="common-anim-add-accum-attlist"/> + </element> +</define> +<define name="animation-element" combine="choice"> + <element name="anim:set"> + <ref name="common-anim-target-attlist"/> + <ref name="common-anim-named-target-attlist"/> + <ref name="common-anim-set-values-attlist"/> + <ref name="common-fill-timing-attlist"/> + <ref name="common-anim-add-accum-attlist"/> + </element> +</define> +<define name="animation-element" combine="choice"> + <element name="anim:animateMotion"> + <ref name="anim-animate-motion-attlist"/> + <ref name="common-anim-target-attlist"/> + <ref name="common-anim-named-target-attlist"/> + <ref name="common-anim-add-accum-attlist"/> + <ref name="common-anim-values-attlist"/> + <ref name="common-fill-timing-attlist"/> + <ref name="common-spline-anim-value-attlist"/> + </element> +</define> +<define name="anim-animate-motion-attlist" combine="interleave"> + <optional> + <attribute name="svg:path"> + <ref name="pathData"/> + </attribute> + </optional> +</define> +<define name="anim-animate-motion-attlist" combine="interleave"> + <optional> + <attribute name="svg:origin"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="anim-animate-motion-attlist" combine="interleave"> + <optional> + <attribute name="smil:calcMode" a:defaultValue="paced"> + <choice> + <value>discrete</value> + <value>linear</value> + <value>paced</value> + <value>spline</value> + </choice> + </attribute> + </optional> +</define> +<define name="animation-element" combine="choice"> + <element name="anim:animateColor"> + <ref name="common-anim-target-attlist"/> + <ref name="common-anim-named-target-attlist"/> + <ref name="common-anim-add-accum-attlist"/> + <ref name="common-anim-values-attlist"/> + <ref name="common-anim-spline-mode-attlist"/> + <ref name="common-spline-anim-value-attlist"/> + <ref name="anim-animate-color-attlist"/> + <ref name="common-fill-timing-attlist"/> + </element> +</define> +<define name="anim-animate-color-attlist" combine="interleave"> + <optional> + <attribute name="anim:color-interpolation" a:defaultValue="rgb"> + <choice> + <value>rgb</value> + <value>hsl</value> + </choice> + </attribute> + </optional> +</define> +<define name="anim-animate-color-attlist" combine="interleave"> + <optional> + <attribute name="anim:color-interpolation-direction" + a:defaultValue="clockwise"> + <choice> + <value>clockwise</value> + <value>counter-clockwise</value> + </choice> + </attribute> + </optional> +</define> +<define name="animation-element" combine="choice"> + <element name="anim:animateTransform"> + <ref name="common-anim-target-attlist"/> + <ref name="common-anim-named-target-attlist"/> + <ref name="common-anim-add-accum-attlist"/> + <ref name="common-anim-values-attlist"/> + <ref name="anim-animate-transform-attlist"/> + <ref name="common-fill-timing-attlist"/> + </element> +</define> +<define name="anim-animate-transform-attlist" combine="interleave"> + <attribute name="svg:type"> + <choice> + <value>translate</value> + <value>scale</value> + <value>rotate</value> + <value>skewX</value> + <value>skewY</value> + </choice> + </attribute> +</define> +<define name="animation-element" combine="choice"> + <element name="anim:transitionFilter"> + <ref name="common-anim-target-attlist"/> + <ref name="common-anim-add-accum-attlist"/> + <ref name="common-anim-values-attlist"/> + <ref name="common-anim-spline-mode-attlist "/> + <ref name="anim-transition-filter-attlist"/> + <ref name="common-fill-timing-attlist"/> + </element> +</define> +<define name="anim-transition-filter-attlist" combine="interleave"> + <attribute name="smil:type"> + <ref name="string"/> + </attribute> +</define> +<define name="anim-transition-filter-attlist" combine="interleave"> + <optional> + <attribute name="smil:subtype"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="anim-transition-filter-attlist" combine="interleave"> + <optional> + <attribute name="smil:direction" a:defaultValue="forward"> + <choice> + <value>forward</value> + <value>reverse</value> + </choice> + </attribute> + </optional> +</define> +<define name="anim-transition-filter-attlist" combine="interleave"> + <optional> + <attribute name="smil:fadeColor"> + <choice> + <value>forward</value> + <value>reverse</value> + </choice> + </attribute> + </optional> +</define> +<define name="anim-transition-filter-attlist" combine="interleave"> + <optional> + <attribute name="smil:mode" a:defaultValue="in"> + <choice> + <value>in</value> + <value>out</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-anim-attlist" combine="interleave"> + <optional> + <attribute name="anim:id"> + <ref name="ID"/> + </attribute> + </optional> +</define> +<define name="common-anim-target-attlist" combine="interleave"> + <optional> + <attribute name="smil:targetElement"> + <ref name="IDREF"/> + </attribute> + </optional> +</define> +<define name="common-anim-named-target-attlist" combine="interleave"> + <attribute name="smil:attributeName"> + <ref name="string"/> + </attribute> +</define> +<define name="common-anim-target-attlist" combine="interleave"> + <optional> + <attribute name="anim:sub-item"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-anim-values-attlist" combine="interleave"> + <optional> + <attribute name="smil:values"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-anim-spline-mode-attlist" combine="interleave"> + <optional> + <attribute name="smil:calcMode" a:defaultValue="discrete"> + <choice> + <value>discrete</value> + <value>linear</value> + <value>paced</value> + <value>spline</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-spline-anim-value-attlist" combine="interleave"> + <optional> + <attribute name="smil:keyTimes"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-spline-anim-value-attlist" combine="interleave"> + <optional> + <attribute name="smil:keySplines"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-anim-add-accum-attlist" combine="interleave"> + <optional> + <attribute name="smil:accumulate"> + <choice> + <value>none</value> + <value>sum</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-anim-add-accum-attlist" combine="interleave"> + <optional> + <attribute name="smil:additive"> + <choice> + <value>replace</value> + <value>sum</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-anim-values-attlist" combine="interleave"> + <optional> + <attribute name="anim:formula"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-anim-set-values-attlist" combine="interleave"> + <optional> + <attribute name="smil:to"> + <ref name="string"/> + </attribute> + </optional> +</define> + +<define name="common-anim-values-attlist" combine="interleave"> + <ref name="common-anim-set-values-attlist"/> + <optional> + <attribute name="smil:from"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="smil:by"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-begin-end-timing-attlist" combine="interleave"> + <optional> + <attribute name="smil:begin"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-begin-end-timing-attlist" combine="interleave"> + <optional> + <attribute name="smil:end"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-dur-timing-attlist" combine="interleave"> + <optional> + <attribute name="smil:dur"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-endsync-timing-attlist" combine="interleave"> + <optional> + <attribute name="smil:endsync"> + <choice> + <value>first</value> + <value>last</value> + <value>all</value> + <value>media</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-repeat-timing-attlist" combine="interleave"> + <optional> + <attribute name="smil:repeatDur"> + <ref name="string"/> + </attribute> + <attribute name="smil:repeatCount"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="common-fill-timing-attlist" combine="interleave"> + <optional> + <attribute name="smil:fill"> + <choice> + <value>remove</value> + <value>freeze</value> + <value>hold</value> + <value>auto</value> + <value>default</value> + <value>transition</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-fill-default-attlist" combine="interleave"> + <optional> + <attribute name="smil:fillDefault"> + <choice> + <value>remove</value> + <value>freeze</value> + <value>hold</value> + <value>transition</value> + <value>auto</value> + <value>inherit</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-restart-timing-attlist" combine="interleave"> + <optional> + <attribute name="smil:restart" a:defaultValue="default"> + <choice> + <value>never</value> + <value>always</value> + <value>whenNotActive</value> + <value>default</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-restart-default-attlist" combine="interleave"> + <optional> + <attribute name="smil:restartDefault" a:defaultValue="inherit"> + <choice> + <value>never</value> + <value>always</value> + <value>whenNotActive</value> + <value>inherit</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-time-manip-attlist" combine="interleave"> + <optional> + <attribute name="smil:accelerate" a:defaultValue="0.0"> + <ref name="double"/> + </attribute> + </optional> +</define> +<define name="common-time-manip-attlist" combine="interleave"> + <optional> + <attribute name="smil:decelerate" a:defaultValue="0.0"> + <ref name="double"/> + </attribute> + </optional> +</define> +<define name="common-time-manip-attlist" combine="interleave"> + <optional> + <attribute name="smil:autoReverse" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="animation-element" combine="choice"> + <element name="anim:par"> + <ref name="common-anim-attlist"/> + <ref name="common-timing-attlist"/> + <ref name="common-endsync-timing-attlist"/> + <zeroOrMore> + <ref name="animation-element"/> + </zeroOrMore> + </element> +</define> + +<define name="common-basic-timing-attlist" combine="interleave"> + <ref name="common-begin-end-timing-attlist"/> + <ref name="common-dur-timing-attlist"/> + <ref name="common-repeat-timing-attlist"/> +</define> + +<define name="common-timing-attlist" combine="interleave"> + <ref name="common-basic-timing-attlist"/> + <ref name="common-restart-timing-attlist"/> + <ref name="common-restart-default-attlist"/> + <ref name="common-fill-timing-attlist"/> + <ref name="common-fill-default-attlist"/> + <ref name="common-time-manip-attlist"/> +</define> +<define name="animation-element" combine="choice"> + <element name="anim:seq"> + <ref name="common-anim-attlist"/> + <ref name="common-endsync-timing-attlist"/> + <ref name="common-timing-attlist"/> + </element> +</define> +<define name="animation-element" combine="choice"> + <element name="anim:iterate"> + <ref name="common-anim-attlist"/> + <ref name="anin-iterate-attlist"/> + <ref name="common-timing-attlist"/> + <ref name="common-endsync-timing-attlist"/> + <zeroOrMore> + <ref name="animation-element"/> + </zeroOrMore> + </element> +</define> +<define name="anin-iterate-attlist" combine="interleave"> + <optional> + <attribute name="smil:targetElement"> + <ref name="IDREF"/> + </attribute> + </optional> +</define> +<define name="anin-iterate-attlist" combine="interleave"> + <optional> + <attribute name="anim:iterate-type"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="anin-iterate-attlist" combine="interleave"> + <optional> + <attribute name="anim:iterate-interval"> + <ref name="duration"/> + </attribute> + </optional> +</define> +<define name="animation-element" combine="choice"> + <element name="anim:audio"> + <ref name="common-anim-attlist"/> + <ref name="anim-audio-attlist"/> + <ref name="common-basic-timing-attlist"/> + </element> +</define> +<define name="anim-audio-attlist" combine="interleave"> + <optional> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> + </optional> +</define> +<define name="anim-audio-attlist" combine="interleave"> + <optional> + <attribute name="anim:audio-level"> + <ref name="double"/> + </attribute> + </optional> +</define> +<define name="animation-element" combine="choice"> + <element name="anim:command"> + <ref name="common-anim-attlist"/> + <ref name="anim-command-attlist"/> + <ref name="common-begin-end-timing-attlist"/> + <ref name="common-anim-target-attlist"/> + <zeroOrMore> + <element name="anim:param"> + <attribute name="anim:name"/> + <attribute name="anim:value"/> + </element> + </zeroOrMore> + </element> +</define> +<define name="anim-command-attlist" combine="interleave"> + <attribute name="anim:command"> + <ref name="string"/> + </attribute> +</define> +<define name="style-style"> + <element name="style:style"> + <ref name="style-style-attlist"/> + <ref name="style-style-content"/> + <zeroOrMore> + <ref name="style-map"/> + </zeroOrMore> + </element> +</define> +<define name="style-style-attlist" combine="interleave"> + <attribute name="style:name"> + <ref name="styleName"/> + </attribute> +</define> +<define name="style-style-attlist" combine="interleave"> + <optional> + <attribute name="style:display-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="style-style-attlist" combine="interleave"> + <optional> + <attribute name="style:parent-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="style-style-attlist" combine="interleave"> + <optional> + <attribute name="style:next-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="style-style-attlist" combine="interleave"> + <optional> + <attribute name="style:list-style-name"> + <choice> + <ref name="styleName"/> + <empty/> + </choice> + </attribute> + </optional> +</define> +<define name="style-style-attlist" combine="interleave"> + <optional> + <attribute name="style:master-page-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="style-style-attlist" combine="interleave"> + <optional> + <attribute name="style:auto-update" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-style-attlist" combine="interleave"> + <optional> + <attribute name="style:data-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="style-style-attlist" combine="interleave"> + <optional> + <attribute name="style:class"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="style-style-attlist" combine="interleave"> + <optional> + <attribute name="style:default-outline-level"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="style-map"> + <element name="style:map"> + <ref name="style-map-attlist"/> + <empty/> + </element> +</define> +<define name="style-map-attlist" combine="interleave"> + <attribute name="style:condition"> + <ref name="string"/> + </attribute> +</define> +<define name="style-map-attlist" combine="interleave"> + <attribute name="style:apply-style-name"> + <ref name="styleNameRef"/> + </attribute> +</define> +<define name="style-map-attlist" combine="interleave"> + <optional> + <attribute name="style:base-cell-address"> + <ref name="cellAddress"/> + </attribute> + </optional> +</define> +<define name="style-default-style"> + <element name="style:default-style"> + <ref name="style-style-content"/> + </element> +</define> +<define name="style-page-layout"> + <element name="style:page-layout"> + <ref name="style-page-layout-attlist"/> + <optional> + <ref name="style-page-layout-properties"/> + </optional> + <optional> + <ref name="style-header-style"/> + </optional> + <optional> + <ref name="style-footer-style"/> + </optional> + </element> +</define> +<define name="style-page-layout-attlist" combine="interleave"> + <attribute name="style:name"> + <ref name="styleName"/> + </attribute> +</define> +<define name="style-page-layout-attlist" combine="interleave"> + <optional> + <attribute name="style:page-usage" a:defaultValue="all"> + <choice> + <value>all</value> + <value>left</value> + <value>right</value> + <value>mirrored</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-header-style"> + <element name="style:header-style"> + <optional> + <ref name="style-header-footer-properties"/> + </optional> + </element> +</define> +<define name="style-footer-style"> + <element name="style:footer-style"> + <optional> + <ref name="style-header-footer-properties"/> + </optional> + </element> +</define> +<define name="style-master-page"> + <element name="style:master-page"> + <ref name="style-master-page-attlist"/> + <optional> + <ref name="style-header"/> + <optional> + <ref name="style-header-left"/> + </optional> + </optional> + <optional> + <ref name="style-footer"/> + <optional> + <ref name="style-footer-left"/> + </optional> + </optional> + <optional> + <ref name="office-forms"/> + </optional> + <zeroOrMore> + <ref name="style-style"/> + </zeroOrMore> + <zeroOrMore> + <ref name="shape"/> + </zeroOrMore> + <optional> + <ref name="presentation-notes"/> + </optional> + </element> +</define> +<define name="style-master-page-attlist" combine="interleave"> + <attribute name="style:name"> + <ref name="styleName"/> + </attribute> +</define> +<define name="style-master-page-attlist" combine="interleave"> + <optional> + <attribute name="style:display-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="style-master-page-attlist" combine="interleave"> + <attribute name="style:page-layout-name"> + <ref name="styleNameRef"/> + </attribute> +</define> +<define name="style-master-page-attlist" combine="interleave"> + <optional> + <attribute name="draw:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="style-master-page-attlist" combine="interleave"> + <optional> + <attribute name="style:next-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="style-header"> + <element name="style:header"> + <ref name="common-style-header-footer-attlist"/> + <ref name="header-footer-content"/> + </element> +</define> +<define name="style-footer"> + <element name="style:footer"> + <ref name="common-style-header-footer-attlist"/> + <ref name="header-footer-content"/> + </element> +</define> +<define name="style-header-left"> + <element name="style:header-left"> + <ref name="common-style-header-footer-attlist"/> + <ref name="header-footer-content"/> + </element> +</define> +<define name="style-footer-left"> + <element name="style:footer-left"> + <ref name="common-style-header-footer-attlist"/> + <ref name="header-footer-content"/> + </element> +</define> +<define name="header-footer-content"> + <choice> + <group> + <ref name="text-decls"/> + <zeroOrMore> + <choice> + <ref name="text-h"/> + <ref name="text-p"/> + <ref name="text-list"/> + <ref name="table-table"/> + <ref name="text-section"/> + <ref name="text-table-of-content"/> + <ref name="text-illustration-index"/> + <ref name="text-table-index"/> + <ref name="text-object-index"/> + <ref name="text-user-index"/> + <ref name="text-alphabetical-index"/> + <ref name="text-bibliography"/> + <ref name="text-index-title"/> + <ref name="change-marks"/> + </choice> + </zeroOrMore> + </group> + <group> + <optional> + <ref name="style-region-left"/> + </optional> + <optional> + <ref name="style-region-center"/> + </optional> + <optional> + <ref name="style-region-right"/> + </optional> + </group> + </choice> +</define> +<define name="common-style-header-footer-attlist" combine="interleave"> + <optional> + <attribute name="style:display" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-region-left"> + <element name="style:region-left"> + <ref name="region-content"/> + </element> +</define> +<define name="style-region-center"> + <element name="style:region-center"> + <ref name="region-content"/> + </element> +</define> +<define name="style-region-right"> + <element name="style:region-right"> + <ref name="region-content"/> + </element> +</define> + +<define name="region-content"> + <zeroOrMore> + <ref name="text-p"/> + </zeroOrMore> +</define> +<define name="presentation-notes"> + <element name="presentation:notes"> + <ref name="common-presentation-header-footer-attlist"/> + <ref name="presentation-notes-attlist"/> + <zeroOrMore> + <ref name="shape"/> + </zeroOrMore> + </element> +</define> +<define name="presentation-notes-attlist" combine="interleave"> + <optional> + <attribute name="style:page-layout-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="presentation-notes-attlist" combine="interleave"> + <optional> + <attribute name="draw:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="table-table-template"> + <element name="table:table-template"> + <ref name="table-table-template-attlist"/> + <optional> + <ref name="table-first-row"/> + </optional> + <optional> + <ref name="table-last-row"/> + </optional> + <optional> + <ref name="table-first-column"/> + </optional> + <optional> + <ref name="table-last-column"/> + </optional> + <choice> + <ref name="table-body"/> + <group> + <ref name="table-even-rows"/> + <ref name="table-odd-rows"/> + </group> + <group> + <ref name="table-even-columns"/> + <ref name="table-odd-columns"/> + </group> + </choice> + </element> +</define> +<define name="table-table-template-attlist" combine="interleave"> + <attribute name="text:name"> + <ref name="string"/> + </attribute> +</define> +<define name="table-table-template-attlist" combine="interleave"> + <attribute name="text:first-row-start-column"> + <ref name="rowOrCol"/> + </attribute> +</define> + +<define name="table-table-template-attlist" combine="interleave"> + <attribute name="text:first-row-end-column"> + <ref name="rowOrCol"/> + </attribute> +</define> + +<define name="table-table-template-attlist" combine="interleave"> + <attribute name="text:last-row-start-column"> + <ref name="rowOrCol"/> + </attribute> +</define> + +<define name="table-table-template-attlist" combine="interleave"> + <attribute name="text:last-row-end-column"> + <ref name="rowOrCol"/> + </attribute> +</define> + +<define name="rowOrCol"> + <choice> + <value>row</value> + <value>column</value> + </choice> +</define> +<define name="table-first-row"> + <element name="table:first-row"> + <ref name="common-table-template-attlist"/> + <empty/> + </element> +</define> + +<define name="table-last-row"> + <element name="table:last-row"> + <ref name="common-table-template-attlist"/> + <empty/> + </element> +</define> + +<define name="table-first-column"> + <element name="table:first-column"> + <ref name="common-table-template-attlist"/> + <empty/> + </element> +</define> + +<define name="table-last-column"> + <element name="table:last-column"> + <ref name="common-table-template-attlist"/> + <empty/> + </element> +</define> + +<define name="table-body"> + <element name="table:body"> + <ref name="common-table-template-attlist"/> + <empty/> + </element> +</define> + +<define name="table-even-rows"> + <element name="table:even-rows"> + <ref name="common-table-template-attlist"/> + <empty/> + </element> +</define> + +<define name="table-odd-rows"> + <element name="table:odd-rows"> + <ref name="common-table-template-attlist"/> + <empty/> + </element> +</define> + +<define name="table-even-columns"> + <element name="table:even-columns"> + <ref name="common-table-template-attlist"/> + <empty/> + </element> +</define> + +<define name="table-odd-columns"> + <element name="table:odd-columns"> + <ref name="common-table-template-attlist"/> + <empty/> + </element> +</define> + +<define name="common-table-template-attlist" combine="interleave"> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> +</define> +<define name="style-font-face"> + <element name="style:font-face"> + <ref name="style-font-face-attlist"/> + <optional> + <ref name="svg-font-face-src"/> + </optional> + <optional> + <ref name="svg-definition-src"/> + </optional> + </element> +</define> +<define name="style-font-face-attlist" combine="interleave"> + <optional> + <attribute name="svg:font-family"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="svg:font-style"> + <ref name="fontStyle"/> + </attribute> + </optional> + <optional> + <attribute name="svg:font-variant"> + <ref name="fontVariant"/> + </attribute> + </optional> + <optional> + <attribute name="svg:font-weight"> + <ref name="fontWeight"/> + </attribute> + </optional> + <optional> + <attribute name="svg:font-stretch"> + <choice> + <value>normal</value> + <value>ultra-condensed</value> + <value>extra-condensed</value> + <value>condensed</value> + <value>semi-condensed</value> + <value>semi-expanded</value> + <value>expanded</value> + <value>extra-expanded</value> + <value>ultra-expanded</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="svg:font-size"> + <ref name="positiveLength"/> + </attribute> + </optional> + <optional> + <attribute name="svg:unicode-range"/> + </optional> + <optional> + <attribute name="svg:units-per-em"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:panose-1"/> + </optional> + <optional> + <attribute name="svg:stemv"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:stemh"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:slope"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:cap-height"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:x-height"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:accent-height"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:ascent"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:descent"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:widths"/> + </optional> + <optional> + <attribute name="svg:bbox"/> + </optional> + <optional> + <attribute name="svg:ideographic"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:alphabetic"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:mathematical"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:hanging"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:v-ideographic"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:v-alphabetic"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:v-mathematical"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:v-hanging"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:underline-position"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:underline-thickness"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:strikethrough-position"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:strikethrough-thickness"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:overline-position"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:overline-thickness"> + <ref name="integer"/> + </attribute> + </optional> +</define> + +<define name="svg-font-face-src"> + <element name="svg:font-face-src"> + <oneOrMore> + <choice> + <ref name="svg-font-face-uri"/> + <ref name="svg-font-face-name"/> + </choice> + </oneOrMore> + </element> +</define> + +<define name="svg-font-face-uri"> + <element name="svg:font-face-uri"> + <ref name="common-svg-font-face-xlink-attlist"/> + <zeroOrMore> + <ref name="svg-font-face-format"/> + </zeroOrMore> + </element> +</define> + +<define name="svg-font-face-format"> + <element name="svg:font-face-format"> + <optional> + <attribute name="svg:string"/> + </optional> + <empty/> + </element> +</define> +<define name="svg-font-face-name"> + <element name="svg:font-face-name"> + <optional> + <attribute name="name"/> + </optional> + <empty/> + </element> +</define> + +<define name="svg-definition-src"> + <element name="svg:definition-src"> + <ref name="common-svg-font-face-xlink-attlist"/> + <empty/> + </element> +</define> + +<define name="common-svg-font-face-xlink-attlist" combine="interleave"> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> + <optional> + <attribute name="xlink:type" a:defaultValue="simple"> + <value>simple</value> + </attribute> + </optional> + <optional> + <attribute name="xlink:actuate" a:defaultValue="onRequest"> + <value>onRequest</value> + </attribute> + </optional> +</define> +<define name="style-font-face-attlist" combine="interleave"> + <attribute name="style:name"> + <ref name="string"/> + </attribute> +</define> +<define name="style-font-face-attlist" combine="interleave"> + <optional> + <attribute name="style:font-adornments"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="style-font-face-attlist" combine="interleave"> + <optional> + <attribute name="style:font-family-generic"> + <ref name="fontFamilyGeneric"/> + </attribute> + </optional> +</define> +<define name="style-font-face-attlist" combine="interleave"> + <optional> + <attribute name="style:font-pitch"> + <ref name="fontPitch"/> + </attribute> + </optional> +</define> + +<define name="style-font-face-attlist" combine="interleave"> + <optional> + <attribute name="style:font-charset"> + <ref name="textEncoding"/> + </attribute> + </optional> +</define> +<define name="number-number-style"> + <element name="number:number-style"> + <ref name="common-data-style-attlist"/> + <optional> + <ref name="style-text-properties"/> + </optional> + <optional> + <ref name="number-text"/> + </optional> + <optional> + <ref name="any-number"/> + <optional> + <ref name="number-text"/> + </optional> + </optional> + <zeroOrMore> + <ref name="style-map"/> + </zeroOrMore> + </element> +</define> + +<define name="any-number"> + <choice> + <ref name="number-number"/> + <ref name="number-scientific-number"/> + <ref name="number-fraction"/> + </choice> +</define> +<define name="number-number"> + <element name="number:number"> + <ref name="number-number-attlist"/> + <ref name="common-decimal-places-attlist"/> + <ref name="common-number-attlist"/> + <zeroOrMore> + <ref name="number-embedded-text"/> + </zeroOrMore> + </element> +</define> +<define name="number-number-attlist" combine="interleave"> + <optional> + <attribute name="number:decimal-replacement"/> + </optional> +</define> +<define name="number-number-attlist" combine="interleave"> + <optional> + <attribute name="number:display-factor" a:defaultValue="1"> + <ref name="double"/> + </attribute> + </optional> +</define> +<define name="number-embedded-text"> + <element name="number:embedded-text"> + <ref name="number-embedded-text-attlist"/> + <text/> + </element> +</define> +<define name="number-embedded-text-attlist" combine="interleave"> + <attribute name="number:position"> + <ref name="integer"/> + </attribute> +</define> +<define name="number-scientific-number"> + <element name="number:scientific-number"> + <ref name="number-scientific-number-attlist"/> + <ref name="common-decimal-places-attlist"/> + <ref name="common-number-attlist"/> + <empty/> + </element> +</define> +<define name="number-scientific-number-attlist" combine="interleave"> + <optional> + <attribute name="number:min-exponent-digits"> + <ref name="integer"/> + </attribute> + </optional> +</define> +<define name="number-fraction"> + <element name="number:fraction"> + <ref name="number-fraction-attlist"/> + <ref name="common-number-attlist"/> + <empty/> + </element> +</define> +<define name="number-fraction-attlist" combine="interleave"> + <optional> + <attribute name="number:min-numerator-digits"> + <ref name="integer"/> + </attribute> + </optional> +</define> +<define name="number-fraction-attlist" combine="interleave"> + <optional> + <attribute name="number:min-denominator-digits"> + <ref name="integer"/> + </attribute> + </optional> +</define> +<define name="number-fraction-attlist" combine="interleave"> + <optional> + <attribute name="number:denominator-value"> + <ref name="integer"/> + </attribute> + </optional> +</define> +<define name="number-currency-style"> + <element name="number:currency-style"> + <ref name="common-data-style-attlist"/> + <ref name="common-auto-reorder-attlist"/> + <optional> + <ref name="style-text-properties"/> + </optional> + <optional> + <ref name="number-text"/> + </optional> + <optional> + <choice> + <group> + <ref name="number-and-text"/> + <optional> + <ref name="currency-symbol-and-text"/> + </optional> + </group> + <group> + <ref name="currency-symbol-and-text"/> + <optional> + <ref name="number-and-text"/> + </optional> + </group> + </choice> + </optional> + <zeroOrMore> + <ref name="style-map"/> + </zeroOrMore> + </element> +</define> + +<define name="currency-symbol-and-text"> + <ref name="number-currency-symbol"/> + <optional> + <ref name="number-text"/> + </optional> +</define> +<define name="number-and-text"> + <ref name="number-number"/> + <optional> + <ref name="number-text"/> + </optional> +</define> +<define name="number-currency-symbol"> + <element name="number:currency-symbol"> + <ref name="number-currency-symbol-attlist"/> + <text/> + </element> +</define> +<define name="number-currency-symbol-attlist" combine="interleave"> + <optional> + <attribute name="number:language"> + <ref name="languageCode"/> + </attribute> + </optional> + <optional> + <attribute name="number:country"> + <ref name="countryCode"/> + </attribute> + </optional> +</define> +<define name="number-percentage-style"> + <element name="number:percentage-style"> + <ref name="common-data-style-attlist"/> + <optional> + <ref name="style-text-properties"/> + </optional> + <optional> + <ref name="number-text"/> + </optional> + <optional> + <ref name="number-and-text"/> + </optional> + <zeroOrMore> + <ref name="style-map"/> + </zeroOrMore> + </element> +</define> +<define name="number-date-style"> + <element name="number:date-style"> + <ref name="common-data-style-attlist"/> + <ref name="common-auto-reorder-attlist"/> + <ref name="common-format-source-attlist"/> + <optional> + <ref name="style-text-properties"/> + </optional> + <!-- This DTD does not reflect the fact that some elements must not --> + <!-- occur more than once. --> + <optional> + <ref name="number-text"/> + </optional> + <oneOrMore> + <ref name="any-date"/> + <optional> + <ref name="number-text"/> + </optional> + </oneOrMore> + <zeroOrMore> + <ref name="style-map"/> + </zeroOrMore> + </element> +</define> + +<define name="any-date"> + <choice> + <ref name="number-day"/> + <ref name="number-month"/> + <ref name="number-year"/> + <ref name="number-era"/> + <ref name="number-day-of-week"/> + <ref name="number-week-of-year"/> + <ref name="number-quarter"/> + <ref name="number-hours"/> + <ref name="number-am-pm"/> + <ref name="number-minutes"/> + <ref name="number-seconds"/> + </choice> +</define> +<define name="number-day"> + <element name="number:day"> + <ref name="number-day-attlist"/> + <ref name="common-calendar-attlist"/> + <empty/> + </element> +</define> +<define name="number-day-attlist" combine="interleave"> + <optional> + <attribute name="number:style" a:defaultValue="short"> + <choice> + <value>short</value> + <value>long</value> + </choice> + </attribute> + </optional> +</define> +<define name="number-month"> + <element name="number:month"> + <ref name="number-month-attlist"/> + <ref name="common-calendar-attlist"/> + <empty/> + </element> +</define> +<define name="number-month-attlist" combine="interleave"> + <optional> + <attribute name="number:textual" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="number-month-attlist" combine="interleave"> + <optional> + <attribute name="number:possessive-form" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="number-month-attlist" combine="interleave"> + <optional> + <attribute name="number:style" a:defaultValue="short"> + <choice> + <value>short</value> + <value>long</value> + </choice> + </attribute> + </optional> +</define> +<define name="number-year"> + <element name="number:year"> + <ref name="number-year-attlist"/> + <ref name="common-calendar-attlist"/> + <empty/> + </element> +</define> +<define name="number-year-attlist" combine="interleave"> + <optional> + <attribute name="number:style" a:defaultValue="short"> + <choice> + <value>short</value> + <value>long</value> + </choice> + </attribute> + </optional> +</define> +<define name="number-era"> + <element name="number:era"> + <ref name="number-era-attlist"/> + <ref name="common-calendar-attlist"/> + <empty/> + </element> +</define> +<define name="number-era-attlist" combine="interleave"> + <optional> + <attribute name="number:style" a:defaultValue="short"> + <choice> + <value>short</value> + <value>long</value> + </choice> + </attribute> + </optional> +</define> +<define name="number-day-of-week"> + <element name="number:day-of-week"> + <ref name="number-day-of-week-attlist"/> + <ref name="common-calendar-attlist"/> + <empty/> + </element> +</define> +<define name="number-day-of-week-attlist" combine="interleave"> + <optional> + <attribute name="number:style" a:defaultValue="short"> + <choice> + <value>short</value> + <value>long</value> + </choice> + </attribute> + </optional> +</define> +<define name="number-week-of-year"> + <element name="number:week-of-year"> + <ref name="common-calendar-attlist"/> + <empty/> + </element> +</define> +<define name="number-quarter"> + <element name="number:quarter"> + <ref name="number-quarter-attlist"/> + <ref name="common-calendar-attlist"/> + <empty/> + </element> +</define> +<define name="number-quarter-attlist" combine="interleave"> + <optional> + <attribute name="number:style" a:defaultValue="short"> + <choice> + <value>short</value> + <value>long</value> + </choice> + </attribute> + </optional> +</define> +<define name="number-time-style"> + <element name="number:time-style"> + <ref name="number-time-style-attlist"/> + <ref name="common-data-style-attlist"/> + <ref name="common-format-source-attlist"/> + <optional> + <ref name="style-text-properties"/> + </optional> + <!-- This DTD does not reflect the fact that some elements must not --> + <!-- occur more than once. --> + <optional> + <ref name="number-text"/> + </optional> + <oneOrMore> + <ref name="any-time"/> + <optional> + <ref name="number-text"/> + </optional> + </oneOrMore> + <zeroOrMore> + <ref name="style-map"/> + </zeroOrMore> + </element> +</define> + +<define name="any-time"> + <choice> + <ref name="number-hours"/> + <ref name="number-am-pm"/> + <ref name="number-minutes"/> + <ref name="number-seconds"/> + </choice> +</define> +<define name="number-time-style-attlist" combine="interleave"> + <optional> + <attribute name="number:truncate-on-overflow" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="number-hours"> + <element name="number:hours"> + <ref name="number-hours-attlist"/> + <empty/> + </element> +</define> +<define name="number-hours-attlist" combine="interleave"> + <optional> + <attribute name="number:style" a:defaultValue="short"> + <choice> + <value>short</value> + <value>long</value> + </choice> + </attribute> + </optional> +</define> +<define name="number-minutes"> + <element name="number:minutes"> + <ref name="number-minutes-attlist"/> + <empty/> + </element> +</define> +<define name="number-minutes-attlist" combine="interleave"> + <optional> + <attribute name="number:style" a:defaultValue="short"> + <choice> + <value>short</value> + <value>long</value> + </choice> + </attribute> + </optional> +</define> +<define name="number-seconds"> + <element name="number:seconds"> + <ref name="number-seconds-attlist"/> + <empty/> + </element> +</define> +<define name="number-seconds-attlist" combine="interleave"> + <optional> + <attribute name="number:style" a:defaultValue="short"> + <choice> + <value>short</value> + <value>long</value> + </choice> + </attribute> + </optional> +</define> +<define name="number-seconds-attlist" combine="interleave"> + <optional> + <attribute name="number:decimal-places" a:defaultValue="0"> + <ref name="integer"/> + </attribute> + </optional> +</define> +<define name="number-am-pm"> + <element name="number:am-pm"> + <empty/> + </element> +</define> +<define name="number-boolean-style"> + <element name="number:boolean-style"> + <ref name="common-data-style-attlist"/> + <optional> + <ref name="style-text-properties"/> + </optional> + <optional> + <ref name="number-text"/> + </optional> + <optional> + <ref name="number-boolean"/> + <optional> + <ref name="number-text"/> + </optional> + </optional> + <zeroOrMore> + <ref name="style-map"/> + </zeroOrMore> + </element> +</define> +<define name="number-boolean"> + <element name="number:boolean"> + <empty/> + </element> +</define> +<define name="number-text-style"> + <element name="number:text-style"> + <ref name="common-data-style-attlist"/> + <optional> + <ref name="style-text-properties"/> + </optional> + <optional> + <ref name="number-text"/> + </optional> + <zeroOrMore> + <ref name="number-text-content"/> + <optional> + <ref name="number-text"/> + </optional> + </zeroOrMore> + <zeroOrMore> + <ref name="style-map"/> + </zeroOrMore> + </element> +</define> +<define name="number-text"> + <element name="number:text"> + <text/> + </element> +</define> +<define name="number-text-content"> + <element name="number:text-content"> + <empty/> + </element> +</define> +<define name="common-data-style-attlist" combine="interleave"> + <attribute name="style:name"> + <ref name="styleName"/> + </attribute> +</define> +<define name="style-data-style-attlist" combine="interleave"> + <optional> + <attribute name="style:display-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-data-style-attlist" combine="interleave"> + <optional> + <attribute name="number:language"> + <ref name="languageCode"/> + </attribute> + </optional> +</define> +<define name="common-data-style-attlist" combine="interleave"> + <optional> + <attribute name="number:country"> + <ref name="countryCode"/> + </attribute> + </optional> +</define> +<define name="common-data-style-attlist" combine="interleave"> + <optional> + <attribute name="number:title"/> + </optional> +</define> +<define name="common-data-style-attlist" combine="interleave"> + <optional> + <attribute name="style:volatile"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="common-auto-reorder-attlist" combine="interleave"> + <optional> + <attribute name="number:automatic-order" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="common-format-source-attlist"> + <optional> + <attribute name="number:format-source" a:defaultValue="fixed"> + <choice> + <value>fixed</value> + <value>language</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-data-style-attlist" combine="interleave"> + <optional> + <attribute name="number:transliteration-format" a:defaultValue="1"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-data-style-attlist" combine="interleave"> + <optional> + <attribute name="number:transliteration-language"> + <ref name="countryCode"/> + </attribute> + </optional> +</define> +<define name="common-data-style-attlist" combine="interleave"> + <optional> + <attribute name="number:transliteration-country"> + <ref name="countryCode"/> + </attribute> + </optional> +</define> +<define name="common-data-style-attlist" combine="interleave"> + <optional> + <attribute name="number:transliteration-style" a:defaultValue="short"> + <choice> + <value>short</value> + <value>medium</value> + <value>long</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-decimal-places-attlist"> + <optional> + <attribute name="number:decimal-places"> + <ref name="integer"/> + </attribute> + </optional> +</define> +<define name="common-number-attlist" combine="interleave"> + <optional> + <attribute name="number:min-integer-digits"> + <ref name="integer"/> + </attribute> + </optional> +</define> +<define name="common-number-attlist" combine="interleave"> + <optional> + <attribute name="number:grouping" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="common-calendar-attlist" combine="interleave"> + <optional> + <attribute name="number:calendar"> + <choice> + <value>gregorian</value> + <value>gengou</value> + <value>ROC</value> + <value>hanja_yoil</value> + <value>hanja</value> + <value>hijri</value> + <value>jewish</value> + <value>buddhist</value> + <ref name="string"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-style-content" combine="choice"> + <group> + <attribute name="style:family"> + <value>text</value> + </attribute> + <optional> + <ref name="style-text-properties"/> + </optional> + </group> +</define> +<define name="style-style-content" combine="choice"> + <group> + <attribute name="style:family"> + <value>paragraph</value> + </attribute> + <optional> + <ref name="style-paragraph-properties"/> + </optional> + <optional> + <ref name="style-text-properties"/> + </optional> + </group> +</define> +<define name="style-style-content" combine="choice"> + <group> + <attribute name="style:family"> + <value>section</value> + </attribute> + <optional> + <ref name="style-section-properties"/> + </optional> + </group> +</define> +<define name="style-style-content" combine="choice"> + <group> + <attribute name="style:family"> + <value>ruby</value> + </attribute> + <optional> + <ref name="style-ruby-properties"/> + </optional> + </group> +</define> +<define name="text-linenumbering-configuration"> + <element name="text:linenumbering-configuration"> + <ref name="text-linenumbering-configuration-attlist"/> + <optional> + <ref name="text-linenumbering-separator"/> + </optional> + </element> +</define> +<define name="text-linenumbering-configuration-attlist" combine="interleave"> + <optional> + <attribute name="text:number-lines" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-linenumbering-configuration-attlist" combine="interleave"> + <optional> + <ref name="common-num-format-attlist"/> + </optional> +</define> +<define name="text-linenumbering-configuration-attlist" combine="interleave"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="text-linenumbering-configuration-attlist" combine="interleave"> + <optional> + <attribute name="text:increment"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="text-linenumbering-configuration-attlist" combine="interleave"> + <optional> + <attribute name="text:number-position" a:defaultValue="left"> + <choice> + <value>left</value> + <value>rigth</value> + <value>inner</value> + <value>outer</value> + </choice> + </attribute> + </optional> +</define> +<define name="text-linenumbering-configuration-attlist" combine="interleave"> + <optional> + <attribute name="text:offset"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> +</define> +<define name="text-linenumbering-configuration-attlist" combine="interleave"> + <optional> + <attribute name="text:count-empty-lines" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-linenumbering-configuration-attlist" combine="interleave"> + <optional> + <attribute name="text:count-in-text-boxes" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-linenumbering-configuration-attlist" combine="interleave"> + <optional> + <attribute name="text:restart-on-page" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-linenumbering-separator"> + <element name="text:linenumbering-separator"> + <optional> + <attribute name="text:increment"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <text/> + </element> +</define> +<define name="text-notes-configuration"> + <element name="text:notes-configuration"> + <ref name="text-notes-configuration-content"/> + </element> +</define> +<define name="text-notes-configuration-content" combine="interleave"> + <ref name="text-note-class"/> +</define> +<define name="text-notes-configuration-content" combine="interleave"> + <optional> + <attribute name="text:citation-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="text-notes-configuration-content" combine="interleave"> + <optional> + <attribute name="text:citation-body-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="text-notes-configuration-content" combine="interleave"> + <optional> + <attribute name="text:default-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="text-notes-configuration-content" combine="interleave"> + <optional> + <attribute name="text:master-page-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="text-notes-configuration-content" combine="interleave"> + <optional> + <attribute name="text:start-value"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="text-notes-configuration-content" combine="interleave"> + <ref name="common-num-format-prefix-suffix-attlist"/> + <optional> + <ref name="common-num-format-attlist"/> + </optional> +</define> +<define name="text-notes-configuration-content" combine="interleave"> + <optional> + <attribute name="text:start-numbering-at"> + <choice> + <value>document</value> + <value>chapter</value> + <value>page</value> + </choice> + </attribute> + </optional> +</define> +<define name="text-notes-configuration-content" combine="interleave"> + <optional> + <attribute name="text:footnotes-position"> + <choice> + <value>text</value> + <value>page</value> + <value>section</value> + <value>document</value> + </choice> + </attribute> + </optional> +</define> +<define name="text-notes-configuration-content" combine="interleave"> + <optional> + <element name="text:note-continuation-notice-forward"> + <text/> + </element> + </optional> +</define> +<define name="text-notes-configuration-content" combine="interleave"> + <optional> + <element name="text:note-continuation-notice-backward"> + <text/> + </element> + </optional> +</define> +<define name="text-bibliography-configuration"> + <element name="text:bibliography-configuration"> + <ref name="text-bibliography-configuration-attlist"/> + <zeroOrMore> + <ref name="text-sort-key"/> + </zeroOrMore> + </element> +</define> +<define name="text-bibliography-configuration-attlist" combine="interleave"> + <optional> + <attribute name="text:prefix"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="text:suffix"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="text-bibliography-configuration-attlist" combine="interleave"> + <optional> + <attribute name="text:numbered-entries" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-bibliography-configuration-attlist" combine="interleave"> + <optional> + <attribute name="text:sort-by-position" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="fo:language"> + <ref name="languageCode"/> + </attribute> + </optional> + <optional> + <attribute name="fo:country"> + <ref name="countryCode"/> + </attribute> + </optional> + <optional> + <attribute name="text:sort-algorithm"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="text-sort-key"> + <element name="text:sort-key"> + <ref name="text-sort-key-attlist"/> + <empty/> + </element> +</define> + +<define name="text-sort-key-attlist" combine="interleave"> + <attribute name="text:key"> + <choice> + <value>address</value> + <value>annote</value> + <value>author</value> + <value>bibliography-type</value> + <value>booktitle</value> + <value>chapter</value> + <value>custom1</value> + <value>custom2</value> + <value>custom3</value> + <value>custom4</value> + <value>custom5</value> + <value>edition</value> + <value>editor</value> + <value>howpublished</value> + <value>identifier</value> + <value>institution</value> + <value>isbn</value> + <value>issn</value> + <value>journal</value> + <value>month</value> + <value>note</value> + <value>number</value> + <value>organizations</value> + <value>pages</value> + <value>publisher</value> + <value>report-type</value> + <value>school</value> + <value>series</value> + <value>title</value> + <value>url</value> + <value>volume</value> + <value>year</value> + </choice> + </attribute> + <optional> + <attribute name="text:sort-ascending" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-list-style"> + <element name="text:list-style"> + <ref name="text-list-style-attr"/> + <zeroOrMore> + <ref name="text-list-style-content"/> + </zeroOrMore> + </element> +</define> +<define name="text-list-style-attr" combine="interleave"> + <attribute name="style:name"> + <ref name="styleName"/> + </attribute> +</define> +<define name="text-list-style-attr" combine="interleave"> + <optional> + <attribute name="style:display-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="text-list-style-attr" combine="interleave"> + <optional> + <attribute name="text:consecutive-numbering" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-list-level-style-attr"> + <attribute name="text:level"> + <ref name="positiveInteger"/> + </attribute> +</define> +<define name="text-list-style-content" combine="choice"> + <element name="text:list-level-style-number"> + <ref name="text-list-level-style-attr"/> + <ref name="text-list-level-style-number-attr"/> + <optional> + <ref name="style-list-level-properties"/> + </optional> + <optional> + <ref name="style-text-properties"/> + </optional> + </element> +</define> +<define name="text-list-level-style-number-attr" combine="interleave"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="text-list-level-style-number-attr" combine="interleave"> + <ref name="common-num-format-attlist"/> + <ref name="common-num-format-prefix-suffix-attlist"/> +</define> +<define name="text-list-level-style-number-attr" combine="interleave"> + <optional> + <attribute name="text:display-levels" a:defaultValue="1"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="text-list-level-style-number-attr" combine="interleave"> + <optional> + <attribute name="text:start-value" a:defaultValue="1"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="text-list-style-content" combine="choice"> + <element name="text:list-level-style-bullet"> + <ref name="text-list-level-style-attr"/> + <ref name="text-list-level-style-bullet-attr"/> + <optional> + <ref name="style-list-level-properties"/> + </optional> + <optional> + <ref name="style-text-properties"/> + </optional> + </element> +</define> +<define name="text-list-level-style-bullet-attr" combine="interleave"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="text-list-level-style-bullet-attr" combine="interleave"> + <attribute name="text:bullet-char"> + <ref name="character"/> + </attribute> +</define> +<define name="text-list-level-style-bullet-attr" combine="interleave"> + <ref name="common-num-format-prefix-suffix-attlist"/> +</define> +<define name="text-list-level-style-bullet-attr" combine="interleave"> + <optional> + <attribute name="text:bullet-relative-size"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="text-list-style-content" combine="choice"> + <element name="text:list-level-style-image"> + <ref name="text-list-level-style-attr"/> + <ref name="text-list-level-style-image-attr"/> + <optional> + <ref name="style-list-level-properties"/> + </optional> + </element> +</define> +<define name="text-list-level-style-image-attr" combine="interleave"> + <choice> + <ref name="common-draw-data-attlist"/> + <ref name="office-binary-data"/> + </choice> +</define> +<define name="text-outline-style"> + <element name="text:outline-style"> + <oneOrMore> + <ref name="text-outline-level-style"/> + </oneOrMore> + </element> +</define> +<define name="text-outline-level-style"> + <element name="text:outline-level-style"> + <ref name="text-outline-level-style-attlist"/> + <optional> + <ref name="style-list-level-properties"/> + </optional> + <optional> + <ref name="style-text-properties"/> + </optional> + </element> +</define> +<define name="text-outline-level-style-attlist" combine="interleave"> + <attribute name="text:level"> + <ref name="positiveInteger"/> + </attribute> +</define> +<define name="text-outline-level-style-attlist" combine="interleave"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="text-outline-level-style-attlist" combine="interleave"> + <ref name="common-num-format-attlist"/> + <ref name="common-num-format-prefix-suffix-attlist"/> +</define> +<define name="text-outline-level-style-attlist" combine="interleave"> + <optional> + <attribute name="text:display-levels" a:defaultValue="1"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="text-outline-level-style-attlist" combine="interleave"> + <optional> + <attribute name="text:start-value" a:defaultValue="1"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="style-style-content" combine="choice"> + <group> + <attribute name="style:family"> + <value>table</value> + </attribute> + <optional> + <ref name="style-table-properties"/> + </optional> + </group> +</define> +<define name="style-style-content" combine="choice"> + <group> + <attribute name="style:family"> + <value>table-column</value> + </attribute> + <optional> + <ref name="style-table-column-properties"/> + </optional> + </group> +</define> +<define name="style-style-content" combine="choice"> + <group> + <attribute name="style:family"> + <value>table-row</value> + </attribute> + <optional> + <ref name="style-table-row-properties"/> + </optional> + </group> +</define> +<define name="style-style-content" combine="choice"> + <group> + <attribute name="style:family"> + <value>table-cell</value> + </attribute> + <optional> + <ref name="style-table-cell-properties"/> + </optional> + <optional> + <ref name="style-paragraph-properties"/> + </optional> + <optional> + <ref name="style-text-properties"/> + </optional> + </group> +</define> +<define name="style-style-content" combine="choice"> + <group> + <attribute name="style:family"> + <choice> + <value>graphic</value> + <value>presentation</value> + </choice> + </attribute> + <optional> + <ref name="style-graphic-properties"/> + </optional> + <optional> + <ref name="style-paragraph-properties"/> + </optional> + <optional> + <ref name="style-text-properties"/> + </optional> + </group> +</define> + +<define name="style-graphic-properties"> + <element name="style:graphic-properties"> + <ref name="style-graphic-properties-content"/> + </element> +</define> + +<define name="style-graphic-properties-content"> + <ref name="style-properties-content"/> +</define> + +<define name="style-graphic-properties-content-strict"> + <ref name="style-graphic-properties-attlist"/> + <ref name="style-graphic-fill-properties-attlist"/> + <ref name="style-graphic-properties-elements"/> +</define> + +<define name=" style-graphic-properties-elements"> + <empty/> +</define> +<define name="style-style-content" combine="choice"> + <group> + <attribute name="style:family"> + <value>drawing-page</value> + </attribute> + <optional> + <ref name="style-drawing-page-properties"/> + </optional> + </group> +</define> + +<define name="style-drawing-page-properties"> + <element name="style:drawing-page-properties"> + <ref name="style-drawing-page-properties-content"/> + </element> +</define> + +<define name="style-drawing-page-properties-content"> + <ref name="style-properties-content"/> +</define> + +<define name="style-drawing-page-properties-content-strict"> + <ref name="style-graphic-fill-properties-attlist"/> + <ref name="style-drawing-page-properties-attlist"/> + <ref name="style-drawing-page-properties-elements"/> +</define> +<define name="draw-gradient"> + <element name="draw:gradient"> + <ref name="common-draw-gradient-attlist"/> + <ref name="draw-gradient-attlist"/> + <empty/> + </element> +</define> +<define name="common-draw-gradient-attlist" combine="interleave"> + <optional> + <attribute name="draw:name"> + <ref name="styleName"/> + </attribute> + </optional> +</define> +<define name="common-draw-gradient-attlist" combine="interleave"> + <optional> + <attribute name="draw:display-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-draw-gradient-attlist" combine="interleave"> + <attribute name="draw:style"> + <ref name="gradient-style"/> + </attribute> +</define> +<define name="gradient-style"> + <choice> + <value>linear</value> + <value>axial</value> + <value>radial</value> + <value>ellipsoid</value> + <value>square</value> + <value>rectangular</value> + </choice> +</define> +<define name="common-draw-gradient-attlist" combine="interleave"> + <optional> + <attribute name="draw:cx"> + <ref name="percent"/> + </attribute> + </optional> + <optional> + <attribute name="draw:cy"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="draw-gradient-attlist" combine="interleave"> + <optional> + <attribute name="draw:start-color"> + <ref name="color"/> + </attribute> + </optional> + <optional> + <attribute name="draw:end-color"> + <ref name="color"/> + </attribute> + </optional> +</define> +<define name="draw-gradient-attlist" combine="interleave"> + <optional> + <attribute name="draw:start-intensity"> + <ref name="percent"/> + </attribute> + </optional> + <optional> + <attribute name="draw:end-intensity"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="common-draw-gradient-attlist" combine="interleave"> + <optional> + <attribute name="draw:angle"> + <ref name="integer"/> + </attribute> + </optional> +</define> +<define name="common-draw-gradient-attlist" combine="interleave"> + <optional> + <attribute name="draw:border"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="svg-linearGradient"> + <element name="svg:linearGradient"> + <ref name="common-svg-gradient-attlist"/> + <optional> + <attribute name="svg:x1" a:defaultValue="0%"> + <choice> + <ref name="coordinate"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="svg:y1" a:defaultValue="0%"> + <choice> + <ref name="coordinate"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="svg:x2" a:defaultValue="100%"> + <choice> + <ref name="coordinate"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="svg:y2" a:defaultValue="100%"> + <choice> + <ref name="coordinate"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <zeroOrMore> + <ref name="svg-stop"/> + </zeroOrMore> + </element> +</define> + +<define name="svg-radialGradient"> + <element name="svg:radialGradient"> + <ref name="common-svg-gradient-attlist"/> + <optional> + <attribute name="svg:cx" a:defaultValue="50%"> + <choice> + <ref name="coordinate"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="svg:cy" a:defaultValue="50%"> + <choice> + <ref name="coordinate"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="svg:r" a:defaultValue="50%"> + <choice> + <ref name="coordinate"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="svg:fx"> + <choice> + <ref name="coordinate"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="svg:fy"> + <choice> + <ref name="coordinate"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <zeroOrMore> + <ref name="svg-stop"/> + </zeroOrMore> + </element> +</define> + +<define name="svg-stop"> + <element name="svg:stop"> + <attribute name="svg:offset"> + <choice> + <ref name="double"/> + <ref name="percent"/> + </choice> + </attribute> + <optional> + <attribute name="svg:stop-color"> + <ref name="color"/> + </attribute> + </optional> + <optional> + <attribute name="svg:stop-opacity"> + <ref name="double"/> + </attribute> + </optional> + </element> +</define> + +<define name="common-svg-gradient-attlist" combine="interleave"> + <optional> + <attribute name="svg:gradientUnits" a:defaultValue="objectBoundingBox"> + <value>objectBoundingBox</value> + </attribute> + </optional> + <optional> + <attribute name="svg:gradientTransform"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="svg:spreadMethod" a:defaultValue="pad"> + <choice> + <value>pad</value> + <value>reflect</value> + <value>repeat</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-svg-gradient-attlist" combine="interleave"> + <attribute name="draw:name"> + <ref name="styleName"/> + </attribute> +</define> +<define name="common-svg-gradient-attlist" combine="interleave"> + <optional> + <attribute name="draw:display-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-hatch"> + <element name="draw:hatch"> + <ref name="draw-hatch-attlist"/> + <empty/> + </element> +</define> +<define name="draw-hatch-attlist" combine="interleave"> + <attribute name="draw:name"> + <ref name="styleName"/> + </attribute> +</define> +<define name="draw-hatch-attlist" combine="interleave"> + <optional> + <attribute name="draw:display-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-hatch-attlist" combine="interleave"> + <attribute name="draw:style"> + <choice> + <value>single</value> + <value>double</value> + <value>triple</value> + </choice> + </attribute> +</define> +<define name="draw-hatch-attlist" combine="interleave"> + <optional> + <attribute name="draw:color"> + <ref name="color"/> + </attribute> + </optional> +</define> +<define name="draw-hatch-attlist" combine="interleave"> + <optional> + <attribute name="draw:distance"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="draw-hatch-attlist" combine="interleave"> + <optional> + <attribute name="draw:rotation"> + <ref name="integer"/> + </attribute> + </optional> +</define> +<define name="draw-fill-image"> + <element name="draw:fill-image"> + <ref name="draw-fill-image-attlist"/> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> + <optional> + <attribute name="xlink:type" a:defaultValue="simple"> + <choice> + <value>simple</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="xlink:show" a:defaultValue="embed"> + <choice> + <value>embed</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="xlink:actuate" a:defaultValue="onLoad"> + <choice> + <value>onLoad</value> + </choice> + </attribute> + </optional> + <empty/> + </element> +</define> +<define name="draw-fill-image-attlist" combine="interleave"> + <attribute name="draw:name"> + <ref name="styleName"/> + </attribute> +</define> +<define name="draw-fill-image-attlist" combine="interleave"> + <optional> + <attribute name="draw:display-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-fill-image-attlist" combine="interleave"> + <optional> + <attribute name="svg:width"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="svg:height"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="draw-opacity"> + <element name="draw:opacity"> + <ref name="common-draw-gradient-attlist"/> + <ref name="draw-opacity-attlist"/> + <empty/> + </element> +</define> +<define name="draw-opacity-attlist" combine="interleave"> + <optional> + <attribute name="draw:start"> + <ref name="percent"/> + </attribute> + </optional> + <optional> + <attribute name="draw:end"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="draw-marker"> + <element name="draw:marker"> + <ref name="draw-marker-attlist"/> + <ref name="common-draw-viewbox-attlist"/> + <ref name="common-draw-path-data-attlist"/> + <empty/> + </element> +</define> +<define name="draw-marker-attlist" combine="interleave"> + <attribute name="draw:name"> + <ref name="styleName"/> + </attribute> +</define> +<define name="draw-marker-attlist" combine="interleave"> + <optional> + <attribute name="draw:display-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-stroke-dash"> + <element name="draw:stroke-dash"> + <ref name="draw-stroke-dash-attlist"/> + <empty/> + </element> +</define> +<define name="draw-stroke-dash-attlist" combine="interleave"> + <attribute name="draw:name"> + <ref name="styleName"/> + </attribute> +</define> +<define name="draw-stroke-dash-attlist" combine="interleave"> + <optional> + <attribute name="draw:display-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-stroke-dash-attlist" combine="interleave"> + <optional> + <attribute name="draw:style"> + <choice> + <value>rect</value> + <value>round</value> + </choice> + </attribute> + </optional> +</define> +<define name="draw-stroke-dash-attlist" combine="interleave"> + <optional> + <attribute name="draw:dots1"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="draw:dots1-length"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="draw:dots2"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="draw:dots2-length"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="draw-stroke-dash-attlist" combine="interleave"> + <optional> + <attribute name="draw:distance"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-presentation-page-layout"> + <element name="style:presentation-page-layout"> + <attribute name="style:name"> + <ref name="styleName"/> + </attribute> + <optional> + <attribute name="style:display-name"> + <ref name="string"/> + </attribute> + </optional> + <zeroOrMore> + <ref name="presentation-placeholder"/> + </zeroOrMore> + </element> +</define> +<define name="presentation-placeholder"> + <element name="presentation:placeholder"> + <attribute name="presentation:object"> + <ref name="presentation-classes"/> + </attribute> + <attribute name="svg:x"> + <choice> + <ref name="coordinate"/> + <ref name="percent"/> + </choice> + </attribute> + <attribute name="svg:y"> + <choice> + <ref name="coordinate"/> + <ref name="percent"/> + </choice> + </attribute> + <attribute name="svg:width"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + <attribute name="svg:height"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + <empty/> + </element> +</define> +<define name="style-style-content" combine="choice"> + <group> + <attribute name="style:family"> + <value>chart</value> + </attribute> + <optional> + <ref name="style-chart-properties"/> + </optional> + <optional> + <ref name="style-graphic-properties"/> + </optional> + <optional> + <ref name="style-paragraph-properties"/> + </optional> + <optional> + <ref name="style-text-properties"/> + </optional> + </group> +</define> +<define name="style-properties-content"> + <ref name="anyAttListOrElements"/> +</define> +<define name="style-page-layout-properties"> + <element name="style:page-layout-properties"> + <ref name="style-page-layout-properties-content"/> + </element> +</define> + +<define name="style-page-layout-properties-content"> + <ref name="style-properties-content"/> +</define> + +<define name="style-page-layout-properties-content-strict"> + <ref name="style-page-layout-properties-attlist"/> + <ref name="style-page-layout-properties-elements"/> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:page-width"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="fo:page-height"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <optional> + <ref name="common-num-format-attlist"/> + </optional> + <ref name="common-num-format-prefix-suffix-attlist"/> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:paper-tray-name"> + <choice> + <value>default</value> + <ref name="string"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:print-orientation"> + <choice> + <value>portrait</value> + <value>landscape</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <ref name="common-horizontal-margin-attlist"/> + <ref name="common-vertical-margin-attlist"/> + <ref name="common-margin-attlist"/> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <ref name="common-border-attlist"/> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <ref name="common-border-line-width-attlist"/> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <ref name="common-padding-attlist"/> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <ref name="common-shadow-attlist"/> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <ref name="common-background-color-attlist"/> +</define> +<define name="style-page-layout-properties-elements" combine="interleave"> + <ref name="style-background-image"/> +</define> +<define name="style-page-layout-properties-elements" combine="interleave"> + <ref name="style-columns"/> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:register-truth-ref-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:print"> + <list> + <zeroOrMore> + <choice> + <value>headers</value> + <value>grid</value> + <value>annotations</value> + <value>objects</value> + <value>charts</value> + <value>drawings</value> + <value>formulas</value> + <value>zero-values</value> + </choice> + </zeroOrMore> + </list> + </attribute> + </optional> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:print-page-order"> + <choice> + <value>ttb</value> + <value>ltr</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:first-page-number"> + <choice> + <ref name="positiveInteger"/> + <value>continue</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:scale-to"> + <ref name="percent"/> + </attribute> + </optional> + <optional> + <attribute name="style:scale-to-pages"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:table-centering"> + <choice> + <value>horizontal</value> + <value>vertical</value> + <value>both</value> + <value>none</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:footnote-max-height"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <ref name="common-writing-mode-attlist"/> +</define> +<define name="style-page-layout-properties-elements" combine="interleave"> + <ref name="style-footnote-sep"/> +</define> + +<define name="style-footnote-sep"> + <optional> + <element name="style:footnote-sep"> + <ref name="style-footnote-sep-attlist"/> + <empty/> + </element> + </optional> +</define> +<define name="style-footnote-sep-attlist" combine="interleave"> + <optional> + <attribute name="style:width"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="style:rel-width"> + <ref name="percent"/> + </attribute> + </optional> + <optional> + <attribute name="style:color"> + <ref name="color"/> + </attribute> + </optional> + <optional> + <attribute name="style:line-style"> + <ref name="lineStyle"/> + </attribute> + </optional> + <optional> + <attribute name="style:adjustment" a:defaultValue="left"> + <choice> + <value>left</value> + <value>center</value> + <value>right</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:distance-before-sep"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="style:distance-after-sep"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:layout-grid-mode"> + <choice> + <value>none</value> + <value>line</value> + <value>both</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:layout-grid-base-height"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:layout-grid-ruby-height"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:layout-grid-lines"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:layout-grid-color"> + <ref name="color"/> + </attribute> + </optional> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:layout-grid-ruby-below"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:layout-grid-print"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:layout-grid-display"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-header-footer-properties"> + <element name="style:header-footer-properties"> + <ref name="style-header-footer-properties-content"/> + </element> +</define> + +<define name="style-header-footer-properties-content"> + <ref name="style-properties-content"/> +</define> + +<define name="style-header-footer-properties-content-strict"> + <ref name="style-header-footer-properties-attlist"/> + <ref name="style-header-footer-properties-elements"/> +</define> +<define name="style-header-footer-properties-attlist" combine="interleave"> + <optional> + <attribute name="svg:height"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="fo:min-height"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-header-footer-properties-attlist" combine="interleave"> + <ref name="common-horizontal-margin-attlist"/> + <ref name="common-vertical-margin-attlist"/> + <ref name="common-margin-attlist"/> +</define> +<define name="style-header-footer-properties-attlist" combine="interleave"> + <ref name="common-border-attlist"/> +</define> +<define name="style-header-footer-properties-attlist" combine="interleave"> + <ref name="common-border-line-width-attlist"/> +</define> +<define name="style-header-footer-properties-attlist" combine="interleave"> + <ref name="common-padding-attlist"/> +</define> +<define name="style-header-footer-properties-attlist" combine="interleave"> + <ref name="common-background-color-attlist"/> +</define> +<define name="style-header-footer-properties-elements" combine="interleave"> + <ref name="style-background-image"/> +</define> +<define name="style-header-footer-properties-attlist" combine="interleave"> + <ref name="common-shadow-attlist"/> +</define> +<define name="style-header-footer-attlist" combine="interleave"> + <optional> + <attribute name="style:dynamic-spacing"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-text-properties"> + <element name="style:text-properties"> + <ref name="style-text-properties-content"/> + </element> +</define> + +<define name="style-text-properties-content"> + <ref name="style-properties-content"/> +</define> + +<define name="style-text-properties-content-strict"> + <ref name="style-text-properties-attlist"/> + <ref name="style-text-properties-elements"/> +</define> + +<define name="style-text-properties-elements"> + <empty/> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:font-variant"> + <ref name="fontVariant"/> + </attribute> + </optional> +</define> + +<define name="fontVariant"> + <choice> + <value>normal</value> + <value>small-caps</value> + </choice> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:text-transform"> + <choice> + <value>none</value> + <value>lowercase</value> + <value>uppercase</value> + <value>capitalize</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:color"> + <ref name="color"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:use-window-font-color"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-outline"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-line-through-type"> + <ref name="lineType"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-line-through-style"> + <ref name="lineStyle"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-line-through-width"> + <ref name="lineWidth"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-line-through-color"> + <choice> + <value>font-color</value> + <ref name="color"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-line-through-text"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-line-through-text-style"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-position"> + <list> + <choice> + <ref name="percent"/> + <value>super</value> + <value>sub</value> + </choice> + <optional> + <ref name="percent"/> + </optional> + </list> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:font-name"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-name-asian"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-name-complex"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:font-family"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-family-asian"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-family-complex"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:font-family-generic"> + <ref name="fontFamilyGeneric"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-family-generic-asian"> + <ref name="fontFamilyGeneric"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-family-generic-complex"> + <ref name="fontFamilyGeneric"/> + </attribute> + </optional> +</define> + +<define name="fontFamilyGeneric"> + <choice> + <value>roman</value> + <value>swiss</value> + <value>modern</value> + <value>decorative</value> + <value>script</value> + <value>system</value> + </choice> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:font-style-name"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-style-name-asian"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-style-name-complex"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:font-pitch"> + <ref name="fontPitch"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-pitch-asian"> + <ref name="fontPitch"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-pitch-complex"> + <ref name="fontPitch"/> + </attribute> + </optional> +</define> + +<define name="fontPitch"> + <choice> + <value>fixed</value> + <value>variable</value> + </choice> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:font-charset"> + <ref name="textEncoding"/> + </attribute> + </optional> +</define> + +<define name="textEncoding"> + <data type="string"> + <param name="pattern">[A-Za-z][A-Za-z0-9._\-]*</param> + </data> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:font-size"> + <choice> + <ref name="positiveLength"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:font-size-asian"> + <choice> + <ref name="positiveLength"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:font-size-complex"> + <choice> + <ref name="positiveLength"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:font-size-rel"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-size-rel-asian"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-size-rel-complex"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:script-type"> + <choice> + <value>latin</value> + <value>asian</value> + <value>complex</value> + <value>ignore</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:letter-spacing"> + <choice> + <ref name="length"/> + <value>normal</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:language"> + <ref name="languageCode"/> + </attribute> + </optional> + <optional> + <attribute name="style:language-asian"> + <ref name="languageCode"/> + </attribute> + </optional> + <optional> + <attribute name="style:language-complex"> + <ref name="languageCode"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:country"> + <ref name="countryCode"/> + </attribute> + </optional> + <optional> + <attribute name="style:country-asian"> + <ref name="countryCode"/> + </attribute> + </optional> + <optional> + <attribute name="style:country-complex"> + <ref name="countryCode"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:font-style"> + <ref name="fontStyle"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-style-asian"> + <ref name="fontStyle"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-style-complex"> + <ref name="fontStyle"/> + </attribute> + </optional> +</define> + +<define name="fontStyle"> + <choice> + <value>normal</value> + <value>italic</value> + <value>oblique</value> + </choice> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:font-relief"> + <choice> + <value>none</value> + <value>embossed</value> + <value>engraved</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:text-shadow"> + <ref name="shadowType"/> + </attribute> + </optional> +</define> + +<define name="shadowType"> + <choice> + <value>none</value> + <!-- The follwing string must match an XSL shadow decl --> + <ref name="string"/> + </choice> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-underline-type"> + <ref name="lineType"/> + </attribute> + </optional> +</define> + +<define name="lineType"> + <choice> + <value>none</value> + <value>single</value> + <value>double</value> + </choice> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-underline-style"> + <ref name="lineStyle"/> + </attribute> + </optional> +</define> + +<define name="lineStyle"> + <choice> + <value>none</value> + <value>solid</value> + <value>dotted</value> + <value>dash</value> + <value>long-dash</value> + <value>dot-dash</value> + <value>dot-dot-dash</value> + <value>wave</value> + </choice> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-underline-width"> + <ref name="lineWidth"/> + </attribute> + </optional> +</define> + +<define name="lineWidth"> + <choice> + <value>auto</value> + <value>normal</value> + <value>bold</value> + <value>thin</value> + <value>dash</value> + <value>medium</value> + <value>thick</value> + <ref name="positiveInteger"/> + <ref name="percent"/> + <ref name="positiveLength"/> + </choice> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-underline-color"> + <choice> + <value>font-color</value> + <ref name="color"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:font-weight"> + <ref name="fontWeight"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-weight-asian"> + <ref name="fontWeight"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-weight-complex"> + <ref name="fontWeight"/> + </attribute> + </optional> +</define> + +<define name="fontWeight"> + <choice> + <value>normal</value> + <value>bold</value> + <value>100</value> + <value>200</value> + <value>300</value> + <value>400</value> + <value>500</value> + <value>600</value> + <value>700</value> + <value>800</value> + <value>900</value> + </choice> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-underline-mode"> + <ref name="lineMode"/> + </attribute> + </optional> +</define> + +<define name="lineMode"> + <choice> + <value>continuous</value> + <value>skip-white-space</value> + </choice> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-line-through-mode"> + <ref name="lineMode"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:letter-kerning"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-blinking"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <ref name="common-background-color-attlist"/> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-combine"> + <choice> + <value>none</value> + <value>letters</value> + <value>lines</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-combine-start-char"> + <ref name="character"/> + </attribute> + </optional> + <optional> + <attribute name="style:text-combine-end-char"> + <ref name="character"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-emphasize"> + <choice> + <value>none</value> + <list> + <choice> + <value>none</value> + <value>accent</value> + <value>dot</value> + <value>circle</value> + <value>disc</value> + </choice> + <choice> + <value>above</value> + <value>below</value> + </choice> + </list> + </choice> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-scale"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-rotation-angle"> + <ref name="integer"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-rotation-scale"> + <choice> + <value>fixed</value> + <value>line-height</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:hyphenate"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:hyphenation-remain-char-count"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:hyphenation-push-char-count"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <choice> + <attribute name="text:display"> + <value>true</value> + </attribute> + <attribute name="text:display"> + <value>none</value> + </attribute> + <group> + <attribute name="text:display"> + <value>condition</value> + </attribute> + <attribute name="text:condition"> + <value>none</value> + </attribute> + </group> + <empty/> + </choice> +</define> +<define name="style-paragraph-properties"> + <element name="style:paragraph-properties"> + <ref name="style-paragraph-properties-content"/> + </element> +</define> + +<define name="style-paragraph-properties-content"> + <ref name="style-properties-content"/> +</define> + +<define name="style-paragraph-properties-content-strict"> + <ref name="style-paragraph-properties-attlist"/> + <ref name="style-paragraph-properties-elements"/> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:line-height"> + <choice> + <value>normal</value> + <ref name="nonNegativeLength"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:line-height-at-least"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:line-spacing"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:font-independent-line-spacing"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <ref name="common-text-align"/> +</define> + +<define name="common-text-align"> + <optional> + <attribute name="fo:text-align"> + <choice> + <value>start</value> + <value>end</value> + <value>left</value> + <value>right</value> + <value>center</value> + <value>justify</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:text-align-last"> + <choice> + <value>start</value> + <value>center</value> + <value>justify</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:justify-single-word"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:keep-together"> + <choice> + <value>auto</value> + <value>always</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:widows"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:orphans"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-elements" combine="interleave"> + <ref name="style-tab-stops"/> +</define> + +<define name="style-tab-stops"> + <optional> + <element name="style:tab-stops"> + <zeroOrMore> + <ref name="style-tab-stop"/> + </zeroOrMore> + </element> + </optional> +</define> + +<define name="style-tab-stop"> + <element name="style:tab-stop"> + <ref name="style-tab-stop-attlist"/> + <empty/> + </element> +</define> +<define name="style-tab-stop-attlist" combine="interleave"> + <attribute name="style:position"> + <ref name="nonNegativeLength"/> + </attribute> +</define> +<define name="style-tab-stop-attlist" combine="interleave"> + <choice> + <optional> + <attribute name="style:type" a:defaultValue="left"> + <choice> + <value>left</value> + <value>center</value> + <value>right</value> + </choice> + </attribute> + </optional> + <group> + <attribute name="style:type"> + <value>char</value> + </attribute> + <ref name="style-tab-stop-char-attlist"/> + </group> + </choice> +</define> +<define name="style-tab-stop-char-attlist" combine="interleave"> + <attribute name="style:char"> + <ref name="character"/> + </attribute> +</define> +<define name="style-tab-stop-attlist" combine="interleave"> + <optional> + <attribute name="style:leader-type"> + <ref name="lineType"/> + </attribute> + </optional> +</define> +<define name="style-tab-stop-attlist" combine="interleave"> + <optional> + <attribute name="style:leader-style"> + <ref name="lineStyle"/> + </attribute> + </optional> +</define> +<define name="style-tab-stop-attlist" combine="interleave"> + <optional> + <attribute name="style:leader-width"> + <ref name="lineWidth"/> + </attribute> + </optional> +</define> +<define name="style-tab-stop-attlist" combine="interleave"> + <optional> + <attribute name="style:leader-color"> + <choice> + <value>font-color</value> + <ref name="color"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-tab-stop-attlist" combine="interleave"> + <optional> + <attribute name="style:leader-text" a:defaultValue=" "> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="style-tab-stop-attlist" combine="interleave"> + <optional> + <attribute name="style:leader-text-style"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:tab-stop-distance"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:hyphenation-keep"> + <choice> + <value>auto</value> + <value>page</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:hyphenation-ladder-count"> + <choice> + <value>no-limit</value> + <ref name="positiveInteger"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-elements" combine="interleave"> + <ref name="style-drop-cap"/> +</define> + +<define name="style-drop-cap"> + <optional> + <element name="style:drop-cap"> + <ref name="style-drop-cap-attlist"/> + <empty/> + </element> + </optional> +</define> +<define name="style-drop-cap-attlist" combine="interleave"> + <optional> + <attribute name="style:length" a:defaultValue="1"> + <choice> + <value>word</value> + <ref name="positiveInteger"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-drop-cap-attlist" combine="interleave"> + <optional> + <attribute name="style:lines" a:defaultValue="1"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="style-drop-cap-attlist" combine="interleave"> + <optional> + <attribute name="style:distance" a:defaultValue="0cm"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-drop-cap-attlist" combine="interleave"> + <optional> + <attribute name="style:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:register-true"> + <ref name="boolean"/> + </attribute> + </optional> + </define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <ref name="common-horizontal-margin-attlist"/> +</define> + +<define name="common-horizontal-margin-attlist"> + <optional> + <attribute name="fo:margin-left"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="fo:margin-right"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:text-indent"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:auto-text-indent"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <ref name="common-vertical-margin-attlist"/> +</define> + +<define name="common-vertical-margin-attlist"> + <optional> + <attribute name="fo:margin-top"> + <choice> + <ref name="nonNegativeLength"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="fo:margin-bottom"> + <choice> + <ref name="nonNegativeLength"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <ref name="common-margin-attlist"/> +</define> + +<define name="common-margin-attlist"> + <optional> + <attribute name="fo:margin"> + <choice> + <ref name="nonNegativeLength"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <ref name="common-break-attlist"/> +</define> + +<define name="common-break-attlist"> + <optional> + <attribute name="fo:break-before"> + <choice> + <value>auto</value> + <value>column</value> + <value>page</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="fo:break-after"> + <choice> + <value>auto</value> + <value>column</value> + <value>page</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <ref name="common-background-color-attlist"/> +</define> + +<define name="common-background-color-attlist"> + <optional> + <attribute name="fo:background-color"> + <choice> + <value>transparent</value> + <ref name="color"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-elements" combine="interleave"> + <ref name="style-background-image"/> +</define> + +<define name="style-background-image"> + <optional> + <element name="style:background-image"> + <ref name="style-background-image-attlist"/> + <choice> + <ref name="common-draw-data-attlist"/> + <ref name="office-binary-data"/> + <empty/> + </choice> + </element> + </optional> +</define> +<define name="style-background-image-attlist" combine="interleave"> + <optional> + <attribute name="style:repeat" a:defaultValue="repeat"> + <choice> + <value>no-repeat</value> + <value>repeat</value> + <value>stretch</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-background-image-attlist" combine="interleave"> + <optional> + <attribute name="style:position" a:defaultValue="center"> + <choice> + <value>left</value> + <value>center</value> + <value>right</value> + <value>top</value> + <value>bottom</value> + <list> + <ref name="horiBackPos"/> + <ref name="vertBackPos"/> + </list> + <list> + <ref name="vertBackPos"/> + <ref name="horiBackPos"/> + </list> + </choice> + </attribute> + </optional> +</define> + +<define name="horiBackPos"> + <choice> + <value>left</value> + <value>center</value> + <value>right</value> + </choice> +</define> +<define name="vertBackPos"> + <choice> + <value>top</value> + <value>center</value> + <value>bottom</value> + </choice> +</define> +<define name="style-background-image-attlist" combine="interleave"> + <optional> + <attribute name="style:filter-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="style-background-image-attlist" combine="interleave"> + <optional> + <attribute name="draw:opacity"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <ref name="common-border-attlist"/> +</define> + +<define name="common-border-attlist"> + <optional> + <attribute name="fo:border"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="fo:border-top"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="fo:border-bottom"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="fo:border-left"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="fo:border-right"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <ref name="common-border-line-width-attlist"/> +</define> + +<define name="common-border-line-width-attlist"> + <optional> + <attribute name="style:border-line-width"> + <ref name="borderWidths"/> + </attribute> + </optional> + <optional> + <attribute name="style:border-line-width-top"> + <ref name="borderWidths"/> + </attribute> + </optional> + <optional> + <attribute name="style:border-line-width-bottom"> + <ref name="borderWidths"/> + </attribute> + </optional> + <optional> + <attribute name="style:border-line-width-left"> + <ref name="borderWidths"/> + </attribute> + </optional> + <optional> + <attribute name="style:border-line-width-right"> + <ref name="borderWidths"/> + </attribute> + </optional> +</define> + +<define name="borderWidths"> + <list> + <ref name="positiveLength"/> + <ref name="positiveLength"/> + <ref name="positiveLength"/> + </list> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <ref name="common-padding-attlist"/> +</define> + +<define name="common-padding-attlist"> + <optional> + <attribute name="fo:padding"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> + <optional> + <attribute name="fo:padding-top"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> + <optional> + <attribute name="fo:padding-bottom"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> + <optional> + <attribute name="fo:padding-left"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> + <optional> + <attribute name="fo:padding-right"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <ref name="common-shadow-attlist"/> +</define> + +<define name="common-shadow-attlist"> + <optional> + <attribute name="style:shadow"> + <ref name="shadowType"/> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <ref name="common-keep-with-next-attlist"/> +</define> + +<define name="common-keep-with-next-attlist"> + <optional> + <attribute name="fo:keep-with-next"> + <choice> + <value>auto</value> + <value>always</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="text:number-lines" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="text:line-number"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-autospace"> + <choice> + <value>none</value> + <value>ideograph-alpha</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:punctuation-wrap"> + <choice> + <value>simple</value> + <value>hanging</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:line-break"> + <choice> + <value>normal</value> + <value>strict</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:vertical-align" a:defaultValue="auto"> + <choice> + <value>top</value> + <value>middle</value> + <value>bottom</value> + <value>auto</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <ref name="common-writing-mode-attlist"/> +</define> + +<define name="common-writing-mode-attlist"> + <optional> + <attribute name="style:writing-mode"> + <choice> + <value>lr-tb</value> + <value>rl-tb</value> + <value>tb-rl</value> + <value>tb-lr</value> + <value>lr</value> + <value>rl</value> + <value>tb</value> + <value>page</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:writing-mode-automatic"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:snap-to-layout-grid"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <ref name="common-page-number-attlist"/> +</define> + +<define name="common-page-number-attlist"> + <optional> + <attribute name="style:page-number"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:background-transparency"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="style-ruby-properties"> + <element name="style:ruby-properties"> + <ref name="style-ruby-properties-content"/> + </element> +</define> + +<define name="style-ruby-properties-content"> + <ref name="style-properties-content"/> +</define> + +<define name="style-ruby-properties-content-strict"> + <ref name="style-ruby-properties-attlist"/> + <ref name="style-ruby-properties-elements"/> +</define> + +<define name="style-ruby-properties-elements"> + <empty/> +</define> +<define name="style-ruby-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:ruby-position"> + <choice> + <value>above</value> + <value>below</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-ruby-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:ruby-align"> + <choice> + <value>left</value> + <value>center</value> + <value>right</value> + <value>distribute-letter</value> + <value>distribute-space</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-section-properties"> + <element name="style:section-properties"> + <ref name="style-section-properties-content"/> + </element> +</define> + +<define name="style-section-properties-content"> + <ref name="style-properties-content"/> +</define> + +<define name="style-section-properties-content-strict"> + <ref name="style-section-properties-attlist"/> + <ref name="style-section-properties-elements"/> +</define> +<define name="style-section-properties-attlist" combine="interleave"> + <ref name="common-background-color-attlist"/> +</define> +<define name="style-section-properties-elements" combine="interleave"> + <ref name="style-background-image"/> +</define> +<define name="style-section-properties-attlist" combine="interleave"> + <ref name="common-horizontal-margin-attlist"/> +</define> +<define name="style-section-properties-elements" combine="interleave"> + <ref name="style-columns"/> +</define> + +<define name="style-columns"> + <optional> + <element name="style:columns"> + <ref name="style-columns-attlist"/> + <optional> + <ref name="style-column-sep"/> + </optional> + <zeroOrMore> + <ref name="style-column"/> + </zeroOrMore> + </element> + </optional> +</define> +<define name="style-columns-attlist" combine="interleave"> + <attribute name="fo:column-count"> + <ref name="positiveInteger"/> + </attribute> +</define> +<define name="style-columns-attlist" combine="interleave"> + <optional> + <attribute name="fo:column-gap"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-column"> + <element name="style:column"> + <ref name="style-column-attlist"/> + </element> +</define> +<define name="style-column-attlist" combine="interleave"> + <attribute name="style:rel-width"> + <ref name="relativeLength"/> + </attribute> +</define> +<define name="style-column-attlist" combine="interleave"> + <optional> + <attribute name="fo:start-indent" a:defaultValue="0cm"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-column-attlist" combine="interleave"> + <optional> + <attribute name="fo:end-indent" a:defaultValue="0cm"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-column-attlist" combine="interleave"> + <optional> + <attribute name="fo:space-before" a:defaultValue="0cm"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-column-attlist" combine="interleave"> + <optional> + <attribute name="fo:space-after" a:defaultValue="0cm"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-column-sep"> + <element name="style:column-sep"> + <ref name="style-column-sep-attlist"/> + </element> +</define> +<define name="style-column-sep-attlist" combine="interleave"> + <optional> + <attribute name="style:style" a:defaultValue="solid"> + <choice> + <value>none</value> + <value>solid</value> + <value>dotted</value> + <value>dashed</value> + <value>dot-dashed</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-column-sep-attlist" combine="interleave"> + <attribute name="style:width"> + <ref name="length"/> + </attribute> +</define> +<define name="style-column-sep-attlist" combine="interleave"> + <optional> + <attribute name="style:height" a:defaultValue="100%"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="style-column-sep-attlist" combine="interleave"> + <optional> + <attribute name="style:vertical-align" a:defaultValue="top"> + <choice> + <value>top</value> + <value>middle</value> + <value>bottom</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-column-sep-attlist" combine="interleave"> + <optional> + <attribute name="style:color" a:defaultValue="#000000"> + <ref name="color"/> + </attribute> + </optional> +</define> +<define name="style-section-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:protect" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-section-properties-attlist" combine="interleave"> + <optional> + <attribute name="text:dont-balance-text-columns"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-section-properties-attlist" combine="interleave"> + <ref name="common-writing-mode-attlist"/> +</define> +<define name="style-section-properties-elements" combine="interleave"> + <zeroOrMore> + <ref name="text-notes-configuration"/> + </zeroOrMore> +</define> +<define name="style-table-properties"> + <element name="style:table-properties"> + <ref name="style-table-properties-content"/> + </element> +</define> + +<define name="style-table-properties-content"> + <ref name="style-properties-content"/> +</define> + +<define name="style-table-properties-content-strict"> + <ref name="style-table-properties-attlist"/> + <ref name="style-table-properties-elements"/> +</define> +<define name="style-table-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:width"> + <ref name="positiveLength"/> + </attribute> + </optional> + <optional> + <attribute name="style:rel-width"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="style-table-properties-attlist" combine="interleave"> + <optional> + <attribute name="table:align"> + <choice> + <value>left</value> + <value>center</value> + <value>right</value> + <value>margins</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-table-properties-attlist" combine="interleave"> + <ref name="common-horizontal-margin-attlist"/> +</define> +<define name="style-table-properties-attlist" combine="interleave"> + <ref name="common-vertical-margin-attlist"/> +</define> +<define name="style-table-properties-attlist" combine="interleave"> + <ref name="common-margin-attlist"/> +</define> +<define name="style-table-properties-attlist" combine="interleave"> + <ref name="common-page-number-attlist"/> +</define> +<define name="style-table-properties-attlist" combine="interleave"> + <ref name="common-break-attlist"/> +</define> +<define name="style-table-properties-attlist" combine="interleave"> + <ref name="common-background-color-attlist"/> +</define> +<define name="style-table-properties-elements" combine="interleave"> + <ref name="style-background-image"/> +</define> +<define name="style-table-properties-attlist" combine="interleave"> + <ref name="common-shadow-attlist"/> +</define> +<define name="style-table-properties-attlist" combine="interleave"> + <ref name="common-keep-with-next-attlist"/> +</define> +<define name="style-table-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:may-break-between-rows"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-table-properties-attlist" combine="interleave"> + <optional> + <attribute name="table:border-model"> + <choice> + <value>collapsing</value> + <value>separating</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-table-properties-attlist" combine="interleave"> + <ref name="common-writing-mode-attlist"/> +</define> +<define name="style-table-properties-attlist" combine="interleave"> + <optional> + <attribute name="table:display"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-table-column-properties"> + <element name="style:table-column-properties"> + <ref name="style-table-column-properties-content"/> + </element> +</define> + +<define name="style-table-column-properties-content"> + <ref name="style-properties-content"/> +</define> + +<define name="style-table-column-properties-content-strict"> + <ref name="style-table-column-properties-attlist"/> + <ref name="style-table-column-properties-elements"/> +</define> + +<define name="style-table-column-properties-elements"> + <empty/> +</define> +<define name="style-table-column-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:column-width"> + <ref name="positiveLength"/> + </attribute> + </optional> + <optional> + <attribute name="style:rel-column-width"> + <ref name="relativeLength"/> + </attribute> + </optional> +</define> +<define name="style-table-column-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:use-optimal-column-width"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-table-column-properties-attlist" combine="interleave"> + <ref name="common-break-attlist"/> +</define> +<define name="style-table-row-properties"> + <element name="style:table-row-properties"> + <ref name="style-table-row-properties-content"/> + </element> +</define> + +<define name="style-table-row-properties-content"> + <ref name="style-properties-content"/> +</define> + +<define name="style-table-row-properties-content-strict"> + <ref name="style-table-row-properties-attlist"/> + <ref name="style-table-row-properties-elements"/> +</define> +<define name="style-table-row-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:row-height"> + <ref name="positiveLength"/> + </attribute> + </optional> + <optional> + <attribute name="style:min-row-height"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> +</define> +<define name="style-table-row-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:use-optimal-row-height"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-table-row-properties-attlist" combine="interleave"> + <ref name="common-background-color-attlist"/> +</define> +<define name="style-table-row-properties-elements" combine="interleave"> + <ref name="style-background-image"/> +</define> +<define name="style-table-row-properties-attlist" combine="interleave"> + <ref name="common-break-attlist"/> +</define> +<define name="style-table-row-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:keep-together"> + <choice> + <value>auto</value> + <value>always</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-table-cell-properties"> + <element name="style:table-cell-properties"> + <ref name="style-table-cell-properties-content"/> + </element> +</define> + +<define name="style-table-cell-properties-content"> + <ref name="style-properties-content"/> +</define> + +<define name="style-table-cell-properties-content-strict"> + <ref name="style-table-cell-properties-attlist"/> + <ref name="style-table-cell-properties-elements"/> +</define> +<define name="style-table-cell-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:vertical-align"> + <choice> + <value>top</value> + <value>middle</value> + <value>bottom</value> + <value>automatic</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-table-cell-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-align-source"> + <choice> + <value>fix</value> + <value>value-type</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-table-cell-properties-attlist" combine="interleave"> + <ref name="common-style-direction-attlist"/> +</define> + +<define name="common-style-direction-attlist"> + <optional> + <attribute name="style:direction"> + <choice> + <value>ltr</value> + <value>ttb</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-table-cell-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:glyph-orientation-vertical"> + <choice> + <value>auto</value> + <value>0</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-table-cell-properties-attlist" combine="interleave"> + <ref name="common-shadow-attlist"/> +</define> +<define name="style-table-cell-properties-attlist" combine="interleave"> + <ref name="common-background-color-attlist"/> +</define> +<define name="style-table-cell-properties-elements" combine="interleave"> + <ref name="style-background-image"/> +</define> +<define name="style-table-cell-properties-attlist" combine="interleave"> + <ref name="common-border-attlist"/> +</define> +<define name="style-table-cell-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:diagonal-tl-br"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="style:diagonal-tl-br-widths"> + <ref name="borderWidths"/> + </attribute> + </optional> + <optional> + <attribute name="style:diagonal-bl-tr"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="style:diagonal-bl-tr-widths"> + <ref name="borderWidths"/> + </attribute> + </optional> +</define> +<define name="style-table-cell-properties-attlist" combine="interleave"> + <ref name="common-border-line-width-attlist"/> +</define> +<define name="style-table-cell-properties-attlist" combine="interleave"> + <ref name="common-padding-attlist"/> +</define> +<define name="style-table-cell-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:wrap-option"> + <choice> + <value>no-wrap</value> + <value>wrap</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-table-cell-properties-attlist" combine="interleave"> + <ref name="common-rotation-angle-attlist"/> +</define> + +<define name="common-rotation-angle-attlist"> + <optional> + <attribute name="style:rotation-angle"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="style-table-cell-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:rotation-align"> + <choice> + <value>none</value> + <value>bottom</value> + <value>top</value> + <value>center</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-table-cell-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:cell-protect"> + <choice> + <value>none</value> + <value>hidden-and-protected</value> + <list> + <oneOrMore> + <choice> + <value>protected</value> + <value>formula-hidden</value> + </choice> + </oneOrMore> + </list> + </choice> + </attribute> + </optional> +</define> +<define name="style-table-cell-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:print-content"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-table-cell-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:decimal-places"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="style-table-cell-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:repeat-content"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-table-cell-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:shrink-to-fit"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-list-level-properties"> + <element name="style:list-level-properties"> + <ref name="style-list-level-properties-content"/> + </element> +</define> + +<define name="style-list-level-properties-content"> + <ref name="style-properties-content"/> +</define> + +<define name="style-list-level-properties-content-strict"> + <ref name="style-list-level-properties-attlist"/> + <ref name="style-list-level-properties-elements"/> +</define> + +<define name="style-list-level-properties-elements"> + <empty/> +</define> +<define name="style-list-level-properties-attlist" combine="interleave"> + <ref name="common-text-align"/> +</define> +<define name="style-list-level-properties-attlist" combine="interleave"> + <optional> + <attribute name="text:space-before"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> +</define> +<define name="style-list-level-properties-attlist" combine="interleave"> + <optional> + <attribute name="text:min-label-width"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> +</define> +<define name="style-list-level-properties-attlist" combine="interleave"> + <optional> + <attribute name="text:min-label-distance"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> +</define> +<define name="style-list-level-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:font-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="style-list-level-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:width"> + <ref name="positiveLength"/> + </attribute> + </optional> + <optional> + <attribute name="fo:height"> + <ref name="positiveLength"/> + </attribute> + </optional> +</define> +<define name="style-list-level-properties-attlist" combine="interleave"> + <ref name="common-vertical-rel-attlist"/> + <ref name="common-vertical-pos-attlist"/> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:stroke"> + <choice> + <value>none</value> + <value>dash</value> + <value>solid</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:stroke-dash"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:stroke-dash-names"> + <ref name="styleNameRefs"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="svg:stroke-width"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="svg:stroke-color"> + <ref name="color"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:marker-start"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:marker-end"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:marker-start-width"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:marker-end-width"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:marker-start-center"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:marker-end-center"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="svg:stroke-opacity"> + <choice> + <data type="double"> + <param name="minInclusive">0</param> + <param name="maxInclusive">1</param> + </data> + <ref name="percent"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:stroke-linejoin"> + <choice> + <value>miter</value> + <value>round</value> + <value>bevel</value> + <value>middle</value> + <value>none</value> + <value>inherit</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-fill-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:fill"> + <choice> + <value>none</value> + <value>solid</value> + <value>bitmap</value> + <value>gradient</value> + <value>hatch</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-fill-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:fill-color"> + <ref name="color"/> + </attribute> + </optional> +</define> +<define name="style-graphic-fill-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:secondary-fill-color"> + <ref name="color"/> + </attribute> + </optional> +</define> +<define name="style-graphic-fill-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:fill-gradient-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="style-graphic-fill-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:gradient-step-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="style-graphic-fill-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:fill-hatch-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="style-graphic-fill-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:fill-hatch-solid"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-fill-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:fill-image-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="style-graphic-fill-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:repeat"> + <choice> + <value>no-repeat</value> + <value>repeat</value> + <value>stretch</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-fill-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:fill-image-width"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="draw:fill-image-height"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-fill-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:fill-image-ref-point-x"> + <ref name="percent"/> + </attribute> + </optional> + <optional> + <attribute name="draw:fill-image-ref-point-y"> + <ref name="percent"/> + </attribute> + </optional> + <optional> + <attribute name="draw:fill-image-ref-point"> + <choice> + <value>top-left</value> + <value>top</value> + <value>top-right</value> + <value>left</value> + <value>center</value> + <value>right</value> + <value>bottom-left</value> + <value>bottom</value> + <value>bottom-right</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-fill-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:tile-repeat-offset"/> + </optional> +</define> +<define name="style-graphic-fill-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:opacity"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="style-graphic-fill-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:opacity-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="style-graphic-fill-properties-attlist" combine="interleave"> + <optional> + <attribute name="svg:fill-rule"> + <choice> + <value>nonzero</value> + <value>evenodd</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:symbol-color"> + <ref name="color"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="text:animation"> + <choice> + <value>none</value> + <value>scroll</value> + <value>alternate</value> + <value>slide</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="text:animation-direction"> + <choice> + <value>left</value> + <value>right</value> + <value>up</value> + <value>down</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="text:animation-start-inside"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="text:animation-stop-inside"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="text:animation-repeat"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="text:animation-delay"> + <ref name="duration"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="text:animation-steps"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:auto-grow-width"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="draw:auto-grow-height"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:fit-to-size"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:fit-to-contour"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:textarea-vertical-align"> + <choice> + <value>top</value> + <value>middle</value> + <value>bottom</value> + <value>justify</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:textarea-horizontal-align"> + <choice> + <value>left</value> + <value>center</value> + <value>right</value> + <value>justify</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:wrap-option"> + <choice> + <value>no-wrap</value> + <value>wrap</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-elements" combine="interleave"> + <optional> + <ref name="text-list-style"/> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:color-mode"> + <choice> + <value>greyscale</value> + <value>mono</value> + <value>watermark</value> + <value>standard</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:color-inversion"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:luminance"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:contrast"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:gamma"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:red"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:green"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:blue"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:image-opacity"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:shadow"> + <choice> + <value>visible</value> + <value>hidden</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:shadow-offset-x"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="draw:shadow-offset-y"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:shadow-color"> + <ref name="color"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:shadow-opacity"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:start-line-spacing-horizontal"> + <ref name="distance"/> + </attribute> + </optional> + <optional> + <attribute name="draw:start-line-spacing-vertical"> + <ref name="distance"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:end-line-spacing-horizontal"> + <ref name="distance"/> + </attribute> + </optional> + <optional> + <attribute name="draw:end-line-spacing-vertical"> + <ref name="distance"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:line-distance"> + <ref name="distance"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:guide-overhang"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:guide-distance"> + <ref name="distance"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:start-guide"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:end-guide"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:placing"> + <choice> + <value>below</value> + <value>above</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:parallel"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:measure-align"> + <choice> + <value>automatic</value> + <value>left-outside</value> + <value>inside</value> + <value>right-outside</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="draw:measure-vertical-align"> + <choice> + <value>automatic</value> + <value>above</value> + <value>below</value> + <value>center</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:unit"> + <choice> + <value>automatic</value> + <value>mm</value> + <value>cm</value> + <value>m</value> + <value>km</value> + <value>pt</value> + <value>pc</value> + <value>inch</value> + <value>ft</value> + <value>mi</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:show-unit"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:decimal-places"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:caption-type"> + <choice> + <value>straight-line</value> + <value>angled-line</value> + <value>angled-connector-line</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:caption-angle-type"> + <choice> + <value>fixed</value> + <value>free</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:caption-angle"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:caption-gap"> + <ref name="distance"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:caption-escape-direction"> + <choice> + <value>horizontal</value> + <value>vertical</value> + <value>auto</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:caption-escape"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:caption-line-length"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:caption-fit-line-length"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:horizontal-segments"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:vertical-segments"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:edge-rounding"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:edge-rounding-mode"> + <choice> + <value>correct</value> + <value>attractive</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:back-scale"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:depth"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:backface-culling"> + <choice> + <value>enabled</value> + <value>disabled</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:end-angle"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:close-front"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:close-back"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:lighting-mode"> + <choice> + <value>standard</value> + <value>double-sided</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:normals-kind"> + <choice> + <value>object</value> + <value>flat</value> + <value>sphere</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:normals-direction"> + <choice> + <value>normal</value> + <value>inverse</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:texture-generation-mode-x"> + <choice> + <value>object</value> + <value>parallel</value> + <value>sphere</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="dr3d:texture-generation-mode-y"> + <choice> + <value>object</value> + <value>parallel</value> + <value>sphere</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:texture-kind"> + <choice> + <value>luminance</value> + <value>intesity</value> + <value>color</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:texture-filter"> + <choice> + <value>enabled</value> + <value>disabled</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:texture-mode"> + <choice> + <value>replace</value> + <value>modulate</value> + <value>blend</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:ambient-color"> + <ref name="color"/> + </attribute> + </optional> + <optional> + <attribute name="dr3d:emissive-color"> + <ref name="color"/> + </attribute> + </optional> + <optional> + <attribute name="dr3d:specular-color"> + <ref name="color"/> + </attribute> + </optional> + <optional> + <attribute name="dr3d:diffuse-color"> + <ref name="color"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:shininess"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:shadow"> + <choice> + <value>visible</value> + <value>hidden</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <ref name="common-draw-rel-size-attlist"/> + <optional> + <attribute name="fo:min-width"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:min-height"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:max-height"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="fo:max-width"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <ref name="common-horizontal-margin-attlist"/> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <ref name="common-vertical-margin-attlist"/> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <ref name="common-margin-attlist"/> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:print-content"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:protect"> + <choice> + <value>none</value> + <list> + <oneOrMore> + <choice> + <value>content</value> + <value>position</value> + <value>size</value> + </choice> + </oneOrMore> + </list> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:horizontal-pos"> + <choice> + <value>left</value> + <value>center</value> + <value>right</value> + <value>from-left</value> + <value>inside</value> + <value>outside</value> + <value>from-inside</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="svg:x"> + <ref name="coordinate"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:horizontal-rel"> + <choice> + <value>page</value> + <value>page-content</value> + <value>page-start-margin</value> + <value>page-end-margin</value> + <value>frame</value> + <value>frame-content</value> + <value>frame-start-margin</value> + <value>frame-end-margin</value> + <value>paragraph</value> + <value>paragraph-content</value> + <value>paragraph-start-margin</value> + <value>paragraph-end-margin</value> + <value>char</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <ref name="common-vertical-pos-attlist"/> +</define> + +<define name="common-vertical-pos-attlist"> + <optional> + <attribute name="style:vertical-pos"> + <choice> + <value>top</value> + <value>middle</value> + <value>bottom</value> + <value>from-top</value> + <value>below</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="svg:y"> + <ref name="coordinate"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <ref name="common-vertical-rel-attlist"/> +</define> + +<define name="common-vertical-rel-attlist"> + <optional> + <attribute name="style:vertical-rel"> + <choice> + <value>page</value> + <value>page-content</value> + <value>frame</value> + <value>frame-content</value> + <value>paragraph</value> + <value>paragraph-content</value> + <value>char</value> + <value>line</value> + <value>baseline</value> + <value>text</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <ref name="common-text-anchor-attlist"/> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <ref name="common-border-attlist"/> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <ref name="common-border-line-width-attlist"/> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <ref name="common-padding-attlist"/> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <ref name="common-shadow-attlist"/> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <ref name="common-background-color-attlist"/> +</define> +<define name="style-graphic-properties-elements" combine="interleave"> + <ref name="style-background-image"/> +</define> +<define name="style-graphic-properties-elements" combine="interleave"> + <ref name="style-columns"/> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:editable"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:wrap"> + <choice> + <value>none</value> + <value>left</value> + <value>right</value> + <value>parallel</value> + <value>dynamic</value> + <value>run-through</value> + <value>biggest</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:wrap-dynamic-treshold"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:number-wrapped-paragraphs"> + <choice> + <value>no-limit</value> + <ref name="positiveInteger"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:wrap-contour"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:wrap-contour-mode"> + <choice> + <value>full</value> + <value>outside</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:run-through"> + <choice> + <value>foreground</value> + <value>background</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:flow-with-text"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:overflow-behavior"> + <choice> + <value>clip</value> + <value>auto-create-new-frame</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:mirror"> + <choice> + <value>none</value> + <value>vertical</value> + <ref name="horizontal-mirror"/> + <list> + <value>vertical</value> + <ref name="horizontal-mirror"/> + </list> + <list> + <ref name="horizontal-mirror"/> + <value>vertical</value> + </list> + </choice> + </attribute> + </optional> +</define> + +<define name="horizontal-mirror"> + <choice> + <value>horizontal</value> + <value>horizontal-on-odd</value> + <value>horizontal-on-even</value> + </choice> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:clip"> + <!-- The attribute value must match the one XSL's clip --> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:wrap-influence-on-position" + a:defaultValue="iterative"> + <choice> + <value>iterative</value> + <value>once-concurrent</value> + <value>once-successive</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:frame-display-scrollbar"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:frame-display-border"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:frame-margin-horizontal"> + <ref name="nonNegativePixelLength"/> + </attribute> + </optional> + <optional> + <attribute name="draw:frame-margin-vertical"> + <ref name="nonNegativePixelLength"/> + </attribute> + </optional> +</define> + +<define name="nonNegativePixelLength"> + <data type="string"> + <param name="pattern">([0-9]+(\.[0-9]*)?|\.[0-9]+)(px)</param> + </data> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:visible-area-left"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> + <optional> + <attribute name="draw:visible-area-top"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> + <optional> + <attribute name="draw:visible-area-width"> + <ref name="positiveLength"/> + </attribute> + </optional> + <optional> + <attribute name="draw:visible-area-height"> + <ref name="positiveLength"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:ole-draw-aspect"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties"> + <element name="style:chart-properties"> + <ref name="style-chart-properties-content"/> + </element> +</define> + +<define name="style-chart-properties-content"> + <ref name="style-properties-content"/> +</define> + +<define name="style-chart-properties-content-strict"> + <ref name="style-chart-properties-attlist"/> + <ref name="style-chart-properties-elements"/> +</define> + +<define name="style-chart-properties-elements"> + <empty/> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:scale-text" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:three-dimensional"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:deep"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <choice> + <attribute name="chart:symbol-type"> + <value>none</value> + </attribute> + <attribute name="chart:symbol-type"> + <value>automatic</value> + </attribute> + <group> + <attribute name="chart:symbol-type"> + <value>named-symbol</value> + </attribute> + <attribute name="chart:symbol-name"> + <choice> + <value>square</value> + <value>diamond</value> + <value>arrow-down</value> + <value>arrow-up</value> + <value>arrow-right</value> + <value>arrow-left</value> + <value>bow-tie</value> + <value>hourglass</value> + <value>circle</value> + <value>star</value> + <value>x</value> + <value>plus</value> + <value>asterisk</value> + <value>horizontal-bar</value> + <value>vertical-bar</value> + </choice> + </attribute> + </group> + <group> + <attribute name="chart:symbol-type"> + <value>image</value> + </attribute> + <element name="chart:symbol-image"> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> + </element> + </group> + <empty/> + </choice> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:symbol-width"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> + <optional> + <attribute name="chart:symbol-height"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:vertical" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:connect-bars" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:gap-width"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="chart:overlap"> + <ref name="integer"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:japanese-candle-stick" + a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:interpolation" a:defaultValue="none"> + <choice> + <value>none</value> + <value>cubic-spline</value> + <value>b-spline</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="chart:spline-order" a:defaultValue="2"> + <ref name="positiveInteger"/> + </attribute> + </optional> + <optional> + <attribute name="chart:spline-resolution" a:defaultValue="20"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:pie-offset" a:defaultValue="0"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:lines" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:solid-type" a:defaultValue="cuboid"> + <choice> + <value>cuboid</value> + <value>cylinder</value> + <value>cone</value> + <value>pyramid</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:stacked" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:percentage" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:link-data-style-to-source"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:visible"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:logarithmic"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:maximum"> + <ref name="double"/> + </attribute> + </optional> + <optional> + <attribute name="chart:minimum"> + <ref name="double"/> + </attribute> + </optional> + <optional> + <attribute name="chart:origin"> + <ref name="double"/> + </attribute> + </optional> + <optional> + <attribute name="chart:interval-major"> + <ref name="double"/> + </attribute> + </optional> + <optional> + <attribute name="chart:interval-minor"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:tick-marks-major-inner"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:tick-marks-major-outer"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:tick-marks-minor-inner"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:tick-marks-minor-outer"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:display-label"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:text-overlap"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:line-break"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:label-arrangement" + a:defaultValue="side-by-side"> + <choice> + <value>side-by-side</value> + <value>stagger-even</value> + <value>stagger-odd</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <ref name="common-style-direction-attlist"/> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <ref name="common-rotation-angle-attlist"/> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:data-label-number"> + <choice> + <value>none</value> + <value>value</value> + <value>percentage</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:data-label-text"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:data-label-symbol"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:mean-value"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:error-category" a:defaultValue="none"> + <choice> + <value>none</value> + <value>variance</value> + <value>standard-deviation</value> + <value>percentage</value> + <value>error-margin</value> + <value>constant</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:error-percentage"> + <ref name="double"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:error-margin"> + <ref name="double"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:error-lower-limit"> + <ref name="double"/> + </attribute> + </optional> + <optional> + <attribute name="chart:error-upper-limit"> + <ref name="double"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:error-upper-indicator"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:error-lower-indicator"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:series-source" a:defaultValue="columns"> + <choice> + <value>columns</value> + <value>rows</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:regression-type" a:defaultValue="none"> + <choice> + <value>none</value> + <value>linear</value> + <value>logarithmic</value> + <value>exponential</value> + <value>power</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-drawing-page-properties-attlist" + combine="interleave"> + <optional> + <attribute name="presentation:transition-type"> + <choice> + <value>manual</value> + <value>automatic</value> + <value>semi-automatic</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-drawing-page-properties-attlist" + combine="interleave"> + <optional> + <attribute name="presentation:transition-style"> + <choice> + <value>none</value> + <value>fade-from-left</value> + <value>fade-from-top</value> + <value>fade-from-right</value> + <value>fade-from-bottom</value> + <value>fade-from-upperleft</value> + <value>fade-from-upperright</value> + <value>fade-from-lowerleft</value> + <value>fade-from-lowerright</value> + <value>move-from-left</value> + <value>move-from-top</value> + <value>move-from-right</value> + <value>move-from-bottom</value> + <value>move-from-upperleft</value> + <value>move-from-upperright</value> + <value>move-from-lowerleft</value> + <value>move-from-lowerright</value> + <value>uncover-to-left</value> + <value>uncover-to-top</value> + <value>uncover-to-right</value> + <value>uncover-to-bottom</value> + <value>uncover-to-upperleft</value> + <value>uncover-to-upperright</value> + <value>uncover-to-lowerleft</value> + <value>uncover-to-lowerright</value> + <value>fade-to-center</value> + <value>fade-from-center</value> + <value>vertical-stripes</value> + <value>horizontal-stripes</value> + <value>clockwise</value> + <value>counterclockwise</value> + <value>open-vertical</value> + <value>open-horizontal</value> + <value>close-vertical</value> + <value>close-horizontal</value> + <value>wavyline-from-left</value> + <value>wavyline-from-top</value> + <value>wavyline-from-right</value> + <value>wavyline-from-bottom</value> + <value>spiralin-left</value> + <value>spiralin-right</value> + <value>spiralout-left</value> + <value>spiralout-right</value> + <value>roll-from-top</value> + <value>roll-from-left</value> + <value>roll-from-right</value> + <value>roll-from-bottom</value> + <value>stretch-from-left</value> + <value>stretch-from-top</value> + <value>stretch-from-right</value> + <value>stretch-from-bottom</value> + + <value>vertical-lines</value> + <value>horizontal-lines</value> + <value>dissolve</value> + <value>random</value> + <value>vertical-checkerboard</value> + <value>horizontal-checkerboard</value> + <value>interlocking-horizontal-left</value> + <value>interlocking-horizontal-right</value> + <value>interlocking-vertical-top</value> + <value>interlocking-vertical-bottom</value> + <value>fly-away</value> + <value>open</value> + <value>close</value> + <value>melt</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-drawing-page-properties-attlist" + combine="interleave"> + <optional> + <attribute name="presentation:transition-speed"> + <ref name="presentationSpeeds"/> + </attribute> + </optional> +</define> +<define name="style-drawing-page-properties-attlist " combine="interleave"> + <optional> + <attribute name="smil:type"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="style-drawing-page-properties-attlist" combine="interleave"> + <optional> + <attribute name="smil:subtype"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="style-drawing-page-properties-attlist" combine="interleave"> + <optional> + <attribute name="smil:direction" a:defaultValue="forward"> + <choice> + <value>forward</value> + <value>reverse</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-drawing-page-properties-attlist" combine="interleave"> + <optional> + <attribute name="smil:fadeColor"> + <choice> + <value>forward</value> + <value>reverse</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-drawing-page-properties-attlist" + combine="interleave"> + <optional> + <attribute name="presentation:duration"> + <ref name="duration"/> + </attribute> + </optional> +</define> +<define name="style-drawing-page-properties-attlist" + combine="interleave"> + <optional> + <attribute name="presentation:visibility"> + <choice> + <value>visible</value> + <value>hidden</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-drawing-page-properties-elements" + combine="interleave"> + <optional> + <ref name="presentation-sound"/> + </optional> +</define> +<define name="style-drawing-page-properties-attlist" + combine="interleave"> + <optional> + <attribute name="draw:background-size"> + <choice> + <value>full</value> + <value>border</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-drawing-page-properties-attlist" + combine="interleave"> + <optional> + <attribute name="presentation:background-objects-visible"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-drawing-page-properties-attlist" + combine="interleave"> + <optional> + <attribute name="presentation:background-visible"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-drawing-page-properties-attlist" combine="interleave"> + <optional> + <attribute name="presentation:display-header"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-drawing-page-properties-attlist" combine="interleave"> + <optional> + <attribute name="presentation:display-footer"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-drawing-page-properties-attlist" combine="interleave"> + <optional> + <attribute name="presentation:display-page-number"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-drawing-page-properties-attlist" combine="interleave"> + <optional> + <attribute name="presentation:display-date-time"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="string"> + <data type="string"/> +</define> +<define name="date"> + <data type="date"/> +</define> +<define name="time"> + <data type="time"/> +</define> +<define name="dateTime"> + <data type="dateTime"/> +</define> +<define name="duration"> + <data type="duration"/> +</define> +<define name="integer"> + <data type="integer"/> +</define> +<define name="nonNegativeInteger"> + <data type="nonNegativeInteger"/> +</define> +<define name="positiveInteger"> + <data type="positiveInteger"/> +</define> +<define name="double"> + <data type="double"/> +</define> +<define name="anyURI"> + <data type="anyURI"/> +</define> +<define name="base64Binary"> + <data type="base64Binary"/> +</define> +<define name="ID"> + <data type="ID"/> +</define> +<define name="IDREF"> + <data type="IDREF"/> +</define> +<define name="boolean"> + <choice> + <value>true</value> + <value>false</value> + </choice> +</define> +<define name="dateOrDateTime"> + <choice> + <data type="date"/> + <data type="dateTime"/> + </choice> +</define> +<define name="timeOrDateTime"> + <choice> + <data type="time"/> + <data type="dateTime"/> + </choice> +</define> +<define name="language"> + <data type="token"> + <param name="pattern">[A-Za-z]{1,8}(-[A-Za-z0-9]{1,8})*</param> + </data> +</define> +<define name="countryCode"> + <data type="token"> + <param name="pattern">[A-Za-z0-9]{1,8}</param> + </data> +</define> +<define name="languageCode"> + <data type="token"> + <param name="pattern">[A-Za-z]{1,8}</param> + </data> +</define> +<define name="character"> + <data type="string"> + <param name="length">1</param> + </data> +</define> +<define name="length"> + <data type="string"> + <param name="pattern">-?([0-9]+(\.[0-9]*)?|\.[0-9]+)((cm)|(mm)|(in)|(pt)|(pc)|(px))</param> + + </data> +</define> +<define name="nonNegativeLength"> + <data type="string"> + <param name="pattern">([0-9]+(\.[0-9]*)?|\.[0-9]+)((cm)|(mm)|(in)|(pt)|(pc)|(px))</param> + + </data> +</define> +<define name="positiveLength"> + <data type="string"> + <!-- A zero value is not allowed here --> + <param name="pattern">([0-9]+(\.[0-9]*)?|\.[0-9]+)((cm)|(mm)|(in)|(pt)|(pc)|(px))</param> + + </data> +</define> +<define name="percent"> + <data type="string"> + <param name="pattern">-?([0-9]+(\.[0-9]*)?|\.[0-9]+)%</param> + </data> +</define> +<define name="relativeLength"> + <data type="string"> + <param name="pattern">[0-9]+\*</param> + </data> +</define> +<define name="coordinate"> + <ref name="length"/> +</define> +<define name="distance"> + <ref name="length"/> +</define> +<define name="color"> + <data type="string"> + <param name="pattern">#[0-9a-fA-F]{6}</param> + </data> +</define> +<define name="styleName"> + <data type="NCName"/> +</define> +<define name="styleNameRef"> + <choice> + <data type="NCName"/> + <empty/> + </choice> +</define> +<define name="styleNameRefs"> + <list> + <zeroOrMore> + <data type="NCName"/> + </zeroOrMore> + </list> +</define> +<define name="variableName"> + <data type="string"/> +</define> +<define name="formula"> + <!-- A formula should start with a namespace prefix, --> + <!-- but has no restrictions--> + <data type="string"/> +</define> + +<define name="targetFrameName"> + <choice> + <value>_self</value> + <value>_blank</value> + <value>_parent</value> + <value>_top</value> + <ref name="string"/> + </choice> +</define> + +<define name="valueType"> + <choice> + <value>float</value> + <value>time</value> + <value>date</value> + <value>percentage</value> + <value>currency</value> + <value>boolean</value> + <value>string</value> + </choice> +</define> + +<define name="points"> + <data type="string"> + <param name="pattern">-?[0-9]+,-?[0-9]+([ ]+-?[0-9]+,-?[0-9]+)*</param> + </data> +</define> +<define name="pathData"> + <data type="string"/> +</define> + +<define name="vector3D"> + <data type="string"> + <param name="pattern">\([ ]*-?([0-9]+(\.[0-9]*)?|\.[0-9]+)([ ]+-?([0-9]+(\.[0-9]*)?|\.[0-9]+)){2}[ ]*\)</param> + + </data> +</define> + +<define name="namespacedToken"> + <data type="string"> + <param name="pattern">[0-9a-zA-Z_]+:[0-9a-zA-Z._\-]+</param> + </data> +</define> +<define name="anyAttListOrElements"> + <zeroOrMore> + <attribute> + <anyName/> + <text/> + </attribute> + </zeroOrMore> + <ref name="anyElements"/> +</define> +<define name="anyElements"> + <zeroOrMore> + <element> + <anyName/> + <mixed> + <ref name="anyAttListOrElements"/> + </mixed> + </element> + </zeroOrMore> +</define> +</grammar> diff --git a/schema/odf1.0/OpenDocument-strict-schema-v1.0-os.rng b/schema/odf1.0/OpenDocument-strict-schema-v1.0-os.rng new file mode 100644 index 000000000000..aa761dc880d2 --- /dev/null +++ b/schema/odf1.0/OpenDocument-strict-schema-v1.0-os.rng @@ -0,0 +1,61 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + OASIS OpenDocument v1.0 + OASIS Standard, 1 May 2005 + Strict Relax-NG Schema + + $Id$ + + © 2002-2005 OASIS Open + © 1999-2005 Sun Microsystems, Inc. +--> + +<grammar xmlns="http://relaxng.org/ns/structure/1.0"> + <include href="OpenDocument-schema-v1.0-os.rng"> + <define name="office-meta-content"> + <ref name="office-meta-content-strict"/> + </define> + <define name="style-page-layout-properties-content"> + <ref name="style-page-layout-properties-content-strict"/> + </define> + <define name="style-header-footer-properties-content"> + <ref name="style-header-footer-properties-content-strict"/> + </define> + <define name="style-drawing-page-properties-content"> + <ref name="style-drawing-page-properties-content-strict"/> + </define> + <define name="style-text-properties-content"> + <ref name="style-text-properties-content-strict"/> + </define> + <define name="style-paragraph-properties-content"> + <ref name="style-paragraph-properties-content-strict"/> + </define> + <define name="style-ruby-properties-content"> + <ref name="style-ruby-properties-content-strict"/> + </define> + <define name="style-section-properties-content"> + <ref name="style-section-properties-content-strict"/> + </define> + <define name="style-list-level-properties-content"> + <ref name="style-list-level-properties-content-strict"/> + </define> + <define name="style-table-properties-content"> + <ref name="style-table-properties-content-strict"/> + </define> + <define name="style-table-column-properties-content"> + <ref name="style-table-column-properties-content-strict"/> + </define> + <define name="style-table-row-properties-content"> + <ref name="style-table-row-properties-content-strict"/> + </define> + <define name="style-table-cell-properties-content"> + <ref name="style-table-cell-properties-content-strict"/> + </define> + <define name="style-graphic-properties-content"> + <ref name="style-graphic-properties-content-strict"/> + </define> + <define name="style-chart-properties-content"> + <ref name="style-properties-content"/> + </define> + </include> +</grammar> diff --git a/schema/odf1.1/OpenDocument-manifest-schema-v1.1.rng b/schema/odf1.1/OpenDocument-manifest-schema-v1.1.rng new file mode 100644 index 000000000000..4082d4ba95d6 --- /dev/null +++ b/schema/odf1.1/OpenDocument-manifest-schema-v1.1.rng @@ -0,0 +1,111 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + OASIS OpenDocument v1.1 + OASIS Standard, 1 Feb 2007 + Relax-NG Manifest Schema + + $Id$ + + © 2002-2007 OASIS Open + © 1999-2007 Sun Microsystems, Inc. +--> + +<grammar + xmlns="http://relaxng.org/ns/structure/1.0" + + datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes" + + xmlns:manifest="urn:oasis:names:tc:opendocument:xmlns:manifest:1.0"> +<define name="manifest"> + <element name="manifest:manifest"> + <oneOrMore> + <ref name="file-entry"/> + </oneOrMore> + </element> +</define> + +<start> + <choice> + <ref name="manifest"/> + </choice> +</start> +<define name="file-entry"> + <element name="manifest:file-entry"> + <ref name="file-entry-attlist"/> + <optional> + <ref name="encryption-data"/> + </optional> + </element> +</define> +<define name="file-entry-attlist" combine="interleave"> + <attribute name="manifest:full-path"> + <data type="string"/> + </attribute> +</define> +<define name="file-entry-attlist" combine="interleave"> + <optional> + <attribute name="manifest:size"> + <data type="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="file-entry-attlist" combine="interleave"> + <attribute name="manifest:media-type"> + <data type="string"/> + </attribute> +</define> +<define name="encryption-data"> + <element name="manifest:encryption-data"> + <ref name="encryption-data-attlist"/> + <ref name="algorithm"/> + <ref name="key-derivation"/> + </element> +</define> +<define name="encryption-data-attlist" combine="interleave"> + <attribute name="manifest:checksum-type"> + <data type="string"/> + </attribute> +</define> +<define name="encryption-data-attlist" combine="interleave"> + <attribute name="manifest:checksum"> + <data type="base64Binary"/> + </attribute> +</define> +<define name="algorithm"> + <element name="manifest:algorithm"> + <ref name="algorithm-attlist"/> + <empty/> + </element> +</define> +<define name="algorithm-attlist" combine="interleave"> + <attribute name="manifest:algorithm-name"> + <data type="string"/> + </attribute> +</define> +<define name="algorithm-attlist" combine="interleave"> + <attribute name="manifest:initialisation-vector"> + <data type="base64Binary"/> + </attribute> +</define> +<define name="key-derivation"> + <element name="manifest:key-derivation"> + <ref name="key-derivation-attlist"/> + <empty/> + </element> +</define> +<define name="key-derivation-attlist" combine="interleave"> + <attribute name="manifest:key-derivation-name"> + <data type="string"/> + </attribute> +</define> +<define name="key-derivation-attlist" combine="interleave"> + <attribute name="manifest:salt"> + <data type="base64Binary"/> + </attribute> +</define> +<define name="key-derivation-attlist" combine="interleave"> + <attribute name="manifest:iteration-count"> + <data type="nonNegativeInteger"/> + </attribute> +</define> +</grammar> diff --git a/schema/odf1.1/OpenDocument-schema-v1.1.rng b/schema/odf1.1/OpenDocument-schema-v1.1.rng new file mode 100644 index 000000000000..3ba6a687c49e --- /dev/null +++ b/schema/odf1.1/OpenDocument-schema-v1.1.rng @@ -0,0 +1,17891 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + OASIS OpenDocument v1.1 + OASIS Standard, 1 Feb 2007 + Relax-NG Schema + + $Id$ + + © 2002-2007 OASIS Open + © 1999-2007 Sun Microsystems, Inc. +--> + +<grammar + xmlns="http://relaxng.org/ns/structure/1.0" + xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" + + datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes" + + xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" + xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" + xmlns:config="urn:oasis:names:tc:opendocument:xmlns:config:1.0" + xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0" + xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0" + xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0" + xmlns:presentation="urn:oasis:names:tc:opendocument:xmlns:presentation:1.0" + xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0" + xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0" + xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" + xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0" + xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" + xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0" + xmlns:anim="urn:oasis:names:tc:opendocument:xmlns:animation:1.0" + + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:math="http://www.w3.org/1998/Math/MathML" + xmlns:xforms="http://www.w3.org/2002/xforms" + + xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0" + xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" + xmlns:smil="urn:oasis:names:tc:opendocument:xmlns:smil-compatible:1.0" +> +<define name="office-process-content"> + <optional> + <attribute name="office:process-content" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<start> + <choice> + <ref name="office-document"/> + <ref name="office-document-content"/> + <ref name="office-document-styles"/> + <ref name="office-document-meta"/> + <ref name="office-document-settings"/> + </choice> +</start> +<define name="office-document"> + <element name="office:document"> + <ref name="office-document-attrs"/> + <ref name="office-document-common-attrs"/> + <ref name="office-meta"/> + <ref name="office-settings"/> + <ref name="office-scripts"/> + <ref name="office-font-face-decls"/> + <ref name="office-styles"/> + <ref name="office-automatic-styles"/> + <ref name="office-master-styles"/> + <ref name="office-body"/> + </element> +</define> +<define name="office-document-content"> + <element name="office:document-content"> + <ref name="office-document-common-attrs"/> + <ref name="office-scripts"/> + <ref name="office-font-face-decls"/> + <ref name="office-automatic-styles"/> + <ref name="office-body"/> + </element> +</define> +<define name="office-document-styles"> + <element name="office:document-styles"> + <ref name="office-document-common-attrs"/> + <ref name="office-font-face-decls"/> + <ref name="office-styles"/> + <ref name="office-automatic-styles"/> + <ref name="office-master-styles"/> + </element> +</define> +<define name="office-document-meta"> + <element name="office:document-meta"> + <ref name="office-document-common-attrs"/> + <ref name="office-meta"/> + </element> +</define> +<define name="office-document-settings"> + <element name="office:document-settings"> + <ref name="office-document-common-attrs"/> + <ref name="office-settings"/> + </element> +</define> +<define name="office-document-common-attrs" combine="interleave"> + <optional> + <attribute name="office:version"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="office-document-attrs" combine="interleave"> + <attribute name="office:mimetype"> + <ref name="string"/> + </attribute> +</define> +<define name="office-meta"> + <optional> + <element name="office:meta"> + <ref name="office-meta-content"/> + </element> + </optional> +</define> + +<define name="office-meta-content"> + <ref name="anyElements"/> +</define> + +<define name="office-meta-content-strict"> + <zeroOrMore> + <ref name="office-meta-data"/> + </zeroOrMore> +</define> +<define name="office-body"> + <element name="office:body"> + <ref name="office-body-content"/> + </element> +</define> +<define name="office-body-content" combine="choice"> + <element name="office:text"> + <ref name="office-text-attlist"/> + <ref name="office-text-content-prelude"/> + <zeroOrMore> + <ref name="office-text-content-main"/> + </zeroOrMore> + <ref name="office-text-content-epilogue"/> + </element> +</define> +<define name="office-text-content-prelude"> + <ref name="office-forms"/> + <ref name="text-tracked-changes"/> + <ref name="text-decls"/> + <ref name="table-decls"/> +</define> +<define name="office-text-content-main"> + <choice> + <zeroOrMore> + <ref name="text-content"/> + </zeroOrMore> + <group> + <ref name="text-page-sequence"/> + <zeroOrMore> + <choice> + <ref name="draw-a"/> + <ref name="shape"/> + </choice> + </zeroOrMore> + </group> + </choice> +</define> + +<define name="text-content"> + <choice> + <ref name="text-h"/> + <ref name="text-p"/> + <ref name="text-list"/> + <ref name="text-numbered-paragraph"/> + <ref name="table-table"/> + <ref name="draw-a"/> + <ref name="text-section"/> + <ref name="text-soft-page-break"/> + <ref name="text-table-of-content"/> + <ref name="text-illustration-index"/> + <ref name="text-table-index"/> + <ref name="text-object-index"/> + <ref name="text-user-index"/> + <ref name="text-alphabetical-index"/> + <ref name="text-bibliography"/> + <ref name="shape"/> + <ref name="change-marks"/> + </choice> +</define> +<define name="office-text-content-epilogue"> + <ref name="table-functions"/> +</define> +<define name="office-text-attlist" combine="interleave"> + <optional> + <attribute name="text:global" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="office-text-attlist" combine="interleave"> + <optional> + <attribute name="text:use-soft-page-breaks" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="office-body-content" combine="choice"> + <element name="office:drawing"> + <ref name="office-drawing-attlist"/> + <ref name="office-drawing-content-prelude"/> + <ref name="office-drawing-content-main"/> + <ref name="office-drawing-content-epilogue"/> + </element> +</define> + +<define name="office-drawing-attlist"> + <empty/> +</define> +<define name="office-drawing-content-prelude"> + <ref name="text-decls"/> + <ref name="table-decls"/> +</define> +<define name="office-drawing-content-main"> + <zeroOrMore> + <ref name="draw-page"/> + </zeroOrMore> +</define> +<define name="office-drawing-content-epilogue"> + <ref name="table-functions"/> +</define> +<define name="office-body-content" combine="choice"> + <element name="office:presentation"> + <ref name="office-presentation-attlist"/> + <ref name="office-presentation-content-prelude"/> + <ref name="office-presentation-content-main"/> + <ref name="office-presentation-content-epilogue"/> + </element> +</define> + +<define name="office-presentation-attlist"> + <empty/> +</define> +<define name="office-presentation-content-prelude"> + <ref name="text-decls"/> + <ref name="table-decls"/> + <ref name="presentation-decls"/> +</define> +<define name="office-presentation-content-main"> + <zeroOrMore> + <ref name="draw-page"/> + </zeroOrMore> +</define> +<define name="office-presentation-content-epilogue"> + <ref name="presentation-settings"/> + <ref name="table-functions"/> +</define> +<define name="office-body-content" combine="choice"> + <element name="office:spreadsheet"> + <ref name="office-spreadsheet-attlist"/> + <ref name="office-spreadsheet-content-prelude"/> + <ref name="office-spreadsheet-content-main"/> + <ref name="office-spreadsheet-content-epilogue"/> + </element> +</define> +<define name="office-spreadsheet-content-prelude"> + <optional> + <ref name="table-tracked-changes"/> + </optional> + <ref name="text-decls"/> + <ref name="table-decls"/> +</define> + +<define name="table-decls"> + <optional> + <ref name="table-calculation-settings"/> + </optional> + <optional> + <ref name="table-content-validations"/> + </optional> + <optional> + <ref name="table-label-ranges"/> + </optional> +</define> +<define name="office-spreadsheet-content-main"> + <zeroOrMore> + <ref name="table-table"/> + </zeroOrMore> +</define> +<define name="office-spreadsheet-content-epilogue"> + <ref name="table-functions"/> +</define> + +<define name="table-functions"> + <optional> + <ref name="table-named-expressions"/> + </optional> + <optional> + <ref name="table-database-ranges"/> + </optional> + <optional> + <ref name="table-data-pilot-tables"/> + </optional> + <optional> + <ref name="table-consolidation"/> + </optional> + <optional> + <ref name="table-dde-links"/> + </optional> +</define> +<define name="office-body-content" combine="choice"> + <element name="office:chart"> + <ref name="office-chart-attlist"/> + <ref name="office-chart-content-prelude"/> + <ref name="office-chart-content-main"/> + <ref name="office-chart-content-epilogue"/> + </element> +</define> + +<define name="office-chart-attlist"> + <empty/> +</define> +<define name="office-chart-content-prelude"> + <ref name="text-decls"/> + <ref name="table-decls"/> +</define> +<define name="office-chart-content-main"> + <ref name="chart-chart"/> +</define> +<define name="office-chart-content-epilogue"> + <ref name="table-functions"/> +</define> +<define name="office-body-content" combine="choice"> + <element name="office:image"> + <ref name="office-image-attlist"/> + <ref name="office-image-content-prelude"/> + <ref name="office-image-content-main"/> + <ref name="office-image-content-epilogue"/> + </element> +</define> + +<define name="office-image-attlist"> + <empty/> +</define> +<define name="office-image-content-prelude"> + <empty/> +</define> +<define name="office-image-content-main"> + <ref name="draw-frame"/> +</define> +<define name="office-image-content-epilogue"> + <empty/> +</define> +<define name="office-settings"> + <optional> + <element name="office:settings"> + <oneOrMore> + <ref name="config-config-item-set"/> + </oneOrMore> + </element> + </optional> +</define> +<define name="config-config-item-set"> + <element name="config:config-item-set"> + <ref name="config-config-item-set-attlist"/> + <ref name="config-items"/> + </element> +</define> + +<define name="config-items"> + <oneOrMore> + <choice> + <ref name="config-config-item"/> + <ref name="config-config-item-set"/> + <ref name="config-config-item-map-named"/> + <ref name="config-config-item-map-indexed"/> + </choice> + </oneOrMore> +</define> +<define name="config-config-item-set-attlist" combine="interleave"> + <attribute name="config:name"> + <ref name="string"/> + </attribute> +</define> +<define name="config-config-item"> + <element name="config:config-item"> + <ref name="config-config-item-attlist"/> + <text/> + </element> +</define> +<define name="config-config-item-attlist" combine="interleave"> + <attribute name="config:name"> + <ref name="string"/> + </attribute> +</define> +<define name="config-config-item-attlist" combine="interleave"> + <attribute name="config:type"> + <choice> + <value>boolean</value> + <value>short</value> + <value>int</value> + <value>long</value> + <value>double</value> + <value>string</value> + <value>datetime</value> + <value>base64Binary</value> + </choice> + </attribute> +</define> +<define name="config-config-item-map-indexed"> + <element name="config:config-item-map-indexed"> + <ref name="config-config-item-map-indexed-attlist"/> + <oneOrMore> + <ref name="config-config-item-map-entry"/> + </oneOrMore> + </element> +</define> +<define name="config-config-item-map-indexed-attlist" combine="interleave"> + <attribute name="config:name"> + <ref name="string"/> + </attribute> +</define> +<define name="config-config-item-map-entry"> + <element name="config:config-item-map-entry"> + <ref name="config-config-item-map-entry-attlist"/> + <ref name="config-items"/> + </element> +</define> +<define name="config-config-item-map-entry-attlist" combine="interleave"> + <optional> + <attribute name="config:name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="config-config-item-map-named"> + <element name="config:config-item-map-named"> + <ref name="config-config-item-map-named-attlist"/> + <oneOrMore> + <ref name="config-config-item-map-entry"/> + </oneOrMore> + </element> +</define> +<define name="config-config-item-map-named-attlist" combine="interleave"> + <attribute name="config:name"> + <ref name="string"/> + </attribute> +</define> +<define name="office-scripts"> + <optional> + <element name="office:scripts"> + <zeroOrMore> + <ref name="office-script"/> + </zeroOrMore> + <optional> + <ref name="office-event-listeners"/> + </optional> + </element> + </optional> +</define> +<define name="office-script"> + <element name="office:script"> + <ref name="office-script-attlist"/> + <mixed> + <ref name="anyElements"/> + </mixed> + </element> +</define> +<define name="office-script-attlist"> + <attribute name="script:language"> + <ref name="string"/> + </attribute> +</define> +<define name="office-font-face-decls"> + <optional> + <element name="office:font-face-decls"> + <zeroOrMore> + <ref name="style-font-face"/> + </zeroOrMore> + </element> + </optional> +</define> +<define name="office-styles"> + <optional> + <element name="office:styles"> + <interleave> + <ref name="styles"/> + <zeroOrMore> + <ref name="style-default-style"/> + </zeroOrMore> + <optional> + <ref name="text-outline-style"/> + </optional> + <zeroOrMore> + <ref name="text-notes-configuration"/> + </zeroOrMore> + <optional> + <ref name="text-bibliography-configuration"/> + </optional> + <optional> + <ref name="text-linenumbering-configuration"/> + </optional> + <zeroOrMore> + <ref name="draw-gradient"/> + </zeroOrMore> + <zeroOrMore> + <ref name="svg-linearGradient"/> + </zeroOrMore> + <zeroOrMore> + <ref name="svg-radialGradient"/> + </zeroOrMore> + <zeroOrMore> + <ref name="draw-hatch"/> + </zeroOrMore> + <zeroOrMore> + <ref name="draw-fill-image"/> + </zeroOrMore> + <zeroOrMore> + <ref name="draw-marker"/> + </zeroOrMore> + <zeroOrMore> + <ref name="draw-stroke-dash"/> + </zeroOrMore> + <zeroOrMore> + <ref name="draw-opacity"/> + </zeroOrMore> + <zeroOrMore> + <ref name="style-presentation-page-layout"/> + </zeroOrMore> + </interleave> + </element> + </optional> +</define> +<define name="office-automatic-styles"> + <optional> + <element name="office:automatic-styles"> + <interleave> + <ref name="styles"/> + <zeroOrMore> + <ref name="style-page-layout"/> + </zeroOrMore> + </interleave> + </element> + </optional> +</define> +<define name="office-master-styles"> + <optional> + <element name="office:master-styles"> + <interleave> + <zeroOrMore> + <ref name="style-master-page"/> + </zeroOrMore> + <optional> + <ref name="style-handout-master"/> + </optional> + <optional> + <ref name="draw-layer-set"/> + </optional> + </interleave> + </element> + </optional> +</define> + +<define name="styles"> + <interleave> + <zeroOrMore> + <ref name="style-style"/> + </zeroOrMore> + <zeroOrMore> + <ref name="text-list-style"/> + </zeroOrMore> + <zeroOrMore> + <ref name="number-number-style"/> + </zeroOrMore> + <zeroOrMore> + <ref name="number-currency-style"/> + </zeroOrMore> + <zeroOrMore> + <ref name="number-percentage-style"/> + </zeroOrMore> + <zeroOrMore> + <ref name="number-date-style"/> + </zeroOrMore> + <zeroOrMore> + <ref name="number-time-style"/> + </zeroOrMore> + <zeroOrMore> + <ref name="number-boolean-style"/> + </zeroOrMore> + <zeroOrMore> + <ref name="number-text-style"/> + </zeroOrMore> + </interleave> +</define> +<define name="office-meta-data" combine="choice"> + <element name="meta:generator"> + <ref name="string"/> + </element> +</define> +<define name="office-meta-data" combine="choice"> + <element name="dc:title"> + <ref name="string"/> + </element> +</define> +<define name="office-meta-data" combine="choice"> + <element name="dc:description"> + <ref name="string"/> + </element> +</define> +<define name="office-meta-data" combine="choice"> + <element name="dc:subject"> + <ref name="string"/> + </element> +</define> +<define name="office-meta-data" combine="choice"> + <element name="meta:keyword"> + <ref name="string"/> + </element> +</define> +<define name="office-meta-data" combine="choice"> + <element name="meta:initial-creator"> + <ref name="string"/> + </element> +</define> +<define name="office-meta-data" combine="choice"> + <ref name="dc-creator"/> +</define> +<define name="dc-creator"> + <element name="dc:creator"> + <ref name="string"/> + </element> +</define> +<define name="office-meta-data" combine="choice"> + <element name="meta:printed-by"> + <ref name="string"/> + </element> +</define> +<define name="office-meta-data" combine="choice"> + <element name="meta:creation-date"> + <ref name="dateTime"/> + </element> +</define> +<define name="office-meta-data" combine="choice"> + <ref name="dc-date"/> +</define> +<define name="dc-date"> + <element name="dc:date"> + <ref name="dateTime"/> + </element> +</define> +<define name="office-meta-data" combine="choice"> + <element name="meta:print-date"> + <ref name="dateTime"/> + </element> +</define> +<define name="office-meta-data" combine="choice"> + <element name="meta:template"> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> + <optional> + <attribute name="xlink:type" a:defaultValue="simple"> + <value>simple</value> + </attribute> + </optional> + <optional> + <attribute name="xlink:actuate" a:defaultValue="onRequest"> + <value>onRequest</value> + </attribute> + </optional> + <optional> + <attribute name="xlink:title"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="meta:date"> + <ref name="dateTime"/> + </attribute> + </optional> + </element> +</define> +<define name="office-meta-data" combine="choice"> + <element name="meta:auto-reload"> + <optional> + <attribute name="xlink:type" a:defaultValue="simple"> + <value>simple</value> + </attribute> + </optional> + <optional> + <attribute name="xlink:show" a:defaultValue="replace"> + <value>replace</value> + </attribute> + </optional> + <optional> + <attribute name="xlink:actuate" a:defaultValue="onLoad"> + <value>onLoad</value> + </attribute> + </optional> + <optional> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> + </optional> + <optional> + <attribute name="meta:delay"> + <ref name="duration"/> + </attribute> + </optional> + </element> +</define> +<define name="office-meta-data" combine="choice"> + <element name="meta:hyperlink-behaviour"> + <optional> + <attribute name="office:target-frame-name"> + <ref name="targetFrameName"/> + </attribute> + </optional> + <optional> + <attribute name="xlink:show"> + <choice> + <value>new</value> + <value>replace</value> + </choice> + </attribute> + </optional> + </element> +</define> +<define name="office-meta-data" combine="choice"> + <element name="dc:language"> + <ref name="language"/> + </element> +</define> +<define name="office-meta-data" combine="choice"> + <element name="meta:editing-cycles"> + <ref name="nonNegativeInteger"/> + </element> +</define> +<define name="office-meta-data" combine="choice"> + <element name="meta:editing-duration"> + <ref name="duration"/> + </element> +</define> +<define name="office-meta-data" combine="choice"> + <element name="meta:document-statistic"> + <optional> + <attribute name="meta:page-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="meta:table-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="meta:draw-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="meta:image-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="meta:ole-object-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="meta:object-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="meta:paragraph-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="meta:word-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="meta:character-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="frame-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="sentence-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="syllable-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="non-whitespace-character-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="meta:row-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="meta:cell-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + </element> +</define> +<define name="office-meta-data" combine="choice"> + <element name="meta:user-defined"> + <attribute name="meta:name"> + <ref name="string"/> + </attribute> + <choice> + <group> + <attribute name="meta:value-type"> + <value>float</value> + </attribute> + <ref name="double"/> + </group> + <group> + <attribute name="meta:value-type"> + <value>date</value> + </attribute> + <ref name="dateOrDateTime"/> + </group> + <group> + <attribute name="meta:value-type"> + <value>time</value> + </attribute> + <ref name="duration"/> + </group> + <group> + <attribute name="meta:value-type"> + <value>boolean</value> + </attribute> + <ref name="boolean"/> + </group> + <group> + <attribute name="meta:value-type"> + <value>string</value> + </attribute> + <ref name="string"/> + </group> + <text/> + </choice> + </element> +</define> +<define name="text-h"> + <element name="text:h"> + <ref name="heading-attrs"/> + <ref name="paragraph-attrs"/> + <optional> + <ref name="text-number"/> + </optional> + <zeroOrMore> + <ref name="paragraph-content"/> + </zeroOrMore> + </element> +</define> +<define name="heading-attrs" combine="interleave"> + <attribute name="text:outline-level"> + <ref name="positiveInteger"/> + </attribute> +</define> +<define name="heading-attrs" combine="interleave"> + <optional> + <attribute name="text:restart-numbering" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="heading-attrs" combine="interleave"> + <optional> + <attribute name="text:start-value"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="heading-attrs" combine="interleave"> + <optional> + <attribute name="text:is-list-header" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-number"> + <element name="text:number"> + <ref name="string"/> + </element> +</define> +<define name="text-p"> + <element name="text:p"> + <ref name="paragraph-attrs"/> + <zeroOrMore> + <ref name="paragraph-content"/> + </zeroOrMore> + </element> +</define> +<define name="paragraph-attrs"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="text:class-names"> + <ref name="styleNameRefs"/> + </attribute> + </optional> + <optional> + <attribute name="text:cond-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="paragraph-attrs" combine="interleave"> + <optional> + <ref name="text-id"/> + </optional> +</define> +<define name="text-page-sequence"> + <element name="text:page-sequence"> + <oneOrMore> + <ref name="text-page"/> + </oneOrMore> + </element> +</define> +<define name="text-page"> + <element name="text:page"> + <ref name="text-page-attlist"/> + <empty/> + </element> +</define> +<define name="text-page-attlist"> + <attribute name="text:master-page-name"> + <ref name="styleNameRef"/> + </attribute> +</define> +<define name="text-list"> + <element name="text:list"> + <ref name="text-list-attr"/> + <optional> + <ref name="text-list-header"/> + </optional> + <zeroOrMore> + <ref name="text-list-item"/> + </zeroOrMore> + </element> +</define> +<define name="text-list-attr" combine="interleave"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="text-list-attr" combine="interleave"> + <optional> + <attribute name="text:continue-numbering"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-list-item"> + <element name="text:list-item"> + <ref name="text-list-item-attr"/> + <ref name="text-list-item-content"/> + </element> +</define> +<define name="text-list-item-content"> + <optional> + <ref name="text-number"/> + </optional> + <zeroOrMore> + <choice> + <ref name="text-p"/> + <ref name="text-h"/> + <ref name="text-list"/> + <ref name="text-soft-page-break"/> + </choice> + </zeroOrMore> +</define> +<define name="text-list-item-attr" combine="interleave"> + <optional> + <attribute name="text:start-value"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="text-list-header"> + <element name="text:list-header"> + <ref name="text-list-item-content"/> + </element> +</define> +<define name="text-numbered-paragraph"> + <element name="text:numbered-paragraph"> + <ref name="text-numbered-paragraph-attr"/> + <optional> + <ref name="text-number"/> + </optional> + <choice> + <ref name="text-p"/> + <ref name="text-h"/> + </choice> + </element> +</define> +<define name="text-numbered-paragraph-attr" combine="interleave"> + <optional> + <attribute name="text:level" a:defaultValue="1"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="text-numbered-paragraph-attr" combine="interleave"> + <ref name="text-list-attr"/> +</define> +<define name="text-numbered-paragraph-attr" combine="interleave"> + <ref name="text-list-item-attr"/> +</define> +<define name="text-section"> + <element name="text:section"> + <ref name="text-section-attr"/> + <choice> + <ref name="text-section-source"/> + <ref name="text-section-source-dde"/> + <empty/> + </choice> + <zeroOrMore> + <ref name="text-content"/> + </zeroOrMore> + </element> +</define> +<define name="text-section-attr" combine="interleave"> + <ref name="sectionAttr"/> +</define> +<define name="sectionAttr" combine="interleave"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="sectionAttr" combine="interleave"> + <attribute name="text:name"> + <ref name="string"/> + </attribute> +</define> +<define name="sectionAttr" combine="interleave"> + <optional> + <attribute name="text:protected"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="sectionAttr" combine="interleave"> + <optional> + <attribute name="text:protection-key"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="text-section-attr" combine="interleave"> + <choice> + <attribute name="text:display"> + <choice> + <value>true</value> + <value>none</value> + </choice> + </attribute> + <group> + <attribute name="text:display"> + <value>condition</value> + </attribute> + <attribute name="text:condition"> + <ref name="string"/> + </attribute> + </group> + <empty/> + </choice> +</define> +<define name="text-section-source"> + <element name="text:section-source"> + <ref name="text-section-source-attr"/> + </element> +</define> +<define name="text-section-source-attr" combine="interleave"> + <optional> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> + <optional> + <attribute name="xlink:type" a:defaultValue="simple"> + <value>simple</value> + </attribute> + </optional> + <optional> + <attribute name="xlink:show" a:defaultValue="embed"> + <value>embed</value> + </attribute> + </optional> + </optional> +</define> +<define name="text-section-source-attr" combine="interleave"> + <optional> + <attribute name="text:section-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="text-section-source-attr" combine="interleave"> + <optional> + <attribute name="text:filter-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="text-section-source-dde"> + <ref name="office-dde-source"/> +</define> +<define name="text-tracked-changes"> + <optional> + <element name="text:tracked-changes"> + <ref name="text-tracked-changes-attr"/> + <zeroOrMore> + <ref name="text-changed-region"/> + </zeroOrMore> + </element> + </optional> +</define> +<define name="text-tracked-changes-attr" combine="interleave"> + <optional> + <attribute name="text:track-changes" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-changed-region"> + <element name="text:changed-region"> + <ref name="text-changed-region-attr"/> + <ref name="text-changed-region-content"/> + </element> +</define> +<define name="text-changed-region-attr" combine="interleave"> + <attribute name="text:id"> + <ref name="ID"/> + </attribute> +</define> +<define name="text-changed-region-content" combine="choice"> + <element name="text:insertion"> + <ref name="office-change-info"/> + </element> +</define> +<define name="text-changed-region-content" combine="choice"> + <element name="text:deletion"> + <ref name="office-change-info"/> + <zeroOrMore> + <ref name="text-content"/> + </zeroOrMore> + </element> +</define> +<define name="text-changed-region-content" combine="choice"> + <element name="text:format-change"> + <ref name="office-change-info"/> + </element> +</define> +<define name="change-marks"> + <choice> + <element name="text:change"> + <ref name="change-mark-attr"/> + </element> + <element name="text:change-start"> + <ref name="change-mark-attr"/> + </element> + <element name="text:change-end"> + <ref name="change-mark-attr"/> + </element> + </choice> +</define> +<define name="change-mark-attr"> + <attribute name="text:change-id"> + <ref name="IDREF"/> + </attribute> +</define> +<define name="text-soft-page-break"> + <element name="text:soft-page-break"> + <empty/> + </element> +</define> +<define name="text-decls"> + <optional> + <element name="text:variable-decls"> + <zeroOrMore> + <ref name="text-variable-decl"/> + </zeroOrMore> + </element> + </optional> + <optional> + <element name="text:sequence-decls"> + <zeroOrMore> + <ref name="text-sequence-decl"/> + </zeroOrMore> + </element> + </optional> + <optional> + <element name="text:user-field-decls"> + <zeroOrMore> + <ref name="text-user-field-decl"/> + </zeroOrMore> + </element> + </optional> + <optional> + <element name="text:dde-connection-decls"> + <zeroOrMore> + <ref name="text-dde-connection-decl"/> + </zeroOrMore> + </element> + </optional> + <optional> + <ref name="text-alphabetical-index-auto-mark-file"/> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <text/> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:s"> + <optional> + <attribute name="text:c"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:tab"> + <ref name="text-tab-attr"/> + </element> +</define> +<define name="text-tab-attr"> + <optional> + <attribute name="text:tab-ref"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:line-break"> + <empty/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <ref name="text-soft-page-break"/> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:span"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="text:class-names"> + <ref name="styleNameRefs"/> + </attribute> + </optional> + <zeroOrMore> + <ref name="paragraph-content"/> + </zeroOrMore> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:a"> + <ref name="text-a-attlist"/> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="paragraph-content"/> + </zeroOrMore> + </element> +</define> +<define name="text-a-attlist" combine="interleave"> + <optional> + <attribute name="office:name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="text-a-attlist" combine="interleave"> + <optional> + <attribute name="office:title"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="text-a-attlist" combine="interleave"> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> + <optional> + <attribute name="xlink:type" a:defaultValue="simple"> + <value>simple</value> + </attribute> + </optional> + <optional> + <attribute name="xlink:actuate" a:defaultValue="onRequest"> + <value>onRequest</value> + </attribute> + </optional> +</define> +<define name="text-a-attlist" combine="interleave"> + <optional> + <attribute name="office:target-frame-name"> + <ref name="targetFrameName"/> + </attribute> + </optional> + <optional> + <attribute name="xlink:show"> + <choice> + <value>new</value> + <value>replace</value> + </choice> + </attribute> + </optional> +</define> +<define name="text-a-attlist" combine="interleave"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="text:visited-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <choice> + <element name="text:bookmark"> + <attribute name="text:name"> + <ref name="string"/> + </attribute> + </element> + <element name="text:bookmark-start"> + <attribute name="text:name"> + <ref name="string"/> + </attribute> + </element> + <element name="text:bookmark-end"> + <attribute name="text:name"> + <ref name="string"/> + </attribute> + </element> + </choice> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:reference-mark"> + <attribute name="text:name"> + <ref name="string"/> + </attribute> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <choice> + <element name="text:reference-mark-start"> + <attribute name="text:name"> + <ref name="string"/> + </attribute> + </element> + <element name="text:reference-mark-end"> + <attribute name="text:name"> + <ref name="string"/> + </attribute> + </element> + </choice> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:note"> + <ref name="text-note-class"/> + <optional> + <attribute name="text:id"> + <ref name="string"/> + </attribute> + </optional> + <element name="text:note-citation"> + <optional> + <attribute name="text:label"> + <ref name="string"/> + </attribute> + </optional> + <text/> + </element> + <element name="text:note-body"> + <zeroOrMore> + <ref name="text-content"/> + </zeroOrMore> + </element> + </element> +</define> +<define name="text-note-class"> + <attribute name="text:note-class"> + <choice> + <value>footnote</value> + <value>endnote</value> + </choice> + </attribute> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:ruby"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <element name="text:ruby-base"> + <ref name="paragraph-content"/> + </element> + <element name="text:ruby-text"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <text/> + </element> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <ref name="office-annotation"/> +</define> +<define name="paragraph-content" combine="choice"> + <ref name="change-marks"/> +</define> +<define name="paragraph-content" combine="choice"> + <choice> + <ref name="shape"/> + <ref name="draw-a"/> + </choice> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:date"> + <ref name="text-date-attlist"/> + <text/> + </element> +</define> +<define name="text-date-attlist" combine="interleave"> + <interleave> + <ref name="common-field-fixed-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + </interleave> +</define> +<define name="text-date-attlist" combine="interleave"> + <optional> + <attribute name="text:date-value"> + <ref name="dateOrDateTime"/> + </attribute> + </optional> +</define> +<define name="text-date-attlist" combine="interleave"> + <optional> + <attribute name="text:date-adjust"> + <ref name="duration"/> + </attribute> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:time"> + <ref name="text-time-attlist"/> + <text/> + </element> +</define> +<define name="text-time-attlist" combine="interleave"> + <interleave> + <ref name="common-field-fixed-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + </interleave> +</define> +<define name="text-time-attlist" combine="interleave"> + <optional> + <attribute name="text:time-value"> + <ref name="timeOrDateTime"/> + </attribute> + </optional> +</define> +<define name="text-time-attlist" combine="interleave"> + <optional> + <attribute name="text:time-adjust"> + <ref name="duration"/> + </attribute> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:page-number"> + <ref name="text-page-number-attlist"/> + <text/> + </element> +</define> +<define name="text-page-number-attlist" combine="interleave"> + <interleave> + <ref name="common-field-num-format-attlist"/> + <ref name="common-field-fixed-attlist"/> + </interleave> +</define> +<define name="text-page-number-attlist" combine="interleave"> + <optional> + <attribute name="text:page-adjust"> + <ref name="integer"/> + </attribute> + </optional> +</define> +<define name="text-page-number-attlist" combine="interleave"> + <optional> + <attribute name="text:select-page"> + <choice> + <value>previous</value> + <value>current</value> + <value>next</value> + </choice> + </attribute> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:page-continuation"> + <ref name="text-page-continuation-attlist"/> + <text/> + </element> +</define> +<define name="text-page-continuation-attlist" combine="interleave"> + <attribute name="text:select-page"> + <choice> + <value>previous</value> + <value>next</value> + </choice> + </attribute> +</define> +<define name="text-page-continuation-attlist" combine="interleave"> + <optional> + <attribute name="text:string-value"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:sender-firstname"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:sender-lastname"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:sender-initials"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:sender-title"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:sender-position"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:sender-email"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:sender-phone-private"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:sender-fax"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:sender-company"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:sender-phone-work"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:sender-street"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:sender-city"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:sender-postal-code"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:sender-country"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:sender-state-or-province"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:author-name"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:author-initials"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:chapter"> + <ref name="text-chapter-attlist"/> + <text/> + </element> +</define> +<define name="text-chapter-attlist" combine="interleave"> + <attribute name="text:display"> + <choice> + <value>name</value> + <value>number</value> + <value>number-and-name</value> + <value>plain-number-and-name</value> + <value>plain-number</value> + </choice> + </attribute> +</define> +<define name="text-chapter-attlist" combine="interleave"> + <attribute name="text:outline-level"> + <ref name="nonNegativeInteger"/> + </attribute> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:file-name"> + <ref name="text-file-name-attlist"/> + <text/> + </element> +</define> +<define name="text-file-name-attlist" combine="interleave"> + <optional> + <attribute name="text:display"> + <choice> + <value>full</value> + <value>path</value> + <value>name</value> + <value>name-and-extension</value> + </choice> + </attribute> + </optional> +</define> +<define name="text-file-name-attlist" combine="interleave"> + <ref name="common-field-fixed-attlist"/> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:template-name"> + <ref name="text-template-name-attlist"/> + <text/> + </element> +</define> +<define name="text-template-name-attlist"> + <optional> + <attribute name="text:display"> + <choice> + <value>full</value> + <value>path</value> + <value>name</value> + <value>name-and-extension</value> + <value>area</value> + <value>title</value> + </choice> + </attribute> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:sheet-name"> + <text/> + </element> +</define> +<define name="text-variable-decl"> + <element name="text:variable-decl"> + <ref name="common-field-name-attlist"/> + <ref name="common-value-type-attlist"/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:variable-set"> + <interleave> + <ref name="common-field-name-attlist"/> + <ref name="common-field-formula-attlist"/> + <ref name="common-value-and-type-attlist"/> + <ref name="common-field-display-value-none-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + </interleave> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:variable-get"> + <interleave> + <ref name="common-field-name-attlist"/> + <ref name="common-field-display-value-formula-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + </interleave> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:variable-input"> + <interleave> + <ref name="common-field-name-attlist"/> + <ref name="common-field-description-attlist"/> + <ref name="common-value-type-attlist"/> + <ref name="common-field-display-value-none-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + </interleave> + <text/> + </element> +</define> +<define name="text-user-field-decl"> + <element name="text:user-field-decl"> + <ref name="common-field-name-attlist"/> + <optional> + <ref name="common-field-formula-attlist"/> + </optional> + <ref name="common-value-and-type-attlist"/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:user-field-get"> + <interleave> + <ref name="common-field-name-attlist"/> + <ref name="common-field-display-value-formula-none-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + </interleave> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:user-field-input"> + <interleave> + <ref name="common-field-name-attlist"/> + <ref name="common-field-description-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + </interleave> + <text/> + </element> +</define> +<define name="text-sequence-decl"> + <element name="text:sequence-decl"> + <ref name="text-sequence-decl-attlist"/> + </element> +</define> +<define name="text-sequence-decl-attlist" combine="interleave"> + <ref name="common-field-name-attlist"/> +</define> +<define name="text-sequence-decl-attlist" combine="interleave"> + <attribute name="text:display-outline-level"> + <ref name="nonNegativeInteger"/> + </attribute> +</define> +<define name="text-sequence-decl-attlist" combine="interleave"> + <optional> + <attribute name="text:separation-character"> + <ref name="character"/> + </attribute> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:sequence"> + <interleave> + <ref name="common-field-name-attlist"/> + <ref name="common-field-formula-attlist"/> + <ref name="common-field-num-format-attlist"/> + <ref name="text-sequence-ref-name"/> + </interleave> + <text/> + </element> +</define> +<define name="text-sequence-ref-name"> + <optional> + <attribute name="text:ref-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:expression"> + <interleave> + <ref name="common-field-formula-attlist"/> + <optional> + <ref name="common-value-and-type-attlist"/> + </optional> + <ref name="common-field-display-value-formula-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + </interleave> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:text-input"> + <ref name="common-field-description-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:initial-creator"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:creation-date"> + <interleave> + <ref name="common-field-fixed-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + <optional> + <attribute name="text:date-value"> + <ref name="dateOrDateTime"/> + </attribute> + </optional> + </interleave> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:creation-time"> + <interleave> + <ref name="common-field-fixed-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + <optional> + <attribute name="text:time-value"> + <ref name="timeOrDateTime"/> + </attribute> + </optional> + </interleave> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:description"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:user-defined"> + <interleave> + <ref name="common-field-fixed-attlist"/> + <attribute name="text:name"> + <ref name="string"/> + </attribute> + <ref name="common-field-data-style-name-attlist"/> + <optional> + <attribute name="office:value"> + <ref name="double"/> + </attribute> + </optional> + <optional> + <attribute name="office:date-value"> + <ref name="dateOrDateTime"/> + </attribute> + </optional> + <optional> + <attribute name="office:time-value"> + <ref name="duration"/> + </attribute> + </optional> + <optional> + <attribute name="office:boolean-value"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="office:string-value"> + <ref name="string"/> + </attribute> + </optional> + </interleave> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:print-time"> + <interleave> + <ref name="common-field-fixed-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + <optional> + <attribute name="text:time-value"> + <ref name="time"/> + </attribute> + </optional> + </interleave> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:print-date"> + <interleave> + <ref name="common-field-fixed-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + <optional> + <attribute name="text:date-value"> + <ref name="date"/> + </attribute> + </optional> + </interleave> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:printed-by"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:title"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:subject"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:keywords"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:editing-cycles"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:editing-duration"> + <interleave> + <ref name="common-field-fixed-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + <optional> + <attribute name="text:duration"> + <ref name="duration"/> + </attribute> + </optional> + </interleave> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:modification-time"> + <interleave> + <ref name="common-field-fixed-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + <optional> + <attribute name="text:time-value"> + <ref name="time"/> + </attribute> + </optional> + </interleave> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:modification-date"> + <interleave> + <ref name="common-field-fixed-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + <optional> + <attribute name="text:date-value"> + <ref name="date"/> + </attribute> + </optional> + </interleave> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:creator"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element> + <choice> + <name>text:page-count</name> + <name>text:paragraph-count</name> + <name>text:word-count</name> + <name>text:character-count</name> + <name>text:table-count</name> + <name>text:image-count</name> + <name>text:object-count</name> + </choice> + <ref name="common-field-num-format-attlist"/> + <text/> + </element> +</define> +<define name="common-field-database-table"> + <ref name="common-field-database-table-attlist"/> + <ref name="common-field-database-name"/> +</define> +<define name="common-field-database-name" combine="choice"> + <optional> + <attribute name="text:database-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-field-database-name" combine="choice"> + <ref name="form-connection-resource"/> +</define> +<define name="common-field-database-table-attlist" combine="interleave"> + <attribute name="text:table-name"> + <ref name="string"/> + </attribute> +</define> +<define name="common-field-database-table-attlist" combine="interleave"> + <optional> + <attribute name="text:table-type"> + <choice> + <value>table</value> + <value>query</value> + <value>command</value> + </choice> + </attribute> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:database-display"> + <ref name="text-database-display-attlist"/> + <text/> + </element> +</define> +<define name="text-database-display-attlist" combine="interleave"> + <ref name="common-field-database-table"/> +</define> +<define name="text-database-display-attlist" combine="interleave"> + <ref name="common-field-data-style-name-attlist"/> +</define> +<define name="text-database-display-attlist" combine="interleave"> + <attribute name="text:column-name"> + <ref name="string"/> + </attribute> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:database-next"> + <ref name="text-database-next-attlist"/> + </element> +</define> +<define name="text-database-next-attlist" combine="interleave"> + <ref name="common-field-database-table"/> +</define> +<define name="text-database-next-attlist" combine="interleave"> + <optional> + <attribute name="text:condition"> + <ref name="formula"/> + </attribute> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:database-row-select"> + <ref name="text-database-row-select-attlist"/> + </element> +</define> +<define name="text-database-row-select-attlist" combine="interleave"> + <ref name="common-field-database-table"/> +</define> +<define name="text-database-row-select-attlist" combine="interleave"> + <optional> + <attribute name="text:condition"> + <ref name="formula"/> + </attribute> + </optional> +</define> +<define name="text-database-row-select-attlist" combine="interleave"> + <optional> + <attribute name="text:row-number"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:database-row-number"> + <interleave> + <ref name="common-field-database-table"/> + <ref name="common-field-num-format-attlist"/> + <optional> + <attribute name="text:value"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + </interleave> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:database-name"> + <ref name="common-field-database-table"/> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:page-variable-set"> + <ref name="text-set-page-variable-attlist"/> + <text/> + </element> +</define> +<define name="text-set-page-variable-attlist" combine="interleave"> + <optional> + <attribute name="text:active"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-set-page-variable-attlist" combine="interleave"> + <optional> + <attribute name="text:page-adjust"> + <ref name="integer"/> + </attribute> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:page-variable-get"> + <ref name="text-get-page-variable-attlist"/> + <text/> + </element> +</define> +<define name="text-get-page-variable-attlist" combine="interleave"> + <ref name="common-field-num-format-attlist"/> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:placeholder"> + <ref name="text-placeholder-attlist"/> + <text/> + </element> +</define> +<define name="text-placeholder-attlist" combine="interleave"> + <attribute name="text:placeholder-type"> + <choice> + <value>text</value> + <value>table</value> + <value>text-box</value> + <value>image</value> + <value>object</value> + </choice> + </attribute> +</define> +<define name="text-placeholder-attlist" combine="interleave"> + <ref name="common-field-description-attlist"/> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:conditional-text"> + <ref name="text-conditional-text-attlist"/> + <text/> + </element> +</define> +<define name="text-conditional-text-attlist" combine="interleave"> + <attribute name="text:condition"> + <ref name="formula"/> + </attribute> +</define> +<define name="text-conditional-text-attlist" combine="interleave"> + <attribute name="text:string-value-if-true"> + <ref name="string"/> + </attribute> +</define> +<define name="text-conditional-text-attlist" combine="interleave"> + <attribute name="text:string-value-if-false"> + <ref name="string"/> + </attribute> +</define> +<define name="text-conditional-text-attlist" combine="interleave"> + <optional> + <attribute name="text:current-value"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:hidden-text"> + <ref name="text-hidden-text-attlist"/> + <text/> + </element> +</define> +<define name="text-hidden-text-attlist" combine="interleave"> + <attribute name="text:condition"> + <ref name="formula"/> + </attribute> +</define> +<define name="text-hidden-text-attlist" combine="interleave"> + <attribute name="text:string-value"> + <ref name="string"/> + </attribute> +</define> +<define name="text-hidden-text-attlist" combine="interleave"> + <optional> + <attribute name="text:is-hidden"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <element> + <choice> + <name>text:reference-ref</name> + <name>text:bookmark-ref</name> + </choice> + <interleave> + <ref name="text-common-ref-content"/> + <ref name="text-ref-content"/> + </interleave> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:note-ref"> + <interleave> + <ref name="text-common-ref-content"/> + <ref name="text-note-ref-content"/> + <ref name="text-ref-content"/> + </interleave> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:sequence-ref"> + <interleave> + <ref name="text-common-ref-content"/> + <ref name="text-sequence-ref-content"/> + </interleave> + </element> +</define> +<define name="text-common-ref-content" combine="interleave"> + <text/> +</define> +<define name="text-common-ref-content" combine="interleave"> + <optional> + <attribute name="text:ref-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="text-note-ref-content" combine="interleave"> + <ref name="text-note-class"/> +</define> +<define name="text-ref-content" combine="interleave"> + <optional> + <attribute name="text:reference-format"> + <choice> + <value>page</value> + <value>chapter</value> + <value>direction</value> + <value>text</value> + </choice> + </attribute> + </optional> +</define> +<define name="text-sequence-ref-content" combine="interleave"> + <optional> + <attribute name="text:reference-format"> + <choice> + <value>page</value> + <value>chapter</value> + <value>direction</value> + <value>text</value> + <value>category-and-value</value> + <value>caption</value> + <value>value</value> + </choice> + </attribute> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:script"> + <interleave> + <choice> + <group> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> + <optional> + <attribute name="xlink:type" a:defaultValue="simple"> + <value>simple</value> + </attribute> + </optional> + </group> + <text/> + </choice> + <optional> + <attribute name="script:language"> + <ref name="string"/> + </attribute> + </optional> + </interleave> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:execute-macro"> + <optional> + <attribute name="text:name"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:hidden-paragraph"> + <ref name="text-hidden-paragraph-attlist"/> + <text/> + </element> +</define> +<define name="text-hidden-paragraph-attlist" combine="interleave"> + <attribute name="text:condition"> + <ref name="formula"/> + </attribute> +</define> +<define name="text-hidden-paragraph-attlist" combine="interleave"> + <optional> + <attribute name="text:is-hidden"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:dde-connection"> + <attribute name="text:connection-name"> + <ref name="string"/> + </attribute> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:measure"> + <attribute name="text:kind"> + <choice> + <value>value</value> + <value>unit</value> + <value>gap</value> + </choice> + </attribute> + <text/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:table-formula"> + <interleave> + <ref name="common-field-formula-attlist"/> + <ref name="common-field-display-value-formula-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + </interleave> + <text/> + </element> +</define> +<define name="common-value-type-attlist"> + <attribute name="office:value-type"> + <ref name="valueType"/> + </attribute> +</define> +<define name="common-value-and-type-attlist"> + <choice> + <group> + <attribute name="office:value-type"> + <value>float</value> + </attribute> + <attribute name="office:value"> + <ref name="double"/> + </attribute> + </group> + <group> + <attribute name="office:value-type"> + <value>percentage</value> + </attribute> + <attribute name="office:value"> + <ref name="double"/> + </attribute> + </group> + <group> + <attribute name="office:value-type"> + <value>currency</value> + </attribute> + <attribute name="office:value"> + <ref name="double"/> + </attribute> + <optional> + <attribute name="office:currency"> + <ref name="string"/> + </attribute> + </optional> + </group> + <group> + <attribute name="office:value-type"> + <value>date</value> + </attribute> + <attribute name="office:date-value"> + <ref name="dateOrDateTime"/> + </attribute> + </group> + <group> + <attribute name="office:value-type"> + <value>time</value> + </attribute> + <attribute name="office:time-value"> + <ref name="duration"/> + </attribute> + </group> + <group> + <attribute name="office:value-type"> + <value>boolean</value> + </attribute> + <attribute name="office:boolean-value"> + <ref name="boolean"/> + </attribute> + </group> + <group> + <attribute name="office:value-type"> + <value>string</value> + </attribute> + <optional> + <attribute name="office:string-value"> + <ref name="string"/> + </attribute> + </optional> + </group> + </choice> +</define> +<define name="common-field-fixed-attlist"> + <optional> + <attribute name="text:fixed"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="common-field-name-attlist"> + <attribute name="text:name"> + <ref name="variableName"/> + </attribute> +</define> +<define name="common-field-description-attlist"> + <optional> + <attribute name="text:description"> + <text/> + </attribute> + </optional> +</define> +<define name="common-field-display-value-none-attlist"> + <optional> + <attribute name="text:display"> + <choice> + <value>value</value> + <value>none</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-field-display-value-formula-none-attlist"> + <optional> + <attribute name="text:display"> + <choice> + <value>value</value> + <value>formula</value> + <value>none</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-field-display-value-formula-attlist"> + <optional> + <attribute name="text:display"> + <choice> + <value>value</value> + <value>formula</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-field-formula-attlist"> + <optional> + <attribute name="text:formula"> + <ref name="formula"/> + </attribute> + </optional> +</define> +<define name="common-field-data-style-name-attlist"> + <optional> + <attribute name="style:data-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="common-field-num-format-attlist"> + <optional> + <ref name="common-num-format-attlist"/> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:toc-mark-start"> + <ref name="text-toc-mark-start-attrs"/> + </element> +</define> +<define name="text-toc-mark-start-attrs"> + <ref name="text-id"/> + <ref name="text-outline-level"/> +</define> +<define name="text-outline-level"> + <optional> + <attribute name="text:outline-level"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="text-id"> + <attribute name="text:id"> + <ref name="string"/> + </attribute> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:toc-mark-end"> + <ref name="text-id"/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:toc-mark"> + <attribute name="text:string-value"> + <ref name="string"/> + </attribute> + <ref name="text-outline-level"/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:user-index-mark-start"> + <ref name="text-id"/> + <ref name="text-outline-level"/> + <ref name="text-index-name"/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:user-index-mark-end"> + <ref name="text-id"/> + <ref name="text-outline-level"/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:user-index-mark"> + <attribute name="text:string-value"> + <ref name="string"/> + </attribute> + <ref name="text-outline-level"/> + <ref name="text-index-name"/> + </element> +</define> +<define name="text-index-name"> + <attribute name="text:index-name"> + <ref name="string"/> + </attribute> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:alphabetical-index-mark-start"> + <ref name="text-id"/> + <ref name="text-alphabetical-index-mark-attrs"/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:alphabetical-index-mark-end"> + <ref name="text-id"/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:alphabetical-index-mark"> + <attribute name="text:string-value"> + <ref name="string"/> + </attribute> + <ref name="text-alphabetical-index-mark-attrs"/> + </element> +</define> +<define name="text-alphabetical-index-mark-attrs" combine="interleave"> + <optional> + <attribute name="text:key1"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="text:key2"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="text-alphabetical-index-mark-attrs" combine="interleave"> + <optional> + <attribute name="text:string-value-phonetic"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="text:key1-phonetic"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="text:key2-phonetic"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="text-alphabetical-index-mark-attrs" combine="interleave"> + <optional> + <attribute name="text:main-entry" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <element name="text:bibliography-mark"> + <attribute name="text:bibliography-type"> + <ref name="text-bibliography-types"/> + </attribute> + <zeroOrMore> + <attribute> + <choice> + <name>text:identifier</name> + <name>text:address</name> + <name>text:annote</name> + <name>text:author</name> + <name>text:booktitle</name> + <name>text:chapter</name> + <name>text:edition</name> + <name>text:editor</name> + <name>text:howpublished</name> + <name>text:institution</name> + <name>text:journal</name> + <name>text:month</name> + <name>text:note</name> + <name>text:number</name> + <name>text:organizations</name> + <name>text:pages</name> + <name>text:publisher</name> + <name>text:school</name> + <name>text:series</name> + <name>text:title</name> + <name>text:report-type</name> + <name>text:volume</name> + <name>text:year</name> + <name>text:url</name> + <name>text:custom1</name> + <name>text:custom2</name> + <name>text:custom3</name> + <name>text:custom4</name> + <name>text:custom5</name> + <name>text:isbn</name> + <name>text:issn</name> + </choice> + <ref name="string"/> + </attribute> + </zeroOrMore> + <text/> + </element> +</define> +<define name="text-bibliography-types"> + <choice> + <value>article</value> + <value>book</value> + <value>booklet</value> + <value>conference</value> + <value>custom1</value> + <value>custom2</value> + <value>custom3</value> + <value>custom4</value> + <value>custom5</value> + <value>email</value> + <value>inbook</value> + <value>incollection</value> + <value>inproceedings</value> + <value>journal</value> + <value>manual</value> + <value>mastersthesis</value> + <value>misc</value> + <value>phdthesis</value> + <value>proceedings</value> + <value>techreport</value> + <value>unpublished</value> + <value>www</value> + </choice> +</define> +<define name="text-index-body"> + <element name="text:index-body"> + <zeroOrMore> + <ref name="index-content-main"/> + </zeroOrMore> + </element> +</define> +<define name="index-content-main"> + <choice> + <ref name="text-content"/> + <ref name="text-index-title"/> + </choice> +</define> +<define name="text-index-title"> + <element name="text:index-title"> + <ref name="sectionAttr"/> + <zeroOrMore> + <ref name="index-content-main"/> + </zeroOrMore> + </element> +</define> +<define name="text-table-of-content"> + <element name="text:table-of-content"> + <ref name="sectionAttr"/> + <ref name="text-table-of-content-source"/> + <ref name="text-index-body"/> + </element> +</define> +<define name="text-table-of-content-source"> + <element name="text:table-of-content-source"> + <ref name="text-table-of-content-source-attlist"/> + <optional> + <ref name="text-index-title-template"/> + </optional> + <zeroOrMore> + <ref name="text-table-of-content-entry-template"/> + </zeroOrMore> + <zeroOrMore> + <ref name="text-index-source-styles"/> + </zeroOrMore> + </element> +</define> +<define name="text-table-of-content-source-attlist" combine="interleave"> + <optional> + <attribute name="text:outline-level"> + <choice> + <ref name="positiveInteger"/> + </choice> + </attribute> + </optional> +</define> +<define name="text-table-of-content-source-attlist" combine="interleave"> + <optional> + <attribute name="text:use-outline-level" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-table-of-content-source-attlist" combine="interleave"> + <optional> + <attribute name="text:use-index-marks"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-table-of-content-source-attlist" combine="interleave"> + <optional> + <attribute name="text:use-index-source-styles"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-table-of-content-source-attlist" combine="interleave"> + <optional> + <attribute name="text:index-scope"> + <choice> + <value>document</value> + <value>chapter</value> + </choice> + </attribute> + </optional> +</define> +<define name="text-table-of-content-source-attlist" combine="interleave"> + <optional> + <attribute name="text:relative-tab-stop-position"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-table-of-content-entry-template"> + <element name="text:table-of-content-entry-template"> + <ref name="text-table-of-content-entry-template-attlist"/> + <zeroOrMore> + <ref name="text-table-of-content-children"/> + + </zeroOrMore> + </element> +</define> +<define name="text-table-of-content-children"> + <choice> + <ref name="text-index-entry-chapter"/> + <ref name="text-index-entry-page-number"/> + <ref name="text-index-entry-text"/> + <ref name="text-index-entry-span"/> + <ref name="text-index-entry-tab-stop"/> + <ref name="text-index-entry-link-start"/> + <ref name="text-index-entry-link-end"/> + </choice> +</define> +<define name="text-table-of-content-entry-template-attlist" + combine="interleave"> + <attribute name="text:outline-level"> + <ref name="positiveInteger"/> + </attribute> +</define> +<define name="text-table-of-content-entry-template-attlist" + combine="interleave"> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> +</define> +<define name="text-illustration-index"> + <element name="text:illustration-index"> + <ref name="sectionAttr"/> + <ref name="text-illustration-index-source"/> + <ref name="text-index-body"/> + </element> +</define> +<define name="text-illustration-index-source"> + <element name="text:illustration-index-source"> + <ref name="text-illustration-index-source-attrs"/> + <optional> + <ref name="text-index-title-template"/> + </optional> + <optional> + <ref name="text-illustration-index-entry-template"/> + </optional> + </element> +</define> +<define name="text-illustration-index-source-attrs" combine="interleave"> + <ref name="text-index-scope-attr"/> +</define> +<define name="text-index-scope-attr"> + <optional> + <attribute name="text:index-scope" a:defaultValue="document"> + <choice> + <value>document</value> + <value>chapter</value> + </choice> + </attribute> + </optional> +</define> +<define name="text-illustration-index-source-attrs" combine="interleave"> + <ref name="text-relative-tab-stop-position-attr"/> +</define> +<define name="text-relative-tab-stop-position-attr"> + <optional> + <attribute name="text:relative-tab-stop-position" + a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-illustration-index-source-attrs" combine="interleave"> + <optional> + <attribute name="text:use-caption" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-illustration-index-source-attrs" combine="interleave"> + <optional> + <attribute name="text:caption-sequence-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="text-illustration-index-source-attrs" combine="interleave"> + <optional> + <attribute name="text:caption-sequence-format"> + <choice> + <value>text</value> + <value>category-and-value</value> + <value>caption</value> + </choice> + </attribute> + </optional> +</define> +<define name="text-illustration-index-entry-template"> + <element name="text:illustration-index-entry-template"> + <ref name="text-illustration-index-entry-content"/> + </element> +</define> +<define name="text-illustration-index-entry-content"> + <ref name="text-illustration-index-entry-template-attrs"/> + <zeroOrMore> + <choice> + <ref name="text-index-entry-page-number"/> + <ref name="text-index-entry-text"/> + <ref name="text-index-entry-span"/> + <ref name="text-index-entry-tab-stop"/> + </choice> + </zeroOrMore> +</define> +<define name="text-illustration-index-entry-template-attrs"> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> +</define> +<define name="text-table-index"> + <element name="text:table-index"> + <ref name="sectionAttr"/> + <ref name="text-table-index-source"/> + <ref name="text-index-body"/> + </element> +</define> +<define name="text-table-index-source"> + <element name="text:table-index-source"> + <ref name="text-illustration-index-source-attrs"/> + <optional> + <ref name="text-index-title-template"/> + </optional> + <optional> + <ref name="text-table-index-entry-template"/> + </optional> + </element> +</define> +<define name="text-table-index-entry-template"> + <element name="text:table-index-entry-template"> + <ref name="text-illustration-index-entry-content"/> + </element> +</define> +<define name="text-object-index"> + <element name="text:object-index"> + <ref name="sectionAttr"/> + <ref name="text-object-index-source"/> + <ref name="text-index-body"/> + </element> +</define> +<define name="text-object-index-source"> + <element name="text:object-index-source"> + <ref name="text-object-index-source-attrs"/> + <optional> + <ref name="text-index-title-template"/> + </optional> + <optional> + <ref name="text-object-index-entry-template"/> + </optional> + </element> +</define> +<define name="text-object-index-source-attrs" combine="interleave"> + <ref name="text-index-scope-attr"/> +</define> +<define name="text-object-index-source-attrs" combine="interleave"> + <ref name="text-relative-tab-stop-position-attr"/> +</define> +<define name="text-object-index-source-attrs" combine="interleave"> + <optional> + <attribute name="text:use-spreadsheet-objects" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-object-index-source-attrs" combine="interleave"> + <optional> + <attribute name="text:use-math-objects" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-object-index-source-attrs" combine="interleave"> + <optional> + <attribute name="text:use-draw-objects" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-object-index-source-attrs" combine="interleave"> + <optional> + <attribute name="text:use-chart-objects" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-object-index-source-attrs" combine="interleave"> + <optional> + <attribute name="text:use-other-objects" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-object-index-entry-template"> + <element name="text:object-index-entry-template"> + <ref name="text-illustration-index-entry-content"/> + </element> +</define> +<define name="text-user-index"> + <element name="text:user-index"> + <ref name="sectionAttr"/> + <ref name="text-user-index-source"/> + <ref name="text-index-body"/> + </element> +</define> +<define name="text-user-index-source"> + <element name="text:user-index-source"> + <ref name="text-user-index-source-attr"/> + <optional> + <ref name="text-index-title-template"/> + </optional> + <zeroOrMore> + <ref name="text-user-index-entry-template"/> + </zeroOrMore> + <zeroOrMore> + <ref name="text-index-source-styles"/> + </zeroOrMore> + </element> +</define> +<define name="text-user-index-source-attr" combine="interleave"> + <ref name="text-index-scope-attr"/> + <ref name="text-relative-tab-stop-position-attr"/> + <attribute name="text:index-name"> + <ref name="string"/> + </attribute> +</define> +<define name="text-user-index-source-attr" combine="interleave"> + <optional> + <attribute name="text:use-index-marks" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:use-graphics" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:use-tables" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:use-floating-frames" + a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:use-objects" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-user-index-source-attr" combine="interleave"> + <optional> + <attribute name="text:copy-outline-levels" + a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-user-index-entry-template"> + <element name="text:user-index-entry-template"> + <ref name="text-user-index-entry-template-attrs"/> + <zeroOrMore> + <choice> + <ref name="text-index-entry-chapter"/> + <ref name="text-index-entry-page-number"/> + <ref name="text-index-entry-text"/> + <ref name="text-index-entry-span"/> + <ref name="text-index-entry-tab-stop"/> + </choice> + </zeroOrMore> + </element> +</define> +<define name="text-user-index-entry-template-attrs" combine="interleave"> + <attribute name="text:outline-level"> + <ref name="positiveInteger"/> + </attribute> +</define> +<define name="text-user-index-entry-template-attrs" combine="interleave"> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> +</define> +<define name="text-alphabetical-index"> + <element name="text:alphabetical-index"> + <ref name="sectionAttr"/> + <ref name="text-alphabetical-index-source"/> + <ref name="text-index-body"/> + </element> +</define> +<define name="text-alphabetical-index-source"> + <element name="text:alphabetical-index-source"> + <ref name="text-alphabetical-index-source-attrs"/> + <optional> + <ref name="text-index-title-template"/> + </optional> + <zeroOrMore> + <ref name="text-alphabetical-index-entry-template"/> + </zeroOrMore> + </element> +</define> +<define name="text-alphabetical-index-source-attrs" combine="interleave"> + <ref name="text-index-scope-attr"/> + <ref name="text-relative-tab-stop-position-attr"/> +</define> +<define name="text-alphabetical-index-source-attrs" combine="interleave"> + <optional> + <attribute name="text:ignore-case" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-alphabetical-index-source-attrs" combine="interleave"> + <optional> + <attribute name="text:main-entry-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="text-alphabetical-index-source-attrs" combine="interleave"> + <optional> + <attribute name="text:alphabetical-separators" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-alphabetical-index-source-attrs" combine="interleave"> + <optional> + <attribute name="text:combine-entries" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:combine-entries-with-dash" + a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:combine-entries-with-pp" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-alphabetical-index-source-attrs" combine="interleave"> + <optional> + <attribute name="text:use-keys-as-entries" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-alphabetical-index-source-attrs" combine="interleave"> + <optional> + <attribute name="text:capitalize-entries" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-alphabetical-index-source-attrs" combine="interleave"> + <optional> + <attribute name="text:comma-separated" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-alphabetical-index-source-attrs" combine="interleave"> + <optional> + <attribute name="fo:language"> + <ref name="languageCode"/> + </attribute> + </optional> +</define> +<define name="text-alphabetical-index-source-attrs" combine="interleave"> + <optional> + <attribute name="fo:country"> + <ref name="countryCode"/> + </attribute> + </optional> +</define> +<define name="text-alphabetical-index-source-attrs" combine="interleave"> + <optional> + <attribute name="text:sort-algorithm"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="text-alphabetical-index-auto-mark-file"> + <element name="text:alphabetical-index-auto-mark-file"> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> + <optional> + <attribute name="xlink:type" a:defaultValue="simple"> + <value>simple</value> + </attribute> + </optional> + </element> +</define> +<define name="text-alphabetical-index-entry-template"> + <element name="text:alphabetical-index-entry-template"> + <ref name="text-alphabetical-index-entry-template-attrs"/> + <zeroOrMore> + <choice> + <ref name="text-index-entry-chapter"/> + <ref name="text-index-entry-page-number"/> + <ref name="text-index-entry-text"/> + <ref name="text-index-entry-span"/> + <ref name="text-index-entry-tab-stop"/> + </choice> + </zeroOrMore> + </element> +</define> +<define name="text-alphabetical-index-entry-template-attrs" + combine="interleave"> + <attribute name="text:outline-level"> + <choice> + <value>1</value> + <value>2</value> + <value>3</value> + <value>separator</value> + </choice> + </attribute> +</define> +<define name="text-alphabetical-index-entry-template-attrs" + combine="interleave"> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> +</define> +<define name="text-bibliography"> + <element name="text:bibliography"> + <ref name="sectionAttr"/> + <ref name="text-bibliography-source"/> + <ref name="text-index-body"/> + </element> +</define> +<define name="text-bibliography-source"> + <element name="text:bibliography-source"> + <optional> + <ref name="text-index-title-template"/> + </optional> + <zeroOrMore> + <ref name="text-bibliography-entry-template"/> + </zeroOrMore> + </element> +</define> +<define name="text-bibliography-entry-template"> + <element name="text:bibliography-entry-template"> + <ref name="text-bibliography-entry-template-attrs"/> + <zeroOrMore> + <choice> + <ref name="text-index-entry-span"/> + <ref name="text-index-entry-tab-stop"/> + <ref name="text-index-entry-bibliography"/> + </choice> + </zeroOrMore> + </element> +</define> +<define name="text-bibliography-entry-template-attrs" combine="interleave"> + <attribute name="text:bibliography-type"> + <ref name="text-bibliography-types"/> + </attribute> +</define> +<define name="text-bibliography-entry-template-attrs" combine="interleave"> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> +</define> +<define name="text-index-source-styles"> + <element name="text:index-source-styles"> + <attribute name="text:outline-level"> + <ref name="positiveInteger"/> + </attribute> + <zeroOrMore> + <ref name="text-index-source-style"/> + </zeroOrMore> + </element> +</define> +<define name="text-index-source-style"> + <element name="text:index-source-style"> + <attribute name="text:style-name"> + <ref name="styleName"/> + </attribute> + <empty/> + </element> +</define> +<define name="text-index-title-template"> + <element name="text:index-title-template"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <text/> + </element> +</define> +<define name="text-index-entry-chapter"> + <element name="text:index-entry-chapter"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <ref name="text-index-entry-chapter-attrs"/> + </element> +</define> +<define name="text-index-entry-chapter-attrs"> + <optional> + <attribute name="text:display" a:defaultValue="number"> + <choice> + <value>name</value> + <value>number</value> + <value>number-and-name</value> + </choice> + </attribute> + </optional> +</define> +<define name="text-index-entry-text"> + <element name="text:index-entry-text"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + </element> +</define> +<define name="text-index-entry-page-number"> + <element name="text:index-entry-page-number"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + </element> +</define> +<define name="text-index-entry-span"> + <element name="text:index-entry-span"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <text/> + </element> +</define> +<define name="text-index-entry-bibliography"> + <element name="text:index-entry-bibliography"> + <ref name="text-index-entry-bibliography-attrs"/> + </element> +</define> +<define name="text-index-entry-bibliography-attrs" combine="interleave"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="text-index-entry-bibliography-attrs" combine="interleave"> + <attribute name="text:bibliography-data-field"> + <choice> + <value>address</value> + <value>annote</value> + <value>author</value> + <value>bibliography-type</value> + <value>booktitle</value> + <value>chapter</value> + <value>custom1</value> + <value>custom2</value> + <value>custom3</value> + <value>custom4</value> + <value>custom5</value> + <value>edition</value> + <value>editor</value> + <value>howpublished</value> + <value>identifier</value> + <value>institution</value> + <value>isbn</value> + <value>issn</value> + <value>journal</value> + <value>month</value> + <value>note</value> + <value>number</value> + <value>organizations</value> + <value>pages</value> + <value>publisher</value> + <value>report-type</value> + <value>school</value> + <value>series</value> + <value>title</value> + <value>url</value> + <value>volume</value> + <value>year</value> + </choice> + </attribute> +</define> +<define name="text-index-entry-tab-stop"> + <element name="text:index-entry-tab-stop"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <ref name="text-index-entry-tab-stop-attrs"/> + </element> +</define> +<define name="text-index-entry-tab-stop-attrs" combine="interleave"> + <optional> + <attribute name="style:leader-char"> + <ref name="character"/> + </attribute> + </optional> +</define> +<define name="text-index-entry-tab-stop-attrs" combine="interleave"> + <choice> + <attribute name="style:type"> + <value>right</value> + </attribute> + <group> + <attribute name="style:type"> + <value>left</value> + </attribute> + <attribute name="style:position"> + <ref name="length"/> + </attribute> + </group> + </choice> +</define> +<define name="text-index-entry-link-start"> + <element name="text:index-entry-link-start"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + </element> +</define> +<define name="text-index-entry-link-end"> + <element name="text:index-entry-link-end"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + </element> +</define> +<define name="table-table"> + <element name="table:table"> + <ref name="table-table-attlist"/> + <optional> + <ref name="table-table-source"/> + </optional> + <optional> + <ref name="office-dde-source"/> + </optional> + <optional> + <ref name="table-scenario"/> + </optional> + <optional> + <ref name="office-forms"/> + </optional> + <optional> + <ref name="table-shapes"/> + </optional> + <ref name="table-columns-and-groups"/> + <ref name="table-rows-and-groups"/> + </element> +</define> +<define name="table-columns-and-groups"> + <oneOrMore> + <choice> + <ref name="table-table-column-group"/> + <ref name="table-columns-no-group"/> + </choice> + </oneOrMore> +</define> + +<define name="table-columns-no-group"> + <choice> + <group> + <ref name="table-columns"/> + <optional> + <ref name="table-table-header-columns"/> + <optional> + <ref name="table-columns"/> + </optional> + </optional> + </group> + <group> + <ref name="table-table-header-columns"/> + <optional> + <ref name="table-columns"/> + </optional> + </group> + </choice> +</define> + +<define name="table-columns"> + <choice> + <ref name="table-table-columns"/> + <oneOrMore> + <ref name="table-table-column"/> + </oneOrMore> + </choice> +</define> + +<define name="table-rows-and-groups"> + <oneOrMore> + <choice> + <ref name="table-table-row-group"/> + <ref name="table-rows-no-group"/> + </choice> + </oneOrMore> +</define> + +<define name="table-rows-no-group"> + <choice> + <group> + <ref name="table-rows"/> + <optional> + <ref name="table-table-header-rows"/> + <optional> + <ref name="table-rows"/> + </optional> + </optional> + </group> + <group> + <ref name="table-table-header-rows"/> + <optional> + <ref name="table-rows"/> + </optional> + </group> + </choice> +</define> + +<define name="table-rows"> + <choice> + <ref name="table-table-rows"/> + <oneOrMore> + <optional> + <ref name="text-soft-page-break"/> + </optional> + <ref name="table-table-row"/> + </oneOrMore> + </choice> +</define> +<define name="table-table-attlist" combine="interleave"> + <optional> + <attribute name="table:name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="table-table-attlist" combine="interleave"> + <optional> + <attribute name="table:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="table-table-attlist" combine="interleave"> + <optional> + <attribute name="table:protected" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:protection-key"> + <text/> + </attribute> + </optional> +</define> +<define name="table-table-attlist" combine="interleave"> + <optional> + <attribute name="table:print" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-table-attlist" combine="interleave"> + <optional> + <attribute name="table:print-ranges"> + <ref name="cellRangeAddressList"/> + </attribute> + </optional> +</define> +<define name="table-table-row"> + <element name="table:table-row"> + <ref name="table-table-row-attlist"/> + <oneOrMore> + <choice> + <ref name="table-table-cell"/> + <ref name="table-covered-table-cell"/> + </choice> + </oneOrMore> + </element> +</define> +<define name="table-table-row-attlist" combine="interleave"> + <optional> + <attribute name="table:number-rows-repeated" a:defaultValue="1"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="table-table-row-attlist" combine="interleave"> + <optional> + <attribute name="table:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="table-table-row-attlist" combine="interleave"> + <optional> + <attribute name="table:default-cell-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="table-table-row-attlist" combine="interleave"> + <optional> + <attribute name="table:visibility" a:defaultValue="visible"> + <ref name="table-visibility-value"/> + </attribute> + </optional> +</define> + +<define name="table-visibility-value"> + <choice> + <value>visible</value> + <value>collapse</value> + <value>filter</value> + </choice> +</define> +<define name="table-table-cell"> + <element name="table:table-cell"> + <ref name="table-table-cell-attlist"/> + <ref name="table-table-cell-attlist-extra"/> + <ref name="table-table-cell-content"/> + </element> +</define> + +<define name="table-covered-table-cell"> + <element name="table:covered-table-cell"> + <ref name="table-table-cell-attlist"/> + <ref name="table-table-cell-content"/> + </element> +</define> + +<define name="table-table-cell-content"> + <optional> + <ref name="table-cell-range-source"/> + </optional> + <optional> + <ref name="office-annotation"/> + </optional> + <optional> + <ref name="table-detective"/> + </optional> + <zeroOrMore> + <ref name="text-content"/> + </zeroOrMore> +</define> +<define name="table-table-cell-attlist" combine="interleave"> + <optional> + <attribute name="table:number-columns-repeated" a:defaultValue="1"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="table-table-cell-attlist-extra" combine="interleave"> + <optional> + <attribute name="table:number-columns-spanned" a:defaultValue="1"> + <ref name="positiveInteger"/> + </attribute> + </optional> + <optional> + <attribute name="table:number-rows-spanned" a:defaultValue="1"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="table-table-cell-attlist" combine="interleave"> + <optional> + <attribute name="table:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="table-table-cell-attlist" combine="interleave"> + <optional> + <attribute name="table:content-validation-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="table-table-cell-attlist" combine="interleave"> + <optional> + <attribute name="table:formula"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="table-table-cell-attlist-extra" combine="interleave"> + <optional> + <attribute name="table:number-matrix-columns-spanned"> + <ref name="positiveInteger"/> + </attribute> + </optional> + <optional> + <attribute name="table:number-matrix-rows-spanned"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="table-table-cell-attlist" combine="interleave"> + <optional> + <ref name="common-value-and-type-attlist"/> + </optional> +</define> +<define name="table-table-cell-attlist" combine="interleave"> + <optional> + <attribute name="table:protect" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-table-column"> + <element name="table:table-column"> + <ref name="table-table-column-attlist"/> + <empty/> + </element> +</define> +<define name="table-table-column-attlist" combine="interleave"> + <optional> + <attribute name="table:number-columns-repeated" a:defaultValue="1"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="table-table-column-attlist" combine="interleave"> + <optional> + <attribute name="table:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="table-table-column-attlist" combine="interleave"> + <optional> + <attribute name="table:visibility" a:defaultValue="visible"> + <ref name="table-visibility-value"/> + </attribute> + </optional> +</define> +<define name="table-table-column-attlist" combine="interleave"> + <optional> + <attribute name="table:default-cell-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="table-table-header-columns"> + <element name="table:table-header-columns"> + <oneOrMore> + <ref name="table-table-column"/> + </oneOrMore> + </element> +</define> + +<define name="table-table-columns"> + <element name="table:table-columns"> + <oneOrMore> + <ref name="table-table-column"/> + </oneOrMore> + </element> +</define> +<define name="table-table-column-group"> + <element name="table:table-column-group"> + <ref name="table-table-column-group-attlist"/> + <ref name="table-columns-and-groups"/> + </element> +</define> +<define name="table-table-column-group-attlist" combine="interleave"> + <optional> + <attribute name="table:display" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-table-header-rows"> + <element name="table:table-header-rows"> + <oneOrMore> + <optional> + <ref name="text-soft-page-break"/> + </optional> + <ref name="table-table-row"/> + </oneOrMore> + </element> +</define> + +<define name="table-table-rows"> + <element name="table:table-rows"> + <oneOrMore> + <optional> + <ref name="text-soft-page-break"/> + </optional> + <ref name="table-table-row"/> + </oneOrMore> + </element> +</define> +<define name="table-table-row-group"> + <element name="table:table-row-group"> + <ref name="table-table-row-group-attlist"/> + <ref name="table-rows-and-groups"/> + </element> +</define> +<define name="table-table-row-group-attlist" combine="interleave"> + <optional> + <attribute name="table:display" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-table-attlist" combine="interleave"> + <optional> + <attribute name="table:is-sub-table" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="cellAddress"> + <data type="string"> + <param name="pattern">($?([^\. ']+|'([^']|'')+'))?\.$?[A-Z]+$?[0-9]+</param> + + </data> +</define> +<define name="cellRangeAddress"> + <data type="string"> + <param name="pattern">($?([^\. ']+|'([^']|'')+'))?\.$?[A-Z]+$?[0-9]+(:($?([^\. ']+|'([^']|'')+'))?\.$?[A-Z]+$?[0-9]+)?</param> + + </data> +</define> +<define name="cellRangeAddressList"> + <!-- Value is a space separated list of "cellRangeAddress" patterns --> + <data type="string"/> +</define> +<define name="table-table-source"> + <element name="table:table-source"> + <ref name="table-table-source-attlist"/> + <ref name="table-linked-source-attlist"/> + <empty/> + </element> +</define> +<define name="table-table-source-attlist" combine="interleave"> + <optional> + <attribute name="table:mode" a:defaultValue="copy-all"> + <choice> + <value>copy-all</value> + <value>copy-results-only</value> + </choice> + </attribute> + </optional> +</define> +<define name="table-table-source-attlist" combine="interleave"> + <optional> + <attribute name="table:table-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="table-linked-source-attlist" combine="interleave"> + <optional> + <attribute name="xlink:type" a:defaultValue="simple"> + <value>simple</value> + </attribute> + </optional> + <optional> + <attribute name="xlink:actuate" a:defaultValue="onRequest"> + <value>onRequest</value> + </attribute> + </optional> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> +</define> +<define name="table-linked-source-attlist" combine="interleave"> + <optional> + <attribute name="table:filter-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="table-linked-source-attlist" combine="interleave"> + <optional> + <attribute name="table:filter-options"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="table-linked-source-attlist" combine="interleave"> + <optional> + <attribute name="table:refresh-delay"> + <ref name="duration"/> + </attribute> + </optional> +</define> +<define name="table-scenario"> + <element name="table:scenario"> + <ref name="table-scenario-attlist"/> + <empty/> + </element> +</define> +<define name="table-scenario-attlist" combine="interleave"> + <attribute name="table:scenario-ranges"> + <ref name="cellRangeAddressList"/> + </attribute> +</define> +<define name="table-scenario-attlist" combine="interleave"> + <attribute name="table:is-active"> + <ref name="boolean"/> + </attribute> +</define> +<define name="table-scenario-attlist" combine="interleave"> + <optional> + <attribute name="table:display-border" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-scenario-attlist" combine="interleave"> + <optional> + <attribute name="table:border-color"> + <ref name="color"/> + </attribute> + </optional> +</define> +<define name="table-scenario-attlist" combine="interleave"> + <optional> + <attribute name="table:copy-back" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-scenario-attlist" combine="interleave"> + <optional> + <attribute name="table:copy-styles" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-scenario-attlist" combine="interleave"> + <optional> + <attribute name="table:copy-formulas" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-scenario-attlist" combine="interleave"> + <optional> + <attribute name="table:comment"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="table-scenario-attlist" combine="interleave"> + <optional> + <attribute name="table:protected"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-shapes"> + <element name="table:shapes"> + <oneOrMore> + <ref name="shape"/> + </oneOrMore> + </element> +</define> +<define name="table-cell-range-source"> + <element name="table:cell-range-source"> + <ref name="table-table-cell-range-source-attlist"/> + <ref name="table-linked-source-attlist"/> + <empty/> + </element> +</define> +<define name="table-table-cell-range-source-attlist" combine="interleave"> + <attribute name="table:name"> + <ref name="string"/> + </attribute> +</define> +<define name="table-table-cell-range-source-attlist" combine="interleave"> + <attribute name="table:last-column-spanned"> + <ref name="positiveInteger"/> + </attribute> + <attribute name="table:last-row-spanned"> + <ref name="positiveInteger"/> + </attribute> +</define> +<define name="table-detective"> + <element name="table:detective"> + <zeroOrMore> + <ref name="table-highlighted-range"/> + </zeroOrMore> + <zeroOrMore> + <ref name="table-operation"/> + </zeroOrMore> + </element> +</define> +<define name="table-operation"> + <element name="table:operation"> + <ref name="table-operation-attlist"/> + <empty/> + </element> +</define> +<define name="table-operation-attlist" combine="interleave"> + <attribute name="table:name"> + <choice> + <value>trace-dependents</value> + <value>remove-dependents</value> + <value>trace-precedents</value> + <value>remove-precedents</value> + <value>trace-errors</value> + </choice> + </attribute> +</define> +<define name="table-operation-attlist" combine="interleave"> + <attribute name="table:index"> + <ref name="nonNegativeInteger"/> + </attribute> +</define> +<define name="table-highlighted-range"> + <element name="table:highlighted-range"> + <choice> + <group> + <ref name="table-highlighted-range-attlist"/> + </group> + <group> + <ref name="table-highlighted-range-attlist-invalid"/> + </group> + </choice> + <empty/> + </element> +</define> +<define name="table-highlighted-range-attlist" combine="interleave"> + <optional> + <attribute name="table:cell-range-address"> + <ref name="cellRangeAddress"/> + </attribute> + </optional> +</define> +<define name="table-highlighted-range-attlist" combine="interleave"> + <attribute name="table:direction"> + <choice> + <value>from-another-table</value> + <value>to-another-table</value> + <value>from-same-table</value> + </choice> + </attribute> +</define> +<define name="table-highlighted-range-attlist" combine="interleave"> + <optional> + <attribute name="table:contains-error" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-highlighted-range-attlist-invalid" combine="interleave"> + <attribute name="table:marked-invalid"> + <ref name="boolean"/> + </attribute> +</define> +<define name="office-spreadsheet-attlist" combine="interleave"> + <optional> + <attribute name="table:structure-protected" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:protection-key"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="table-calculation-settings"> + <element name="table:calculation-settings"> + <ref name="table-calculation-setting-attlist"/> + <optional> + <ref name="table-null-date"/> + </optional> + <optional> + <ref name="table-iteration"/> + </optional> + </element> +</define> +<define name="table-calculation-setting-attlist" combine="interleave"> + <optional> + <attribute name="table:case-sensitive" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-calculation-setting-attlist" combine="interleave"> + <optional> + <attribute name="table:precision-as-shown" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-calculation-setting-attlist" combine="interleave"> + <optional> + <attribute name="table:search-criteria-must-apply-to-whole-cell" + a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-calculation-setting-attlist" combine="interleave"> + <optional> + <attribute name="table:automatic-find-labels" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-calculation-setting-attlist" combine="interleave"> + <optional> + <attribute name="table:use-regular-expressions" + a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-calculation-setting-attlist" combine="interleave"> + <optional> + <attribute name="table:null-year" a:defaultValue="1930"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="table-null-date"> + <element name="table:null-date"> + <optional> + <attribute name="table:value-type" a:defaultValue="date"> + <ref name="valueType"/> + </attribute> + </optional> + <optional> + <attribute name="table:date-value" + a:defaultValue="1899-12-30"> + <ref name="date"/> + </attribute> + </optional> + <empty/> + </element> +</define> +<define name="table-iteration"> + <element name="table:iteration"> + <optional> + <attribute name="table:status" a:defaultValue="disable"> + <choice> + <value>enable</value> + <value>disable</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="table:steps" a:defaultValue="100"> + <ref name="positiveInteger"/> + </attribute> + </optional> + <optional> + <attribute name="table:maximum-difference" + a:defaultValue="0.001"> + <ref name="double"/> + </attribute> + </optional> + <empty/> + </element> +</define> +<define name="table-content-validations"> + <element name="table:content-validations"> + <oneOrMore> + <ref name="table-content-validation"/> + </oneOrMore> + </element> +</define> + +<define name="table-content-validation"> + <element name="table:content-validation"> + <ref name="table-validation-attlist"/> + <optional> + <ref name="table-help-message"/> + </optional> + <optional> + <choice> + <ref name="table-error-message"/> + <group> + <ref name="table-error-macro"/> + <optional> + <ref name="office-event-listeners"/> + </optional> + </group> + </choice> + </optional> + </element> +</define> +<define name="table-validation-attlist" combine="interleave"> + <attribute name="table:name"> + <ref name="string"/> + </attribute> +</define> +<define name="table-validation-attlist" combine="interleave"> + <optional> + <attribute name="table:condition"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="table-validation-attlist" combine="interleave"> + <optional> + <attribute name="table:base-cell-address"> + <ref name="cellAddress"/> + </attribute> + </optional> +</define> +<define name="table-validation-attlist" combine="interleave"> + <optional> + <attribute name="table:allow-empty-cell" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-validation-attlist" combine="interleave"> + <optional> + <attribute name="table:display-list" a:defaultValue="unsorted"> + <choice> + <value>none</value> + <value>unsorted</value> + <value>sort-ascending</value> + </choice> + </attribute> + </optional> +</define> +<define name="table-help-message"> + <element name="table:help-message"> + <optional> + <attribute name="table:title"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="table:display" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> + <zeroOrMore> + <ref name="text-p"/> + </zeroOrMore> + </element> +</define> +<define name="table-error-message"> + <element name="table:error-message"> + <optional> + <attribute name="table:title"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="table:display" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:message-type" a:defaultValue="stop"> + <choice> + <value>stop</value> + <value>warning</value> + <value>information</value> + </choice> + </attribute> + </optional> + <zeroOrMore> + <ref name="text-p"/> + </zeroOrMore> + </element> +</define> +<define name="table-error-macro"> + <element name="table:error-macro"> + <optional> + <attribute name="table:execute" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> + </element> +</define> +<define name="table-label-ranges"> + <element name="table:label-ranges"> + <zeroOrMore> + <ref name="table-label-range"/> + </zeroOrMore> + </element> +</define> + +<define name="table-label-range"> + <element name="table:label-range"> + <ref name="table-label-range-attlist"/> + <empty/> + </element> +</define> +<define name="table-label-range-attlist" combine="interleave"> + <attribute name="table:label-cell-range-address"> + <ref name="cellRangeAddress"/> + </attribute> +</define> +<define name="table-label-range-attlist" combine="interleave"> + <attribute name="table:data-cell-range-address"> + <ref name="cellRangeAddress"/> + </attribute> +</define> +<define name="table-label-range-attlist" combine="interleave"> + <attribute name="table:orientation"> + <choice> + <value>column</value> + <value>row</value> + </choice> + </attribute> +</define> +<define name="table-named-expressions"> + <element name="table:named-expressions"> + <zeroOrMore> + <choice> + <ref name="table-named-range"/> + <ref name="table-named-expression"/> + </choice> + </zeroOrMore> + </element> +</define> + +<define name="table-named-range"> + <element name="table:named-range"> + <ref name="table-named-range-attlist"/> + <empty/> + </element> +</define> + +<define name="table-named-range-attlist" combine="interleave"> + <attribute name="table:name"> + <ref name="string"/> + </attribute> + <attribute name="table:cell-range-address"> + <ref name="cellRangeAddress"/> + </attribute> + <optional> + <attribute name="table:base-cell-address"> + <ref name="cellAddress"/> + </attribute> + </optional> + <optional> + <attribute name="table:range-usable-as" a:defaultValue="none"> + <choice> + <value>none</value> + <list> + <oneOrMore> + <choice> + <value>print-range</value> + <value>filter</value> + <value>repeat-row</value> + <value>repeat-column</value> + </choice> + </oneOrMore> + </list> + </choice> + </attribute> + </optional> +</define> +<define name="table-named-expression"> + <element name="table:named-expression"> + <ref name="table-named-expression-attlist"/> + <empty/> + </element> +</define> + +<define name="table-named-expression-attlist" combine="interleave"> + <attribute name="table:name"> + <ref name="string"/> + </attribute> + <attribute name="table:expression"> + <ref name="string"/> + </attribute> + <optional> + <attribute name="table:base-cell-address"> + <ref name="cellAddress"/> + </attribute> + </optional> +</define> +<define name="table-database-ranges"> + <element name="table:database-ranges"> + <zeroOrMore> + <ref name="table-database-range"/> + </zeroOrMore> + </element> +</define> +<define name="table-database-range"> + <element name="table:database-range"> + <ref name="table-database-range-attlist"/> + <optional> + <choice> + <ref name="table-database-source-sql"/> + <ref name="table-database-source-table"/> + <ref name="table-database-source-query"/> + </choice> + </optional> + <optional> + <ref name="table-filter"/> + </optional> + <optional> + <ref name="table-sort"/> + </optional> + <optional> + <ref name="table-subtotal-rules"/> + </optional> + </element> +</define> +<define name="table-database-range-attlist" combine="interleave"> + <optional> + <attribute name="table:name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="table-database-range-attlist" combine="interleave"> + <optional> + <attribute name="table:is-selection" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-database-range-attlist" combine="interleave"> + <optional> + <attribute name="table:on-update-keep-styles" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-database-range-attlist" combine="interleave"> + <optional> + <attribute name="table:on-update-keep-size" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-database-range-attlist" combine="interleave"> + <optional> + <attribute name="table:has-persistent-data" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-database-range-attlist" combine="interleave"> + <optional> + <attribute name="table:orientation" a:defaultValue="row"> + <choice> + <value>column</value> + <value>row</value> + </choice> + </attribute> + </optional> +</define> +<define name="table-database-range-attlist" combine="interleave"> + <optional> + <attribute name="table:contains-header" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-database-range-attlist" combine="interleave"> + <optional> + <attribute name="table:display-filter-buttons" + a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-database-range-attlist" combine="interleave"> + <attribute name="table:target-range-address"> + <ref name="cellRangeAddress"/> + </attribute> +</define> +<define name="table-database-range-attlist" combine="interleave"> + <optional> + <attribute name="table:refresh-delay"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-database-source-sql"> + <element name="table:database-source-sql"> + <ref name="table-database-source-sql-attlist"/> + <empty/> + </element> +</define> +<define name="table-database-source-sql-attlist" combine="interleave"> + <attribute name="table:database-name"> + <ref name="string"/> + </attribute> +</define> +<define name="table-database-source-sql-attlist" combine="interleave"> + <attribute name="table:sql-statement"> + <ref name="string"/> + </attribute> +</define> +<define name="table-database-source-sql-attlist" combine="interleave"> + <optional> + <attribute name="table:parse-sql-statement" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-database-source-query"> + <element name="table:database-source-table"> + <ref name="table-database-source-table-attlist"/> + <empty/> + </element> +</define> +<define name="table-database-source-table-attlist" combine="interleave"> + <attribute name="table:database-name"> + <ref name="string"/> + </attribute> +</define> +<define name="table-database-source-table-attlist" combine="interleave"> + <attribute name="table:database-table-name"> + <ref name="string"/> + </attribute> +</define> +<define name="table-database-source-table"> + <element name="table:database-source-query"> + <ref name="table-database-source-query-attlist"/> + <empty/> + </element> +</define> +<define name="table-database-source-query-attlist" combine="interleave"> + <attribute name="table:database-name"> + <ref name="string"/> + </attribute> +</define> +<define name="table-database-source-query-attlist" combine="interleave"> + <attribute name="table:query-name"> + <ref name="string"/> + </attribute> +</define> +<define name="table-sort"> + <element name="table:sort"> + <ref name="table-sort-attlist"/> + <oneOrMore> + <ref name="table-sort-by"/> + </oneOrMore> + </element> +</define> +<define name="table-sort-attlist" combine="interleave"> + <optional> + <attribute name="table:bind-styles-to-content" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-sort-attlist" combine="interleave"> + <optional> + <attribute name="table:target-range-address"> + <ref name="cellRangeAddress"/> + </attribute> + </optional> +</define> +<define name="table-sort-attlist" combine="interleave"> + <optional> + <attribute name="table:case-sensitive" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-sort-attlist" combine="interleave"> + <optional> + <attribute name="table:language"> + <ref name="languageCode"/> + </attribute> + </optional> +</define> +<define name="table-sort-attlist" combine="interleave"> + <optional> + <attribute name="table:country"> + <ref name="countryCode"/> + </attribute> + </optional> +</define> +<define name="table-sort-attlist" combine="interleave"> + <optional> + <attribute name="table:algorithm"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="table-sort-by"> + <element name="table:sort-by"> + <ref name="table-sort-by-attlist"/> + <empty/> + </element> +</define> +<define name="table-sort-by-attlist" combine="interleave"> + <attribute name="table:field-number"> + <ref name="nonNegativeInteger"/> + </attribute> +</define> +<define name="table-sort-by-attlist" combine="interleave"> + <optional> + <attribute name="table:data-type" a:defaultValue="automatic"> + <choice> + <value>text</value> + <value>number</value> + <value>automatic</value> + <ref name="string"/> + </choice> + </attribute> + </optional> +</define> +<define name="table-sort-by-attlist" combine="interleave"> + <optional> + <attribute name="table:order" a:defaultValue="ascending"> + <choice> + <value>ascending</value> + <value>descending</value> + </choice> + </attribute> + </optional> +</define> +<define name="table-subtotal-rules"> + <element name="table:subtotal-rules"> + <ref name="table-subtotal-rules-attlist"/> + <optional> + <ref name="table-sort-groups"/> + </optional> + <zeroOrMore> + <ref name="table-subtotal-rule"/> + </zeroOrMore> + </element> +</define> +<define name="table-subtotal-rules-attlist" combine="interleave"> + <optional> + <attribute name="table:bind-styles-to-content" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-subtotal-rules-attlist" combine="interleave"> + <optional> + <attribute name="table:case-sensitive" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-subtotal-rules-attlist" combine="interleave"> + <optional> + <attribute name="table:page-breaks-on-group-change" + a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-sort-groups"> + <element name="table:sort-groups"> + <ref name="table-sort-groups-attlist"/> + <empty/> + </element> +</define> +<define name="table-sort-groups-attlist" combine="interleave"> + <optional> + <attribute name="table:data-type" a:defaultValue="automatic"> + <choice> + <value>text</value> + <value>number</value> + <value>automatic</value> + <ref name="string"/> + </choice> + </attribute> + </optional> +</define> +<define name="table-sort-groups-attlist" combine="interleave"> + <optional> + <attribute name="table:order" a:defaultValue="ascending"> + <choice> + <value>ascending</value> + <value>descending</value> + </choice> + </attribute> + </optional> +</define> +<define name="table-subtotal-rule"> + <element name="table:subtotal-rule"> + <ref name="table-subtotal-rule-attlist"/> + <zeroOrMore> + <ref name="table-subtotal-field"/> + </zeroOrMore> + </element> +</define> +<define name="table-subtotal-rule-attlist" combine="interleave"> + <attribute name="table:group-by-field-number"> + <ref name="nonNegativeInteger"/> + </attribute> +</define> +<define name="table-subtotal-field"> + <element name="table:subtotal-field"> + <ref name="table-subtotal-field-attlist"/> + <empty/> + </element> +</define> +<define name="table-subtotal-field-attlist" combine="interleave"> + <attribute name="table:field-number"> + <ref name="nonNegativeInteger"/> + </attribute> +</define> +<define name="table-subtotal-field-attlist" combine="interleave"> + <attribute name="table:function"> + <choice> + <value>auto</value> + <value>average</value> + <value>count</value> + <value>countnums</value> + <value>max</value> + <value>min</value> + <value>product</value> + <value>stdev</value> + <value>stdevp</value> + <value>sum</value> + <value>var</value> + <value>varp</value> + <ref name="string"/> + </choice> + </attribute> +</define> +<define name="table-filter"> + <element name="table:filter"> + <ref name="table-filter-attlist"/> + <choice> + <ref name="table-filter-condition"/> + <ref name="table-filter-and"/> + <ref name="table-filter-or"/> + </choice> + </element> +</define> +<define name="table-filter-attlist" combine="interleave"> + <optional> + <attribute name="table:target-range-address"> + <ref name="cellRangeAddress"/> + </attribute> + </optional> +</define> +<define name="table-filter-attlist" combine="interleave"> + <optional> + <attribute name="table:condition-source" a:defaultValue="self"> + <choice> + <value>self</value> + <value>cell-range</value> + </choice> + </attribute> + </optional> +</define> +<define name="table-filter-attlist" combine="interleave"> + <optional> + <attribute name="table:condition-source-range-address"> + <ref name="cellRangeAddress"/> + </attribute> + </optional> +</define> +<define name="table-filter-attlist" combine="interleave"> + <optional> + <attribute name="table:display-duplicates" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-filter-and"> + <element name="table:filter-and"> + <oneOrMore> + <choice> + <ref name="table-filter-or"/> + <ref name="table-filter-condition"/> + </choice> + </oneOrMore> + </element> +</define> +<define name="table-filter-or"> + <element name="table:filter-or"> + <oneOrMore> + <choice> + <ref name="table-filter-and"/> + <ref name="table-filter-condition"/> + </choice> + </oneOrMore> + </element> +</define> +<define name="table-filter-condition"> + <element name="table:filter-condition"> + <ref name="table-filter-condition-attlist"/> + <empty/> + </element> +</define> +<define name="table-filter-condition-attlist" combine="interleave"> + <attribute name="table:field-number"> + <ref name="nonNegativeInteger"/> + </attribute> +</define> +<define name="table-filter-condition-attlist" combine="interleave"> + <attribute name="table:value"> + <ref name="string"/> + </attribute> +</define> +<define name="table-filter-condition-attlist" combine="interleave"> + <attribute name="table:operator"> + <ref name="string"/> + </attribute> +</define> +<define name="table-filter-condition-attlist" combine="interleave"> + <optional> + <attribute name="table:case-sensitive" a:defaultValue="false"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="table-filter-condition-attlist" combine="interleave"> + <optional> + <attribute name="table:data-type" a:defaultValue="text"> + <choice> + <value>text</value> + <value>number</value> + </choice> + </attribute> + </optional> +</define> +<define name="table-data-pilot-tables"> + <element name="table:data-pilot-tables"> + <zeroOrMore> + <ref name="table-data-pilot-table"/> + </zeroOrMore> + </element> +</define> +<define name="table-data-pilot-table"> + <element name="table:data-pilot-table"> + <ref name="table-data-pilot-table-attlist"/> + <optional> + <choice> + <ref name="table-database-source-sql"/> + <ref name="table-database-source-table"/> + <ref name="table-database-source-query"/> + <ref name="table-source-service"/> + <ref name="table-source-cell-range"/> + </choice> + </optional> + <oneOrMore> + <ref name="table-data-pilot-field"/> + </oneOrMore> + </element> +</define> +<define name="table-data-pilot-table-attlist" combine="interleave"> + <attribute name="table:name"> + <ref name="string"/> + </attribute> +</define> +<define name="table-data-pilot-table-attlist" combine="interleave"> + <optional> + <attribute name="table:application-data"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="table-data-pilot-table-attlist" combine="interleave"> + <optional> + <attribute name="table:grand-total" a:defaultValue="both"> + <choice> + <value>none</value> + <value>row</value> + <value>column</value> + <value>both</value> + </choice> + </attribute> + </optional> +</define> +<define name="table-data-pilot-table-attlist" combine="interleave"> + <optional> + <attribute name="table:ignore-empty-rows" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-data-pilot-table-attlist" combine="interleave"> + <optional> + <attribute name="table:identify-categories" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-data-pilot-table-attlist" combine="interleave"> + <attribute name="table:target-range-address"> + <ref name="cellRangeAddress"/> + </attribute> +</define> +<define name="table-data-pilot-table-attlist" combine="interleave"> + <optional> + <attribute name="table:buttons"> + <ref name="cellRangeAddressList"/> + </attribute> + </optional> +</define> +<define name="table-data-pilot-table-attlist" combine="interleave"> + <optional> + <attribute name="table:show-filter-button" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-data-pilot-table-attlist" combine="interleave"> + <optional> + <attribute name="table:drill-down-on-double-click" + a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-source-cell-range"> + <element name="table:source-cell-range"> + <ref name="table-source-cell-range-attlist"/> + <optional> + <ref name="table-filter"/> + </optional> + </element> +</define> +<define name="table-source-cell-range-attlist" combine="interleave"> + <attribute name="table:cell-range-address"> + <ref name="cellRangeAddress"/> + </attribute> +</define> +<define name="table-source-service"> + <element name="table:source-service"> + <ref name="table-source-service-attlist"/> + <empty/> + </element> +</define> +<define name="table-source-service-attlist" combine="interleave"> + <attribute name="table:name"> + <ref name="string"/> + </attribute> +</define> +<define name="table-source-service-attlist" combine="interleave"> + <attribute name="table:source-name"> + <ref name="string"/> + </attribute> +</define> +<define name="table-source-service-attlist" combine="interleave"> + <attribute name="table:object-name"> + <ref name="string"/> + </attribute> +</define> +<define name="table-source-service-attlist" combine="interleave"> + <optional> + <attribute name="table:user-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="table-source-service-attlist" combine="interleave"> + <optional> + <attribute name="table:password"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="table-data-pilot-field"> + <element name="table:data-pilot-field"> + <ref name="table-data-pilot-field-attlist"/> + <optional> + <ref name="table-data-pilot-level"/> + </optional> + <optional> + <ref name="table-data-pilot-field-reference"/> + </optional> + <optional> + <ref name="table-data-pilot-groups"/> + </optional> + </element> +</define> +<define name="table-data-pilot-field-attlist" combine="interleave"> + <attribute name="table:source-field-name"> + <ref name="string"/> + </attribute> +</define> +<define name="table-data-pilot-field-attlist" combine="interleave"> + <choice> + <attribute name="table:orientation"> + <choice> + <value>row</value> + <value>column</value> + <value>data</value> + <value>hidden</value> + </choice> + </attribute> + <group> + <attribute name="table:orientation"> + <value>page</value> + </attribute> + <attribute name="table:selected-page"> + <ref name="string"/> + </attribute> + </group> + </choice> +</define> +<define name="table-data-pilot-field-attlist" combine="interleave"> + <optional> + <attribute name="table:is-data-layout-field" a:defaultValue="false"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="table-data-pilot-field-attlist" combine="interleave"> + <optional> + <attribute name="table:function"> + <choice> + <value>auto</value> + <value>average</value> + <value>count</value> + <value>countnums</value> + <value>max</value> + <value>min</value> + <value>product</value> + <value>stdev</value> + <value>stdevp</value> + <value>sum</value> + <value>var</value> + <value>varp</value> + <ref name="string"/> + </choice> + </attribute> + </optional> +</define> +<define name="table-data-pilot-field-attlist" combine="interleave"> + <optional> + <attribute name="table:used-hierarchy" a:defaultValue="-1"> + <ref name="integer"/> + </attribute> + </optional> +</define> +<define name="table-data-pilot-level"> + <element name="table:data-pilot-level"> + <ref name="table-data-pilot-level-attlist"/> + <optional> + <ref name="table-data-pilot-subtotals"/> + </optional> + <optional> + <ref name="table-data-pilot-members"/> + </optional> + <optional> + <ref name="table-data-pilot-display-info"/> + </optional> + <optional> + <ref name="table-data-pilot-sort-info"/> + </optional> + <optional> + <ref name="table-data-pilot-layout-info"/> + </optional> + </element> +</define> +<define name="table-data-pilot-level-attlist" combine="interleave"> + <optional> + <attribute name="table:show-empty"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-data-pilot-subtotals"> + <element name="table:data-pilot-subtotals"> + <zeroOrMore> + <ref name="table-data-pilot-subtotal"/> + </zeroOrMore> + </element> +</define> +<define name="table-data-pilot-subtotal"> + <element name="table:data-pilot-subtotal"> + <ref name="table-data-pilot-subtotal-attlist"/> + <empty/> + </element> +</define> +<define name="table-data-pilot-subtotal-attlist" combine="interleave"> + <attribute name="table:function"> + <choice> + <value>auto</value> + <value>average</value> + <value>count</value> + <value>countnums</value> + <value>max</value> + <value>min</value> + <value>product</value> + <value>stdev</value> + <value>stdevp</value> + <value>sum</value> + <value>var</value> + <value>varp</value> + <ref name="string"/> + </choice> + </attribute> +</define> +<define name="table-data-pilot-members"> + <element name="table:data-pilot-members"> + <zeroOrMore> + <ref name="table-data-pilot-member"/> + </zeroOrMore> + </element> +</define> +<define name="table-data-pilot-member"> + <element name="table:data-pilot-member"> + <ref name="table-data-pilot-member-attlist"/> + <empty/> + </element> +</define> +<define name="table-data-pilot-member-attlist" combine="interleave"> + <attribute name="table:name"> + <ref name="string"/> + </attribute> +</define> +<define name="table-data-pilot-member-attlist" combine="interleave"> + <optional> + <attribute name="table:display"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-data-pilot-member-attlist" combine="interleave"> + <optional> + <attribute name="table:show-details"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-data-pilot-display-info"> + <element name="table:data-pilot-display-info"> + <ref name="table-data-pilot-display-info-attlist"/> + <empty/> + </element> +</define> +<define name="table-data-pilot-display-info-attlist" combine="interleave"> + <attribute name="table:enabled"> + <ref name="boolean"/> + </attribute> +</define> +<define name="table-data-pilot-display-info-attlist" combine="interleave"> + <attribute name="table:data-field"> + <ref name="string"/> + </attribute> +</define> +<define name="table-data-pilot-display-info-attlist" combine="interleave"> + <attribute name="table:member-count"> + <ref name="nonNegativeInteger"/> + </attribute> +</define> +<define name="table-data-pilot-display-info-attlist" combine="interleave"> + <attribute name="table:display-member-mode"> + <choice> + <value>from-top</value> + <value>from-bottom</value> + </choice> + </attribute> +</define> +<define name="table-data-pilot-sort-info"> + <element name="table:data-pilot-sort-info"> + <ref name="table-data-pilot-sort-info-attlist"/> + <empty/> + </element> +</define> +<define name="table-data-pilot-sort-info-attlist" combine="interleave"> + <choice> + <group> + <attribute name="table:sort-mode"> + <value>data</value> + </attribute> + <attribute name="table:data-field"> + <ref name="string"/> + </attribute> + </group> + <attribute name="table:sort-mode"> + <choice> + <value>none</value> + <value>manual</value> + <value>name</value> + </choice> + </attribute> + </choice> +</define> +<define name="table-data-pilot-sort-info-attlist" combine="interleave"> + <attribute name="table:order"> + <choice> + <value>ascending</value> + <value>descending</value> + </choice> + </attribute> +</define> +<define name="table-data-pilot-layout-info"> + <element name="table:data-pilot-layout-info"> + <ref name="table-data-pilot-layout-info-attlist"/> + <empty/> + </element> +</define> +<define name="table-data-pilot-layout-info-attlist" combine="interleave"> + <attribute name="table:layout-mode"> + <choice> + <value>tabular-layout</value> + <value>outline-subtotals-top</value> + <value>outline-subtotals-bottom</value> + </choice> + </attribute> +</define> +<define name="table-data-pilot-layout-info-attlist" combine="interleave"> + <attribute name="table:add-empty-lines"> + <ref name="boolean"/> + </attribute> +</define> +<define name="table-data-pilot-field-reference"> + <element name="table:data-pilot-field-reference"> + <ref name="table-data-pilot-field-reference-attlist"/> + </element> +</define> +<define name="table-data-pilot-field-reference-attlist" combine="interleave"> + <attribute name="table:field-name"> + <ref name="string"/> + </attribute> +</define> +<define name="table-data-pilot-field-reference-attlist" combine="interleave"> + <choice> + <group> + <attribute name="table:member-type"> + <value>named</value> + </attribute> + <attribute name="table:member-name"> + <ref name="string"/> + </attribute> + </group> + <attribute name="table:member-type"> + <choice> + <value>previous</value> + <value>next</value> + </choice> + </attribute> + </choice> +</define> +<define name="table-data-pilot-field-reference-attlist" combine="interleave"> + <attribute name="table:type"> + <choice> + <value>none</value> + <value>member-difference</value> + <value>member-percentage</value> + <value>member-percentage-difference</value> + <value>running-total</value> + <value>row-percentage</value> + <value>column-percentage</value> + <value>total-percentage</value> + <value>index</value> + </choice> + </attribute> +</define> +<define name="table-data-pilot-groups"> + <element name="table:data-pilot-groups"> + <ref name="table-data-pilot-groups-attlist"/> + <oneOrMore> + <ref name="table-data-pilot-group"/> + </oneOrMore> + </element> +</define> +<define name="table-data-pilot-groups-attlist" combine="interleave"> + <attribute name="table:source-field-name"> + <ref name="string"/> + </attribute> +</define> +<define name="table-data-pilot-groups-attlist" combine="interleave"> + <choice> + <attribute name="table:date-start"> + <choice> + <ref name="dateOrDateTime"/> + <value>auto</value> + </choice> + </attribute> + <attribute name="table:start"> + <choice> + <ref name="double"/> + <value>auto</value> + </choice> + </attribute> + </choice> +</define> +<define name="table-data-pilot-groups-attlist" combine="interleave"> + <choice> + <attribute name="table:date-end"> + <choice> + <ref name="dateOrDateTime"/> + <value>auto</value> + </choice> + </attribute> + <attribute name="table:end"> + <choice> + <ref name="double"/> + <value>auto</value> + </choice> + </attribute> + </choice> +</define> +<define name="table-data-pilot-groups-attlist" combine="interleave"> + <attribute name="table:step"> + <ref name="double"/> + </attribute> +</define> +<define name="table-data-pilot-groups-attlist" combine="interleave"> + <attribute name="table:grouped-by"> + <choice> + <value>seconds</value> + <value>minutes</value> + <value>hours</value> + <value>days</value> + <value>months</value> + <value>quarters</value> + <value>years</value> + </choice> + </attribute> +</define> +<define name="table-data-pilot-group"> + <element name="table:data-pilot-group"> + <ref name="table-data-pilot-group-attlist"/> + <oneOrMore> + <ref name="table-data-pilot-group-member"/> + </oneOrMore> + </element> +</define> +<define name="table-data-pilot-group-attlist" combine="interleave"> + <attribute name="table:name"> + <ref name="string"/> + </attribute> +</define> +<define name="table-data-pilot-group-member"> + <element name="table:data-pilot-group-member"> + <ref name="table-data-pilot-group-member-attlist"/> + </element> +</define> +<define name="table-data-pilot-group-member-attlist" combine="interleave"> + <attribute name="table:name"> + <ref name="string"/> + </attribute> +</define> +<define name="table-consolidation"> + <element name="table:consolidation"> + <ref name="table-consolidation-attlist"/> + <empty/> + </element> +</define> +<define name="table-consolidation-attlist" combine="interleave"> + <attribute name="table:function"> + <choice> + <value>auto</value> + <value>average</value> + <value>count</value> + <value>countnums</value> + <value>max</value> + <value>min</value> + <value>product</value> + <value>stdev</value> + <value>stdevp</value> + <value>sum</value> + <value>var</value> + <value>varp</value> + <ref name="string"/> + </choice> + </attribute> +</define> +<define name="table-consolidation-attlist" combine="interleave"> + <attribute name="table:source-cell-range-addresses"> + <ref name="cellRangeAddressList"/> + </attribute> +</define> +<define name="table-consolidation-attlist" combine="interleave"> + <attribute name="table:target-cell-address"> + <ref name="cellAddress"/> + </attribute> +</define> +<define name="table-consolidation-attlist" combine="interleave"> + <optional> + <attribute name="table:use-labels" a:defaultValue="none"> + <choice> + <value>none</value> + <value>row</value> + <value>column</value> + <value>both</value> + </choice> + </attribute> + </optional> +</define> +<define name="table-consolidation-attlist" combine="interleave"> + <optional> + <attribute name="table:link-to-source-data" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-dde-links"> + <element name="table:dde-links"> + <oneOrMore> + <ref name="table-dde-link"/> + </oneOrMore> + </element> +</define> +<define name="table-tracked-changes"> + <element name="table:tracked-changes"> + <ref name="table-tracked-changes-attlist"/> + <zeroOrMore> + <choice> + <ref name="table-cell-content-change"/> + <ref name="table-insertion"/> + <ref name="table-deletion"/> + <ref name="table-movement"/> + </choice> + </zeroOrMore> + </element> +</define> +<define name="table-tracked-changes-attlist" combine="interleave"> + <optional> + <attribute name="table:track-changes" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-insertion"> + <element name="table:insertion"> + <ref name="table-insertion-attlist"/> + <ref name="common-table-change-attlist"/> + <ref name="office-change-info"/> + <optional> + <ref name="table-dependencies"/> + </optional> + <optional> + <ref name="table-deletions"/> + </optional> + </element> +</define> +<define name="table-insertion-attlist" combine="interleave"> + <attribute name="table:type"> + <choice> + <value>row</value> + <value>column</value> + <value>table</value> + </choice> + </attribute> +</define> +<define name="table-insertion-attlist" combine="interleave"> + <attribute name="table:position"> + <ref name="integer"/> + </attribute> +</define> +<define name="table-insertion-attlist" combine="interleave"> + <optional> + <attribute name="table:count" a:defaultValue="1"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="table-insertion-attlist" combine="interleave"> + <optional> + <attribute name="table:table"> + <ref name="integer"/> + </attribute> + </optional> +</define> +<define name="table-dependencies"> + <element name="table:dependencies"> + <oneOrMore> + <ref name="table-dependency"/> + </oneOrMore> + </element> +</define> +<define name="table-dependency"> + <element name="table:dependency"> + <attribute name="table:id"> + <ref name="string"/> + </attribute> + <empty/> + </element> +</define> +<define name="table-deletions"> + <element name="table:deletions"> + <oneOrMore> + <choice> + <ref name="table-cell-content-deletion"/> + <ref name="table-change-deletion"/> + </choice> + </oneOrMore> + </element> +</define> +<define name="table-cell-content-deletion"> + <element name="table:cell-content-deletion"> + <optional> + <attribute name="table:id"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <ref name="table-cell-address"/> + </optional> + <optional> + <ref name="table-change-track-table-cell"/> + </optional> + </element> +</define> +<define name="table-change-deletion"> + <element name="table:change-deletion"> + <optional> + <attribute name="table:id"> + <ref name="string"/> + </attribute> + </optional> + <empty/> + </element> +</define> +<define name="table-deletion"> + <element name="table:deletion"> + <ref name="table-deletion-attlist"/> + <ref name="common-table-change-attlist"/> + <ref name="office-change-info"/> + <optional> + <ref name="table-dependencies"/> + </optional> + <optional> + <ref name="table-deletions"/> + </optional> + <optional> + <ref name="table-cut-offs"/> + </optional> + </element> +</define> +<define name="table-deletion-attlist" combine="interleave"> + <attribute name="table:type"> + <choice> + <value>row</value> + <value>column</value> + <value>table</value> + </choice> + </attribute> +</define> +<define name="table-deletion-attlist" combine="interleave"> + <attribute name="table:position"> + <ref name="integer"/> + </attribute> +</define> +<define name="table-deletion-attlist" combine="interleave"> + <optional> + <attribute name="table:table"> + <ref name="integer"/> + </attribute> + </optional> +</define> +<define name="table-deletion-attlist" combine="interleave"> + <optional> + <attribute name="table:multi-deletion-spanned"> + <ref name="integer"/> + </attribute> + </optional> +</define> +<define name="table-cut-offs"> + <element name="table:cut-offs"> + <choice> + <oneOrMore> + <ref name="table-movement-cut-off"/> + </oneOrMore> + <group> + <ref name="table-insertion-cut-off"/> + <zeroOrMore> + <ref name="table-movement-cut-off"/> + </zeroOrMore> + </group> + </choice> + </element> +</define> +<define name="table-insertion-cut-off"> + <element name="table:insertion-cut-off"> + <ref name="table-insertion-cut-off-attlist"/> + <empty/> + </element> +</define> +<define name="table-insertion-cut-off-attlist" combine="interleave"> + <attribute name="table:id"> + <ref name="string"/> + </attribute> +</define> +<define name="table-insertion-cut-off-attlist" combine="interleave"> + <attribute name="table:position"> + <ref name="integer"/> + </attribute> +</define> +<define name="table-movement-cut-off"> + <element name="table:movement-cut-off"> + <ref name="table-movement-cut-off-attlist"/> + <empty/> + </element> +</define> +<define name="table-movement-cut-off-attlist" combine="interleave"> + <choice> + <attribute name="table:position"> + <ref name="integer"/> + </attribute> + <group> + <attribute name="table:start-position"> + <ref name="integer"/> + </attribute> + <attribute name="table:end-position"> + <ref name="integer"/> + </attribute> + </group> + </choice> +</define> +<define name="table-movement"> + <element name="table:movement"> + <ref name="common-table-change-attlist"/> + <ref name="table-source-range-address"/> + <ref name="table-target-range-address"/> + <ref name="office-change-info"/> + <optional> + <ref name="table-dependencies"/> + </optional> + <optional> + <ref name="table-deletions"/> + </optional> + </element> +</define> +<define name="table-source-range-address"> + <element name="table:source-range-address"> + <ref name="common-table-range-attlist"/> + <empty/> + </element> +</define> + +<define name="table-target-range-address"> + <element name="table:target-range-address"> + <ref name="common-table-range-attlist"/> + <empty/> + </element> +</define> + + +<define name="common-table-range-attlist" combine="interleave"> + <choice> + <group> + <ref name="common-table-cell-address-attlist"/> + </group> + <group> + <ref name="common-table-cell-range-address-attlist"/> + </group> + </choice> +</define> +<define name="common-table-cell-address-attlist" combine="interleave"> + <attribute name="table:column"> + <ref name="integer"/> + </attribute> + <attribute name="table:row"> + <ref name="integer"/> + </attribute> + <attribute name="table:table"> + <ref name="integer"/> + </attribute> +</define> +<define name="common-table-cell-range-address-attlist" combine="interleave"> + <attribute name="table:start-column"> + <ref name="integer"/> + </attribute> + <attribute name="table:start-row"> + <ref name="integer"/> + </attribute> + <attribute name="table:start-table"> + <ref name="integer"/> + </attribute> + <attribute name="table:end-column"> + <ref name="integer"/> + </attribute> + <attribute name="table:end-row"> + <ref name="integer"/> + </attribute> + <attribute name="table:end-table"> + <ref name="integer"/> + </attribute> +</define> +<define name="table-change-track-table-cell" combine="interleave"> + <element name="table:change-track-table-cell"> + <ref name="table-change-track-table-cell-attlist"/> + <zeroOrMore> + <ref name="text-p"/> + </zeroOrMore> + </element> +</define> +<define name="table-change-track-table-cell-attlist" combine="interleave"> + <optional> + <attribute name="table:cell-address"> + <ref name="cellAddress"/> + </attribute> + </optional> +</define> +<define name="table-change-track-table-cell-attlist" combine="interleave"> + <optional> + <attribute name="table:matrix-covered" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-change-track-table-cell-attlist" combine="interleave"> + <optional> + <attribute name="table:formula"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="table:number-matrix-columns-spanned"> + <ref name="positiveInteger"/> + </attribute> + </optional> + <optional> + <attribute name="table:number-matrix-rows-spanned"> + <ref name="positiveInteger"/> + </attribute> + </optional> + <optional> + <ref name="common-value-and-type-attlist"/> + </optional> +</define> +<define name="table-cell-content-change"> + <element name="table:cell-content-change"> + <ref name="common-table-change-attlist"/> + <ref name="table-cell-address"/> + <ref name="office-change-info"/> + <optional> + <ref name="table-dependencies"/> + </optional> + <optional> + <ref name="table-deletions"/> + </optional> + <ref name="table-previous"/> + </element> +</define> +<define name="table-cell-address"> + <element name="table:cell-address"> + <ref name="common-table-cell-address-attlist"/> + <empty/> + </element> +</define> +<define name="table-previous"> + <element name="table:previous"> + <optional> + <attribute name="table:id"> + <ref name="string"/> + </attribute> + </optional> + <ref name="table-change-track-table-cell"/> + </element> +</define> +<define name="common-table-change-attlist" combine="interleave"> + <attribute name="table:id"> + <ref name="string"/> + </attribute> +</define> +<define name="common-table-change-attlist" combine="interleave"> + <optional> + <attribute name="table:acceptance-state" a:defaultValue="pending"> + <choice> + <value>accepted</value> + <value>rejected</value> + <value>pending</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-table-change-attlist" combine="interleave"> + <optional> + <attribute name="table:rejecting-change-id"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="style-handout-master"> + <element name="style:handout-master"> + <ref name="common-presentation-header-footer-attlist"/> + <ref name="style-handout-master-attlist"/> + <zeroOrMore> + <ref name="shape"/> + </zeroOrMore> + </element> +</define> +<define name="style-handout-master-attlist" combine="interleave"> + <optional> + <attribute name="presentation:presentation-page-layout-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="style-handout-master-attlist" combine="interleave"> + <attribute name="style:page-layout-name"> + <ref name="styleNameRef"/> + </attribute> +</define> +<define name="style-handout-master-attlist" combine="interleave"> + <optional> + <attribute name="draw:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="draw-layer-set"> + <element name="draw:layer-set"> + <zeroOrMore> + <ref name="draw-layer"/> + </zeroOrMore> + </element> +</define> +<define name="draw-layer"> + <element name="draw:layer"> + <ref name="draw-layer-attlist"/> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + </element> +</define> +<define name="draw-layer-attlist" combine="interleave"> + <attribute name="draw:name"> + <ref name="string"/> + </attribute> +</define> +<define name="draw-layer-attlist" combine="interleave"> + <optional> + <attribute name="draw:protected" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="draw-layer-attlist" combine="interleave"> + <optional> + <attribute name="draw:display" a:defaultValue="always"> + <choice> + <value>always</value> + <value>screen</value> + <value>printer</value> + <value>none</value> + </choice> + </attribute> + </optional> +</define> +<define name="draw-page"> + <element name="draw:page"> + <ref name="common-presentation-header-footer-attlist"/> + <ref name="draw-page-attlist"/> + <optional> + <ref name="office-forms"/> + </optional> + <zeroOrMore> + <ref name="shape"/> + </zeroOrMore> + <optional> + <choice> + <ref name="presentation-animations"/> + <ref name="animation-element"/> + </choice> + </optional> + <optional> + <ref name="presentation-notes"/> + </optional> + </element> +</define> +<define name="draw-page-attlist" combine="interleave"> + <optional> + <attribute name="draw:name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-page-attlist" combine="interleave"> + <optional> + <attribute name="draw:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="draw-page-attlist" combine="interleave"> + <attribute name="draw:master-page-name"> + <ref name="styleNameRef"/> + </attribute> +</define> +<define name="draw-page-attlist" combine="interleave"> + <optional> + <attribute name="presentation:presentation-page-layout-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="common-presentation-header-footer-attlist" combine="interleave"> + <optional> + <attribute name="presentation:use-header-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-presentation-header-footer-attlist" combine="interleave"> + <optional> + <attribute name="presentation:use-footer-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-presentation-header-footer-attlist" combine="interleave"> + <optional> + <attribute name="presentation:use-date-time-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-page-attlist" combine="interleave"> + <optional> + <attribute name="draw:id"> + <ref name="ID"/> + </attribute> + </optional> +</define> +<define name="draw-page-attlist" combine="interleave"> + <optional> + <attribute name="draw:nav-order"> + <ref name="IDREFS"/> + </attribute> + </optional> +</define> +<define name="shape"> + <choice> + <ref name="draw-rect"/> + <ref name="draw-line"/> + <ref name="draw-polyline"/> + <ref name="draw-polygon"/> + <ref name="draw-regular-polygon"/> + <ref name="draw-path"/> + <ref name="draw-circle"/> + <ref name="draw-ellipse"/> + <ref name="draw-g"/> + <ref name="draw-page-thumbnail"/> + <ref name="draw-frame"/> + <ref name="draw-measure"/> + <ref name="draw-caption"/> + <ref name="draw-connector"/> + <ref name="draw-control"/> + <ref name="dr3d-scene"/> + <ref name="draw-custom-shape"/> + </choice> +</define> +<define name="draw-rect"> + <element name="draw:rect"> + <ref name="draw-rect-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <ref name="common-draw-caption-id-attlist"/> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <ref name="draw-text"/> + </element> +</define> +<define name="draw-rect-attlist" combine="interleave"> + <optional> + <attribute name="draw:corner-radius"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> +</define> +<define name="draw-line"> + <element name="draw:line"> + <ref name="draw-line-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <ref name="common-draw-caption-id-attlist"/> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <ref name="draw-text"/> + </element> +</define> +<define name="draw-line-attlist" combine="interleave"> + <attribute name="svg:x1"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:y1"> + <ref name="coordinate"/> + </attribute> +</define> +<define name="draw-line-attlist" combine="interleave"> + <attribute name="svg:x2"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:y2"> + <ref name="coordinate"/> + </attribute> +</define> +<define name="draw-polyline"> + <element name="draw:polyline"> + <ref name="common-draw-points-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-viewbox-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <ref name="common-draw-caption-id-attlist"/> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <ref name="draw-text"/> + </element> +</define> +<define name="common-draw-points-attlist"> + <attribute name="draw:points"> + <ref name="points"/> + </attribute> +</define> +<define name="draw-polygon"> + <element name="draw:polygon"> + <ref name="common-draw-points-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-viewbox-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <ref name="common-draw-caption-id-attlist"/> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <ref name="draw-text"/> + </element> +</define> +<define name="draw-regular-polygon"> + <element name="draw:regular-polygon"> + <ref name="draw-regular-polygon-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <ref name="common-draw-caption-id-attlist"/> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <ref name="draw-text"/> + </element> +</define> +<define name="draw-regular-polygon-attlist" combine="interleave"> + <choice> + <attribute name="draw:concave"> + <value>false</value> + </attribute> + <group> + <attribute name="draw:concave"> + <value>true</value> + </attribute> + <ref name="draw-regular-polygon-sharpness-attlist"/> + </group> + </choice> +</define> +<define name="draw-regular-polygon-attlist" combine="interleave"> + <attribute name="draw:corners"> + <ref name="positiveInteger"/> + </attribute> +</define> +<define name="draw-regular-polygon-sharpness-attlist"> + <attribute name="draw:sharpness"> + <ref name="percent"/> + </attribute> +</define> +<define name="draw-path"> + <element name="draw:path"> + <ref name="common-draw-path-data-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-viewbox-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <ref name="common-draw-caption-id-attlist"/> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <ref name="draw-text"/> + </element> +</define> +<define name="common-draw-path-data-attlist"> + <attribute name="svg:d"> + <ref name="pathData"/> + </attribute> +</define> +<define name="draw-circle"> + <element name="draw:circle"> + <ref name="draw-circle-attlist"/> + <ref name="common-draw-circle-ellipse-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <ref name="common-draw-caption-id-attlist"/> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <ref name="draw-text"/> + </element> +</define> +<define name="common-draw-circle-ellipse-attlist" combine="interleave"> + <optional> + <attribute name="svg:cx"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:cy"> + <ref name="coordinate"/> + </attribute> + </optional> +</define> +<define name="draw-circle-attlist" combine="interleave"> + <optional> + <attribute name="svg:r"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="common-draw-circle-ellipse-attlist" combine="interleave"> + <optional> + <attribute name="draw:kind" a:defaultValue="full"> + <choice> + <value>full</value> + <value>section</value> + <value>cut</value> + <value>arc</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-draw-circle-ellipse-attlist" combine="interleave"> + <optional> + <attribute name="draw:start-angle"> + <ref name="double"/> + </attribute> + </optional> +</define> +<define name="common-draw-circle-ellipse-attlist" combine="interleave"> + <optional> + <attribute name="draw:end-angle"> + <ref name="double"/> + </attribute> + </optional> +</define> +<define name="draw-ellipse"> + <element name="draw:ellipse"> + <ref name="common-draw-circle-ellipse-attlist"/> + <ref name="draw-ellipse-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <ref name="common-draw-caption-id-attlist"/> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <ref name="draw-text"/> + </element> +</define> +<define name="draw-ellipse-attlist" combine="interleave"> + <optional> + <attribute name="svg:rx"> + <ref name="length"/> + </attribute> + <attribute name="svg:ry"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="draw-connector"> + <element name="draw:connector"> + <ref name="draw-connector-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <ref name="common-draw-caption-id-attlist"/> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <ref name="draw-text"/> + </element> +</define> +<define name="draw-connector-attlist" combine="interleave"> + <optional> + <attribute name="draw:type" a:defaultValue="standard"> + <choice> + <value>standard</value> + <value>lines</value> + <value>line</value> + <value>curve</value> + </choice> + </attribute> + </optional> +</define> +<define name="draw-connector-attlist" combine="interleave"> + <optional> + <attribute name="svg:x1"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:y1"> + <ref name="coordinate"/> + </attribute> + </optional> +</define> +<define name="draw-connector-attlist" combine="interleave"> + <optional> + <attribute name="draw:start-shape"> + <ref name="IDREF"/> + </attribute> + </optional> +</define> +<define name="draw-connector-attlist" combine="interleave"> + <optional> + <attribute name="draw:start-glue-point"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="draw-connector-attlist" combine="interleave"> + <optional> + <attribute name="svg:x2"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:y2"> + <ref name="coordinate"/> + </attribute> + </optional> +</define> +<define name="draw-connector-attlist" combine="interleave"> + <optional> + <attribute name="draw:end-shape"> + <ref name="IDREF"/> + </attribute> + </optional> +</define> +<define name="draw-connector-attlist" combine="interleave"> + <optional> + <attribute name="draw:end-glue-point"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="draw-connector-attlist" combine="interleave"> + <optional> + <attribute name="draw:line-skew"> + <list> + <ref name="length"/> + <optional> + <ref name="length"/> + <optional> + <ref name="length"/> + </optional> + </optional> + </list> + </attribute> + </optional> +</define> +<define name="draw-caption"> + <element name="draw:caption"> + <ref name="draw-caption-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <ref name="common-draw-caption-id-attlist"/> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <ref name="draw-text"/> + </element> +</define> +<define name="draw-caption-attlist" combine="interleave"> + <optional> + <attribute name="draw:caption-point-x"> + <ref name="coordinate"/> + </attribute> + <attribute name="draw:caption-point-y"> + <ref name="coordinate"/> + </attribute> + </optional> +</define> +<define name="draw-caption-attlist" combine="interleave"> + <optional> + <attribute name="draw:corner-radius"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> +</define> +<define name="draw-measure"> + <element name="draw:measure"> + <ref name="draw-measure-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <ref name="common-draw-caption-id-attlist"/> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <ref name="draw-text"/> + </element> +</define> +<define name="draw-measure-attlist" combine="interleave"> + <attribute name="svg:x1"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:y1"> + <ref name="coordinate"/> + </attribute> +</define> +<define name="draw-measure-attlist" combine="interleave"> + <attribute name="svg:x2"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:y2"> + <ref name="coordinate"/> + </attribute> +</define> +<define name="draw-control"> + <element name="draw:control"> + <ref name="draw-control-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <ref name="common-draw-caption-id-attlist"/> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + </element> +</define> +<define name="draw-control-attlist" combine="interleave"> + <attribute name="draw:control"> + <ref name="IDREF"/> + </attribute> +</define> +<define name="draw-page-thumbnail"> + <element name="draw:page-thumbnail"> + <ref name="draw-page-thumbnail-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="presentation-shape-attlist"/> + <ref name="common-draw-shape-with-styles-attlist"/> + <ref name="common-draw-caption-id-attlist"/> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + </element> +</define> +<define name="draw-page-thumbnail-attlist"> + <optional> + <attribute name="draw:page-number"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="draw-g"> + <element name="draw:g"> + <ref name="draw-g-attlist"/> + <ref name="common-draw-z-index-attlist"/> + <ref name="common-draw-name-attlist"/> + <ref name="common-draw-id-attlist"/> + <ref name="common-draw-style-name-attlist"/> + <ref name="common-text-spreadsheet-shape-attlist"/> + <ref name="common-draw-caption-id-attlist"/> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <zeroOrMore> + <ref name="shape"/> + </zeroOrMore> + </element> +</define> +<define name="draw-g-attlist" combine="interleave"> + <optional> + <attribute name="svg:y"> + <ref name="coordinate"/> + </attribute> + </optional> +</define> +<define name="common-draw-name-attlist" combine="interleave"> + <optional> + <attribute name="draw:name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-draw-caption-id-attlist" combine="interleave"> + <optional> + <attribute name="draw:caption-id"> + <ref name="IDREF"/> + </attribute> + </optional> +</define> +<define name="common-draw-position-attlist"> + <optional> + <attribute name="svg:x"> + <ref name="coordinate"/> + </attribute> + </optional> + <optional> + <attribute name="svg:y"> + <ref name="coordinate"/> + </attribute> + </optional> +</define> +<define name="common-draw-size-attlist"> + <optional> + <attribute name="svg:width"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="svg:height"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="common-draw-transform-attlist"> + <optional> + <attribute name="draw:transform"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-draw-viewbox-attlist"> + <attribute name="svg:viewBox"> + <list> + <ref name="integer"/> + <ref name="integer"/> + <ref name="integer"/> + <ref name="integer"/> + </list> + </attribute> +</define> +<define name="common-draw-style-name-attlist"> + <choice> + <group> + <optional> + <attribute name="draw:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="draw:class-names"> + <ref name="styleNameRefs"/> + </attribute> + </optional> + </group> + <group> + <optional> + <attribute name="presentation:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="presentation:class-names"> + <ref name="styleNameRefs"/> + </attribute> + </optional> + </group> + </choice> +</define> +<define name="common-draw-text-style-name-attlist"> + <optional> + <attribute name="draw:text-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="common-draw-layer-name-attlist"> + <optional> + <attribute name="draw:layer"> + <data type="string"/> + </attribute> + </optional> +</define> +<define name="common-draw-id-attlist"> + <optional> + <attribute name="draw:id"> + <ref name="ID"/> + </attribute> + </optional> +</define> +<define name="common-draw-z-index-attlist"> + <optional> + <attribute name="draw:z-index"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="common-text-spreadsheet-shape-attlist" combine="interleave"> + <optional> + <attribute name="table:end-cell-address"> + <ref name="cellAddress"/> + </attribute> + </optional> + <optional> + <attribute name="table:end-x"> + <ref name="coordinate"/> + </attribute> + </optional> + <optional> + <attribute name="table:end-y"> + <ref name="coordinate"/> + </attribute> + </optional> +</define> +<define name="common-text-spreadsheet-shape-attlist" combine="interleave"> + <optional> + <attribute name="table:table-background"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="common-text-spreadsheet-shape-attlist" combine="interleave"> + <ref name="common-text-anchor-attlist"/> +</define> + +<define name="common-text-anchor-attlist" combine="interleave"> + <optional> + <attribute name="text:anchor-type"> + <choice> + <value>page</value> + <value>frame</value> + <value>paragraph</value> + <value>char</value> + <value>as-char</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-text-anchor-attlist" combine="interleave"> + <optional> + <attribute name="text:anchor-page-number"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="draw-text"> + <zeroOrMore> + <choice> + <ref name="text-p"/> + <ref name="text-list"/> + </choice> + </zeroOrMore> +</define> +<define name="common-draw-shape-with-styles-attlist"> + <ref name="common-draw-z-index-attlist"/> + <ref name="common-draw-id-attlist"/> + <ref name="common-draw-layer-name-attlist"/> + <ref name="common-draw-style-name-attlist"/> + <ref name="common-draw-transform-attlist"/> + <ref name="common-draw-name-attlist"/> + <ref name="common-text-spreadsheet-shape-attlist"/> +</define> +<define name="common-draw-shape-with-text-and-styles-attlist"> + <ref name="common-draw-shape-with-styles-attlist"/> + <ref name="common-draw-text-style-name-attlist"/> +</define> +<define name="draw-glue-point"> + <element name="draw:glue-point"> + <ref name="draw-glue-point-attlist"/> + <empty/> + </element> +</define> +<define name="draw-glue-point-attlist" combine="interleave"> + <attribute name="draw:id"> + <ref name="nonNegativeInteger"/> + </attribute> +</define> +<define name="draw-glue-point-attlist" combine="interleave"> + <attribute name="svg:x"> + <choice> + <ref name="distance"/> + <ref name="percent"/> + </choice> + </attribute> + <attribute name="svg:y"> + <choice> + <ref name="distance"/> + <ref name="percent"/> + </choice> + </attribute> +</define> +<define name="draw-glue-point-attlist" combine="interleave"> + <optional> + <attribute name="draw:align"> + <choice> + <value>top-left</value> + <value>top</value> + <value>top-right</value> + <value>left</value> + <value>center</value> + <value>right</value> + <value>bottom-left</value> + <value>bottom-right</value> + </choice> + </attribute> + </optional> +</define> +<define name="draw-glue-points-attlist" combine="interleave"> + <attribute name="draw:escape-direction"> + <choice> + <value>auto</value> + <value>left</value> + <value>right</value> + <value>up</value> + <value>down</value> + <value>horizontal</value> + <value>vertical</value> + </choice> + </attribute> +</define> +<define name="svg-title"> + <element name="svg:title"> + <text/> + </element> +</define> +<define name="svg-desc"> + <element name="svg:desc"> + <text/> + </element> +</define> +<define name="draw-frame"> + <element name="draw:frame"> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-rel-size-attlist"/> + <ref name="common-draw-caption-id-attlist"/> + <ref name="presentation-shape-attlist"/> + <ref name="draw-frame-attlist"/> + <zeroOrMore> + <choice> + <ref name="draw-text-box"/> + <ref name="draw-image"/> + <ref name="draw-object"/> + <ref name="draw-object-ole"/> + <ref name="draw-applet"/> + <ref name="draw-floating-frame"/> + <ref name="draw-plugin"/> + </choice> + </zeroOrMore> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <optional> + <ref name="draw-image-map"/> + </optional> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <optional> + <choice> + <ref name="draw-contour-polygon"/> + <ref name="draw-contour-path"/> + </choice> + </optional> + </element> +</define> +<define name="common-draw-rel-size-attlist"> + <ref name="common-draw-size-attlist"/> + <optional> + <attribute name="style:rel-width"> + <choice> + <ref name="percent"/> + <value>scale</value> + <value>scale-min</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:rel-height"> + <choice> + <ref name="percent"/> + <value>scale</value> + <value>scale-min</value> + </choice> + </attribute> + </optional> +</define> +<define name="draw-frame-attlist" combine="interleave"> + <optional> + <attribute name="draw:copy-of"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-text-box"> + <element name="draw:text-box"> + <ref name="draw-text-box-attlist"/> + <zeroOrMore> + <ref name="text-content"/> + </zeroOrMore> + </element> +</define> +<define name="draw-text-box-attlist" combine="interleave"> + <optional> + <attribute name="draw:chain-next-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-text-box-attlist" combine="interleave"> + <optional> + <attribute name="draw:corner-radius"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> +</define> +<define name="draw-text-box-attlist" combine="interleave"> + <optional> + <attribute name="fo:min-height"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="fo:min-width"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> +</define> +<define name="draw-text-box-attlist" combine="interleave"> + <optional> + <attribute name="fo:max-height"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="fo:max-width"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> +</define> +<define name="draw-text-box-attlist" combine="interleave"> + <optional> + <ref name="text-id"/> + </optional> +</define> +<define name="draw-image"> + <element name="draw:image"> + <ref name="draw-image-attlist"/> + <choice> + <ref name="common-draw-data-attlist"/> + <ref name="office-binary-data"/> + </choice> + <ref name="draw-text"/> + </element> +</define> +<define name="common-draw-data-attlist" combine="interleave"> + <group> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> + <optional> + <attribute name="xlink:type" a:defaultValue="simple"> + <choice> + <value>simple</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="xlink:show" a:defaultValue="embed"> + <choice> + <value>embed</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="xlink:actuate" a:defaultValue="onLoad"> + <choice> + <value>onLoad</value> + </choice> + </attribute> + </optional> + </group> +</define> + +<define name="office-binary-data"> + <element name="office:binary-data"> + <ref name="base64Binary"/> + </element> +</define> +<define name="draw-image-attlist" combine="interleave"> + <optional> + <attribute name="draw:filter-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-object"> + <element name="draw:object"> + <ref name="draw-object-attlist"/> + <choice> + <ref name="common-draw-data-attlist"/> + <ref name="office-document"/> + <ref name="math-math"/> + </choice> + </element> +</define> + +<define name="draw-object-ole"> + <element name="draw:object-ole"> + <ref name="draw-object-ole-attlist"/> + <choice> + <ref name="common-draw-data-attlist"/> + <ref name="office-binary-data"/> + </choice> + </element> +</define> +<define name="draw-object-attlist" combine="interleave"> + <optional> + <attribute name="draw:notify-on-update-of-ranges"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-object-ole-attlist" combine="interleave"> + <optional> + <attribute name="draw:class-id"/> + </optional> +</define> +<define name="draw-applet"> + <element name="draw:applet"> + <ref name="draw-applet-attlist"/> + <optional> + <ref name="common-draw-data-attlist"/> + </optional> + <zeroOrMore> + <ref name="draw-param"/> + </zeroOrMore> + </element> +</define> +<define name="draw-applet-attlist" combine="interleave"> + <optional> + <attribute name="draw:code"/> + </optional> +</define> +<define name="draw-applet-attlist" combine="interleave"> + <optional> + <attribute name="draw:object"/> + </optional> +</define> +<define name="draw-applet-attlist" combine="interleave"> + <optional> + <attribute name="draw:archive"/> + </optional> +</define> +<define name="draw-applet-attlist" combine="interleave"> + <optional> + <attribute name="draw:may-script" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="draw-plugin"> + <element name="draw:plugin"> + <ref name="draw-plugin-attlist"/> + <ref name="common-draw-data-attlist"/> + <zeroOrMore> + <ref name="draw-param"/> + </zeroOrMore> + </element> +</define> +<define name="draw-plugin-attlist" combine="interleave"> + <optional> + <attribute name="draw:mime-type"/> + </optional> +</define> +<define name="draw-param"> + <element name="draw:param"> + <ref name="draw-param-attlist"/> + <empty/> + </element> +</define> +<define name="draw-param-attlist" combine="interleave"> + <optional> + <attribute name="draw:name"/> + </optional> +</define> +<define name="draw-param-attlist" combine="interleave"> + <optional> + <attribute name="draw:value"/> + </optional> +</define> +<define name="draw-floating-frame"> + <element name="draw:floating-frame"> + <ref name="draw-floating-frame-attlist"/> + <ref name="common-draw-data-attlist"/> + </element> +</define> +<define name="draw-floating-frame-attlist" combine="interleave"> + <optional> + <attribute name="draw:frame-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-contour-polygon"> + <element name="draw:contour-polygon"> + <ref name="common-contour-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-viewbox-attlist"/> + <ref name="common-draw-points-attlist"/> + <empty/> + </element> +</define> + +<define name="draw-contour-path"> + <element name="draw:contour-path"> + <ref name="common-contour-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-viewbox-attlist"/> + <ref name="common-draw-path-data-attlist"/> + <empty/> + </element> +</define> +<define name="common-contour-attlist" combine="interleave"> + <attribute name="draw:recreate-on-edit"> + <ref name="boolean"/> + </attribute> +</define> +<define name="draw-a"> + <element name="draw:a"> + <ref name="draw-a-attlist"/> + <ref name="draw-frame"/> + </element> +</define> +<define name="draw-a-attlist" combine="interleave"> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> + <optional> + <attribute name="xlink:type" a:defaultValue="simple"> + <value>simple</value> + </attribute> + </optional> + <optional> + <attribute name="xlink:actuate" a:defaultValue="onRequest"> + <choice> + <value>onRequest</value> + </choice> + </attribute> + </optional> +</define> +<define name="draw-a-attlist" combine="interleave"> + <optional> + <attribute name="office:target-frame-name"> + <ref name="targetFrameName"/> + </attribute> + </optional> + <optional> + <attribute name="xlink:show"> + <choice> + <value>new</value> + <value>replace</value> + </choice> + </attribute> + </optional> +</define> +<define name="draw-a-attlist" combine="interleave"> + <optional> + <attribute name="office:name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-a-attlist" combine="interleave"> + <optional> + <attribute name="office:title"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-a-attlist" combine="interleave"> + <optional> + <attribute name="office:server-map" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="draw-image-map"> + <element name="draw:image-map"> + <zeroOrMore> + <choice> + <ref name="draw-area-rectangle"/> + <ref name="draw-area-circle"/> + <ref name="draw-area-polygon"/> + </choice> + </zeroOrMore> + </element> +</define> +<define name="draw-area-rectangle"> + <element name="draw:area-rectangle"> + <ref name="common-draw-area-attlist"/> + <attribute name="svg:x"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:y"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:width"> + <ref name="length"/> + </attribute> + <attribute name="svg:height"> + <ref name="length"/> + </attribute> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + </element> +</define> +<define name="draw-area-circle"> + <element name="draw:area-circle"> + <ref name="common-draw-area-attlist"/> + <attribute name="svg:cx"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:cy"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:r"> + <ref name="length"/> + </attribute> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + </element> +</define> +<define name="draw-area-polygon"> + <element name="draw:area-polygon"> + <ref name="common-draw-area-attlist"/> + <attribute name="svg:x"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:y"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:width"> + <ref name="length"/> + </attribute> + <attribute name="svg:height"> + <ref name="length"/> + </attribute> + <ref name="common-draw-viewbox-attlist"/> + <ref name="common-draw-points-attlist"/> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + </element> +</define> +<define name="common-draw-area-attlist" combine="interleave"> + <optional> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> + </optional> + <optional> + <attribute name="xlink:type" a:defaultValue="simple"> + <choice> + <value>simple</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="office:target-frame-name"> + <ref name="targetFrameName"/> + </attribute> + </optional> + <optional> + <attribute name="xlink:show"> + <choice> + <value>new</value> + <value>replace</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-draw-area-attlist" combine="interleave"> + <optional> + <attribute name="office:name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-draw-area-attlist" combine="interleave"> + <optional> + <attribute name="draw:nohref"> + <choice> + <value>nohref</value> + </choice> + </attribute> + </optional> +</define> +<define name="dr3d-scene"> + <element name="dr3d:scene"> + <ref name="dr3d-scene-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-style-name-attlist"/> + <ref name="common-draw-z-index-attlist"/> + <ref name="common-draw-id-attlist"/> + <ref name="common-draw-layer-name-attlist"/> + <ref name="common-text-spreadsheet-shape-attlist"/> + <ref name="common-dr3d-transform-attlist"/> + <ref name="common-draw-caption-id-attlist"/> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <zeroOrMore> + <ref name="dr3d-light"/> + </zeroOrMore> + <zeroOrMore> + <ref name="shapes3d"/> + </zeroOrMore> + </element> +</define> + +<define name="shapes3d"> + <choice> + <ref name="dr3d-scene"/> + <ref name="dr3d-extrude"/> + <ref name="dr3d-sphere"/> + <ref name="dr3d-rotate"/> + <ref name="dr3d-cube"/> + </choice> +</define> +<define name="dr3d-scene-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:vrp"> + <ref name="vector3D"/> + </attribute> + </optional> + <optional> + <attribute name="dr3d:vpn"> + <ref name="vector3D"/> + </attribute> + </optional> + <optional> + <attribute name="dr3d:vup"> + <ref name="vector3D"/> + </attribute> + </optional> +</define> +<define name="dr3d-scene-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:projection"> + <choice> + <value>parallel</value> + <value>perspective</value> + </choice> + </attribute> + </optional> +</define> +<define name="dr3d-scene-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:distance"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="dr3d-scene-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:focal-length"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="dr3d-scene-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:shadow-slant"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="dr3d-scene-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:shade-mode"> + <choice> + <value>flat</value> + <value>phong</value> + <value>gouraud</value> + <value>draft</value> + </choice> + </attribute> + </optional> +</define> +<define name="dr3d-scene-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:ambient-color"> + <ref name="color"/> + </attribute> + </optional> +</define> +<define name="dr3d-scene-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:lighting-mode"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="common-dr3d-transform-attlist"> + <optional> + <attribute name="dr3d:transform"/> + </optional> +</define> +<define name="dr3d-light"> + <element name="dr3d:light"> + <ref name="dr3d-light-attlist"/> + <empty/> + </element> +</define> +<define name="dr3d-light-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:diffuse-color"> + <ref name="color"/> + </attribute> + </optional> +</define> +<define name="dr3d-light-attlist" combine="interleave"> + <attribute name="dr3d:direction"> + <ref name="vector3D"/> + </attribute> +</define> +<define name="dr3d-light-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:enabled"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="dr3d-light-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:specular"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="dr3d-cube"> + <element name="dr3d:cube"> + <ref name="dr3d-cube-attlist"/> + <ref name="common-draw-z-index-attlist"/> + <ref name="common-draw-id-attlist"/> + <ref name="common-draw-layer-name-attlist"/> + <ref name="common-draw-style-name-attlist"/> + <ref name="common-dr3d-transform-attlist"/> + <empty/> + </element> +</define> +<define name="dr3d-cube-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:min-edge"> + <ref name="vector3D"/> + </attribute> + </optional> + <optional> + <attribute name="dr3d:max-edge"> + <ref name="vector3D"/> + </attribute> + </optional> +</define> +<define name="dr3d-sphere"> + <element name="dr3d:sphere"> + <ref name="dr3d-sphere-attlist"/> + <ref name="common-draw-z-index-attlist"/> + <ref name="common-draw-id-attlist"/> + <ref name="common-draw-layer-name-attlist"/> + <ref name="common-draw-style-name-attlist"/> + <ref name="common-dr3d-transform-attlist"/> + <empty/> + </element> +</define> +<define name="dr3d-sphere-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:center"> + <ref name="vector3D"/> + </attribute> + </optional> +</define> +<define name="dr3d-sphere-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:size"> + <ref name="vector3D"/> + </attribute> + </optional> +</define> +<define name="dr3d-extrude"> + <element name="dr3d:extrude"> + <ref name="common-draw-path-data-attlist"/> + <ref name="common-draw-viewbox-attlist"/> + <ref name="common-draw-id-attlist"/> + <ref name="common-draw-z-index-attlist"/> + <ref name="common-draw-layer-name-attlist"/> + <ref name="common-draw-style-name-attlist"/> + <ref name="common-dr3d-transform-attlist"/> + <empty/> + </element> +</define> +<define name="dr3d-rotate"> + <element name="dr3d:rotate"> + <ref name="common-draw-viewbox-attlist"/> + <ref name="common-draw-path-data-attlist"/> + <ref name="common-draw-z-index-attlist"/> + <ref name="common-draw-id-attlist"/> + <ref name="common-draw-layer-name-attlist"/> + <ref name="common-draw-style-name-attlist"/> + <ref name="common-dr3d-transform-attlist"/> + <empty/> + </element> +</define> +<define name="draw-custom-shape"> + <element name="draw:custom-shape"> + <ref name="draw-custom-shape-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <ref name="common-draw-caption-id-attlist"/> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <ref name="draw-text"/> + <optional> + <ref name="draw-enhanced-geometry"/> + </optional> + </element> +</define> +<define name="draw-custom-shape-attlist" combine="interleave"> + <optional> + <attribute name="draw:engine"> + <ref name="namespacedToken"/> + </attribute> + </optional> +</define> +<define name="draw-custom-shape-attlist" combine="interleave"> + <optional> + <attribute name="draw:data"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry"> + <element name="draw:enhanced-geometry"> + <ref name="draw-enhanced-geometry-attlist"/> + <zeroOrMore> + <ref name="draw-equation"/> + </zeroOrMore> + <zeroOrMore> + <ref name="draw-handle"/> + </zeroOrMore> + </element> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:type" a:defaultValue="non-primitive"> + <ref name="custom-shape-type"/> + </attribute> + </optional> +</define> + +<define name="custom-shape-type"> + <choice> + <value>non-primitive</value> + <ref name="string"/> + </choice> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="svg:viewBox"> + <list> + <ref name="integer"/> + <ref name="integer"/> + <ref name="integer"/> + <ref name="integer"/> + </list> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:mirror-vertical" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="draw:mirror-horizontal" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:text-rotate-angle" a:defaultValue="0"> + <ref name="double"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-allowed" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:text-path-allowed" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:concentric-gradient-fill-allowed" + a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-brightness" a:defaultValue="33%"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-depth" a:defaultValue="36pt 0"> + <list> + <ref name="length"/> + <ref name="double"/> + </list> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-diffusion" a:defaultValue="0%"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-number-of-line-segments" + a:defaultValue="30"> + <ref name="integer"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-light-face" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-first-light-harsh" + a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-second-light-harsh" + a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-first-light-level" + a:defaultValue="66%"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-second-light-level" + a:defaultValue="66%"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-first-light-direction" + a:defaultValue="(5 0 1)"> + <ref name="vector3D"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-second-light-direction" + a:defaultValue="(-5 0 1)"> + <ref name="vector3D"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-metal" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:shade-mode" a:defaultValue="flat"> + <choice> + <value>flat</value> + <value>phong</value> + <value>gouraud</value> + <value>draft</value> + </choice> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-rotation-angle" a:defaultValue="0 0"> + <list> + <ref name="double"/> + <ref name="double"/> + </list> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-rotation-center"> + <ref name="vector3D"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-shininess" a:defaultValue="50%"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-skew" a:defaultValue="50 45"> + <list> + <ref name="double"/> + <ref name="double"/> + </list> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-specularity" a:defaultValue="0%"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:projection" a:defaultValue="parallel"> + <choice> + <value>parallel</value> + <value>perspective</value> + </choice> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-viewpoint" + a:defaultValue="3.5cm -3.5cm 25cm"> + <ref name="point3D"/> + </attribute> + </optional> +</define> + +<define name="point3D"> + <data type="string"/> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-origin" a:defaultValue="0.5 -0.5"> + <list> + <ref name="double"/> + <ref name="double"/> + </list> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:extrusion-color" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:enhanced-path"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:path-stretchpoint-x" a:defaultValue="0"> + <ref name="double"/> + </attribute> + </optional> + <optional> + <attribute name="draw:path-stretchpoint-y" a:defaultValue="0"> + <ref name="double"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:text-areas"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:glue-points"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:glue-point-type" a:defaultValue="none"> + <choice> + <value>none</value> + <value>segments</value> + <value>rectangle</value> + </choice> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:glue-point-leaving-directions"/> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:text-path" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:text-path-mode" a:defaultValue="normal"> + <choice> + <value>normal</value> + <value>path</value> + <value>shape</value> + </choice> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:text-path-scale" a:defaultValue="path"> + <choice> + <value>path</value> + <value>shape</value> + </choice> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:text-path-same-letter-heights" + a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="draw-enhanced-geometry-attlist" combine="interleave"> + <optional> + <attribute name="draw:modifiers"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-equation"> + <element name="draw:equation"> + <ref name="draw-equation-attlist"/> + <empty/> + </element> +</define> +<define name="draw-equation-attlist" combine="interleave"> + <optional> + <attribute name="draw:name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-equation-attlist" combine="interleave"> + <optional> + <attribute name="draw:formula"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-handle"> + <element name="draw:handle"> + <ref name="draw-handle-attlist"/> + <empty/> + </element> +</define> +<define name="draw-handle-attlist" combine="interleave"> + <optional> + <attribute name="draw:handle-mirror-vertical" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="draw-handle-attlist" combine="interleave"> + <optional> + <attribute name="draw:handle-mirror-horizontal" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="draw-handle-attlist" combine="interleave"> + <optional> + <attribute name="draw:handle-switched" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="draw-handle-attlist" combine="interleave"> + <attribute name="draw:handle-position"> + <ref name="string"/> + </attribute> +</define> +<define name="draw-handle-attlist" combine="interleave"> + <optional> + <attribute name="draw:handle-range-x-minimum"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-handle-attlist" combine="interleave"> + <optional> + <attribute name="draw:handle-range-x-maximum"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-handle-attlist" combine="interleave"> + <optional> + <attribute name="draw:handle-range-y-minimum"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-handle-attlist" combine="interleave"> + <optional> + <attribute name="draw:handle-range-y-maximum"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-handle-attlist" combine="interleave"> + <optional> + <attribute name="draw:handle-polar"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-handle-attlist" combine="interleave"> + <optional> + <attribute name="draw:handle-radius-range-minimum"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-handle-attlist" combine="interleave"> + <optional> + <attribute name="draw:handle-radius-range-maximum"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="presentation-shape-attlist" combine="interleave"> + <optional> + <attribute name="presentation:class"> + <ref name="presentation-classes"/> + </attribute> + </optional> +</define> +<define name="presentation-classes"> + <choice> + <value>title</value> + <value>outline</value> + <value>subtitle</value> + <value>text</value> + <value>graphic</value> + <value>object</value> + <value>chart</value> + <value>table</value> + <value>orgchart</value> + <value>page</value> + <value>notes</value> + <value>handout</value> + <value>header</value> + <value>footer</value> + <value>date-time</value> + <value>page-number</value> + </choice> +</define> +<define name="presentation-shape-attlist" combine="interleave"> + <optional> + <attribute name="presentation:placeholder"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="presentation-shape-attlist" combine="interleave"> + <optional> + <attribute name="presentation:user-transformed"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="presentation-animations"> + <element name="presentation:animations"> + <zeroOrMore> + <choice> + <ref name="presentation-animation-elements"/> + <ref name="presentation-animation-group"/> + </choice> + </zeroOrMore> + </element> +</define> +<define name="presentation-animation-elements"> + <choice> + <ref name="presentation-show-shape"/> + <ref name="presentation-show-text"/> + <ref name="presentation-hide-shape"/> + <ref name="presentation-hide-text"/> + <ref name="presentation-dim"/> + <ref name="presentation-play"/> + </choice> +</define> +<define name="presentation-sound"> + <element name="presentation:sound"> + <ref name="presentation-sound-attlist"/> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> + <optional> + <attribute name="xlink:type" a:defaultValue="simple"> + <choice> + <value>simple</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="xlink:actuate" a:defaultValue="onRequest"> + <choice> + <value>onRequest</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="xlink:show"> + <choice> + <value>new</value> + <value>replace</value> + </choice> + </attribute> + </optional> + <empty/> + </element> +</define> +<define name="presentation-sound-attlist" combine="interleave"> + <optional> + <attribute name="presentation:play-full"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="presentation-show-shape"> + <element name="presentation:show-shape"> + <ref name="common-presentation-effect-attlist"/> + <optional> + <ref name="presentation-sound"/> + </optional> + </element> +</define> +<define name="common-presentation-effect-attlist" combine="interleave"> + <attribute name="draw:shape-id"> + <ref name="IDREF"/> + </attribute> +</define> +<define name="common-presentation-effect-attlist" combine="interleave"> + <optional> + <attribute name="presentation:effect" a:defaultValue="none"> + <ref name="presentationEffects"/> + </attribute> + </optional> +</define> +<define name="presentationEffects"> + <choice> + <value>none</value> + <value>fade</value> + <value>move</value> + <value>stripes</value> + <value>open</value> + <value>close</value> + <value>dissolve</value> + <value>wavyline</value> + <value>random</value> + <value>lines</value> + <value>laser</value> + <value>appear</value> + <value>hide</value> + <value>move-short</value> + <value>checkerboard</value> + <value>rotate</value> + <value>stretch</value> + </choice> +</define> +<define name="common-presentation-effect-attlist" combine="interleave"> + <optional> + <attribute name="presentation:direction" a:defaultValue="none"> + <ref name="presentationEffectDirections"/> + </attribute> + </optional> +</define> +<define name="presentationEffectDirections"> + <choice> + <value>none</value> + <value>from-left</value> + <value>from-top</value> + <value>from-right</value> + <value>from-bottom</value> + <value>from-center</value> + <value>from-upper-left</value> + <value>from-upper-right</value> + <value>from-lower-left</value> + <value>from-lower-right</value> + <value>to-left</value> + <value>to-top</value> + <value>to-right</value> + <value>to-bottom</value> + <value>to-upper-left</value> + <value>to-upper-right</value> + <value>to-lower-right</value> + <value>to-lower-left</value> + <value>path</value> + <value>spiral-inward-left</value> + <value>spiral-inward-right</value> + <value>spiral-outward-left</value> + <value>spiral-outward-right</value> + <value>vertical</value> + <value>horizontal</value> + <value>to-center</value> + <value>clockwise</value> + <value>counter-clockwise</value> + </choice> +</define> +<define name="common-presentation-effect-attlist" combine="interleave"> + <optional> + <attribute name="presentation:speed" a:defaultValue="medium"> + <ref name="presentationSpeeds"/> + </attribute> + </optional> +</define> +<define name="presentationSpeeds"> + <choice> + <value>slow</value> + <value>medium</value> + <value>fast</value> + </choice> +</define> +<define name="common-presentation-effect-attlist" combine="interleave"> + <optional> + <attribute name="presentation:delay"> + <ref name="duration"/> + </attribute> + </optional> +</define> +<define name="common-presentation-effect-attlist" combine="interleave"> + <optional> + <attribute name="presentation:start-scale" a:defaultValue="100%"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="common-presentation-effect-attlist" combine="interleave"> + <optional> + <attribute name="presentation:path-id"/> + </optional> +</define> +<define name="presentation-show-text"> + <element name="presentation:show-text"> + <ref name="common-presentation-effect-attlist"/> + <optional> + <ref name="presentation-sound"/> + </optional> + </element> +</define> +<define name="presentation-hide-shape"> + <element name="presentation:hide-shape"> + <ref name="common-presentation-effect-attlist"/> + <optional> + <ref name="presentation-sound"/> + </optional> + </element> +</define> +<define name="presentation-hide-text"> + <element name="presentation:hide-text"> + <ref name="common-presentation-effect-attlist"/> + <optional> + <ref name="presentation-sound"/> + </optional> + </element> +</define> +<define name="presentation-dim"> + <element name="presentation:dim"> + <ref name="presentation-dim-attlist"/> + <optional> + <ref name="presentation-sound"/> + </optional> + </element> +</define> +<define name="presentation-dim-attlist" combine="interleave"> + <attribute name="draw:shape-id"> + <ref name="IDREF"/> + </attribute> +</define> +<define name="presentation-dim-attlist" combine="interleave"> + <attribute name="draw:color"> + <ref name="color"/> + </attribute> +</define> +<define name="presentation-play"> + <element name="presentation:play"> + <ref name="presentation-play-attlist"/> + <empty/> + </element> +</define> +<define name="presentation-play-attlist" combine="interleave"> + <attribute name="draw:shape-id"> + <ref name="IDREF"/> + </attribute> + <optional> + <attribute name="presentation:speed" a:defaultValue="medium"> + <ref name="presentationSpeeds"/> + </attribute> + </optional> +</define> +<define name="presentation-animation-group"> + <element name="presentation:animation-group"> + <zeroOrMore> + <ref name="presentation-animation-elements"/> + </zeroOrMore> + </element> +</define> +<define name="common-anim-attlist" combine="interleave"> + <optional> + <attribute name="presentation:node-type" a:defaultValue="default"> + <choice> + <value>default</value> + <value>on-click</value> + <value>with-previous</value> + <value>after-previous</value> + <value>timing-root</value> + <value>main-sequence</value> + <value>interactive-sequence</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-anim-attlist" combine="interleave"> + <optional> + <attribute name="presentation:preset-id"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-anim-attlist" combine="interleave"> + <optional> + <attribute name="presentation:preset-sub-type"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-anim-attlist" combine="interleave"> + <optional> + <attribute name="presentation:preset-class" a:defaultValue="custom"> + <choice> + <value>custom</value> + <value>entrance</value> + <value>exit</value> + <value>emphasis</value> + <value>motion-path</value> + <value>ole-action</value> + <value>media-call</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-anim-attlist" combine="interleave"> + <optional> + <attribute name="presentation:master-element"> + <ref name="IDREF"/> + </attribute> + </optional> +</define> +<define name="common-anim-attlist" combine="interleave"> + <optional> + <attribute name="presentation:group-id"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="presentation-event-listener"> + <element name="presentation:event-listener"> + <ref name="presentation-event-listener-attlist"/> + <optional> + <ref name="presentation-sound"/> + </optional> + </element> +</define> +<define name="presentation-event-listener-attlist" combine="interleave"> + <attribute name="script:event-name"> + <ref name="string"/> + </attribute> +</define> +<define name="presentation-event-listener-attlist" combine="interleave"> + <attribute name="presentation:action"> + <choice> + <value>none</value> + <value>previous-page</value> + <value>next-page</value> + <value>first-page</value> + <value>last-page</value> + <value>hide</value> + <value>stop</value> + <value>execute</value> + <value>show</value> + <value>verb</value> + <value>fade-out</value> + <value>sound</value> + </choice> + </attribute> +</define> +<define name="presentation-event-listener-attlist" combine="interleave"> + <optional> + <attribute name="presentation:effect" a:defaultValue="none"> + <ref name="presentationEffects"/> + </attribute> + </optional> +</define> +<define name="presentation-event-listener-attlist" combine="interleave"> + <optional> + <attribute name="presentation:direction" a:defaultValue="none"> + <ref name="presentationEffectDirections"/> + </attribute> + </optional> +</define> +<define name="presentation-event-listener-attlist" combine="interleave"> + <optional> + <attribute name="presentation:speed" a:defaultValue="medium"> + <ref name="presentationSpeeds"/> + </attribute> + </optional> +</define> +<define name="presentation-event-listener-attlist" combine="interleave"> + <optional> + <attribute name="presentation:start-scale" a:defaultValue="100%"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="presentation-event-listener-attlist" combine="interleave"> + <optional> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> + </optional> + <optional> + <attribute name="xlink:type" a:defaultValue="simple"> + <choice> + <value>simple</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="xlink:show" a:defaultValue="embed"> + <choice> + <value>embed</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="xlink:actuate" a:defaultValue="onRequest"> + <choice> + <value>onRequest</value> + </choice> + </attribute> + </optional> +</define> +<define name="presentation-event-listener-attlist" combine="interleave"> + <optional> + <attribute name="presentation:verb"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="paragraph-content" combine="choice"> + <element name="presentation:header"> + <empty/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="presentation:footer"> + <empty/> + </element> +</define> +<define name="paragraph-content" combine="choice"> + <element name="presentation:date-time"> + <empty/> + </element> +</define> +<define name="presentation-decls"> + <zeroOrMore> + <ref name="presentation-decl"/> + </zeroOrMore> +</define> +<define name="presentation-decl" combine="choice"> + <element name="presentation:header-decl"> + <ref name="presentation-header-decl-attlist"/> + <text/> + </element> +</define> +<define name="presentation-header-decl-attlist" combine="interleave"> + <attribute name="presentation:name"> + <ref name="string"/> + </attribute> +</define> +<define name="presentation-decl" combine="choice"> + <element name="presentation:footer-decl"> + <ref name="presentation-footer-decl-attlist"/> + <text/> + </element> +</define> +<define name="presentation-footer-decl-attlist" combine="interleave"> + <attribute name="presentation:name"> + <ref name="string"/> + </attribute> +</define> +<define name="presentation-decl" combine="choice"> + <element name="presentation:date-time-decl"> + <ref name="presentation-date-time-decl-attlist"/> + <text/> + </element> +</define> +<define name="presentation-date-time-decl-attlist" combine="interleave"> + <attribute name="presentation:name"> + <ref name="string"/> + </attribute> +</define> +<define name="presentation-date-time-decl-attlist" combine="interleave"> + <attribute name="presentation:source"> + <choice> + <value>fixed</value> + <value>current-date</value> + </choice> + </attribute> +</define> +<define name="presentation-date-time-decl-attlist" combine="interleave"> + <optional> + <attribute name="style:data-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="presentation-settings"> + <optional> + <element name="presentation:settings"> + <ref name="presentation-settings-attlist"/> + <zeroOrMore> + <ref name="presentation-show"/> + </zeroOrMore> + </element> + </optional> +</define> +<define name="presentation-settings-attlist" combine="interleave"> + <optional> + <attribute name="presentation:start-page"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="presentation-settings-attlist" combine="interleave"> + <optional> + <attribute name="presentation:show"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="presentation-settings-attlist" combine="interleave"> + <optional> + <attribute name="presentation:full-screen" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="presentation-settings-attlist" combine="interleave"> + <optional> + <attribute name="presentation:endless" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="presentation-settings-attlist" combine="interleave"> + <optional> + <attribute name="presentation:pause"> + <ref name="duration"/> + </attribute> + </optional> +</define> +<define name="presentation-settings-attlist" combine="interleave"> + <optional> + <attribute name="presentation:show-logo" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="presentation-settings-attlist" combine="interleave"> + <optional> + <attribute name="presentation:force-manual" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="presentation-settings-attlist" combine="interleave"> + <optional> + <attribute name="presentation:mouse-visible" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="presentation-settings-attlist" combine="interleave"> + <optional> + <attribute name="presentation:mouse-as-pen" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="presentation-settings-attlist" combine="interleave"> + <optional> + <attribute name="presentation:start-with-navigator" + a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="presentation-settings-attlist" combine="interleave"> + <optional> + <attribute name="presentation:animations" a:defaultValue="enabled"> + <choice> + <value>enabled</value> + <value>disabled</value> + </choice> + </attribute> + </optional> +</define> +<define name="presentation-settings-attlist" combine="interleave"> + <optional> + <attribute name="presentation:transition-on-click" + a:defaultValue="enabled"> + <choice> + <value>enabled</value> + <value>disabled</value> + </choice> + </attribute> + </optional> +</define> +<define name="presentation-settings-attlist" combine="interleave"> + <optional> + <attribute name="presentation:stay-on-top" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="presentation-settings-attlist" combine="interleave"> + <optional> + <attribute name="presentation:show-end-of-presentation-slide" + a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="presentation-show"> + <element name="presentation:show"> + <ref name="presentation-show-attlist"/> + <empty/> + </element> +</define> +<define name="presentation-show-attlist" combine="interleave"> + <attribute name="presentation:name"> + <ref name="string"/> + </attribute> +</define> +<define name="presentation-show-attlist" combine="interleave"> + <attribute name="presentation:pages"/> +</define> +<define name="chart-chart"> + <element name="chart:chart"> + <ref name="chart-chart-attlist"/> + <optional> + <ref name="chart-title"/> + </optional> + <optional> + <ref name="chart-subtitle"/> + </optional> + <optional> + <ref name="chart-footer"/> + </optional> + <optional> + <ref name="chart-legend"/> + </optional> + <ref name="chart-plot-area"/> + <optional> + <ref name="table-table"/> + </optional> + </element> +</define> +<define name="chart-chart-attlist" combine="interleave"> + <attribute name="chart:class"> + <ref name="namespacedToken"/> + </attribute> +</define> +<define name="chart-chart-attlist" combine="interleave"> + <ref name="common-draw-size-attlist"/> +</define> +<define name="chart-chart-attlist" combine="interleave"> + <optional> + <attribute name="chart:column-mapping"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="chart-chart-attlist" combine="interleave"> + <optional> + <attribute name="chart:row-mapping"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="chart-chart-attlist" combine="interleave"> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="chart-title"> + <element name="chart:title"> + <ref name="chart-title-attlist"/> + <optional> + <ref name="text-p"/> + </optional> + </element> +</define> +<define name="chart-title-attlist" combine="interleave"> + <optional> + <attribute name="table:cell-range"> + <ref name="cellAddress"/> + </attribute> + </optional> +</define> +<define name="chart-title-attlist" combine="interleave"> + <ref name="common-draw-position-attlist"/> +</define> +<define name="chart-title-attlist" combine="interleave"> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="chart-subtitle"> + <element name="chart:subtitle"> + <ref name="chart-title-attlist"/> + <optional> + <ref name="text-p"/> + </optional> + </element> +</define> +<define name="chart-footer"> + <element name="chart:footer"> + <ref name="chart-title-attlist"/> + <optional> + <ref name="text-p"/> + </optional> + </element> +</define> +<define name="chart-legend"> + <element name="chart:legend"> + <ref name="chart-legend-attlist"/> + <empty/> + </element> +</define> +<define name="chart-legend-attlist" combine="interleave"> + <choice> + <group> + <attribute name="chart:legend-position"> + <choice> + <value>start</value> + <value>end</value> + <value>top</value> + <value>bottom</value> + </choice> + </attribute> + <optional> + <attribute name="chart:legend-align"> + <choice> + <value>start</value> + <value>center</value> + <value>end</value> + </choice> + </attribute> + </optional> + </group> + <attribute name="chart:legend-position"> + <choice> + <value>top-start</value> + <value>bottom-start</value> + <value>top-end</value> + <value>bottom-end</value> + </choice> + </attribute> + <empty/> + </choice> +</define> +<define name="chart-legend-attlist" combine="interleave"> + <ref name="common-draw-position-attlist"/> +</define> +<define name="chart-legend-attlist" combine="interleave"> + <choice> + <attribute name="style:legend-expansion"> + <choice> + <value>wide</value> + <value>high</value> + <value>balanced</value> + </choice> + </attribute> + <group> + <attribute name="style:legend-expansion"> + <value>custom</value> + </attribute> + <attribute name="style:legend-expansion-aspect-ratio"> + <ref name="double"/> + </attribute> + </group> + <empty/> + </choice> +</define> +<define name="chart-legend-attlist" combine="interleave"> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="chart-plot-area"> + <element name="chart:plot-area"> + <ref name="chart-plot-area-attlist"/> + <zeroOrMore> + <ref name="dr3d-light"/> + </zeroOrMore> + <zeroOrMore> + <ref name="chart-axis"/> + </zeroOrMore> + <zeroOrMore> + <ref name="chart-series"/> + </zeroOrMore> + <optional> + <ref name="chart-stock-gain-marker"/> + </optional> + <optional> + <ref name="chart-stock-loss-marker"/> + </optional> + <optional> + <ref name="chart-stock-range-line"/> + </optional> + <optional> + <ref name="chart-wall"/> + </optional> + <optional> + <ref name="chart-floor"/> + </optional> + </element> +</define> +<define name="chart-plot-area-attlist" combine="interleave"> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> +</define> +<define name="chart-plot-area-attlist" combine="interleave"> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="chart-plot-area-attlist" combine="interleave"> + <optional> + <attribute name="table:cell-range-address"> + <ref name="cellRangeAddress"/> + </attribute> + </optional> +</define> +<define name="chart-plot-area-attlist" combine="interleave"> + <optional> + <attribute name="chart:data-source-has-labels" a:defaultValue="none"> + <choice> + <value>none</value> + <value>row</value> + <value>column</value> + <value>both</value> + </choice> + </attribute> + </optional> +</define> +<define name="chart-plot-area-attlist" combine="interleave"> + <ref name="dr3d-scene-attlist"/> + <ref name="common-dr3d-transform-attlist"/> +</define> +<define name="chart-wall"> + <element name="chart:wall"> + <ref name="chart-wall-attlist"/> + <empty/> + </element> +</define> +<define name="chart-wall-attlist" combine="interleave"> + <optional> + <attribute name="svg:width"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="chart-wall-attlist" combine="interleave"> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="chart-floor"> + <element name="chart:floor"> + <ref name="chart-floor-attlist"/> + <empty/> + </element> +</define> +<define name="chart-floor-attlist" combine="interleave"> + <optional> + <attribute name="svg:width"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="chart-floor-attlist" combine="interleave"> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="chart-axis"> + <element name="chart:axis"> + <ref name="chart-axis-attlist"/> + <optional> + <ref name="chart-title"/> + </optional> + <optional> + <ref name="chart-categories"/> + </optional> + <zeroOrMore> + <ref name="chart-grid"/> + </zeroOrMore> + </element> +</define> +<define name="chart-axis-attlist" combine="interleave"> + <attribute name="chart:dimension"> + <choice> + <value>x</value> + <value>y</value> + <value>z</value> + </choice> + </attribute> +</define> +<define name="chart-axis-attlist" combine="interleave"> + <optional> + <attribute name="chart:name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="chart-axis-attlist" combine="interleave"> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="chart-grid"> + <element name="chart:grid"> + <ref name="chart-grid-attlist"/> + </element> +</define> +<define name="chart-grid-attlist" combine="interleave"> + <optional> + <attribute name="chart:class" a:defaultValue="major"> + <choice> + <value>major</value> + <value>minor</value> + </choice> + </attribute> + </optional> +</define> +<define name="chart-grid-attlist" combine="interleave"> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="chart-series"> + <element name="chart:series"> + <ref name="chart-series-attlist"/> + <zeroOrMore> + <ref name="chart-domain"/> + </zeroOrMore> + <optional> + <ref name="chart-mean-value"/> + </optional> + <optional> + <ref name="chart-regression-curve"/> + </optional> + <optional> + <ref name="chart-error-indicator"/> + </optional> + <zeroOrMore> + <ref name="chart-data-point"/> + </zeroOrMore> + </element> +</define> +<define name="chart-series-attlist" combine="interleave"> + <optional> + <attribute name="chart:values-cell-range-address"> + <ref name="cellRangeAddress"/> + </attribute> + </optional> +</define> +<define name="chart-series-attlist" combine="interleave"> + <optional> + <attribute name="chart:label-cell-address"> + <ref name="cellAddress"/> + </attribute> + </optional> +</define> +<define name="chart-series-attlist" combine="interleave"> + <optional> + <attribute name="chart:class"> + <ref name="namespacedToken"/> + </attribute> + </optional> +</define> +<define name="chart-series-attlist" combine="interleave"> + <optional> + <attribute name="chart:attached-axis"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="chart-series-attlist" combine="interleave"> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="chart-domain"> + <element name="chart:domain"> + <optional> + <attribute name="table:cell-range-address"> + <ref name="cellRangeAddress"/> + </attribute> + </optional> + </element> +</define> +<define name="chart-categories"> + <element name="chart:categories"> + <optional> + <attribute name="table:cell-range-address"> + <ref name="cellRangeAddress"/> + </attribute> + </optional> + </element> +</define> +<define name="chart-data-point"> + <element name="chart:data-point"> + <ref name="chart-data-point-attlist"/> + <empty/> + </element> +</define> +<define name="chart-data-point-attlist" combine="interleave"> + <optional> + <attribute name="chart:repeated"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="chart-data-point-attlist" combine="interleave"> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> + +<define name="chart-mean-value"> + <element name="chart:mean-value"> + <ref name="chart-mean-value-attlist"/> + <empty/> + </element> +</define> +<define name="chart-mean-value-attlist" combine="interleave"> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="chart-error-indicator"> + <element name="chart:error-indicator"> + <ref name="chart-error-indicator-attlist"/> + <empty/> + </element> +</define> +<define name="chart-error-indicator-attlist" combine="interleave"> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="chart-regression-curve"> + <element name="chart:regression-curve"> + <ref name="chart-regression-curve-attlist"/> + <empty/> + </element> +</define> +<define name="chart-regression-curve-attlist" combine="interleave"> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="chart-stock-gain-marker"> + <element name="chart:stock-gain-marker"> + <ref name="common-stock-marker-attlist"/> + </element> +</define> +<define name="chart-stock-loss-marker"> + <element name="chart:stock-loss-marker"> + <ref name="common-stock-marker-attlist"/> + </element> +</define> +<define name="chart-stock-range-line"> + <element name="chart:stock-range-line"> + <ref name="common-stock-marker-attlist"/> + </element> +</define> +<define name="common-stock-marker-attlist"> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="office-forms"> + <optional> + <element name="office:forms"> + <ref name="office-forms-attlist"/> + <zeroOrMore> + <choice> + <ref name="form-form"/> + <ref name="xforms-model"/> + </choice> + </zeroOrMore> + </element> + </optional> +</define> +<define name="office-forms-attlist" combine="interleave"> + <optional> + <attribute name="form:automatic-focus" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="office-forms-attlist" combine="interleave"> + <optional> + <attribute name="form:apply-design-mode" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="form-form"> + <element name="form:form"> + <ref name="common-form-control-attlist"/> + <ref name="form-form-attlist"/> + <optional> + <ref name="form-properties"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <choice> + <ref name="controls"/> + <ref name="form-form"/> + </choice> + </zeroOrMore> + <optional> + <ref name="form-connection-resource"/> + </optional> + </element> +</define> +<define name="form-form-attlist" combine="interleave"> + <optional> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> + <optional> + <attribute name="xlink:type" a:defaultValue="simple"> + <value>simple</value> + </attribute> + </optional> + <optional> + <attribute name="xlink:actuate" a:defaultValue="onRequest"> + <value>onRequest</value> + </attribute> + </optional> + </optional> +</define> +<define name="form-form-attlist" combine="interleave"> + <optional> + <attribute name="office:target-frame" a:defaultValue="_blank"> + <ref name="targetFrameName"/> + </attribute> + </optional> +</define> +<define name="form-form-attlist" combine="interleave"> + <optional> + <attribute name="form:method" a:defaultValue="get"> + <choice> + <value>get</value> + <value>post</value> + <ref name="string"/> + </choice> + </attribute> + </optional> +</define> +<define name="form-form-attlist" combine="interleave"> + <optional> + <attribute name="form:enctype" + a:defaultValue="application/x-www-form-urlencoded"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="form-form-attlist" combine="interleave"> + <optional> + <attribute name="form:allow-deletes" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="form-form-attlist" combine="interleave"> + <optional> + <attribute name="form:allow-inserts" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="form-form-attlist" combine="interleave"> + <optional> + <attribute name="form:allow-updates" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="form-form-attlist" combine="interleave"> + <optional> + <attribute name="form:apply-filter" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="form-form-attlist" combine="interleave"> + <optional> + <attribute name="form:command-type" a:defaultValue="command"> + <choice> + <value>table</value> + <value>query</value> + <value>command</value> + </choice> + </attribute> + </optional> +</define> +<define name="form-form-attlist" combine="interleave"> + <optional> + <attribute name="form:command"/> + </optional> +</define> +<define name="form-form-attlist" combine="interleave"> + <optional> + <attribute name="form:datasource"> + <choice> + <ref name="anyURI"/> + <ref name="string"/> + </choice> + </attribute> + </optional> +</define> +<define name="form-form-attlist" combine="interleave"> + <optional> + <attribute name="form:master-fields"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="form-form-attlist" combine="interleave"> + <optional> + <attribute name="form:detail-fields"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="form-form-attlist" combine="interleave"> + <optional> + <attribute name="form:escape-processing" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="form-form-attlist" combine="interleave"> + <optional> + <attribute name="form:filter"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="form-form-attlist" combine="interleave"> + <optional> + <attribute name="form:ignore-result" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="form-form-attlist" combine="interleave"> + <optional> + <attribute name="form:navigation-mode"> + <ref name="navigation"/> + </attribute> + </optional> +</define> + +<define name="navigation"> + <choice> + <value>none</value> + <value>current</value> + <value>parent</value> + </choice> +</define> +<define name="form-form-attlist" combine="interleave"> + <optional> + <attribute name="form:order"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="form-form-attlist" combine="interleave"> + <optional> + <attribute name="form:tab-cycle"> + <ref name="tab-cycles"/> + </attribute> + </optional> +</define> +<define name="tab-cycles"> + <choice> + <value>records</value> + <value>current</value> + <value>page</value> + </choice> +</define> +<define name="form-connection-resource"> + <element name="form:connection-resource"> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> + <empty/> + </element> +</define> +<define name="xforms-model"> + <element name="xforms:model"> + <ref name="anyAttListOrElements"/> + </element> +</define> +<define name="column-controls" combine="choice"> + <element name="form:text"> + <ref name="form-text-attlist"/> + <ref name="common-form-control-content"/> + </element> +</define> +<define name="controls" combine="choice"> + <ref name="column-controls"/> +</define> +<define name="form-text-attlist"> + <ref name="form-control-attlist"/> + <ref name="common-current-value-attlist"/> + <ref name="common-disabled-attlist"/> + <ref name="common-maxlength-attlist"/> + <ref name="common-printable-attlist"/> + <ref name="common-readonly-attlist"/> + <ref name="common-tab-attlist"/> + <ref name="common-title-attlist"/> + <ref name="common-value-attlist"/> + <ref name="common-convert-empty-attlist"/> + <ref name="common-data-field-attlist"/> +</define> +<define name="form-control-attlist"> + <ref name="common-form-control-attlist"/> + <ref name="common-control-id-attlist"/> + <ref name="xforms-bind-attlist"/> +</define> +<define name="common-form-control-content"> + <optional> + <ref name="form-properties"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> +</define> +<define name="column-controls" combine="choice"> + <element name="form:textarea"> + <ref name="form-textarea-attlist"/> + <ref name="common-form-control-content"/> + <zeroOrMore> + <ref name="text-p"/> + </zeroOrMore> + </element> +</define> +<define name="form-textarea-attlist"> + <ref name="form-control-attlist"/> + <ref name="common-current-value-attlist"/> + <ref name="common-disabled-attlist"/> + <ref name="common-maxlength-attlist"/> + <ref name="common-printable-attlist"/> + <ref name="common-readonly-attlist"/> + <ref name="common-tab-attlist"/> + <ref name="common-title-attlist"/> + <ref name="common-value-attlist"/> + <ref name="common-convert-empty-attlist"/> + <ref name="common-data-field-attlist"/> +</define> +<define name="controls" combine="choice"> + <element name="form:password"> + <ref name="form-password-attlist"/> + <ref name="common-form-control-content"/> + </element> +</define> +<define name="form-password-attlist" combine="interleave"> + <ref name="form-control-attlist"/> + <ref name="common-disabled-attlist"/> + <ref name="common-maxlength-attlist"/> + <ref name="common-printable-attlist"/> + <ref name="common-tab-attlist"/> + <ref name="common-title-attlist"/> + <ref name="common-value-attlist"/> + <ref name="common-convert-empty-attlist"/> +</define> +<define name="form-password-attlist" combine="interleave"> + <optional> + <attribute name="form:echo-char" a:defaultValue="*"> + <ref name="character"/> + </attribute> + </optional> +</define> +<define name="controls" combine="choice"> + <element name="form:file"> + <ref name="form-file-attlist"/> + <ref name="common-form-control-content"/> + </element> +</define> +<define name="form-file-attlist" combine="interleave"> + <ref name="form-control-attlist"/> + <ref name="common-current-value-attlist"/> + <ref name="common-disabled-attlist"/> + <ref name="common-maxlength-attlist"/> + <ref name="common-printable-attlist"/> + <ref name="common-readonly-attlist"/> + <ref name="common-tab-attlist"/> + <ref name="common-title-attlist"/> + <ref name="common-value-attlist"/> +</define> +<define name="column-controls" combine="choice"> + <element name="form:formatted-text"> + <ref name="form-formatted-text-attlist"/> + <ref name="common-form-control-content"/> + </element> +</define> +<define name="form-formatted-text-attlist" combine="interleave"> + <ref name="form-control-attlist"/> + <ref name="common-current-value-attlist"/> + <ref name="common-disabled-attlist"/> + <ref name="common-maxlength-attlist"/> + <ref name="common-printable-attlist"/> + <ref name="common-readonly-attlist"/> + <ref name="common-tab-attlist"/> + <ref name="common-title-attlist"/> + <ref name="common-value-attlist"/> + <ref name="common-convert-empty-attlist"/> + <ref name="common-data-field-attlist"/> +</define> +<define name="form-formatted-text-attlist" combine="interleave"> + <optional> + <attribute name="form:max-value"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="form-formatted-text-attlist" combine="interleave"> + <optional> + <attribute name="form:min-value"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="form-formatted-text-attlist" combine="interleave"> + <optional> + <attribute name="form:validation" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="column-controls" combine="choice"> + <element name="form:number"> + <ref name="form-number-attlist"/> + <ref name="common-numeric-control-attlist"/> + <ref name="common-form-control-content"/> + </element> +</define> +<define name="common-numeric-control-attlist"> + <ref name="form-control-attlist"/> + <ref name="common-disabled-attlist"/> + <ref name="common-maxlength-attlist"/> + <ref name="common-printable-attlist"/> + <ref name="common-readonly-attlist"/> + <ref name="common-tab-attlist"/> + <ref name="common-title-attlist"/> + <ref name="common-convert-empty-attlist"/> + <ref name="common-data-field-attlist"/> +</define> +<define name="form-number-attlist" combine="interleave"> + <optional> + <attribute name="form:value"> + <ref name="double"/> + </attribute> + </optional> +</define> +<define name="form-number-attlist" combine="interleave"> + <optional> + <attribute name="form:current-value"> + <ref name="double"/> + </attribute> + </optional> +</define> +<define name="form-number-attlist" combine="interleave"> + <optional> + <attribute name="form:min-value"> + <ref name="double"/> + </attribute> + </optional> +</define> +<define name="form-number-attlist" combine="interleave"> + <optional> + <attribute name="form:max-value"> + <ref name="double"/> + </attribute> + </optional> +</define> +<define name="column-controls" combine="choice"> + <element name="form:date"> + <ref name="form-date-attlist"/> + <ref name="common-numeric-control-attlist"/> + <ref name="common-form-control-content"/> + </element> +</define> +<define name="controls" combine="choice"> + <element name="form:time"> + <ref name="form-time-attlist"/> + <ref name="common-numeric-control-attlist"/> + <ref name="common-form-control-content"/> + </element> +</define> +<define name="form-date-attlist" combine="interleave"> + <optional> + <attribute name="form:value"> + <ref name="date"/> + </attribute> + </optional> +</define> +<define name="form-time-attlist" combine="interleave"> + <optional> + <attribute name="form:value"> + <ref name="time"/> + </attribute> + </optional> +</define> +<define name="form-date-attlist" combine="interleave"> + <optional> + <attribute name="form:current-value"> + <ref name="date"/> + </attribute> + </optional> +</define> +<define name="form-time-attlist" combine="interleave"> + <optional> + <attribute name="form:current-value"> + <ref name="time"/> + </attribute> + </optional> +</define> +<define name="form-date-attlist" combine="interleave"> + <optional> + <attribute name="form:min-value"> + <ref name="date"/> + </attribute> + </optional> +</define> +<define name="form-time-attlist" combine="interleave"> + <optional> + <attribute name="form:min-value"> + <ref name="time"/> + </attribute> + </optional> +</define> +<define name="form-date-attlist" combine="interleave"> + <optional> + <attribute name="form:max-value"> + <ref name="date"/> + </attribute> + </optional> +</define> +<define name="form-time-attlist" combine="interleave"> + <optional> + <attribute name="form:max-value"> + <ref name="time"/> + </attribute> + </optional> +</define> +<define name="controls" combine="choice"> + <element name="form:fixed-text"> + <ref name="form-fixed-text-attlist"/> + <ref name="common-form-control-content"/> + </element> +</define> +<define name="form-fixed-text-attlist" combine="interleave"> + <ref name="form-control-attlist"/> + <ref name="for"/> + <ref name="common-disabled-attlist"/> + <ref name="label"/> + <ref name="common-printable-attlist"/> + <ref name="common-title-attlist"/> +</define> +<define name="form-fixed-text-attlist" combine="interleave"> + <optional> + <attribute name="form:multi-line" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="column-controls" combine="choice"> + <element name="form:combobox"> + <ref name="form-combobox-attlist"/> + <ref name="common-form-control-content"/> + <zeroOrMore> + <ref name="form-item"/> + </zeroOrMore> + </element> +</define> +<define name="form-combobox-attlist" combine="interleave"> + <ref name="form-control-attlist"/> + <ref name="common-current-value-attlist"/> + <ref name="common-disabled-attlist"/> + <ref name="dropdown"/> + <ref name="common-maxlength-attlist"/> + <ref name="common-printable-attlist"/> + <ref name="common-readonly-attlist"/> + <ref name="size"/> + <ref name="common-tab-attlist"/> + <ref name="common-title-attlist"/> + <ref name="common-value-attlist"/> + <ref name="common-convert-empty-attlist"/> + <ref name="common-data-field-attlist"/> + <ref name="list-source"/> + <ref name="list-source-type"/> +</define> +<define name="form-combobox-attlist" combine="interleave"> + <optional> + <attribute name="form:auto-complete"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="form-item"> + <element name="form:item"> + <ref name="form-item-attlist"/> + <text/> + </element> +</define> +<define name="form-item-attlist" combine="interleave"> + <ref name="label"/> +</define> +<define name="column-controls" combine="choice"> + <element name="form:listbox"> + <ref name="form-listbox-attlist"/> + <ref name="common-form-control-content"/> + <zeroOrMore> + <ref name="form-option"/> + </zeroOrMore> + </element> +</define> +<define name="form-listbox-attlist" combine="interleave"> + <ref name="form-control-attlist"/> + <ref name="common-disabled-attlist"/> + <ref name="dropdown"/> + <ref name="common-printable-attlist"/> + <ref name="size"/> + <ref name="common-tab-attlist"/> + <ref name="common-title-attlist"/> + <ref name="bound-column"/> + <ref name="common-data-field-attlist"/> + <ref name="list-source"/> + <ref name="list-source-type"/> +</define> +<define name="form-listbox-attlist" combine="interleave"> + <optional> + <attribute name="form:multiple" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="form-listbox-attlist" combine="interleave"> + <optional> + <attribute name="form:xforms-list-source"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="form-option"> + <element name="form:option"> + <ref name="form-option-attlist"/> + <text/> + </element> +</define> +<define name="form-option-attlist" combine="interleave"> + <ref name="current-selected"/> + <ref name="selected"/> + <ref name="label"/> + <ref name="common-value-attlist"/> +</define> +<define name="controls" combine="choice"> + <element name="form:button"> + <ref name="form-button-attlist"/> + <ref name="common-form-control-content"/> + </element> +</define> +<define name="form-button-attlist" combine="interleave"> + <ref name="form-control-attlist"/> + <ref name="button-type"/> + <ref name="common-disabled-attlist"/> + <ref name="label"/> + <ref name="image-data"/> + <ref name="common-printable-attlist"/> + <ref name="common-tab-attlist"/> + <ref name="target-frame"/> + <ref name="target-location"/> + <ref name="common-title-attlist"/> + <ref name="common-value-attlist"/> + <ref name="common-form-relative-image-position-attlist"/> +</define> +<define name="form-button-attlist" combine="interleave"> + <optional> + <attribute name="form:default-button" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="form-button-attlist" combine="interleave"> + <optional> + <attribute name="form:toggle" a:default-value="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="form-button-attlist" combine="interleave"> + <optional> + <attribute name="form:focus-on-click"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="form-button-attlist" combine="interleave"> + <optional> + <attribute name="form:xforms-submission"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="controls" combine="choice"> + <element name="form:image"> + <ref name="form-image-attlist"/> + <ref name="common-form-control-content"/> + </element> +</define> +<define name="form-image-attlist" combine="interleave"> + <ref name="form-control-attlist"/> + <ref name="button-type"/> + <ref name="common-disabled-attlist"/> + <ref name="image-data"/> + <ref name="common-printable-attlist"/> + <ref name="common-tab-attlist"/> + <ref name="target-frame"/> + <ref name="target-location"/> + <ref name="common-title-attlist"/> + <ref name="common-value-attlist"/> +</define> +<define name="column-controls" combine="choice"> + <element name="form:checkbox"> + <ref name="form-checkbox-attlist"/> + <ref name="common-form-control-content"/> + </element> +</define> +<define name="form-checkbox-attlist" combine="interleave"> + <ref name="form-control-attlist"/> + <ref name="common-disabled-attlist"/> + <ref name="label"/> + <ref name="common-printable-attlist"/> + <ref name="common-tab-attlist"/> + <ref name="common-title-attlist"/> + <ref name="common-value-attlist"/> + <ref name="common-data-field-attlist"/> + <ref name="common-form-visual-effect-attlist"/> + <ref name="common-form-relative-image-position-attlist"/> +</define> +<define name="states"> + <choice> + <value>unchecked</value> + <value>checked</value> + <value>unknown</value> + </choice> +</define> +<define name="form-checkbox-attlist" combine="interleave"> + <optional> + <attribute name="form:current-state"> + <ref name="states"/> + </attribute> + </optional> +</define> +<define name="form-checkbox-attlist" combine="interleave"> + <optional> + <attribute name="form:is-tristate" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="form-checkbox-attlist" combine="interleave"> + <optional> + <attribute name="form:state" a:defaultValue="unchecked"> + <ref name="states"/> + </attribute> + </optional> +</define> +<define name="controls" combine="choice"> + <element name="form:radio"> + <ref name="form-radio-attlist"/> + <ref name="common-form-control-content"/> + </element> +</define> +<define name="form-radio-attlist" combine="interleave"> + <ref name="form-control-attlist"/> + <ref name="current-selected"/> + <ref name="common-disabled-attlist"/> + <ref name="label"/> + <ref name="common-printable-attlist"/> + <ref name="selected"/> + <ref name="common-tab-attlist"/> + <ref name="common-title-attlist"/> + <ref name="common-value-attlist"/> + <ref name="common-data-field-attlist"/> + <ref name="common-form-visual-effect-attlist"/> + <ref name="common-form-relative-image-position-attlist"/> +</define> +<define name="controls" combine="choice"> + <element name="form:frame"> + <ref name="form-frame-attlist"/> + <ref name="common-form-control-content"/> + </element> +</define> +<define name="form-frame-attlist" combine="interleave"> + <ref name="form-control-attlist"/> + <ref name="common-disabled-attlist"/> + <ref name="for"/> + <ref name="label"/> + <ref name="common-printable-attlist"/> + <ref name="common-title-attlist"/> +</define> +<define name="controls" combine="choice"> + <element name="form:image-frame"> + <ref name="form-image-frame-attlist"/> + <ref name="common-form-control-content"/> + </element> +</define> +<define name="form-image-frame-attlist" combine="interleave"> + <ref name="form-control-attlist"/> + <ref name="common-disabled-attlist"/> + <ref name="image-data"/> + <ref name="common-printable-attlist"/> + <ref name="common-readonly-attlist"/> + <ref name="common-title-attlist"/> + <ref name="common-data-field-attlist"/> +</define> +<define name="controls" combine="choice"> + <element name="form:hidden"> + <ref name="form-hidden-attlist"/> + <ref name="common-form-control-content"/> + </element> +</define> +<define name="form-hidden-attlist" combine="interleave"> + <ref name="form-control-attlist"/> + <ref name="common-value-attlist"/> +</define> +<define name="controls" combine="choice"> + <element name="form:grid"> + <ref name="form-grid-attlist"/> + <ref name="common-form-control-content"/> + <zeroOrMore> + <ref name="form-column"/> + </zeroOrMore> + </element> +</define> +<define name="form-grid-attlist" combine="interleave"> + <ref name="form-control-attlist"/> + <ref name="common-disabled-attlist"/> + <ref name="common-printable-attlist"/> + <ref name="common-tab-attlist"/> + <ref name="common-title-attlist"/> +</define> +<define name="form-column"> + <element name="form:column"> + <ref name="form-column-attlist"/> + <oneOrMore> + <ref name="column-controls"/> + </oneOrMore> + </element> +</define> +<define name="form-column-attlist" combine="interleave"> + <ref name="common-form-control-attlist"/> + <ref name="label"/> + <ref name="text-style-name"/> +</define> +<define name="text-style-name"> + <optional> + <attribute name="form:text-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="controls" combine="choice"> + <element name="form:value-range"> + <ref name="form-value-range-attlist"/> + <ref name="common-form-control-content"/> + </element> +</define> +<define name="form-value-range-attlist" combine="interleave"> + <ref name="form-control-attlist"/> + <ref name="common-disabled-attlist"/> + <ref name="common-printable-attlist"/> + <ref name="common-tab-attlist"/> + <ref name="common-title-attlist"/> + <ref name="common-value-attlist"/> +</define> +<define name="form-value-range-attlist" combine="interleave"> + <optional> + <attribute name="form:max-value"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="form-value-range-attlist" combine="interleave"> + <optional> + <attribute name="form:min-value"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="form-value-range-attlist" combine="interleave"> + <optional> + <attribute name="form:step-size" a:defaultName="1"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="form-value-range-attlist" combine="interleave"> + <optional> + <attribute name="form:page-step-size"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="form-value-range-attlist" combine="interleave"> + <optional> + <attribute name="form:delay-for-repeat"> + <ref name="duration"/> + </attribute> + </optional> +</define> +<define name="form-value-range-attlist" combine="interleave"> + <optional> + <attribute name="form:orientation"> + <choice> + <value>horizontal</value> + <value>vertical</value> + </choice> + </attribute> + </optional> +</define> +<define name="controls" combine="choice"> + <element name="form:generic-control"> + <ref name="form-generic-control-attlist"/> + <ref name="common-form-control-content"/> + </element> +</define> +<define name="form-generic-control-attlist" combine="interleave"> + <ref name="form-control-attlist"/> +</define> +<define name="common-form-control-attlist" combine="interleave"> + <optional> + <attribute name="form:name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-form-control-attlist" combine="interleave"> + <optional> + <attribute name="form:control-implementation"> + <ref name="namespacedToken"/> + </attribute> + </optional> +</define> +<define name="xforms-bind-attlist"> + <optional> + <attribute name="xforms:bind"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="types"> + <choice> + <value>submit</value> + <value>reset</value> + <value>push</value> + <value>url</value> + </choice> +</define> +<define name="button-type"> + <optional> + <attribute name="form:button-type" a:defaultValue="push"> + <ref name="types"/> + </attribute> + </optional> +</define> +<define name="common-control-id-attlist"> + <attribute name="form:id"> + <ref name="ID"/> + </attribute> +</define> +<define name="current-selected"> + <optional> + <attribute name="form:current-selected" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="common-value-attlist"> + <optional> + <attribute name="form:value"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-current-value-attlist"> + <optional> + <attribute name="form:current-value"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-disabled-attlist"> + <optional> + <attribute name="form:disabled" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="dropdown"> + <optional> + <attribute name="form:dropdown" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="for"> + <optional> + <attribute name="form:for"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="image-data"> + <optional> + <attribute name="form:image-data"> + <ref name="anyURI"/> + </attribute> + </optional> +</define> +<define name="label"> + <optional> + <attribute name="form:label"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-maxlength-attlist"> + <optional> + <attribute name="form:max-length"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="common-printable-attlist"> + <optional> + <attribute name="form:printable" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="common-readonly-attlist"> + <optional> + <attribute name="form:readonly" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="selected"> + <optional> + <attribute name="form:selected" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="size"> + <optional> + <attribute name="form:size"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="common-tab-attlist" combine="interleave"> + <optional> + <attribute name="form:tab-index" a:defaultValue="0"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="common-tab-attlist" combine="interleave"> + <optional> + <attribute name="form:tab-stop" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="target-frame"> + <optional> + <attribute name="office:target-frame" a:defaultValue="_blank"> + <ref name="targetFrameName"/> + </attribute> + </optional> +</define> +<define name="target-location"> + <optional> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> + </optional> +</define> +<define name="common-title-attlist"> + <optional> + <attribute name="form:title"/> + </optional> +</define> +<define name="common-form-visual-effect-attlist" combine="interleave"> + <optional> + <attribute name="form:visual-effect"> + <choice> + <value>flat</value> + <value>3d</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-form-relative-image-position-attlist" + combine="interleave"> + <choice> + <optional> + <attribute name="form:image-position" a:defaultValue="center"> + <value>center</value> + </attribute> + </optional> + <group> + <attribute name="form:image-position"> + <choice> + <value>start</value> + <value>end</value> + <value>top</value> + <value>bottom</value> + </choice> + </attribute> + <optional> + <attribute name="form:image-align" a:defaultValue="center"> + <choice> + <value>start</value> + <value>center</value> + <value>end</value> + </choice> + </attribute> + </optional> + </group> + </choice> +</define> +<define name="bound-column"> + <optional> + <attribute name="form:bound-column"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-convert-empty-attlist"> + <optional> + <attribute name="form:convert-empty-to-null" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="common-data-field-attlist"> + <optional> + <attribute name="form:data-field"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="list-source"> + <optional> + <attribute name="form:list-source"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="list-source-type"> + <optional> + <attribute name="form:list-source-type"> + <choice> + <value>table</value> + <value>query</value> + <value>sql</value> + <value>sql-pass-through</value> + <value>value-list</value> + <value>table-fields</value> + </choice> + </attribute> + </optional> +</define> +<define name="form-properties"> + <element name="form:properties"> + <oneOrMore> + <ref name="form-property"/> + </oneOrMore> + </element> +</define> +<define name="form-property" combine="choice"> + <element name="form:property"> + <ref name="form-property-name"/> + <ref name="form-property-value-and-type-attlist"/> + </element> +</define> +<define name="form-property-name" combine="interleave"> + <attribute name="form:property-name"> + <ref name="string"/> + </attribute> +</define> +<define name="form-property-value-and-type-attlist" combine="interleave"> + <choice> + <ref name="common-value-and-type-attlist"/> + <attribute name="office:value-type"> + <value>void</value> + </attribute> + </choice> +</define> +<define name="form-property" combine="choice"> + <element name="form:list-property"> + <ref name="form-property-name"/> + <ref name="form-property-type-and-value-list"/> + </element> +</define> +<define name="form-property-type-and-value-list"> + <choice> + <group> + <attribute name="office:value-type"> + <value>float</value> + </attribute> + <zeroOrMore> + <element name="form:list-value"> + <attribute name="office:value"> + <ref name="double"/> + </attribute> + </element> + </zeroOrMore> + </group> + <group> + <attribute name="office:value-type"> + <value>percentage</value> + </attribute> + <zeroOrMore> + <element name="form:list-value"> + <attribute name="office:value"> + <ref name="double"/> + </attribute> + </element> + </zeroOrMore> + </group> + <group> + <attribute name="office:value-type"> + <value>currency</value> + </attribute> + <zeroOrMore> + <element name="form:list-value"> + <attribute name="office:value"> + <ref name="double"/> + </attribute> + <optional> + <attribute name="office:currency"> + <ref name="string"/> + </attribute> + </optional> + </element> + </zeroOrMore> + </group> + <group> + <attribute name="office:value-type"> + <value>date</value> + </attribute> + <zeroOrMore> + <element name="form:list-value"> + <attribute name="office:date-value"> + <ref name="dateOrDateTime"/> + </attribute> + </element> + </zeroOrMore> + </group> + <group> + <attribute name="office:value-type"> + <value>time</value> + </attribute> + <zeroOrMore> + <element name="form:list-value"> + <attribute name="office:time-value"> + <ref name="duration"/> + </attribute> + </element> + </zeroOrMore> + </group> + <group> + <attribute name="office:value-type"> + <value>boolean</value> + </attribute> + <zeroOrMore> + <element name="form:list-value"> + <attribute name="office:boolean-value"> + <ref name="boolean"/> + </attribute> + </element> + </zeroOrMore> + </group> + <group> + <attribute name="office:value-type"> + <value>string</value> + </attribute> + <zeroOrMore> + <element name="form:list-value"> + <attribute name="office:string-value"> + <ref name="string"/> + </attribute> + </element> + </zeroOrMore> + </group> + <attribute name="office:value-type"> + <value>void</value> + </attribute> + </choice> +</define> +<define name="office-annotation"> + <element name="office:annotation"> + <ref name="office-annotation-attlist"/> + <ref name="draw-caption-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <optional> + <ref name="dc-creator"/> + </optional> + <optional> + <ref name="dc-date"/> + </optional> + <optional> + <ref name="meta-date-string"/> + </optional> + <zeroOrMore> + <choice> + <ref name="text-p"/> + <ref name="text-list"/> + </choice> + </zeroOrMore> + </element> +</define> +<define name="office-annotation-attlist" combine="interleave"> + <optional> + <attribute name="office:display"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="meta-date-string"> + <element name="meta:date-string"> + <ref name="string"/> + </element> +</define> +<define name="common-num-format-prefix-suffix-attlist" combine="interleave"> + <optional> + <attribute name="style:num-prefix"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="style:num-suffix"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-num-format-attlist" combine="interleave"> + <choice> + <attribute name="style:num-format"> + <choice> + <value>1</value> + <value>i</value> + <value>I</value> + <ref name="string"/> + <empty/> + </choice> + </attribute> + <group> + <attribute name="style:num-format"> + <choice> + <value>a</value> + <value>A</value> + </choice> + </attribute> + <ref name="style-num-letter-sync-attlist"/> + </group> + <empty/> + </choice> +</define> +<define name="style-num-letter-sync-attlist" combine="interleave"> + <optional> + <attribute name="style:num-letter-sync"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="office-change-info"> + <element name="office:change-info"> + <ref name="dc-creator"/> + <ref name="dc-date"/> + <zeroOrMore> + <ref name="text-p"/> + </zeroOrMore> + </element> +</define> +<define name="office-event-listeners"> + <element name="office:event-listeners"> + <zeroOrMore> + <choice> + <ref name="script-event-listener"/> + <ref name="presentation-event-listener"/> + </choice> + </zeroOrMore> + </element> +</define> +<define name="script-event-listener" combine="interleave"> + <element name="script:event-listener"> + <ref name="script-event-listener-attlist"/> + <empty/> + </element> +</define> +<define name="script-event-listener-attlist" combine="interleave"> + <attribute name="script:event-name"> + <ref name="string"/> + </attribute> +</define> +<define name="script-event-listener-attlist" combine="interleave"> + <attribute name="script:language"> + <ref name="string"/> + </attribute> +</define> +<define name="script-event-listener-attlist" combine="interleave"> + <choice> + <attribute name="script:macro-name"> + <ref name="string"/> + </attribute> + <group> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> + <optional> + <attribute name="xlink:type" a:defaultValue="simple"> + <value>simple</value> + </attribute> + </optional> + <optional> + <attribute name="xlink:actuate" a:defaultValue="onRequest"> + <value>onRequest</value> + </attribute> + </optional> + </group> + </choice> +</define> +<define name="math-math"> + <element name="math:math"> + <ref name="mathMarkup"/> + </element> +</define> + +<!-- To avoid inclusion of the complete MathML schema, anything --> +<!-- is allowed within a math:math top-level element --> +<define name="mathMarkup"> + <zeroOrMore> + <choice> + <attribute> + <anyName/> + </attribute> + <text/> + <element> + <anyName/> + <ref name="mathMarkup"/> + </element> + </choice> + </zeroOrMore> +</define> +<define name="text-dde-connection-decl"> + <element name="text:dde-connection-decl"> + <ref name="text-dde-connection-decl-attlist"/> + <ref name="common-dde-connection-decl-attlist"/> + </element> +</define> +<define name="text-dde-connection-decl-attlist" combine="interleave"> + <attribute name="office:name"> + <ref name="string"/> + </attribute> +</define> +<define name="common-dde-connection-decl-attlist" combine="interleave"> + <attribute name="office:dde-application"> + <ref name="string"/> + </attribute> +</define> +<define name="common-dde-connection-decl-attlist" combine="interleave"> + <attribute name="office:dde-topic"> + <ref name="string"/> + </attribute> +</define> +<define name="common-dde-connection-decl-attlist" combine="interleave"> + <attribute name="office:dde-item"> + <ref name="string"/> + </attribute> +</define> +<define name="common-dde-connection-decl-attlist" combine="interleave"> + <optional> + <attribute name="office:automatic-update" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="table-dde-link"> + <element name="table:dde-link"> + <ref name="office-dde-source"/> + <ref name="table-table"/> + </element> +</define> +<define name="office-dde-source"> + <element name="office:dde-source"> + <ref name="office-dde-source-attlist"/> + <ref name="common-dde-connection-decl-attlist"/> + </element> +</define> +<define name="office-dde-source-attlist" combine="interleave"> + <optional> + <attribute name="office:name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="office-dde-source-attlist" combine="interleave"> + <optional> + <attribute name="office:conversion-mode" + a:defaultValue="into-default-style-data-style"> + <choice> + <value>into-default-style-data-style</value> + <value>into-english-number</value> + <value>keep-text</value> + </choice> + </attribute> + </optional> +</define> +<define name="animation-element" combine="choice"> + <element name="anim:animate"> + <ref name="common-anim-target-attlist"/> + <ref name="common-anim-named-target-attlist"/> + <ref name="common-anim-values-attlist"/> + <ref name="common-anim-spline-mode-attlist"/> + <ref name="common-spline-anim-value-attlist"/> + <ref name="common-timing-attlist"/> + <ref name="common-anim-add-accum-attlist"/> + </element> +</define> +<define name="animation-element" combine="choice"> + <element name="anim:set"> + <ref name="common-anim-target-attlist"/> + <ref name="common-anim-named-target-attlist"/> + <ref name="common-anim-set-values-attlist"/> + <ref name="common-timing-attlist"/> + <ref name="common-anim-add-accum-attlist"/> + </element> +</define> +<define name="animation-element" combine="choice"> + <element name="anim:animateMotion"> + <ref name="anim-animate-motion-attlist"/> + <ref name="common-anim-target-attlist"/> + <ref name="common-anim-named-target-attlist"/> + <ref name="common-anim-add-accum-attlist"/> + <ref name="common-anim-values-attlist"/> + <ref name="common-timing-attlist"/> + <ref name="common-spline-anim-value-attlist"/> + </element> +</define> +<define name="anim-animate-motion-attlist" combine="interleave"> + <optional> + <attribute name="svg:path"> + <ref name="pathData"/> + </attribute> + </optional> +</define> +<define name="anim-animate-motion-attlist" combine="interleave"> + <optional> + <attribute name="svg:origin"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="anim-animate-motion-attlist" combine="interleave"> + <optional> + <attribute name="smil:calcMode" a:defaultValue="paced"> + <choice> + <value>discrete</value> + <value>linear</value> + <value>paced</value> + <value>spline</value> + </choice> + </attribute> + </optional> +</define> +<define name="animation-element" combine="choice"> + <element name="anim:animateColor"> + <ref name="common-anim-target-attlist"/> + <ref name="common-anim-named-target-attlist"/> + <ref name="common-anim-add-accum-attlist"/> + <ref name="common-anim-values-attlist"/> + <ref name="common-anim-spline-mode-attlist"/> + <ref name="common-spline-anim-value-attlist"/> + <ref name="anim-animate-color-attlist"/> + <ref name="common-timing-attlist"/> + </element> +</define> +<define name="anim-animate-color-attlist" combine="interleave"> + <optional> + <attribute name="anim:color-interpolation" a:defaultValue="rgb"> + <choice> + <value>rgb</value> + <value>hsl</value> + </choice> + </attribute> + </optional> +</define> +<define name="anim-animate-color-attlist" combine="interleave"> + <optional> + <attribute name="anim:color-interpolation-direction" + a:defaultValue="clockwise"> + <choice> + <value>clockwise</value> + <value>counter-clockwise</value> + </choice> + </attribute> + </optional> +</define> +<define name="animation-element" combine="choice"> + <element name="anim:animateTransform"> + <ref name="common-anim-target-attlist"/> + <ref name="common-anim-named-target-attlist"/> + <ref name="common-anim-add-accum-attlist"/> + <ref name="common-anim-values-attlist"/> + <ref name="anim-animate-transform-attlist"/> + <ref name="common-timing-attlist"/> + </element> +</define> +<define name="anim-animate-transform-attlist" combine="interleave"> + <attribute name="svg:type"> + <choice> + <value>translate</value> + <value>scale</value> + <value>rotate</value> + <value>skewX</value> + <value>skewY</value> + </choice> + </attribute> +</define> +<define name="animation-element" combine="choice"> + <element name="anim:transitionFilter"> + <ref name="common-anim-target-attlist"/> + <ref name="common-anim-add-accum-attlist"/> + <ref name="common-anim-values-attlist"/> + <ref name="common-anim-spline-mode-attlist "/> + <ref name="anim-transition-filter-attlist"/> + <ref name="common-timing-attlist"/> + </element> +</define> +<define name="anim-transition-filter-attlist" combine="interleave"> + <attribute name="smil:type"> + <ref name="string"/> + </attribute> +</define> +<define name="anim-transition-filter-attlist" combine="interleave"> + <optional> + <attribute name="smil:subtype"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="anim-transition-filter-attlist" combine="interleave"> + <optional> + <attribute name="smil:direction" a:defaultValue="forward"> + <choice> + <value>forward</value> + <value>reverse</value> + </choice> + </attribute> + </optional> +</define> +<define name="anim-transition-filter-attlist" combine="interleave"> + <optional> + <attribute name="smil:fadeColor"> + <choice> + <value>forward</value> + <value>reverse</value> + </choice> + </attribute> + </optional> +</define> +<define name="anim-transition-filter-attlist" combine="interleave"> + <optional> + <attribute name="smil:mode" a:defaultValue="in"> + <choice> + <value>in</value> + <value>out</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-anim-attlist" combine="interleave"> + <optional> + <attribute name="anim:id"> + <ref name="ID"/> + </attribute> + </optional> +</define> +<define name="common-anim-target-attlist" combine="interleave"> + <optional> + <attribute name="smil:targetElement"> + <ref name="IDREF"/> + </attribute> + </optional> +</define> +<define name="common-anim-named-target-attlist" combine="interleave"> + <attribute name="smil:attributeName"> + <ref name="string"/> + </attribute> +</define> +<define name="common-anim-target-attlist" combine="interleave"> + <optional> + <attribute name="anim:sub-item"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-anim-values-attlist" combine="interleave"> + <optional> + <attribute name="smil:values"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-anim-spline-mode-attlist" combine="interleave"> + <optional> + <attribute name="smil:calcMode" a:defaultValue="discrete"> + <choice> + <value>discrete</value> + <value>linear</value> + <value>paced</value> + <value>spline</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-spline-anim-value-attlist" combine="interleave"> + <optional> + <attribute name="smil:keyTimes"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-spline-anim-value-attlist" combine="interleave"> + <optional> + <attribute name="smil:keySplines"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-anim-add-accum-attlist" combine="interleave"> + <optional> + <attribute name="smil:accumulate"> + <choice> + <value>none</value> + <value>sum</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-anim-add-accum-attlist" combine="interleave"> + <optional> + <attribute name="smil:additive"> + <choice> + <value>replace</value> + <value>sum</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-anim-values-attlist" combine="interleave"> + <optional> + <attribute name="anim:formula"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-anim-set-values-attlist" combine="interleave"> + <optional> + <attribute name="smil:to"> + <ref name="string"/> + </attribute> + </optional> +</define> + +<define name="common-anim-values-attlist" combine="interleave"> + <ref name="common-anim-set-values-attlist"/> + <optional> + <attribute name="smil:from"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="smil:by"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-begin-end-timing-attlist" combine="interleave"> + <optional> + <attribute name="smil:begin"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-begin-end-timing-attlist" combine="interleave"> + <optional> + <attribute name="smil:end"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-dur-timing-attlist" combine="interleave"> + <optional> + <attribute name="smil:dur"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-endsync-timing-attlist" combine="interleave"> + <optional> + <attribute name="smil:endsync"> + <choice> + <value>first</value> + <value>last</value> + <value>all</value> + <value>media</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-repeat-timing-attlist" combine="interleave"> + <optional> + <attribute name="smil:repeatDur"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="smil:repeatCount"> + <choice> + <ref name="nonNegativeInteger"/> + <value>indefinite</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-fill-timing-attlist" combine="interleave"> + <optional> + <attribute name="smil:fill"> + <choice> + <value>remove</value> + <value>freeze</value> + <value>hold</value> + <value>auto</value> + <value>default</value> + <value>transition</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-fill-default-attlist" combine="interleave"> + <optional> + <attribute name="smil:fillDefault"> + <choice> + <value>remove</value> + <value>freeze</value> + <value>hold</value> + <value>transition</value> + <value>auto</value> + <value>inherit</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-restart-timing-attlist" combine="interleave"> + <optional> + <attribute name="smil:restart" a:defaultValue="default"> + <choice> + <value>never</value> + <value>always</value> + <value>whenNotActive</value> + <value>default</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-restart-default-attlist" combine="interleave"> + <optional> + <attribute name="smil:restartDefault" a:defaultValue="inherit"> + <choice> + <value>never</value> + <value>always</value> + <value>whenNotActive</value> + <value>inherit</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-time-manip-attlist" combine="interleave"> + <optional> + <attribute name="smil:accelerate" a:defaultValue="0.0"> + <ref name="double"/> + </attribute> + </optional> +</define> +<define name="common-time-manip-attlist" combine="interleave"> + <optional> + <attribute name="smil:decelerate" a:defaultValue="0.0"> + <ref name="double"/> + </attribute> + </optional> +</define> +<define name="common-time-manip-attlist" combine="interleave"> + <optional> + <attribute name="smil:autoReverse" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="animation-element" combine="choice"> + <element name="anim:par"> + <ref name="common-anim-attlist"/> + <ref name="common-timing-attlist"/> + <ref name="common-endsync-timing-attlist"/> + <zeroOrMore> + <ref name="animation-element"/> + </zeroOrMore> + </element> +</define> + +<define name="common-basic-timing-attlist" combine="interleave"> + <ref name="common-begin-end-timing-attlist"/> + <ref name="common-dur-timing-attlist"/> + <ref name="common-repeat-timing-attlist"/> +</define> + +<define name="common-timing-attlist" combine="interleave"> + <ref name="common-basic-timing-attlist"/> + <ref name="common-restart-timing-attlist"/> + <ref name="common-restart-default-attlist"/> + <ref name="common-fill-timing-attlist"/> + <ref name="common-fill-default-attlist"/> + <ref name="common-time-manip-attlist"/> +</define> +<define name="animation-element" combine="choice"> + <element name="anim:seq"> + <ref name="common-anim-attlist"/> + <ref name="common-endsync-timing-attlist"/> + <ref name="common-timing-attlist"/> + <zeroOrMore> + <ref name="animation-element"/> + </zeroOrMore> + </element> +</define> +<define name="animation-element" combine="choice"> + <element name="anim:iterate"> + <ref name="common-anim-attlist"/> + <ref name="anim-iterate-attlist"/> + <ref name="common-timing-attlist"/> + <ref name="common-endsync-timing-attlist"/> + <zeroOrMore> + <ref name="animation-element"/> + </zeroOrMore> + </element> +</define> +<define name="anim-iterate-attlist" combine="interleave"> + <ref name="common-anim-target-attlist"/> +</define> +<define name="anim-iterate-attlist" combine="interleave"> + <optional> + <attribute name="anim:iterate-type"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="anim-iterate-attlist" combine="interleave"> + <optional> + <attribute name="anim:iterate-interval"> + <ref name="duration"/> + </attribute> + </optional> +</define> +<define name="animation-element" combine="choice"> + <element name="anim:audio"> + <ref name="common-anim-attlist"/> + <ref name="anim-audio-attlist"/> + <ref name="common-basic-timing-attlist"/> + </element> +</define> +<define name="anim-audio-attlist" combine="interleave"> + <optional> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> + </optional> +</define> +<define name="anim-audio-attlist" combine="interleave"> + <optional> + <attribute name="anim:audio-level"> + <ref name="double"/> + </attribute> + </optional> +</define> +<define name="animation-element" combine="choice"> + <element name="anim:command"> + <ref name="common-anim-attlist"/> + <ref name="anim-command-attlist"/> + <ref name="common-begin-end-timing-attlist"/> + <ref name="common-anim-target-attlist"/> + <zeroOrMore> + <element name="anim:param"> + <attribute name="anim:name"/> + <attribute name="anim:value"/> + </element> + </zeroOrMore> + </element> +</define> +<define name="anim-command-attlist" combine="interleave"> + <attribute name="anim:command"> + <ref name="string"/> + </attribute> +</define> +<define name="style-style"> + <element name="style:style"> + <ref name="style-style-attlist"/> + <ref name="style-style-content"/> + <zeroOrMore> + <ref name="style-map"/> + </zeroOrMore> + </element> +</define> +<define name="style-style-attlist" combine="interleave"> + <attribute name="style:name"> + <ref name="styleName"/> + </attribute> +</define> +<define name="style-style-attlist" combine="interleave"> + <optional> + <attribute name="style:display-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="style-style-attlist" combine="interleave"> + <optional> + <attribute name="style:parent-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="style-style-attlist" combine="interleave"> + <optional> + <attribute name="style:next-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="style-style-attlist" combine="interleave"> + <optional> + <attribute name="style:list-style-name"> + <choice> + <ref name="styleName"/> + <empty/> + </choice> + </attribute> + </optional> +</define> +<define name="style-style-attlist" combine="interleave"> + <optional> + <attribute name="style:master-page-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="style-style-attlist" combine="interleave"> + <optional> + <attribute name="style:auto-update" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-style-attlist" combine="interleave"> + <optional> + <attribute name="style:data-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="style-style-attlist" combine="interleave"> + <optional> + <attribute name="style:class"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="style-style-attlist" combine="interleave"> + <optional> + <attribute name="style:default-outline-level"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="style-map"> + <element name="style:map"> + <ref name="style-map-attlist"/> + <empty/> + </element> +</define> +<define name="style-map-attlist" combine="interleave"> + <attribute name="style:condition"> + <ref name="string"/> + </attribute> +</define> +<define name="style-map-attlist" combine="interleave"> + <attribute name="style:apply-style-name"> + <ref name="styleNameRef"/> + </attribute> +</define> +<define name="style-map-attlist" combine="interleave"> + <optional> + <attribute name="style:base-cell-address"> + <ref name="cellAddress"/> + </attribute> + </optional> +</define> +<define name="style-default-style"> + <element name="style:default-style"> + <ref name="style-style-content"/> + </element> +</define> +<define name="style-page-layout"> + <element name="style:page-layout"> + <ref name="style-page-layout-attlist"/> + <optional> + <ref name="style-page-layout-properties"/> + </optional> + <optional> + <ref name="style-header-style"/> + </optional> + <optional> + <ref name="style-footer-style"/> + </optional> + </element> +</define> +<define name="style-page-layout-attlist" combine="interleave"> + <attribute name="style:name"> + <ref name="styleName"/> + </attribute> +</define> +<define name="style-page-layout-attlist" combine="interleave"> + <optional> + <attribute name="style:page-usage" a:defaultValue="all"> + <choice> + <value>all</value> + <value>left</value> + <value>right</value> + <value>mirrored</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-header-style"> + <element name="style:header-style"> + <optional> + <ref name="style-header-footer-properties"/> + </optional> + </element> +</define> +<define name="style-footer-style"> + <element name="style:footer-style"> + <optional> + <ref name="style-header-footer-properties"/> + </optional> + </element> +</define> +<define name="style-master-page"> + <element name="style:master-page"> + <ref name="style-master-page-attlist"/> + <optional> + <ref name="style-header"/> + <optional> + <ref name="style-header-left"/> + </optional> + </optional> + <optional> + <ref name="style-footer"/> + <optional> + <ref name="style-footer-left"/> + </optional> + </optional> + <optional> + <ref name="office-forms"/> + </optional> + <zeroOrMore> + <ref name="style-style"/> + </zeroOrMore> + <zeroOrMore> + <ref name="shape"/> + </zeroOrMore> + <optional> + <ref name="presentation-notes"/> + </optional> + </element> +</define> +<define name="style-master-page-attlist" combine="interleave"> + <attribute name="style:name"> + <ref name="styleName"/> + </attribute> +</define> +<define name="style-master-page-attlist" combine="interleave"> + <optional> + <attribute name="style:display-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="style-master-page-attlist" combine="interleave"> + <attribute name="style:page-layout-name"> + <ref name="styleNameRef"/> + </attribute> +</define> +<define name="style-master-page-attlist" combine="interleave"> + <optional> + <attribute name="draw:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="style-master-page-attlist" combine="interleave"> + <optional> + <attribute name="style:next-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="style-header"> + <element name="style:header"> + <ref name="common-style-header-footer-attlist"/> + <ref name="header-footer-content"/> + </element> +</define> +<define name="style-footer"> + <element name="style:footer"> + <ref name="common-style-header-footer-attlist"/> + <ref name="header-footer-content"/> + </element> +</define> +<define name="style-header-left"> + <element name="style:header-left"> + <ref name="common-style-header-footer-attlist"/> + <ref name="header-footer-content"/> + </element> +</define> +<define name="style-footer-left"> + <element name="style:footer-left"> + <ref name="common-style-header-footer-attlist"/> + <ref name="header-footer-content"/> + </element> +</define> +<define name="header-footer-content"> + <choice> + <group> + <ref name="text-tracked-changes"/> + <ref name="text-decls"/> + <zeroOrMore> + <choice> + <ref name="text-h"/> + <ref name="text-p"/> + <ref name="text-list"/> + <ref name="table-table"/> + <ref name="text-section"/> + <ref name="text-table-of-content"/> + <ref name="text-illustration-index"/> + <ref name="text-table-index"/> + <ref name="text-object-index"/> + <ref name="text-user-index"/> + <ref name="text-alphabetical-index"/> + <ref name="text-bibliography"/> + <ref name="text-index-title"/> + <ref name="change-marks"/> + </choice> + </zeroOrMore> + </group> + <group> + <optional> + <ref name="style-region-left"/> + </optional> + <optional> + <ref name="style-region-center"/> + </optional> + <optional> + <ref name="style-region-right"/> + </optional> + </group> + </choice> +</define> +<define name="common-style-header-footer-attlist" combine="interleave"> + <optional> + <attribute name="style:display" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-region-left"> + <element name="style:region-left"> + <ref name="region-content"/> + </element> +</define> +<define name="style-region-center"> + <element name="style:region-center"> + <ref name="region-content"/> + </element> +</define> +<define name="style-region-right"> + <element name="style:region-right"> + <ref name="region-content"/> + </element> +</define> + +<define name="region-content"> + <zeroOrMore> + <ref name="text-p"/> + </zeroOrMore> +</define> +<define name="presentation-notes"> + <element name="presentation:notes"> + <ref name="common-presentation-header-footer-attlist"/> + <ref name="presentation-notes-attlist"/> + <ref name="office-forms"/> + <zeroOrMore> + <ref name="shape"/> + </zeroOrMore> + </element> +</define> +<define name="presentation-notes-attlist" combine="interleave"> + <optional> + <attribute name="style:page-layout-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="presentation-notes-attlist" combine="interleave"> + <optional> + <attribute name="draw:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="table-table-template"> + <element name="table:table-template"> + <ref name="table-table-template-attlist"/> + <optional> + <ref name="table-first-row"/> + </optional> + <optional> + <ref name="table-last-row"/> + </optional> + <optional> + <ref name="table-first-column"/> + </optional> + <optional> + <ref name="table-last-column"/> + </optional> + <choice> + <ref name="table-body"/> + <group> + <ref name="table-even-rows"/> + <ref name="table-odd-rows"/> + </group> + <group> + <ref name="table-even-columns"/> + <ref name="table-odd-columns"/> + </group> + </choice> + </element> +</define> +<define name="table-table-template-attlist" combine="interleave"> + <attribute name="text:name"> + <ref name="string"/> + </attribute> +</define> +<define name="table-table-template-attlist" combine="interleave"> + <attribute name="text:first-row-start-column"> + <ref name="rowOrCol"/> + </attribute> +</define> + +<define name="table-table-template-attlist" combine="interleave"> + <attribute name="text:first-row-end-column"> + <ref name="rowOrCol"/> + </attribute> +</define> + +<define name="table-table-template-attlist" combine="interleave"> + <attribute name="text:last-row-start-column"> + <ref name="rowOrCol"/> + </attribute> +</define> + +<define name="table-table-template-attlist" combine="interleave"> + <attribute name="text:last-row-end-column"> + <ref name="rowOrCol"/> + </attribute> +</define> + +<define name="rowOrCol"> + <choice> + <value>row</value> + <value>column</value> + </choice> +</define> +<define name="table-first-row"> + <element name="table:first-row"> + <ref name="common-table-template-attlist"/> + <empty/> + </element> +</define> + +<define name="table-last-row"> + <element name="table:last-row"> + <ref name="common-table-template-attlist"/> + <empty/> + </element> +</define> + +<define name="table-first-column"> + <element name="table:first-column"> + <ref name="common-table-template-attlist"/> + <empty/> + </element> +</define> + +<define name="table-last-column"> + <element name="table:last-column"> + <ref name="common-table-template-attlist"/> + <empty/> + </element> +</define> + +<define name="table-body"> + <element name="table:body"> + <ref name="common-table-template-attlist"/> + <empty/> + </element> +</define> + +<define name="table-even-rows"> + <element name="table:even-rows"> + <ref name="common-table-template-attlist"/> + <empty/> + </element> +</define> + +<define name="table-odd-rows"> + <element name="table:odd-rows"> + <ref name="common-table-template-attlist"/> + <empty/> + </element> +</define> + +<define name="table-even-columns"> + <element name="table:even-columns"> + <ref name="common-table-template-attlist"/> + <empty/> + </element> +</define> + +<define name="table-odd-columns"> + <element name="table:odd-columns"> + <ref name="common-table-template-attlist"/> + <empty/> + </element> +</define> + +<define name="common-table-template-attlist" combine="interleave"> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + <attribute name="text:paragraph-style-name"> + <optional> + <ref name="styleNameRef"/> + </optional> + </attribute> +</define> +<define name="style-font-face"> + <element name="style:font-face"> + <ref name="style-font-face-attlist"/> + <optional> + <ref name="svg-font-face-src"/> + </optional> + <optional> + <ref name="svg-definition-src"/> + </optional> + </element> +</define> +<define name="style-font-face-attlist" combine="interleave"> + <optional> + <attribute name="svg:font-family"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="svg:font-style"> + <ref name="fontStyle"/> + </attribute> + </optional> + <optional> + <attribute name="svg:font-variant"> + <ref name="fontVariant"/> + </attribute> + </optional> + <optional> + <attribute name="svg:font-weight"> + <ref name="fontWeight"/> + </attribute> + </optional> + <optional> + <attribute name="svg:font-stretch"> + <choice> + <value>normal</value> + <value>ultra-condensed</value> + <value>extra-condensed</value> + <value>condensed</value> + <value>semi-condensed</value> + <value>semi-expanded</value> + <value>expanded</value> + <value>extra-expanded</value> + <value>ultra-expanded</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="svg:font-size"> + <ref name="positiveLength"/> + </attribute> + </optional> + <optional> + <attribute name="svg:unicode-range"/> + </optional> + <optional> + <attribute name="svg:units-per-em"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:panose-1"/> + </optional> + <optional> + <attribute name="svg:stemv"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:stemh"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:slope"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:cap-height"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:x-height"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:accent-height"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:ascent"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:descent"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:widths"/> + </optional> + <optional> + <attribute name="svg:bbox"/> + </optional> + <optional> + <attribute name="svg:ideographic"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:alphabetic"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:mathematical"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:hanging"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:v-ideographic"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:v-alphabetic"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:v-mathematical"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:v-hanging"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:underline-position"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:underline-thickness"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:strikethrough-position"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:strikethrough-thickness"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:overline-position"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:overline-thickness"> + <ref name="integer"/> + </attribute> + </optional> +</define> + +<define name="svg-font-face-src"> + <element name="svg:font-face-src"> + <oneOrMore> + <choice> + <ref name="svg-font-face-uri"/> + <ref name="svg-font-face-name"/> + </choice> + </oneOrMore> + </element> +</define> + +<define name="svg-font-face-uri"> + <element name="svg:font-face-uri"> + <ref name="common-svg-font-face-xlink-attlist"/> + <zeroOrMore> + <ref name="svg-font-face-format"/> + </zeroOrMore> + </element> +</define> + +<define name="svg-font-face-format"> + <element name="svg:font-face-format"> + <optional> + <attribute name="svg:string"/> + </optional> + <empty/> + </element> +</define> +<define name="svg-font-face-name"> + <element name="svg:font-face-name"> + <optional> + <attribute name="svg:name"/> + </optional> + <empty/> + </element> +</define> + +<define name="svg-definition-src"> + <element name="svg:definition-src"> + <ref name="common-svg-font-face-xlink-attlist"/> + <empty/> + </element> +</define> + +<define name="common-svg-font-face-xlink-attlist" combine="interleave"> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> + <optional> + <attribute name="xlink:type" a:defaultValue="simple"> + <value>simple</value> + </attribute> + </optional> + <optional> + <attribute name="xlink:actuate" a:defaultValue="onRequest"> + <value>onRequest</value> + </attribute> + </optional> +</define> +<define name="style-font-face-attlist" combine="interleave"> + <attribute name="style:name"> + <ref name="string"/> + </attribute> +</define> +<define name="style-font-face-attlist" combine="interleave"> + <optional> + <attribute name="style:font-adornments"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="style-font-face-attlist" combine="interleave"> + <optional> + <attribute name="style:font-family-generic"> + <ref name="fontFamilyGeneric"/> + </attribute> + </optional> +</define> +<define name="style-font-face-attlist" combine="interleave"> + <optional> + <attribute name="style:font-pitch"> + <ref name="fontPitch"/> + </attribute> + </optional> +</define> + +<define name="style-font-face-attlist" combine="interleave"> + <optional> + <attribute name="style:font-charset"> + <ref name="textEncoding"/> + </attribute> + </optional> +</define> +<define name="number-number-style"> + <element name="number:number-style"> + <ref name="common-data-style-attlist"/> + <optional> + <ref name="style-text-properties"/> + </optional> + <optional> + <ref name="number-text"/> + </optional> + <optional> + <ref name="any-number"/> + <optional> + <ref name="number-text"/> + </optional> + </optional> + <zeroOrMore> + <ref name="style-map"/> + </zeroOrMore> + </element> +</define> + +<define name="any-number"> + <choice> + <ref name="number-number"/> + <ref name="number-scientific-number"/> + <ref name="number-fraction"/> + </choice> +</define> +<define name="number-number"> + <element name="number:number"> + <ref name="number-number-attlist"/> + <ref name="common-decimal-places-attlist"/> + <ref name="common-number-attlist"/> + <zeroOrMore> + <ref name="number-embedded-text"/> + </zeroOrMore> + </element> +</define> +<define name="number-number-attlist" combine="interleave"> + <optional> + <attribute name="number:decimal-replacement"/> + </optional> +</define> +<define name="number-number-attlist" combine="interleave"> + <optional> + <attribute name="number:display-factor" a:defaultValue="1"> + <ref name="double"/> + </attribute> + </optional> +</define> +<define name="number-embedded-text"> + <element name="number:embedded-text"> + <ref name="number-embedded-text-attlist"/> + <text/> + </element> +</define> +<define name="number-embedded-text-attlist" combine="interleave"> + <attribute name="number:position"> + <ref name="integer"/> + </attribute> +</define> +<define name="number-scientific-number"> + <element name="number:scientific-number"> + <ref name="number-scientific-number-attlist"/> + <ref name="common-decimal-places-attlist"/> + <ref name="common-number-attlist"/> + <empty/> + </element> +</define> +<define name="number-scientific-number-attlist" combine="interleave"> + <optional> + <attribute name="number:min-exponent-digits"> + <ref name="integer"/> + </attribute> + </optional> +</define> +<define name="number-fraction"> + <element name="number:fraction"> + <ref name="number-fraction-attlist"/> + <ref name="common-number-attlist"/> + <empty/> + </element> +</define> +<define name="number-fraction-attlist" combine="interleave"> + <optional> + <attribute name="number:min-numerator-digits"> + <ref name="integer"/> + </attribute> + </optional> +</define> +<define name="number-fraction-attlist" combine="interleave"> + <optional> + <attribute name="number:min-denominator-digits"> + <ref name="integer"/> + </attribute> + </optional> +</define> +<define name="number-fraction-attlist" combine="interleave"> + <optional> + <attribute name="number:denominator-value"> + <ref name="integer"/> + </attribute> + </optional> +</define> +<define name="number-currency-style"> + <element name="number:currency-style"> + <ref name="common-data-style-attlist"/> + <ref name="common-auto-reorder-attlist"/> + <optional> + <ref name="style-text-properties"/> + </optional> + <optional> + <ref name="number-text"/> + </optional> + <optional> + <choice> + <group> + <ref name="number-and-text"/> + <optional> + <ref name="currency-symbol-and-text"/> + </optional> + </group> + <group> + <ref name="currency-symbol-and-text"/> + <optional> + <ref name="number-and-text"/> + </optional> + </group> + </choice> + </optional> + <zeroOrMore> + <ref name="style-map"/> + </zeroOrMore> + </element> +</define> + +<define name="currency-symbol-and-text"> + <ref name="number-currency-symbol"/> + <optional> + <ref name="number-text"/> + </optional> +</define> +<define name="number-and-text"> + <ref name="number-number"/> + <optional> + <ref name="number-text"/> + </optional> +</define> +<define name="number-currency-symbol"> + <element name="number:currency-symbol"> + <ref name="number-currency-symbol-attlist"/> + <text/> + </element> +</define> +<define name="number-currency-symbol-attlist" combine="interleave"> + <optional> + <attribute name="number:language"> + <ref name="languageCode"/> + </attribute> + </optional> + <optional> + <attribute name="number:country"> + <ref name="countryCode"/> + </attribute> + </optional> +</define> +<define name="number-percentage-style"> + <element name="number:percentage-style"> + <ref name="common-data-style-attlist"/> + <optional> + <ref name="style-text-properties"/> + </optional> + <optional> + <ref name="number-text"/> + </optional> + <optional> + <ref name="number-and-text"/> + </optional> + <zeroOrMore> + <ref name="style-map"/> + </zeroOrMore> + </element> +</define> +<define name="number-date-style"> + <element name="number:date-style"> + <ref name="common-data-style-attlist"/> + <ref name="common-auto-reorder-attlist"/> + <ref name="common-format-source-attlist"/> + <optional> + <ref name="style-text-properties"/> + </optional> + <!-- This DTD does not reflect the fact that some elements must not --> + <!-- occur more than once. --> + <optional> + <ref name="number-text"/> + </optional> + <oneOrMore> + <ref name="any-date"/> + <optional> + <ref name="number-text"/> + </optional> + </oneOrMore> + <zeroOrMore> + <ref name="style-map"/> + </zeroOrMore> + </element> +</define> + +<define name="any-date"> + <choice> + <ref name="number-day"/> + <ref name="number-month"/> + <ref name="number-year"/> + <ref name="number-era"/> + <ref name="number-day-of-week"/> + <ref name="number-week-of-year"/> + <ref name="number-quarter"/> + <ref name="number-hours"/> + <ref name="number-am-pm"/> + <ref name="number-minutes"/> + <ref name="number-seconds"/> + </choice> +</define> +<define name="number-day"> + <element name="number:day"> + <ref name="number-day-attlist"/> + <ref name="common-calendar-attlist"/> + <empty/> + </element> +</define> +<define name="number-day-attlist" combine="interleave"> + <optional> + <attribute name="number:style" a:defaultValue="short"> + <choice> + <value>short</value> + <value>long</value> + </choice> + </attribute> + </optional> +</define> +<define name="number-month"> + <element name="number:month"> + <ref name="number-month-attlist"/> + <ref name="common-calendar-attlist"/> + <empty/> + </element> +</define> +<define name="number-month-attlist" combine="interleave"> + <optional> + <attribute name="number:textual" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="number-month-attlist" combine="interleave"> + <optional> + <attribute name="number:possessive-form" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="number-month-attlist" combine="interleave"> + <optional> + <attribute name="number:style" a:defaultValue="short"> + <choice> + <value>short</value> + <value>long</value> + </choice> + </attribute> + </optional> +</define> +<define name="number-year"> + <element name="number:year"> + <ref name="number-year-attlist"/> + <ref name="common-calendar-attlist"/> + <empty/> + </element> +</define> +<define name="number-year-attlist" combine="interleave"> + <optional> + <attribute name="number:style" a:defaultValue="short"> + <choice> + <value>short</value> + <value>long</value> + </choice> + </attribute> + </optional> +</define> +<define name="number-era"> + <element name="number:era"> + <ref name="number-era-attlist"/> + <ref name="common-calendar-attlist"/> + <empty/> + </element> +</define> +<define name="number-era-attlist" combine="interleave"> + <optional> + <attribute name="number:style" a:defaultValue="short"> + <choice> + <value>short</value> + <value>long</value> + </choice> + </attribute> + </optional> +</define> +<define name="number-day-of-week"> + <element name="number:day-of-week"> + <ref name="number-day-of-week-attlist"/> + <ref name="common-calendar-attlist"/> + <empty/> + </element> +</define> +<define name="number-day-of-week-attlist" combine="interleave"> + <optional> + <attribute name="number:style" a:defaultValue="short"> + <choice> + <value>short</value> + <value>long</value> + </choice> + </attribute> + </optional> +</define> +<define name="number-week-of-year"> + <element name="number:week-of-year"> + <ref name="common-calendar-attlist"/> + <empty/> + </element> +</define> +<define name="number-quarter"> + <element name="number:quarter"> + <ref name="number-quarter-attlist"/> + <ref name="common-calendar-attlist"/> + <empty/> + </element> +</define> +<define name="number-quarter-attlist" combine="interleave"> + <optional> + <attribute name="number:style" a:defaultValue="short"> + <choice> + <value>short</value> + <value>long</value> + </choice> + </attribute> + </optional> +</define> +<define name="number-time-style"> + <element name="number:time-style"> + <ref name="number-time-style-attlist"/> + <ref name="common-data-style-attlist"/> + <ref name="common-format-source-attlist"/> + <optional> + <ref name="style-text-properties"/> + </optional> + <!-- This DTD does not reflect the fact that some elements must not --> + <!-- occur more than once. --> + <optional> + <ref name="number-text"/> + </optional> + <oneOrMore> + <ref name="any-time"/> + <optional> + <ref name="number-text"/> + </optional> + </oneOrMore> + <zeroOrMore> + <ref name="style-map"/> + </zeroOrMore> + </element> +</define> + +<define name="any-time"> + <choice> + <ref name="number-hours"/> + <ref name="number-am-pm"/> + <ref name="number-minutes"/> + <ref name="number-seconds"/> + </choice> +</define> +<define name="number-time-style-attlist" combine="interleave"> + <optional> + <attribute name="number:truncate-on-overflow" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="number-hours"> + <element name="number:hours"> + <ref name="number-hours-attlist"/> + <empty/> + </element> +</define> +<define name="number-hours-attlist" combine="interleave"> + <optional> + <attribute name="number:style" a:defaultValue="short"> + <choice> + <value>short</value> + <value>long</value> + </choice> + </attribute> + </optional> +</define> +<define name="number-minutes"> + <element name="number:minutes"> + <ref name="number-minutes-attlist"/> + <empty/> + </element> +</define> +<define name="number-minutes-attlist" combine="interleave"> + <optional> + <attribute name="number:style" a:defaultValue="short"> + <choice> + <value>short</value> + <value>long</value> + </choice> + </attribute> + </optional> +</define> +<define name="number-seconds"> + <element name="number:seconds"> + <ref name="number-seconds-attlist"/> + <empty/> + </element> +</define> +<define name="number-seconds-attlist" combine="interleave"> + <optional> + <attribute name="number:style" a:defaultValue="short"> + <choice> + <value>short</value> + <value>long</value> + </choice> + </attribute> + </optional> +</define> +<define name="number-seconds-attlist" combine="interleave"> + <optional> + <attribute name="number:decimal-places" a:defaultValue="0"> + <ref name="integer"/> + </attribute> + </optional> +</define> +<define name="number-am-pm"> + <element name="number:am-pm"> + <empty/> + </element> +</define> +<define name="number-boolean-style"> + <element name="number:boolean-style"> + <ref name="common-data-style-attlist"/> + <optional> + <ref name="style-text-properties"/> + </optional> + <optional> + <ref name="number-text"/> + </optional> + <optional> + <ref name="number-boolean"/> + <optional> + <ref name="number-text"/> + </optional> + </optional> + <zeroOrMore> + <ref name="style-map"/> + </zeroOrMore> + </element> +</define> +<define name="number-boolean"> + <element name="number:boolean"> + <empty/> + </element> +</define> +<define name="number-text-style"> + <element name="number:text-style"> + <ref name="common-data-style-attlist"/> + <optional> + <ref name="style-text-properties"/> + </optional> + <optional> + <ref name="number-text"/> + </optional> + <zeroOrMore> + <ref name="number-text-content"/> + <optional> + <ref name="number-text"/> + </optional> + </zeroOrMore> + <zeroOrMore> + <ref name="style-map"/> + </zeroOrMore> + </element> +</define> +<define name="number-text"> + <element name="number:text"> + <text/> + </element> +</define> +<define name="number-text-content"> + <element name="number:text-content"> + <empty/> + </element> +</define> +<define name="common-data-style-attlist" combine="interleave"> + <attribute name="style:name"> + <ref name="styleName"/> + </attribute> +</define> +<define name="style-data-style-attlist" combine="interleave"> + <optional> + <attribute name="style:display-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-data-style-attlist" combine="interleave"> + <optional> + <attribute name="number:language"> + <ref name="languageCode"/> + </attribute> + </optional> +</define> +<define name="common-data-style-attlist" combine="interleave"> + <optional> + <attribute name="number:country"> + <ref name="countryCode"/> + </attribute> + </optional> +</define> +<define name="common-data-style-attlist" combine="interleave"> + <optional> + <attribute name="number:title"/> + </optional> +</define> +<define name="common-data-style-attlist" combine="interleave"> + <optional> + <attribute name="style:volatile"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="common-auto-reorder-attlist" combine="interleave"> + <optional> + <attribute name="number:automatic-order" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="common-format-source-attlist"> + <optional> + <attribute name="number:format-source" a:defaultValue="fixed"> + <choice> + <value>fixed</value> + <value>language</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-data-style-attlist" combine="interleave"> + <optional> + <attribute name="number:transliteration-format" a:defaultValue="1"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-data-style-attlist" combine="interleave"> + <optional> + <attribute name="number:transliteration-language"> + <ref name="countryCode"/> + </attribute> + </optional> +</define> +<define name="common-data-style-attlist" combine="interleave"> + <optional> + <attribute name="number:transliteration-country"> + <ref name="countryCode"/> + </attribute> + </optional> +</define> +<define name="common-data-style-attlist" combine="interleave"> + <optional> + <attribute name="number:transliteration-style" a:defaultValue="short"> + <choice> + <value>short</value> + <value>medium</value> + <value>long</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-decimal-places-attlist"> + <optional> + <attribute name="number:decimal-places"> + <ref name="integer"/> + </attribute> + </optional> +</define> +<define name="common-number-attlist" combine="interleave"> + <optional> + <attribute name="number:min-integer-digits"> + <ref name="integer"/> + </attribute> + </optional> +</define> +<define name="common-number-attlist" combine="interleave"> + <optional> + <attribute name="number:grouping" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="common-calendar-attlist" combine="interleave"> + <optional> + <attribute name="number:calendar"> + <choice> + <value>gregorian</value> + <value>gengou</value> + <value>ROC</value> + <value>hanja_yoil</value> + <value>hanja</value> + <value>hijri</value> + <value>jewish</value> + <value>buddhist</value> + <ref name="string"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-style-content" combine="choice"> + <group> + <attribute name="style:family"> + <value>text</value> + </attribute> + <optional> + <ref name="style-text-properties"/> + </optional> + </group> +</define> +<define name="style-style-content" combine="choice"> + <group> + <attribute name="style:family"> + <value>paragraph</value> + </attribute> + <optional> + <ref name="style-paragraph-properties"/> + </optional> + <optional> + <ref name="style-text-properties"/> + </optional> + </group> +</define> +<define name="style-style-content" combine="choice"> + <group> + <attribute name="style:family"> + <value>section</value> + </attribute> + <optional> + <ref name="style-section-properties"/> + </optional> + </group> +</define> +<define name="style-style-content" combine="choice"> + <group> + <attribute name="style:family"> + <value>ruby</value> + </attribute> + <optional> + <ref name="style-ruby-properties"/> + </optional> + </group> +</define> +<define name="text-linenumbering-configuration"> + <element name="text:linenumbering-configuration"> + <ref name="text-linenumbering-configuration-attlist"/> + <optional> + <ref name="text-linenumbering-separator"/> + </optional> + </element> +</define> +<define name="text-linenumbering-configuration-attlist" combine="interleave"> + <optional> + <attribute name="text:number-lines" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-linenumbering-configuration-attlist" combine="interleave"> + <optional> + <ref name="common-num-format-attlist"/> + </optional> +</define> +<define name="text-linenumbering-configuration-attlist" combine="interleave"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="text-linenumbering-configuration-attlist" combine="interleave"> + <optional> + <attribute name="text:increment"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="text-linenumbering-configuration-attlist" combine="interleave"> + <optional> + <attribute name="text:number-position" a:defaultValue="left"> + <choice> + <value>left</value> + <value>right</value> + <value>inner</value> + <value>outer</value> + </choice> + </attribute> + </optional> +</define> +<define name="text-linenumbering-configuration-attlist" combine="interleave"> + <optional> + <attribute name="text:offset"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> +</define> +<define name="text-linenumbering-configuration-attlist" combine="interleave"> + <optional> + <attribute name="text:count-empty-lines" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-linenumbering-configuration-attlist" combine="interleave"> + <optional> + <attribute name="text:count-in-text-boxes" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-linenumbering-configuration-attlist" combine="interleave"> + <optional> + <attribute name="text:restart-on-page" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-linenumbering-separator"> + <element name="text:linenumbering-separator"> + <optional> + <attribute name="text:increment"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <text/> + </element> +</define> +<define name="text-notes-configuration"> + <element name="text:notes-configuration"> + <ref name="text-notes-configuration-content"/> + </element> +</define> +<define name="text-notes-configuration-content" combine="interleave"> + <ref name="text-note-class"/> +</define> +<define name="text-notes-configuration-content" combine="interleave"> + <optional> + <attribute name="text:citation-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="text-notes-configuration-content" combine="interleave"> + <optional> + <attribute name="text:citation-body-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="text-notes-configuration-content" combine="interleave"> + <optional> + <attribute name="text:default-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="text-notes-configuration-content" combine="interleave"> + <optional> + <attribute name="text:master-page-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="text-notes-configuration-content" combine="interleave"> + <optional> + <attribute name="text:start-value"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="text-notes-configuration-content" combine="interleave"> + <ref name="common-num-format-prefix-suffix-attlist"/> + <optional> + <ref name="common-num-format-attlist"/> + </optional> +</define> +<define name="text-notes-configuration-content" combine="interleave"> + <optional> + <attribute name="text:start-numbering-at"> + <choice> + <value>document</value> + <value>chapter</value> + <value>page</value> + </choice> + </attribute> + </optional> +</define> +<define name="text-notes-configuration-content" combine="interleave"> + <optional> + <attribute name="text:footnotes-position"> + <choice> + <value>text</value> + <value>page</value> + <value>section</value> + <value>document</value> + </choice> + </attribute> + </optional> +</define> +<define name="text-notes-configuration-content" combine="interleave"> + <optional> + <element name="text:note-continuation-notice-forward"> + <text/> + </element> + </optional> +</define> +<define name="text-notes-configuration-content" combine="interleave"> + <optional> + <element name="text:note-continuation-notice-backward"> + <text/> + </element> + </optional> +</define> +<define name="text-bibliography-configuration"> + <element name="text:bibliography-configuration"> + <ref name="text-bibliography-configuration-attlist"/> + <zeroOrMore> + <ref name="text-sort-key"/> + </zeroOrMore> + </element> +</define> +<define name="text-bibliography-configuration-attlist" combine="interleave"> + <optional> + <attribute name="text:prefix"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="text:suffix"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="text-bibliography-configuration-attlist" combine="interleave"> + <optional> + <attribute name="text:numbered-entries" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-bibliography-configuration-attlist" combine="interleave"> + <optional> + <attribute name="text:sort-by-position" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="fo:language"> + <ref name="languageCode"/> + </attribute> + </optional> + <optional> + <attribute name="fo:country"> + <ref name="countryCode"/> + </attribute> + </optional> + <optional> + <attribute name="text:sort-algorithm"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="text-sort-key"> + <element name="text:sort-key"> + <ref name="text-sort-key-attlist"/> + <empty/> + </element> +</define> + +<define name="text-sort-key-attlist" combine="interleave"> + <attribute name="text:key"> + <choice> + <value>address</value> + <value>annote</value> + <value>author</value> + <value>bibliography-type</value> + <value>booktitle</value> + <value>chapter</value> + <value>custom1</value> + <value>custom2</value> + <value>custom3</value> + <value>custom4</value> + <value>custom5</value> + <value>edition</value> + <value>editor</value> + <value>howpublished</value> + <value>identifier</value> + <value>institution</value> + <value>isbn</value> + <value>issn</value> + <value>journal</value> + <value>month</value> + <value>note</value> + <value>number</value> + <value>organizations</value> + <value>pages</value> + <value>publisher</value> + <value>report-type</value> + <value>school</value> + <value>series</value> + <value>title</value> + <value>url</value> + <value>volume</value> + <value>year</value> + </choice> + </attribute> + <optional> + <attribute name="text:sort-ascending" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-list-style"> + <element name="text:list-style"> + <ref name="text-list-style-attr"/> + <zeroOrMore> + <ref name="text-list-style-content"/> + </zeroOrMore> + </element> +</define> +<define name="text-list-style-attr" combine="interleave"> + <attribute name="style:name"> + <ref name="styleName"/> + </attribute> +</define> +<define name="text-list-style-attr" combine="interleave"> + <optional> + <attribute name="style:display-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="text-list-style-attr" combine="interleave"> + <optional> + <attribute name="text:consecutive-numbering" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="text-list-level-style-attr"> + <attribute name="text:level"> + <ref name="positiveInteger"/> + </attribute> +</define> +<define name="text-list-style-content" combine="choice"> + <element name="text:list-level-style-number"> + <ref name="text-list-level-style-attr"/> + <ref name="text-list-level-style-number-attr"/> + <optional> + <ref name="style-list-level-properties"/> + </optional> + <optional> + <ref name="style-text-properties"/> + </optional> + </element> +</define> +<define name="text-list-level-style-number-attr" combine="interleave"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="text-list-level-style-number-attr" combine="interleave"> + <ref name="common-num-format-attlist"/> + <ref name="common-num-format-prefix-suffix-attlist"/> +</define> +<define name="text-list-level-style-number-attr" combine="interleave"> + <optional> + <attribute name="text:display-levels" a:defaultValue="1"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="text-list-level-style-number-attr" combine="interleave"> + <optional> + <attribute name="text:start-value" a:defaultValue="1"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="text-list-style-content" combine="choice"> + <element name="text:list-level-style-bullet"> + <ref name="text-list-level-style-attr"/> + <ref name="text-list-level-style-bullet-attr"/> + <optional> + <ref name="style-list-level-properties"/> + </optional> + <optional> + <ref name="style-text-properties"/> + </optional> + </element> +</define> +<define name="text-list-level-style-bullet-attr" combine="interleave"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="text-list-level-style-bullet-attr" combine="interleave"> + <attribute name="text:bullet-char"> + <ref name="character"/> + </attribute> +</define> +<define name="text-list-level-style-bullet-attr" combine="interleave"> + <ref name="common-num-format-prefix-suffix-attlist"/> +</define> +<define name="text-list-level-style-bullet-attr" combine="interleave"> + <optional> + <attribute name="text:bullet-relative-size"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="text-list-style-content" combine="choice"> + <element name="text:list-level-style-image"> + <ref name="text-list-level-style-attr"/> + <ref name="text-list-level-style-image-attr"/> + <optional> + <ref name="style-list-level-properties"/> + </optional> + </element> +</define> +<define name="text-list-level-style-image-attr" combine="interleave"> + <choice> + <ref name="common-draw-data-attlist"/> + <ref name="office-binary-data"/> + </choice> +</define> +<define name="text-outline-style"> + <element name="text:outline-style"> + <oneOrMore> + <ref name="text-outline-level-style"/> + </oneOrMore> + </element> +</define> +<define name="text-outline-level-style"> + <element name="text:outline-level-style"> + <ref name="text-outline-level-style-attlist"/> + <optional> + <ref name="style-list-level-properties"/> + </optional> + <optional> + <ref name="style-text-properties"/> + </optional> + </element> +</define> +<define name="text-outline-level-style-attlist" combine="interleave"> + <attribute name="text:level"> + <ref name="positiveInteger"/> + </attribute> +</define> +<define name="text-outline-level-style-attlist" combine="interleave"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="text-outline-level-style-attlist" combine="interleave"> + <ref name="common-num-format-attlist"/> + <ref name="common-num-format-prefix-suffix-attlist"/> +</define> +<define name="text-outline-level-style-attlist" combine="interleave"> + <optional> + <attribute name="text:display-levels" a:defaultValue="1"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="text-outline-level-style-attlist" combine="interleave"> + <optional> + <attribute name="text:start-value" a:defaultValue="1"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="style-style-content" combine="choice"> + <group> + <attribute name="style:family"> + <value>table</value> + </attribute> + <optional> + <ref name="style-table-properties"/> + </optional> + </group> +</define> +<define name="style-style-content" combine="choice"> + <group> + <attribute name="style:family"> + <value>table-column</value> + </attribute> + <optional> + <ref name="style-table-column-properties"/> + </optional> + </group> +</define> +<define name="style-style-content" combine="choice"> + <group> + <attribute name="style:family"> + <value>table-row</value> + </attribute> + <optional> + <ref name="style-table-row-properties"/> + </optional> + </group> +</define> +<define name="style-style-content" combine="choice"> + <group> + <attribute name="style:family"> + <value>table-cell</value> + </attribute> + <optional> + <ref name="style-table-cell-properties"/> + </optional> + <optional> + <ref name="style-paragraph-properties"/> + </optional> + <optional> + <ref name="style-text-properties"/> + </optional> + </group> +</define> +<define name="style-style-content" combine="choice"> + <group> + <attribute name="style:family"> + <choice> + <value>graphic</value> + <value>presentation</value> + </choice> + </attribute> + <optional> + <ref name="style-graphic-properties"/> + </optional> + <optional> + <ref name="style-paragraph-properties"/> + </optional> + <optional> + <ref name="style-text-properties"/> + </optional> + </group> +</define> + +<define name="style-graphic-properties"> + <element name="style:graphic-properties"> + <ref name="style-graphic-properties-content"/> + </element> +</define> + +<define name="style-graphic-properties-content"> + <ref name="style-properties-content"/> +</define> + +<define name="style-graphic-properties-content-strict"> + <ref name="style-graphic-properties-attlist"/> + <ref name="style-graphic-fill-properties-attlist"/> + <ref name="style-graphic-properties-elements"/> +</define> + +<define name=" style-graphic-properties-elements"> + <empty/> +</define> +<define name="style-style-content" combine="choice"> + <group> + <attribute name="style:family"> + <value>drawing-page</value> + </attribute> + <optional> + <ref name="style-drawing-page-properties"/> + </optional> + </group> +</define> + +<define name="style-drawing-page-properties"> + <element name="style:drawing-page-properties"> + <ref name="style-drawing-page-properties-content"/> + </element> +</define> + +<define name="style-drawing-page-properties-content"> + <ref name="style-properties-content"/> +</define> + +<define name="style-drawing-page-properties-content-strict"> + <ref name="style-graphic-fill-properties-attlist"/> + <ref name="style-drawing-page-properties-attlist"/> + <ref name="style-drawing-page-properties-elements"/> +</define> +<define name="draw-gradient"> + <element name="draw:gradient"> + <ref name="common-draw-gradient-attlist"/> + <ref name="draw-gradient-attlist"/> + <empty/> + </element> +</define> +<define name="common-draw-gradient-attlist" combine="interleave"> + <optional> + <attribute name="draw:name"> + <ref name="styleName"/> + </attribute> + </optional> +</define> +<define name="common-draw-gradient-attlist" combine="interleave"> + <optional> + <attribute name="draw:display-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="common-draw-gradient-attlist" combine="interleave"> + <attribute name="draw:style"> + <ref name="gradient-style"/> + </attribute> +</define> +<define name="gradient-style"> + <choice> + <value>linear</value> + <value>axial</value> + <value>radial</value> + <value>ellipsoid</value> + <value>square</value> + <value>rectangular</value> + </choice> +</define> +<define name="common-draw-gradient-attlist" combine="interleave"> + <optional> + <attribute name="draw:cx"> + <ref name="percent"/> + </attribute> + </optional> + <optional> + <attribute name="draw:cy"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="draw-gradient-attlist" combine="interleave"> + <optional> + <attribute name="draw:start-color"> + <ref name="color"/> + </attribute> + </optional> + <optional> + <attribute name="draw:end-color"> + <ref name="color"/> + </attribute> + </optional> +</define> +<define name="draw-gradient-attlist" combine="interleave"> + <optional> + <attribute name="draw:start-intensity"> + <ref name="percent"/> + </attribute> + </optional> + <optional> + <attribute name="draw:end-intensity"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="common-draw-gradient-attlist" combine="interleave"> + <optional> + <attribute name="draw:angle"> + <ref name="integer"/> + </attribute> + </optional> +</define> +<define name="common-draw-gradient-attlist" combine="interleave"> + <optional> + <attribute name="draw:border"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="svg-linearGradient"> + <element name="svg:linearGradient"> + <ref name="common-svg-gradient-attlist"/> + <optional> + <attribute name="svg:x1" a:defaultValue="0%"> + <choice> + <ref name="coordinate"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="svg:y1" a:defaultValue="0%"> + <choice> + <ref name="coordinate"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="svg:x2" a:defaultValue="100%"> + <choice> + <ref name="coordinate"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="svg:y2" a:defaultValue="100%"> + <choice> + <ref name="coordinate"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <zeroOrMore> + <ref name="svg-stop"/> + </zeroOrMore> + </element> +</define> + +<define name="svg-radialGradient"> + <element name="svg:radialGradient"> + <ref name="common-svg-gradient-attlist"/> + <optional> + <attribute name="svg:cx" a:defaultValue="50%"> + <choice> + <ref name="coordinate"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="svg:cy" a:defaultValue="50%"> + <choice> + <ref name="coordinate"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="svg:r" a:defaultValue="50%"> + <choice> + <ref name="coordinate"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="svg:fx"> + <choice> + <ref name="coordinate"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="svg:fy"> + <choice> + <ref name="coordinate"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <zeroOrMore> + <ref name="svg-stop"/> + </zeroOrMore> + </element> +</define> + +<define name="svg-stop"> + <element name="svg:stop"> + <attribute name="svg:offset"> + <choice> + <ref name="double"/> + <ref name="percent"/> + </choice> + </attribute> + <optional> + <attribute name="svg:stop-color"> + <ref name="color"/> + </attribute> + </optional> + <optional> + <attribute name="svg:stop-opacity"> + <ref name="double"/> + </attribute> + </optional> + </element> +</define> + +<define name="common-svg-gradient-attlist" combine="interleave"> + <optional> + <attribute name="svg:gradientUnits" a:defaultValue="objectBoundingBox"> + <value>objectBoundingBox</value> + </attribute> + </optional> + <optional> + <attribute name="svg:gradientTransform"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="svg:spreadMethod" a:defaultValue="pad"> + <choice> + <value>pad</value> + <value>reflect</value> + <value>repeat</value> + </choice> + </attribute> + </optional> +</define> +<define name="common-svg-gradient-attlist" combine="interleave"> + <attribute name="draw:name"> + <ref name="styleName"/> + </attribute> +</define> +<define name="common-svg-gradient-attlist" combine="interleave"> + <optional> + <attribute name="draw:display-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-hatch"> + <element name="draw:hatch"> + <ref name="draw-hatch-attlist"/> + <empty/> + </element> +</define> +<define name="draw-hatch-attlist" combine="interleave"> + <attribute name="draw:name"> + <ref name="styleName"/> + </attribute> +</define> +<define name="draw-hatch-attlist" combine="interleave"> + <optional> + <attribute name="draw:display-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-hatch-attlist" combine="interleave"> + <attribute name="draw:style"> + <choice> + <value>single</value> + <value>double</value> + <value>triple</value> + </choice> + </attribute> +</define> +<define name="draw-hatch-attlist" combine="interleave"> + <optional> + <attribute name="draw:color"> + <ref name="color"/> + </attribute> + </optional> +</define> +<define name="draw-hatch-attlist" combine="interleave"> + <optional> + <attribute name="draw:distance"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="draw-hatch-attlist" combine="interleave"> + <optional> + <attribute name="draw:rotation"> + <ref name="integer"/> + </attribute> + </optional> +</define> +<define name="draw-fill-image"> + <element name="draw:fill-image"> + <ref name="draw-fill-image-attlist"/> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> + <optional> + <attribute name="xlink:type" a:defaultValue="simple"> + <choice> + <value>simple</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="xlink:show" a:defaultValue="embed"> + <choice> + <value>embed</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="xlink:actuate" a:defaultValue="onLoad"> + <choice> + <value>onLoad</value> + </choice> + </attribute> + </optional> + <empty/> + </element> +</define> +<define name="draw-fill-image-attlist" combine="interleave"> + <attribute name="draw:name"> + <ref name="styleName"/> + </attribute> +</define> +<define name="draw-fill-image-attlist" combine="interleave"> + <optional> + <attribute name="draw:display-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-fill-image-attlist" combine="interleave"> + <optional> + <attribute name="svg:width"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="svg:height"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="draw-opacity"> + <element name="draw:opacity"> + <ref name="common-draw-gradient-attlist"/> + <ref name="draw-opacity-attlist"/> + <empty/> + </element> +</define> +<define name="draw-opacity-attlist" combine="interleave"> + <optional> + <attribute name="draw:start"> + <ref name="percent"/> + </attribute> + </optional> + <optional> + <attribute name="draw:end"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="draw-marker"> + <element name="draw:marker"> + <ref name="draw-marker-attlist"/> + <ref name="common-draw-viewbox-attlist"/> + <ref name="common-draw-path-data-attlist"/> + <empty/> + </element> +</define> +<define name="draw-marker-attlist" combine="interleave"> + <attribute name="draw:name"> + <ref name="styleName"/> + </attribute> +</define> +<define name="draw-marker-attlist" combine="interleave"> + <optional> + <attribute name="draw:display-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-stroke-dash"> + <element name="draw:stroke-dash"> + <ref name="draw-stroke-dash-attlist"/> + <empty/> + </element> +</define> +<define name="draw-stroke-dash-attlist" combine="interleave"> + <attribute name="draw:name"> + <ref name="styleName"/> + </attribute> +</define> +<define name="draw-stroke-dash-attlist" combine="interleave"> + <optional> + <attribute name="draw:display-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="draw-stroke-dash-attlist" combine="interleave"> + <optional> + <attribute name="draw:style"> + <choice> + <value>rect</value> + <value>round</value> + </choice> + </attribute> + </optional> +</define> +<define name="draw-stroke-dash-attlist" combine="interleave"> + <optional> + <attribute name="draw:dots1"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="draw:dots1-length"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="draw:dots2"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="draw:dots2-length"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="draw-stroke-dash-attlist" combine="interleave"> + <optional> + <attribute name="draw:distance"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-presentation-page-layout"> + <element name="style:presentation-page-layout"> + <attribute name="style:name"> + <ref name="styleName"/> + </attribute> + <optional> + <attribute name="style:display-name"> + <ref name="string"/> + </attribute> + </optional> + <zeroOrMore> + <ref name="presentation-placeholder"/> + </zeroOrMore> + </element> +</define> +<define name="presentation-placeholder"> + <element name="presentation:placeholder"> + <attribute name="presentation:object"> + <ref name="presentation-classes"/> + </attribute> + <attribute name="svg:x"> + <choice> + <ref name="coordinate"/> + <ref name="percent"/> + </choice> + </attribute> + <attribute name="svg:y"> + <choice> + <ref name="coordinate"/> + <ref name="percent"/> + </choice> + </attribute> + <attribute name="svg:width"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + <attribute name="svg:height"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + <empty/> + </element> +</define> +<define name="style-style-content" combine="choice"> + <group> + <attribute name="style:family"> + <value>chart</value> + </attribute> + <optional> + <ref name="style-chart-properties"/> + </optional> + <optional> + <ref name="style-graphic-properties"/> + </optional> + <optional> + <ref name="style-paragraph-properties"/> + </optional> + <optional> + <ref name="style-text-properties"/> + </optional> + </group> +</define> +<define name="style-properties-content"> + <ref name="anyAttListOrElements"/> +</define> +<define name="style-page-layout-properties"> + <element name="style:page-layout-properties"> + <ref name="style-page-layout-properties-content"/> + </element> +</define> + +<define name="style-page-layout-properties-content"> + <ref name="style-properties-content"/> +</define> + +<define name="style-page-layout-properties-content-strict"> + <ref name="style-page-layout-properties-attlist"/> + <ref name="style-page-layout-properties-elements"/> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:page-width"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="fo:page-height"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <optional> + <ref name="common-num-format-attlist"/> + </optional> + <ref name="common-num-format-prefix-suffix-attlist"/> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:paper-tray-name"> + <choice> + <value>default</value> + <ref name="string"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:print-orientation"> + <choice> + <value>portrait</value> + <value>landscape</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <ref name="common-horizontal-margin-attlist"/> + <ref name="common-vertical-margin-attlist"/> + <ref name="common-margin-attlist"/> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <ref name="common-border-attlist"/> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <ref name="common-border-line-width-attlist"/> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <ref name="common-padding-attlist"/> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <ref name="common-shadow-attlist"/> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <ref name="common-background-color-attlist"/> +</define> +<define name="style-page-layout-properties-elements" combine="interleave"> + <ref name="style-background-image"/> +</define> +<define name="style-page-layout-properties-elements" combine="interleave"> + <ref name="style-columns"/> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:register-truth-ref-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:print"> + <list> + <zeroOrMore> + <choice> + <value>headers</value> + <value>grid</value> + <value>annotations</value> + <value>objects</value> + <value>charts</value> + <value>drawings</value> + <value>formulas</value> + <value>zero-values</value> + </choice> + </zeroOrMore> + </list> + </attribute> + </optional> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:print-page-order"> + <choice> + <value>ttb</value> + <value>ltr</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:first-page-number"> + <choice> + <ref name="positiveInteger"/> + <value>continue</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:scale-to"> + <ref name="percent"/> + </attribute> + </optional> + <optional> + <attribute name="style:scale-to-pages"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:table-centering"> + <choice> + <value>horizontal</value> + <value>vertical</value> + <value>both</value> + <value>none</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:footnote-max-height"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <ref name="common-writing-mode-attlist"/> +</define> +<define name="style-page-layout-properties-elements" combine="interleave"> + <ref name="style-footnote-sep"/> +</define> + +<define name="style-footnote-sep"> + <optional> + <element name="style:footnote-sep"> + <ref name="style-footnote-sep-attlist"/> + <empty/> + </element> + </optional> +</define> +<define name="style-footnote-sep-attlist" combine="interleave"> + <optional> + <attribute name="style:width"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="style:rel-width"> + <ref name="percent"/> + </attribute> + </optional> + <optional> + <attribute name="style:color"> + <ref name="color"/> + </attribute> + </optional> + <optional> + <attribute name="style:line-style"> + <ref name="lineStyle"/> + </attribute> + </optional> + <optional> + <attribute name="style:adjustment" a:defaultValue="left"> + <choice> + <value>left</value> + <value>center</value> + <value>right</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:distance-before-sep"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="style:distance-after-sep"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:layout-grid-mode"> + <choice> + <value>none</value> + <value>line</value> + <value>both</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:layout-grid-base-height"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:layout-grid-ruby-height"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:layout-grid-lines"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:layout-grid-color"> + <ref name="color"/> + </attribute> + </optional> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:layout-grid-ruby-below"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:layout-grid-print"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-page-layout-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:layout-grid-display"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-header-footer-properties"> + <element name="style:header-footer-properties"> + <ref name="style-header-footer-properties-content"/> + </element> +</define> + +<define name="style-header-footer-properties-content"> + <ref name="style-properties-content"/> +</define> + +<define name="style-header-footer-properties-content-strict"> + <ref name="style-header-footer-properties-attlist"/> + <ref name="style-header-footer-properties-elements"/> +</define> +<define name="style-header-footer-properties-attlist" combine="interleave"> + <optional> + <attribute name="svg:height"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="fo:min-height"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-header-footer-properties-attlist" combine="interleave"> + <ref name="common-horizontal-margin-attlist"/> + <ref name="common-vertical-margin-attlist"/> + <ref name="common-margin-attlist"/> +</define> +<define name="style-header-footer-properties-attlist" combine="interleave"> + <ref name="common-border-attlist"/> +</define> +<define name="style-header-footer-properties-attlist" combine="interleave"> + <ref name="common-border-line-width-attlist"/> +</define> +<define name="style-header-footer-properties-attlist" combine="interleave"> + <ref name="common-padding-attlist"/> +</define> +<define name="style-header-footer-properties-attlist" combine="interleave"> + <ref name="common-background-color-attlist"/> +</define> +<define name="style-header-footer-properties-elements" combine="interleave"> + <ref name="style-background-image"/> +</define> +<define name="style-header-footer-properties-attlist" combine="interleave"> + <ref name="common-shadow-attlist"/> +</define> +<define name="style-header-footer-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:dynamic-spacing"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-text-properties"> + <element name="style:text-properties"> + <ref name="style-text-properties-content"/> + </element> +</define> + +<define name="style-text-properties-content"> + <ref name="style-properties-content"/> +</define> + +<define name="style-text-properties-content-strict"> + <ref name="style-text-properties-attlist"/> + <ref name="style-text-properties-elements"/> +</define> + +<define name="style-text-properties-elements"> + <empty/> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:font-variant"> + <ref name="fontVariant"/> + </attribute> + </optional> +</define> + +<define name="fontVariant"> + <choice> + <value>normal</value> + <value>small-caps</value> + </choice> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:text-transform"> + <choice> + <value>none</value> + <value>lowercase</value> + <value>uppercase</value> + <value>capitalize</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:color"> + <ref name="color"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:use-window-font-color"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-outline"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-line-through-type"> + <ref name="lineType"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-line-through-style"> + <ref name="lineStyle"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-line-through-width"> + <ref name="lineWidth"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-line-through-color"> + <choice> + <value>font-color</value> + <ref name="color"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-line-through-text"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-line-through-text-style"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-position"> + <list> + <choice> + <ref name="percent"/> + <value>super</value> + <value>sub</value> + </choice> + <optional> + <ref name="percent"/> + </optional> + </list> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:font-name"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-name-asian"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-name-complex"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:font-family"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-family-asian"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-family-complex"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:font-family-generic"> + <ref name="fontFamilyGeneric"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-family-generic-asian"> + <ref name="fontFamilyGeneric"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-family-generic-complex"> + <ref name="fontFamilyGeneric"/> + </attribute> + </optional> +</define> + +<define name="fontFamilyGeneric"> + <choice> + <value>roman</value> + <value>swiss</value> + <value>modern</value> + <value>decorative</value> + <value>script</value> + <value>system</value> + </choice> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:font-style-name"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-style-name-asian"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-style-name-complex"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:font-pitch"> + <ref name="fontPitch"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-pitch-asian"> + <ref name="fontPitch"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-pitch-complex"> + <ref name="fontPitch"/> + </attribute> + </optional> +</define> + +<define name="fontPitch"> + <choice> + <value>fixed</value> + <value>variable</value> + </choice> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:font-charset"> + <ref name="textEncoding"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-charset-asian"> + <ref name="textEncoding"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-charset-complex"> + <ref name="textEncoding"/> + </attribute> + </optional> +</define> + +<define name="textEncoding"> + <data type="string"> + <param name="pattern">[A-Za-z][A-Za-z0-9._\-]*</param> + </data> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:font-size"> + <choice> + <ref name="positiveLength"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:font-size-asian"> + <choice> + <ref name="positiveLength"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:font-size-complex"> + <choice> + <ref name="positiveLength"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:font-size-rel"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-size-rel-asian"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-size-rel-complex"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:script-type"> + <choice> + <value>latin</value> + <value>asian</value> + <value>complex</value> + <value>ignore</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:letter-spacing"> + <choice> + <ref name="length"/> + <value>normal</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:language"> + <ref name="languageCode"/> + </attribute> + </optional> + <optional> + <attribute name="style:language-asian"> + <ref name="languageCode"/> + </attribute> + </optional> + <optional> + <attribute name="style:language-complex"> + <ref name="languageCode"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:country"> + <ref name="countryCode"/> + </attribute> + </optional> + <optional> + <attribute name="style:country-asian"> + <ref name="countryCode"/> + </attribute> + </optional> + <optional> + <attribute name="style:country-complex"> + <ref name="countryCode"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:font-style"> + <ref name="fontStyle"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-style-asian"> + <ref name="fontStyle"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-style-complex"> + <ref name="fontStyle"/> + </attribute> + </optional> +</define> + +<define name="fontStyle"> + <choice> + <value>normal</value> + <value>italic</value> + <value>oblique</value> + </choice> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:font-relief"> + <choice> + <value>none</value> + <value>embossed</value> + <value>engraved</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:text-shadow"> + <ref name="shadowType"/> + </attribute> + </optional> +</define> + +<define name="shadowType"> + <choice> + <value>none</value> + <!-- The following string must match an XSL shadow decl --> + <ref name="string"/> + </choice> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-underline-type"> + <ref name="lineType"/> + </attribute> + </optional> +</define> + +<define name="lineType"> + <choice> + <value>none</value> + <value>single</value> + <value>double</value> + </choice> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-underline-style"> + <ref name="lineStyle"/> + </attribute> + </optional> +</define> + +<define name="lineStyle"> + <choice> + <value>none</value> + <value>solid</value> + <value>dotted</value> + <value>dash</value> + <value>long-dash</value> + <value>dot-dash</value> + <value>dot-dot-dash</value> + <value>wave</value> + </choice> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-underline-width"> + <ref name="lineWidth"/> + </attribute> + </optional> +</define> + +<define name="lineWidth"> + <choice> + <value>auto</value> + <value>normal</value> + <value>bold</value> + <value>thin</value> + <value>dash</value> + <value>medium</value> + <value>thick</value> + <ref name="positiveInteger"/> + <ref name="percent"/> + <ref name="positiveLength"/> + </choice> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-underline-color"> + <choice> + <value>font-color</value> + <ref name="color"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:font-weight"> + <ref name="fontWeight"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-weight-asian"> + <ref name="fontWeight"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-weight-complex"> + <ref name="fontWeight"/> + </attribute> + </optional> +</define> + +<define name="fontWeight"> + <choice> + <value>normal</value> + <value>bold</value> + <value>100</value> + <value>200</value> + <value>300</value> + <value>400</value> + <value>500</value> + <value>600</value> + <value>700</value> + <value>800</value> + <value>900</value> + </choice> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-underline-mode"> + <ref name="lineMode"/> + </attribute> + </optional> +</define> + +<define name="lineMode"> + <choice> + <value>continuous</value> + <value>skip-white-space</value> + </choice> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-line-through-mode"> + <ref name="lineMode"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:letter-kerning"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-blinking"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <ref name="common-background-color-attlist"/> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-combine"> + <choice> + <value>none</value> + <value>letters</value> + <value>lines</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-combine-start-char"> + <ref name="character"/> + </attribute> + </optional> + <optional> + <attribute name="style:text-combine-end-char"> + <ref name="character"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-emphasize"> + <choice> + <value>none</value> + <list> + <choice> + <value>none</value> + <value>accent</value> + <value>dot</value> + <value>circle</value> + <value>disc</value> + </choice> + <choice> + <value>above</value> + <value>below</value> + </choice> + </list> + </choice> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-scale"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-rotation-angle"> + <ref name="integer"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-rotation-scale"> + <choice> + <value>fixed</value> + <value>line-height</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:hyphenate"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:hyphenation-remain-char-count"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:hyphenation-push-char-count"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="style-text-properties-attlist" combine="interleave"> + <choice> + <attribute name="text:display"> + <value>true</value> + </attribute> + <attribute name="text:display"> + <value>none</value> + </attribute> + <group> + <attribute name="text:display"> + <value>condition</value> + </attribute> + <attribute name="text:condition"> + <value>none</value> + </attribute> + </group> + <empty/> + </choice> +</define> +<define name="style-paragraph-properties"> + <element name="style:paragraph-properties"> + <ref name="style-paragraph-properties-content"/> + </element> +</define> + +<define name="style-paragraph-properties-content"> + <ref name="style-properties-content"/> +</define> + +<define name="style-paragraph-properties-content-strict"> + <ref name="style-paragraph-properties-attlist"/> + <ref name="style-paragraph-properties-elements"/> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:line-height"> + <choice> + <value>normal</value> + <ref name="nonNegativeLength"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:line-height-at-least"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:line-spacing"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:font-independent-line-spacing"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <ref name="common-text-align"/> +</define> + +<define name="common-text-align"> + <optional> + <attribute name="fo:text-align"> + <choice> + <value>start</value> + <value>end</value> + <value>left</value> + <value>right</value> + <value>center</value> + <value>justify</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:text-align-last"> + <choice> + <value>start</value> + <value>center</value> + <value>justify</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:justify-single-word"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:keep-together"> + <choice> + <value>auto</value> + <value>always</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:widows"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:orphans"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-elements" combine="interleave"> + <ref name="style-tab-stops"/> +</define> + +<define name="style-tab-stops"> + <optional> + <element name="style:tab-stops"> + <zeroOrMore> + <ref name="style-tab-stop"/> + </zeroOrMore> + </element> + </optional> +</define> + +<define name="style-tab-stop"> + <element name="style:tab-stop"> + <ref name="style-tab-stop-attlist"/> + <empty/> + </element> +</define> +<define name="style-tab-stop-attlist" combine="interleave"> + <attribute name="style:position"> + <ref name="nonNegativeLength"/> + </attribute> +</define> +<define name="style-tab-stop-attlist" combine="interleave"> + <choice> + <optional> + <attribute name="style:type" a:defaultValue="left"> + <choice> + <value>left</value> + <value>center</value> + <value>right</value> + </choice> + </attribute> + </optional> + <group> + <attribute name="style:type"> + <value>char</value> + </attribute> + <ref name="style-tab-stop-char-attlist"/> + </group> + </choice> +</define> +<define name="style-tab-stop-char-attlist" combine="interleave"> + <attribute name="style:char"> + <ref name="character"/> + </attribute> +</define> +<define name="style-tab-stop-attlist" combine="interleave"> + <optional> + <attribute name="style:leader-type"> + <ref name="lineType"/> + </attribute> + </optional> +</define> +<define name="style-tab-stop-attlist" combine="interleave"> + <optional> + <attribute name="style:leader-style"> + <ref name="lineStyle"/> + </attribute> + </optional> +</define> +<define name="style-tab-stop-attlist" combine="interleave"> + <optional> + <attribute name="style:leader-width"> + <ref name="lineWidth"/> + </attribute> + </optional> +</define> +<define name="style-tab-stop-attlist" combine="interleave"> + <optional> + <attribute name="style:leader-color"> + <choice> + <value>font-color</value> + <ref name="color"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-tab-stop-attlist" combine="interleave"> + <optional> + <attribute name="style:leader-text" a:defaultValue=" "> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="style-tab-stop-attlist" combine="interleave"> + <optional> + <attribute name="style:leader-text-style"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:tab-stop-distance"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:hyphenation-keep"> + <choice> + <value>auto</value> + <value>page</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:hyphenation-ladder-count"> + <choice> + <value>no-limit</value> + <ref name="positiveInteger"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-elements" combine="interleave"> + <ref name="style-drop-cap"/> +</define> + +<define name="style-drop-cap"> + <optional> + <element name="style:drop-cap"> + <ref name="style-drop-cap-attlist"/> + <empty/> + </element> + </optional> +</define> +<define name="style-drop-cap-attlist" combine="interleave"> + <optional> + <attribute name="style:length" a:defaultValue="1"> + <choice> + <value>word</value> + <ref name="positiveInteger"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-drop-cap-attlist" combine="interleave"> + <optional> + <attribute name="style:lines" a:defaultValue="1"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="style-drop-cap-attlist" combine="interleave"> + <optional> + <attribute name="style:distance" a:defaultValue="0cm"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-drop-cap-attlist" combine="interleave"> + <optional> + <attribute name="style:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:register-true"> + <ref name="boolean"/> + </attribute> + </optional> + </define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <ref name="common-horizontal-margin-attlist"/> +</define> + +<define name="common-horizontal-margin-attlist"> + <optional> + <attribute name="fo:margin-left"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="fo:margin-right"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:text-indent"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:auto-text-indent"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <ref name="common-vertical-margin-attlist"/> +</define> + +<define name="common-vertical-margin-attlist"> + <optional> + <attribute name="fo:margin-top"> + <choice> + <ref name="nonNegativeLength"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="fo:margin-bottom"> + <choice> + <ref name="nonNegativeLength"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <ref name="common-margin-attlist"/> +</define> + +<define name="common-margin-attlist"> + <optional> + <attribute name="fo:margin"> + <choice> + <ref name="nonNegativeLength"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <ref name="common-break-attlist"/> +</define> + +<define name="common-break-attlist"> + <optional> + <attribute name="fo:break-before"> + <choice> + <value>auto</value> + <value>column</value> + <value>page</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="fo:break-after"> + <choice> + <value>auto</value> + <value>column</value> + <value>page</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <ref name="common-background-color-attlist"/> +</define> + +<define name="common-background-color-attlist"> + <optional> + <attribute name="fo:background-color"> + <choice> + <value>transparent</value> + <ref name="color"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-elements" combine="interleave"> + <ref name="style-background-image"/> +</define> + +<define name="style-background-image"> + <optional> + <element name="style:background-image"> + <ref name="style-background-image-attlist"/> + <choice> + <ref name="common-draw-data-attlist"/> + <ref name="office-binary-data"/> + <empty/> + </choice> + </element> + </optional> +</define> +<define name="style-background-image-attlist" combine="interleave"> + <optional> + <attribute name="style:repeat" a:defaultValue="repeat"> + <choice> + <value>no-repeat</value> + <value>repeat</value> + <value>stretch</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-background-image-attlist" combine="interleave"> + <optional> + <attribute name="style:position" a:defaultValue="center"> + <choice> + <value>left</value> + <value>center</value> + <value>right</value> + <value>top</value> + <value>bottom</value> + <list> + <ref name="horiBackPos"/> + <ref name="vertBackPos"/> + </list> + <list> + <ref name="vertBackPos"/> + <ref name="horiBackPos"/> + </list> + </choice> + </attribute> + </optional> +</define> + +<define name="horiBackPos"> + <choice> + <value>left</value> + <value>center</value> + <value>right</value> + </choice> +</define> +<define name="vertBackPos"> + <choice> + <value>top</value> + <value>center</value> + <value>bottom</value> + </choice> +</define> +<define name="style-background-image-attlist" combine="interleave"> + <optional> + <attribute name="style:filter-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="style-background-image-attlist" combine="interleave"> + <optional> + <attribute name="draw:opacity"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <ref name="common-border-attlist"/> +</define> + +<define name="common-border-attlist"> + <optional> + <attribute name="fo:border"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="fo:border-top"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="fo:border-bottom"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="fo:border-left"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="fo:border-right"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <ref name="common-border-line-width-attlist"/> +</define> + +<define name="common-border-line-width-attlist"> + <optional> + <attribute name="style:border-line-width"> + <ref name="borderWidths"/> + </attribute> + </optional> + <optional> + <attribute name="style:border-line-width-top"> + <ref name="borderWidths"/> + </attribute> + </optional> + <optional> + <attribute name="style:border-line-width-bottom"> + <ref name="borderWidths"/> + </attribute> + </optional> + <optional> + <attribute name="style:border-line-width-left"> + <ref name="borderWidths"/> + </attribute> + </optional> + <optional> + <attribute name="style:border-line-width-right"> + <ref name="borderWidths"/> + </attribute> + </optional> +</define> + +<define name="borderWidths"> + <list> + <ref name="positiveLength"/> + <ref name="positiveLength"/> + <ref name="positiveLength"/> + </list> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <ref name="common-padding-attlist"/> +</define> + +<define name="common-padding-attlist"> + <optional> + <attribute name="fo:padding"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> + <optional> + <attribute name="fo:padding-top"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> + <optional> + <attribute name="fo:padding-bottom"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> + <optional> + <attribute name="fo:padding-left"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> + <optional> + <attribute name="fo:padding-right"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <ref name="common-shadow-attlist"/> +</define> + +<define name="common-shadow-attlist"> + <optional> + <attribute name="style:shadow"> + <ref name="shadowType"/> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <ref name="common-keep-with-next-attlist"/> +</define> + +<define name="common-keep-with-next-attlist"> + <optional> + <attribute name="fo:keep-with-next"> + <choice> + <value>auto</value> + <value>always</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="text:number-lines" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="text:line-number"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-autospace"> + <choice> + <value>none</value> + <value>ideograph-alpha</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:punctuation-wrap"> + <choice> + <value>simple</value> + <value>hanging</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:line-break"> + <choice> + <value>normal</value> + <value>strict</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:vertical-align" a:defaultValue="auto"> + <choice> + <value>top</value> + <value>middle</value> + <value>bottom</value> + <value>auto</value> + <value>baseline</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <ref name="common-writing-mode-attlist"/> +</define> + +<define name="common-writing-mode-attlist"> + <optional> + <attribute name="style:writing-mode"> + <choice> + <value>lr-tb</value> + <value>rl-tb</value> + <value>tb-rl</value> + <value>tb-lr</value> + <value>lr</value> + <value>rl</value> + <value>tb</value> + <value>page</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:writing-mode-automatic"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:snap-to-layout-grid"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <ref name="common-page-number-attlist"/> +</define> + +<define name="common-page-number-attlist"> + <optional> + <attribute name="style:page-number"> + <choice> <ref name="positiveInteger"/> <value>auto</value> </choice> + </attribute> + </optional> +</define> +<define name="style-paragraph-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:background-transparency"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="style-ruby-properties"> + <element name="style:ruby-properties"> + <ref name="style-ruby-properties-content"/> + </element> +</define> + +<define name="style-ruby-properties-content"> + <ref name="style-properties-content"/> +</define> + +<define name="style-ruby-properties-content-strict"> + <ref name="style-ruby-properties-attlist"/> + <ref name="style-ruby-properties-elements"/> +</define> + +<define name="style-ruby-properties-elements"> + <empty/> +</define> +<define name="style-ruby-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:ruby-position"> + <choice> + <value>above</value> + <value>below</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-ruby-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:ruby-align"> + <choice> + <value>left</value> + <value>center</value> + <value>right</value> + <value>distribute-letter</value> + <value>distribute-space</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-section-properties"> + <element name="style:section-properties"> + <ref name="style-section-properties-content"/> + </element> +</define> + +<define name="style-section-properties-content"> + <ref name="style-properties-content"/> +</define> + +<define name="style-section-properties-content-strict"> + <ref name="style-section-properties-attlist"/> + <ref name="style-section-properties-elements"/> +</define> +<define name="style-section-properties-attlist" combine="interleave"> + <ref name="common-background-color-attlist"/> +</define> +<define name="style-section-properties-elements" combine="interleave"> + <ref name="style-background-image"/> +</define> +<define name="style-section-properties-attlist" combine="interleave"> + <ref name="common-horizontal-margin-attlist"/> +</define> +<define name="style-section-properties-elements" combine="interleave"> + <ref name="style-columns"/> +</define> + +<define name="style-columns"> + <optional> + <element name="style:columns"> + <ref name="style-columns-attlist"/> + <optional> + <ref name="style-column-sep"/> + </optional> + <zeroOrMore> + <ref name="style-column"/> + </zeroOrMore> + </element> + </optional> +</define> +<define name="style-columns-attlist" combine="interleave"> + <attribute name="fo:column-count"> + <ref name="positiveInteger"/> + </attribute> +</define> +<define name="style-columns-attlist" combine="interleave"> + <optional> + <attribute name="fo:column-gap"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-column"> + <element name="style:column"> + <ref name="style-column-attlist"/> + </element> +</define> +<define name="style-column-attlist" combine="interleave"> + <attribute name="style:rel-width"> + <ref name="relativeLength"/> + </attribute> +</define> +<define name="style-column-attlist" combine="interleave"> + <optional> + <attribute name="fo:start-indent" a:defaultValue="0cm"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-column-attlist" combine="interleave"> + <optional> + <attribute name="fo:end-indent" a:defaultValue="0cm"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-column-attlist" combine="interleave"> + <optional> + <attribute name="fo:space-before" a:defaultValue="0cm"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-column-attlist" combine="interleave"> + <optional> + <attribute name="fo:space-after" a:defaultValue="0cm"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-column-sep"> + <element name="style:column-sep"> + <ref name="style-column-sep-attlist"/> + </element> +</define> +<define name="style-column-sep-attlist" combine="interleave"> + <optional> + <attribute name="style:style" a:defaultValue="solid"> + <choice> + <value>none</value> + <value>solid</value> + <value>dotted</value> + <value>dashed</value> + <value>dot-dashed</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-column-sep-attlist" combine="interleave"> + <attribute name="style:width"> + <ref name="length"/> + </attribute> +</define> +<define name="style-column-sep-attlist" combine="interleave"> + <optional> + <attribute name="style:height" a:defaultValue="100%"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="style-column-sep-attlist" combine="interleave"> + <optional> + <attribute name="style:vertical-align" a:defaultValue="top"> + <choice> + <value>top</value> + <value>middle</value> + <value>bottom</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-column-sep-attlist" combine="interleave"> + <optional> + <attribute name="style:color" a:defaultValue="#000000"> + <ref name="color"/> + </attribute> + </optional> +</define> +<define name="style-section-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:protect" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-section-properties-attlist" combine="interleave"> + <optional> + <attribute name="text:dont-balance-text-columns"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-section-properties-attlist" combine="interleave"> + <ref name="common-writing-mode-attlist"/> +</define> +<define name="style-section-properties-elements" combine="interleave"> + <zeroOrMore> + <ref name="text-notes-configuration"/> + </zeroOrMore> +</define> +<define name="style-table-properties"> + <element name="style:table-properties"> + <ref name="style-table-properties-content"/> + </element> +</define> + +<define name="style-table-properties-content"> + <ref name="style-properties-content"/> +</define> + +<define name="style-table-properties-content-strict"> + <ref name="style-table-properties-attlist"/> + <ref name="style-table-properties-elements"/> +</define> +<define name="style-table-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:width"> + <ref name="positiveLength"/> + </attribute> + </optional> + <optional> + <attribute name="style:rel-width"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="style-table-properties-attlist" combine="interleave"> + <optional> + <attribute name="table:align"> + <choice> + <value>left</value> + <value>center</value> + <value>right</value> + <value>margins</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-table-properties-attlist" combine="interleave"> + <ref name="common-horizontal-margin-attlist"/> +</define> +<define name="style-table-properties-attlist" combine="interleave"> + <ref name="common-vertical-margin-attlist"/> +</define> +<define name="style-table-properties-attlist" combine="interleave"> + <ref name="common-margin-attlist"/> +</define> +<define name="style-table-properties-attlist" combine="interleave"> + <ref name="common-page-number-attlist"/> +</define> +<define name="style-table-properties-attlist" combine="interleave"> + <ref name="common-break-attlist"/> +</define> +<define name="style-table-properties-attlist" combine="interleave"> + <ref name="common-background-color-attlist"/> +</define> +<define name="style-table-properties-elements" combine="interleave"> + <ref name="style-background-image"/> +</define> +<define name="style-table-properties-attlist" combine="interleave"> + <ref name="common-shadow-attlist"/> +</define> +<define name="style-table-properties-attlist" combine="interleave"> + <ref name="common-keep-with-next-attlist"/> +</define> +<define name="style-table-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:may-break-between-rows"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-table-properties-attlist" combine="interleave"> + <optional> + <attribute name="table:border-model"> + <choice> + <value>collapsing</value> + <value>separating</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-table-properties-attlist" combine="interleave"> + <ref name="common-writing-mode-attlist"/> +</define> +<define name="style-table-properties-attlist" combine="interleave"> + <optional> + <attribute name="table:display"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-table-column-properties"> + <element name="style:table-column-properties"> + <ref name="style-table-column-properties-content"/> + </element> +</define> + +<define name="style-table-column-properties-content"> + <ref name="style-properties-content"/> +</define> + +<define name="style-table-column-properties-content-strict"> + <ref name="style-table-column-properties-attlist"/> + <ref name="style-table-column-properties-elements"/> +</define> + +<define name="style-table-column-properties-elements"> + <empty/> +</define> +<define name="style-table-column-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:column-width"> + <ref name="positiveLength"/> + </attribute> + </optional> + <optional> + <attribute name="style:rel-column-width"> + <ref name="relativeLength"/> + </attribute> + </optional> +</define> +<define name="style-table-column-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:use-optimal-column-width"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-table-column-properties-attlist" combine="interleave"> + <ref name="common-break-attlist"/> +</define> +<define name="style-table-row-properties"> + <element name="style:table-row-properties"> + <ref name="style-table-row-properties-content"/> + </element> +</define> + +<define name="style-table-row-properties-content"> + <ref name="style-properties-content"/> +</define> + +<define name="style-table-row-properties-content-strict"> + <ref name="style-table-row-properties-attlist"/> + <ref name="style-table-row-properties-elements"/> +</define> +<define name="style-table-row-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:row-height"> + <ref name="positiveLength"/> + </attribute> + </optional> + <optional> + <attribute name="style:min-row-height"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> +</define> +<define name="style-table-row-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:use-optimal-row-height"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-table-row-properties-attlist" combine="interleave"> + <ref name="common-background-color-attlist"/> +</define> +<define name="style-table-row-properties-elements" combine="interleave"> + <ref name="style-background-image"/> +</define> +<define name="style-table-row-properties-attlist" combine="interleave"> + <ref name="common-break-attlist"/> +</define> +<define name="style-table-row-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:keep-together"> + <choice> + <value>auto</value> + <value>always</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-table-cell-properties"> + <element name="style:table-cell-properties"> + <ref name="style-table-cell-properties-content"/> + </element> +</define> + +<define name="style-table-cell-properties-content"> + <ref name="style-properties-content"/> +</define> + +<define name="style-table-cell-properties-content-strict"> + <ref name="style-table-cell-properties-attlist"/> + <ref name="style-table-cell-properties-elements"/> +</define> +<define name="style-table-cell-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:vertical-align"> + <choice> + <value>top</value> + <value>middle</value> + <value>bottom</value> + <value>automatic</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-table-cell-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:text-align-source"> + <choice> + <value>fix</value> + <value>value-type</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-table-cell-properties-attlist" combine="interleave"> + <ref name="common-style-direction-attlist"/> +</define> + +<define name="common-style-direction-attlist"> + <optional> + <attribute name="style:direction"> + <choice> + <value>ltr</value> + <value>ttb</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-table-cell-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:glyph-orientation-vertical"> + <choice> + <value>auto</value> + <value>0</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-table-cell-properties-attlist" combine="interleave"> + <ref name="common-shadow-attlist"/> +</define> +<define name="style-table-cell-properties-attlist" combine="interleave"> + <ref name="common-background-color-attlist"/> +</define> +<define name="style-table-cell-properties-elements" combine="interleave"> + <ref name="style-background-image"/> +</define> +<define name="style-table-cell-properties-attlist" combine="interleave"> + <ref name="common-border-attlist"/> +</define> +<define name="style-table-cell-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:diagonal-tl-br"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="style:diagonal-tl-br-widths"> + <ref name="borderWidths"/> + </attribute> + </optional> + <optional> + <attribute name="style:diagonal-bl-tr"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="style:diagonal-bl-tr-widths"> + <ref name="borderWidths"/> + </attribute> + </optional> +</define> +<define name="style-table-cell-properties-attlist" combine="interleave"> + <ref name="common-border-line-width-attlist"/> +</define> +<define name="style-table-cell-properties-attlist" combine="interleave"> + <ref name="common-padding-attlist"/> +</define> +<define name="style-table-cell-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:wrap-option"> + <choice> + <value>no-wrap</value> + <value>wrap</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-table-cell-properties-attlist" combine="interleave"> + <ref name="common-rotation-angle-attlist"/> +</define> + +<define name="common-rotation-angle-attlist"> + <optional> + <attribute name="style:rotation-angle"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="style-table-cell-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:rotation-align"> + <choice> + <value>none</value> + <value>bottom</value> + <value>top</value> + <value>center</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-table-cell-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:cell-protect"> + <choice> + <value>none</value> + <value>hidden-and-protected</value> + <list> + <oneOrMore> + <choice> + <value>protected</value> + <value>formula-hidden</value> + </choice> + </oneOrMore> + </list> + </choice> + </attribute> + </optional> +</define> +<define name="style-table-cell-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:print-content"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-table-cell-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:decimal-places"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="style-table-cell-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:repeat-content"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-table-cell-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:shrink-to-fit"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-list-level-properties"> + <element name="style:list-level-properties"> + <ref name="style-list-level-properties-content"/> + </element> +</define> + +<define name="style-list-level-properties-content"> + <ref name="style-properties-content"/> +</define> + +<define name="style-list-level-properties-content-strict"> + <ref name="style-list-level-properties-attlist"/> + <ref name="style-list-level-properties-elements"/> +</define> + +<define name="style-list-level-properties-elements"> + <empty/> +</define> +<define name="style-list-level-properties-attlist" combine="interleave"> + <ref name="common-text-align"/> +</define> +<define name="style-list-level-properties-attlist" combine="interleave"> + <optional> + <attribute name="text:space-before"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> +</define> +<define name="style-list-level-properties-attlist" combine="interleave"> + <optional> + <attribute name="text:min-label-width"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> +</define> +<define name="style-list-level-properties-attlist" combine="interleave"> + <optional> + <attribute name="text:min-label-distance"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> +</define> +<define name="style-list-level-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:font-name"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="style-list-level-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:width"> + <ref name="positiveLength"/> + </attribute> + </optional> + <optional> + <attribute name="fo:height"> + <ref name="positiveLength"/> + </attribute> + </optional> +</define> +<define name="style-list-level-properties-attlist" combine="interleave"> + <ref name="common-vertical-rel-attlist"/> + <ref name="common-vertical-pos-attlist"/> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:stroke"> + <choice> + <value>none</value> + <value>dash</value> + <value>solid</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:stroke-dash"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:stroke-dash-names"> + <ref name="styleNameRefs"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="svg:stroke-width"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="svg:stroke-color"> + <ref name="color"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:marker-start"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:marker-end"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:marker-start-width"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:marker-end-width"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:marker-start-center"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:marker-end-center"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="svg:stroke-opacity"> + <choice> + <data type="double"> + <param name="minInclusive">0</param> + <param name="maxInclusive">1</param> + </data> + <ref name="percent"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:stroke-linejoin"> + <choice> + <value>miter</value> + <value>round</value> + <value>bevel</value> + <value>middle</value> + <value>none</value> + <value>inherit</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-fill-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:fill"> + <choice> + <value>none</value> + <value>solid</value> + <value>bitmap</value> + <value>gradient</value> + <value>hatch</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-fill-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:fill-color"> + <ref name="color"/> + </attribute> + </optional> +</define> +<define name="style-graphic-fill-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:secondary-fill-color"> + <ref name="color"/> + </attribute> + </optional> +</define> +<define name="style-graphic-fill-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:fill-gradient-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="style-graphic-fill-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:gradient-step-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="style-graphic-fill-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:fill-hatch-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="style-graphic-fill-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:fill-hatch-solid"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-fill-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:fill-image-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="style-graphic-fill-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:repeat"> + <choice> + <value>no-repeat</value> + <value>repeat</value> + <value>stretch</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-fill-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:fill-image-width"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="draw:fill-image-height"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-fill-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:fill-image-ref-point-x"> + <ref name="percent"/> + </attribute> + </optional> + <optional> + <attribute name="draw:fill-image-ref-point-y"> + <ref name="percent"/> + </attribute> + </optional> + <optional> + <attribute name="draw:fill-image-ref-point"> + <choice> + <value>top-left</value> + <value>top</value> + <value>top-right</value> + <value>left</value> + <value>center</value> + <value>right</value> + <value>bottom-left</value> + <value>bottom</value> + <value>bottom-right</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-fill-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:tile-repeat-offset"/> + </optional> +</define> +<define name="style-graphic-fill-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:opacity"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="style-graphic-fill-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:opacity-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> +</define> +<define name="style-graphic-fill-properties-attlist" combine="interleave"> + <optional> + <attribute name="svg:fill-rule"> + <choice> + <value>nonzero</value> + <value>evenodd</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:symbol-color"> + <ref name="color"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="text:animation"> + <choice> + <value>none</value> + <value>scroll</value> + <value>alternate</value> + <value>slide</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="text:animation-direction"> + <choice> + <value>left</value> + <value>right</value> + <value>up</value> + <value>down</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="text:animation-start-inside"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="text:animation-stop-inside"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="text:animation-repeat"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="text:animation-delay"> + <ref name="duration"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="text:animation-steps"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:auto-grow-width"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="draw:auto-grow-height"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:fit-to-size"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:fit-to-contour"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:textarea-vertical-align"> + <choice> + <value>top</value> + <value>middle</value> + <value>bottom</value> + <value>justify</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:textarea-horizontal-align"> + <choice> + <value>left</value> + <value>center</value> + <value>right</value> + <value>justify</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:wrap-option"> + <choice> + <value>no-wrap</value> + <value>wrap</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-elements" combine="interleave"> + <optional> + <ref name="text-list-style"/> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:color-mode"> + <choice> + <value>greyscale</value> + <value>mono</value> + <value>watermark</value> + <value>standard</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:color-inversion"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:luminance"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:contrast"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:gamma"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:red"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:green"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:blue"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:image-opacity"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:shadow"> + <choice> + <value>visible</value> + <value>hidden</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:shadow-offset-x"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="draw:shadow-offset-y"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:shadow-color"> + <ref name="color"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:shadow-opacity"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:start-line-spacing-horizontal"> + <ref name="distance"/> + </attribute> + </optional> + <optional> + <attribute name="draw:start-line-spacing-vertical"> + <ref name="distance"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:end-line-spacing-horizontal"> + <ref name="distance"/> + </attribute> + </optional> + <optional> + <attribute name="draw:end-line-spacing-vertical"> + <ref name="distance"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:line-distance"> + <ref name="distance"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:guide-overhang"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:guide-distance"> + <ref name="distance"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:start-guide"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:end-guide"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:placing"> + <choice> + <value>below</value> + <value>above</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:parallel"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:measure-align"> + <choice> + <value>automatic</value> + <value>left-outside</value> + <value>inside</value> + <value>right-outside</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="draw:measure-vertical-align"> + <choice> + <value>automatic</value> + <value>above</value> + <value>below</value> + <value>center</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:unit"> + <choice> + <value>automatic</value> + <value>mm</value> + <value>cm</value> + <value>m</value> + <value>km</value> + <value>pt</value> + <value>pc</value> + <value>inch</value> + <value>ft</value> + <value>mi</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:show-unit"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:decimal-places"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:caption-type"> + <choice> + <value>straight-line</value> + <value>angled-line</value> + <value>angled-connector-line</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:caption-angle-type"> + <choice> + <value>fixed</value> + <value>free</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:caption-angle"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:caption-gap"> + <ref name="distance"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:caption-escape-direction"> + <choice> + <value>horizontal</value> + <value>vertical</value> + <value>auto</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:caption-escape"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:caption-line-length"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:caption-fit-line-length"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:horizontal-segments"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:vertical-segments"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:edge-rounding"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:edge-rounding-mode"> + <choice> + <value>correct</value> + <value>attractive</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:back-scale"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:depth"> + <ref name="length"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:backface-culling"> + <choice> + <value>enabled</value> + <value>disabled</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:end-angle"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:close-front"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:close-back"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:lighting-mode"> + <choice> + <value>standard</value> + <value>double-sided</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:normals-kind"> + <choice> + <value>object</value> + <value>flat</value> + <value>sphere</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:normals-direction"> + <choice> + <value>normal</value> + <value>inverse</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:texture-generation-mode-x"> + <choice> + <value>object</value> + <value>parallel</value> + <value>sphere</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="dr3d:texture-generation-mode-y"> + <choice> + <value>object</value> + <value>parallel</value> + <value>sphere</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:texture-kind"> + <choice> + <value>luminance</value> + <value>intensity</value> + <value>color</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:texture-filter"> + <choice> + <value>enabled</value> + <value>disabled</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:texture-mode"> + <choice> + <value>replace</value> + <value>modulate</value> + <value>blend</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:ambient-color"> + <ref name="color"/> + </attribute> + </optional> + <optional> + <attribute name="dr3d:emissive-color"> + <ref name="color"/> + </attribute> + </optional> + <optional> + <attribute name="dr3d:specular-color"> + <ref name="color"/> + </attribute> + </optional> + <optional> + <attribute name="dr3d:diffuse-color"> + <ref name="color"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:shininess"> + <ref name="percent"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="dr3d:shadow"> + <choice> + <value>visible</value> + <value>hidden</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <ref name="common-draw-rel-size-attlist"/> + <optional> + <attribute name="fo:min-width"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:min-height"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:max-height"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="fo:max-width"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <ref name="common-horizontal-margin-attlist"/> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <ref name="common-vertical-margin-attlist"/> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <ref name="common-margin-attlist"/> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:print-content"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:protect"> + <choice> + <value>none</value> + <list> + <oneOrMore> + <choice> + <value>content</value> + <value>position</value> + <value>size</value> + </choice> + </oneOrMore> + </list> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:horizontal-pos"> + <choice> + <value>left</value> + <value>center</value> + <value>right</value> + <value>from-left</value> + <value>inside</value> + <value>outside</value> + <value>from-inside</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="svg:x"> + <ref name="coordinate"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:horizontal-rel"> + <choice> + <value>page</value> + <value>page-content</value> + <value>page-start-margin</value> + <value>page-end-margin</value> + <value>frame</value> + <value>frame-content</value> + <value>frame-start-margin</value> + <value>frame-end-margin</value> + <value>paragraph</value> + <value>paragraph-content</value> + <value>paragraph-start-margin</value> + <value>paragraph-end-margin</value> + <value>char</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <ref name="common-vertical-pos-attlist"/> +</define> + +<define name="common-vertical-pos-attlist"> + <optional> + <attribute name="style:vertical-pos"> + <choice> + <value>top</value> + <value>middle</value> + <value>bottom</value> + <value>from-top</value> + <value>below</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="svg:y"> + <ref name="coordinate"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <ref name="common-vertical-rel-attlist"/> +</define> + +<define name="common-vertical-rel-attlist"> + <optional> + <attribute name="style:vertical-rel"> + <choice> + <value>page</value> + <value>page-content</value> + <value>frame</value> + <value>frame-content</value> + <value>paragraph</value> + <value>paragraph-content</value> + <value>char</value> + <value>line</value> + <value>baseline</value> + <value>text</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <ref name="common-text-anchor-attlist"/> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <ref name="common-border-attlist"/> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <ref name="common-border-line-width-attlist"/> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <ref name="common-padding-attlist"/> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <ref name="common-shadow-attlist"/> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <ref name="common-background-color-attlist"/> +</define> +<define name="style-graphic-properties-elements" combine="interleave"> + <ref name="style-background-image"/> +</define> +<define name="style-graphic-properties-elements" combine="interleave"> + <ref name="style-columns"/> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:editable"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:wrap"> + <choice> + <value>none</value> + <value>left</value> + <value>right</value> + <value>parallel</value> + <value>dynamic</value> + <value>run-through</value> + <value>biggest</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:wrap-dynamic-threshold"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:number-wrapped-paragraphs"> + <choice> + <value>no-limit</value> + <ref name="positiveInteger"/> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:wrap-contour"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:wrap-contour-mode"> + <choice> + <value>full</value> + <value>outside</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:run-through"> + <choice> + <value>foreground</value> + <value>background</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:flow-with-text"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:overflow-behavior"> + <choice> + <value>clip</value> + <value>auto-create-new-frame</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="style:mirror"> + <choice> + <value>none</value> + <value>vertical</value> + <ref name="horizontal-mirror"/> + <list> + <value>vertical</value> + <ref name="horizontal-mirror"/> + </list> + <list> + <ref name="horizontal-mirror"/> + <value>vertical</value> + </list> + </choice> + </attribute> + </optional> +</define> + +<define name="horizontal-mirror"> + <choice> + <value>horizontal</value> + <value>horizontal-on-odd</value> + <value>horizontal-on-even</value> + </choice> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="fo:clip"> + <!-- The attribute value must match the one XSL's clip --> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:wrap-influence-on-position" + a:defaultValue="iterative"> + <choice> + <value>iterative</value> + <value>once-concurrent</value> + <value>once-successive</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <ref name="common-writing-mode-attlist"/> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:frame-display-scrollbar"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:frame-display-border"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:frame-margin-horizontal"> + <ref name="nonNegativePixelLength"/> + </attribute> + </optional> + <optional> + <attribute name="draw:frame-margin-vertical"> + <ref name="nonNegativePixelLength"/> + </attribute> + </optional> +</define> + +<define name="nonNegativePixelLength"> + <data type="string"> + <param name="pattern">([0-9]+(\.[0-9]*)?|\.[0-9]+)(px)</param> + </data> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:visible-area-left"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> + <optional> + <attribute name="draw:visible-area-top"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> + <optional> + <attribute name="draw:visible-area-width"> + <ref name="positiveLength"/> + </attribute> + </optional> + <optional> + <attribute name="draw:visible-area-height"> + <ref name="positiveLength"/> + </attribute> + </optional> +</define> +<define name="style-graphic-properties-attlist" combine="interleave"> + <optional> + <attribute name="draw:ole-draw-aspect"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties"> + <element name="style:chart-properties"> + <ref name="style-chart-properties-content"/> + </element> +</define> + +<define name="style-chart-properties-content"> + <ref name="style-properties-content"/> +</define> + +<define name="style-chart-properties-content-strict"> + <ref name="style-chart-properties-attlist"/> + <ref name="style-chart-properties-elements"/> +</define> + +<define name="style-chart-properties-elements"> + <empty/> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:scale-text" a:defaultValue="true"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:three-dimensional"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:deep"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <choice> + <attribute name="chart:symbol-type"> + <value>none</value> + </attribute> + <attribute name="chart:symbol-type"> + <value>automatic</value> + </attribute> + <group> + <attribute name="chart:symbol-type"> + <value>named-symbol</value> + </attribute> + <attribute name="chart:symbol-name"> + <choice> + <value>square</value> + <value>diamond</value> + <value>arrow-down</value> + <value>arrow-up</value> + <value>arrow-right</value> + <value>arrow-left</value> + <value>bow-tie</value> + <value>hourglass</value> + <value>circle</value> + <value>star</value> + <value>x</value> + <value>plus</value> + <value>asterisk</value> + <value>horizontal-bar</value> + <value>vertical-bar</value> + </choice> + </attribute> + </group> + <group> + <attribute name="chart:symbol-type"> + <value>image</value> + </attribute> + <element name="chart:symbol-image"> + <attribute name="xlink:href"> + <ref name="anyURI"/> + </attribute> + </element> + </group> + <empty/> + </choice> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:symbol-width"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> + <optional> + <attribute name="chart:symbol-height"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:vertical" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:connect-bars" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:gap-width"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="chart:overlap"> + <ref name="integer"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:japanese-candle-stick" + a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:interpolation" a:defaultValue="none"> + <choice> + <value>none</value> + <value>cubic-spline</value> + <value>b-spline</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="chart:spline-order" a:defaultValue="2"> + <ref name="positiveInteger"/> + </attribute> + </optional> + <optional> + <attribute name="chart:spline-resolution" a:defaultValue="20"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:pie-offset" a:defaultValue="0"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:lines" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:solid-type" a:defaultValue="cuboid"> + <choice> + <value>cuboid</value> + <value>cylinder</value> + <value>cone</value> + <value>pyramid</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:stacked" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:percentage" a:defaultValue="false"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:link-data-style-to-source"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:visible"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:logarithmic"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:maximum"> + <ref name="double"/> + </attribute> + </optional> + <optional> + <attribute name="chart:minimum"> + <ref name="double"/> + </attribute> + </optional> + <optional> + <attribute name="chart:origin"> + <ref name="double"/> + </attribute> + </optional> + <optional> + <attribute name="chart:interval-major"> + <ref name="double"/> + </attribute> + </optional> + <optional> + <attribute name="chart:interval-minor-divisor"> + <ref name="positiveInteger"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:tick-marks-major-inner"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:tick-marks-major-outer"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:tick-marks-minor-inner"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:tick-marks-minor-outer"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:display-label"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:text-overlap"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:line-break"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:label-arrangement" + a:defaultValue="side-by-side"> + <choice> + <value>side-by-side</value> + <value>stagger-even</value> + <value>stagger-odd</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <ref name="common-style-direction-attlist"/> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <ref name="common-rotation-angle-attlist"/> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:data-label-number"> + <choice> + <value>none</value> + <value>value</value> + <value>percentage</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:data-label-text"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:data-label-symbol"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:mean-value"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:error-category" a:defaultValue="none"> + <choice> + <value>none</value> + <value>variance</value> + <value>standard-deviation</value> + <value>percentage</value> + <value>error-margin</value> + <value>constant</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:error-percentage"> + <ref name="double"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:error-margin"> + <ref name="double"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:error-lower-limit"> + <ref name="double"/> + </attribute> + </optional> + <optional> + <attribute name="chart:error-upper-limit"> + <ref name="double"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:error-upper-indicator"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:error-lower-indicator"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:series-source" a:defaultValue="columns"> + <choice> + <value>columns</value> + <value>rows</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-chart-properties-attlist" combine="interleave"> + <optional> + <attribute name="chart:regression-type" a:defaultValue="none"> + <choice> + <value>none</value> + <value>linear</value> + <value>logarithmic</value> + <value>exponential</value> + <value>power</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-drawing-page-properties-attlist" + combine="interleave"> + <optional> + <attribute name="presentation:transition-type"> + <choice> + <value>manual</value> + <value>automatic</value> + <value>semi-automatic</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-drawing-page-properties-attlist" + combine="interleave"> + <optional> + <attribute name="presentation:transition-style"> + <choice> + <value>none</value> + <value>fade-from-left</value> + <value>fade-from-top</value> + <value>fade-from-right</value> + <value>fade-from-bottom</value> + <value>fade-from-upperleft</value> + <value>fade-from-upperright</value> + <value>fade-from-lowerleft</value> + <value>fade-from-lowerright</value> + <value>move-from-left</value> + <value>move-from-top</value> + <value>move-from-right</value> + <value>move-from-bottom</value> + <value>move-from-upperleft</value> + <value>move-from-upperright</value> + <value>move-from-lowerleft</value> + <value>move-from-lowerright</value> + <value>uncover-to-left</value> + <value>uncover-to-top</value> + <value>uncover-to-right</value> + <value>uncover-to-bottom</value> + <value>uncover-to-upperleft</value> + <value>uncover-to-upperright</value> + <value>uncover-to-lowerleft</value> + <value>uncover-to-lowerright</value> + <value>fade-to-center</value> + <value>fade-from-center</value> + <value>vertical-stripes</value> + <value>horizontal-stripes</value> + <value>clockwise</value> + <value>counterclockwise</value> + <value>open-vertical</value> + <value>open-horizontal</value> + <value>close-vertical</value> + <value>close-horizontal</value> + <value>wavyline-from-left</value> + <value>wavyline-from-top</value> + <value>wavyline-from-right</value> + <value>wavyline-from-bottom</value> + <value>spiralin-left</value> + <value>spiralin-right</value> + <value>spiralout-left</value> + <value>spiralout-right</value> + <value>roll-from-top</value> + <value>roll-from-left</value> + <value>roll-from-right</value> + <value>roll-from-bottom</value> + <value>stretch-from-left</value> + <value>stretch-from-top</value> + <value>stretch-from-right</value> + <value>stretch-from-bottom</value> + + <value>vertical-lines</value> + <value>horizontal-lines</value> + <value>dissolve</value> + <value>random</value> + <value>vertical-checkerboard</value> + <value>horizontal-checkerboard</value> + <value>interlocking-horizontal-left</value> + <value>interlocking-horizontal-right</value> + <value>interlocking-vertical-top</value> + <value>interlocking-vertical-bottom</value> + <value>fly-away</value> + <value>open</value> + <value>close</value> + <value>melt</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-drawing-page-properties-attlist" + combine="interleave"> + <optional> + <attribute name="presentation:transition-speed"> + <ref name="presentationSpeeds"/> + </attribute> + </optional> +</define> +<define name="style-drawing-page-properties-attlist " combine="interleave"> + <optional> + <attribute name="smil:type"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="style-drawing-page-properties-attlist" combine="interleave"> + <optional> + <attribute name="smil:subtype"> + <ref name="string"/> + </attribute> + </optional> +</define> +<define name="style-drawing-page-properties-attlist" combine="interleave"> + <optional> + <attribute name="smil:direction" a:defaultValue="forward"> + <choice> + <value>forward</value> + <value>reverse</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-drawing-page-properties-attlist" combine="interleave"> + <optional> + <attribute name="smil:fadeColor"> + <ref name="color"/> + </attribute> + </optional> +</define> +<define name="style-drawing-page-properties-attlist" + combine="interleave"> + <optional> + <attribute name="presentation:duration"> + <ref name="duration"/> + </attribute> + </optional> +</define> +<define name="style-drawing-page-properties-attlist" + combine="interleave"> + <optional> + <attribute name="presentation:visibility"> + <choice> + <value>visible</value> + <value>hidden</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-drawing-page-properties-elements" + combine="interleave"> + <optional> + <ref name="presentation-sound"/> + </optional> +</define> +<define name="style-drawing-page-properties-attlist" + combine="interleave"> + <optional> + <attribute name="draw:background-size"> + <choice> + <value>full</value> + <value>border</value> + </choice> + </attribute> + </optional> +</define> +<define name="style-drawing-page-properties-attlist" + combine="interleave"> + <optional> + <attribute name="presentation:background-objects-visible"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-drawing-page-properties-attlist" + combine="interleave"> + <optional> + <attribute name="presentation:background-visible"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-drawing-page-properties-attlist" combine="interleave"> + <optional> + <attribute name="presentation:display-header"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-drawing-page-properties-attlist" combine="interleave"> + <optional> + <attribute name="presentation:display-footer"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-drawing-page-properties-attlist" combine="interleave"> + <optional> + <attribute name="presentation:display-page-number"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="style-drawing-page-properties-attlist" combine="interleave"> + <optional> + <attribute name="presentation:display-date-time"> + <ref name="boolean"/> + </attribute> + </optional> +</define> +<define name="string"> + <data type="string"/> +</define> +<define name="date"> + <data type="date"/> +</define> +<define name="time"> + <data type="time"/> +</define> +<define name="dateTime"> + <data type="dateTime"/> +</define> +<define name="duration"> + <data type="duration"/> +</define> +<define name="integer"> + <data type="integer"/> +</define> +<define name="nonNegativeInteger"> + <data type="nonNegativeInteger"/> +</define> +<define name="positiveInteger"> + <data type="positiveInteger"/> +</define> +<define name="double"> + <data type="double"/> +</define> +<define name="anyURI"> + <data type="anyURI"/> +</define> +<define name="base64Binary"> + <data type="base64Binary"/> +</define> +<define name="ID"> + <data type="ID"/> +</define> +<define name="IDREF"> + <data type="IDREF"/> +</define> +<define name="IDREFS"> + <data type="IDREFS"/> +</define> +<define name="boolean"> + <choice> + <value>true</value> + <value>false</value> + </choice> +</define> +<define name="dateOrDateTime"> + <choice> + <data type="date"/> + <data type="dateTime"/> + </choice> +</define> +<define name="timeOrDateTime"> + <choice> + <data type="time"/> + <data type="dateTime"/> + </choice> +</define> +<define name="language"> + <data type="language"/> +</define> +<define name="countryCode"> + <data type="token"> + <param name="pattern">[A-Za-z0-9]{1,8}</param> + </data> +</define> +<define name="languageCode"> + <data type="token"> + <param name="pattern">[A-Za-z]{1,8}</param> + </data> +</define> +<define name="character"> + <data type="string"> + <param name="length">1</param> + </data> +</define> +<define name="length"> + <data type="string"> + <param name="pattern">-?([0-9]+(\.[0-9]*)?|\.[0-9]+)((cm)|(mm)|(in)|(pt)|(pc)|(px))</param> + + </data> +</define> +<define name="nonNegativeLength"> + <data type="string"> + <param name="pattern">([0-9]+(\.[0-9]*)?|\.[0-9]+)((cm)|(mm)|(in)|(pt)|(pc)|(px))</param> + + </data> +</define> +<define name="positiveLength"> + <data type="string"> + <param name="pattern">([0-9]*[1-9][0-9]*(\.[0-9]*)?|0+\.[0-9]*[1-9][0-9]*|\.[0-9]*[1-9][0-9]*)((cm)|(mm)|(in)|(pt)|(pc)|(px))</param> + + </data> +</define> +<define name="percent"> + <data type="string"> + <param name="pattern">-?([0-9]+(\.[0-9]*)?|\.[0-9]+)%</param> + </data> +</define> +<define name="relativeLength"> + <data type="string"> + <param name="pattern">[0-9]+\*</param> + </data> +</define> +<define name="coordinate"> + <ref name="length"/> +</define> +<define name="distance"> + <ref name="length"/> +</define> +<define name="color"> + <data type="string"> + <param name="pattern">#[0-9a-fA-F]{6}</param> + </data> +</define> +<define name="styleName"> + <data type="NCName"/> +</define> +<define name="styleNameRef"> + <choice> + <data type="NCName"/> + <empty/> + </choice> +</define> +<define name="styleNameRefs"> + <list> + <zeroOrMore> + <data type="NCName"/> + </zeroOrMore> + </list> +</define> +<define name="variableName"> + <data type="string"/> +</define> +<define name="formula"> + <!-- A formula should start with a namespace prefix, --> + <!-- but has no restrictions--> + <data type="string"/> +</define> + +<define name="targetFrameName"> + <choice> + <value>_self</value> + <value>_blank</value> + <value>_parent</value> + <value>_top</value> + <ref name="string"/> + </choice> +</define> + +<define name="valueType"> + <choice> + <value>float</value> + <value>time</value> + <value>date</value> + <value>percentage</value> + <value>currency</value> + <value>boolean</value> + <value>string</value> + </choice> +</define> + +<define name="points"> + <data type="string"> + <param name="pattern">-?[0-9]+,-?[0-9]+([ ]+-?[0-9]+,-?[0-9]+)*</param> + </data> +</define> +<define name="pathData"> + <data type="string"/> +</define> + +<define name="vector3D"> + <data type="string"> + <param name="pattern">\([ ]*-?([0-9]+(\.[0-9]*)?|\.[0-9]+)([ ]+-?([0-9]+(\.[0-9]*)?|\.[0-9]+)){2}[ ]*\)</param> + + </data> +</define> + +<define name="namespacedToken"> + <data type="string"> + <param name="pattern">[0-9a-zA-Z_]+:[0-9a-zA-Z._\-]+</param> + </data> +</define> +<define name="anyAttListOrElements"> + <zeroOrMore> + <attribute> + <anyName/> + <text/> + </attribute> + </zeroOrMore> + <ref name="anyElements"/> +</define> +<define name="anyElements"> + <zeroOrMore> + <element> + <anyName/> + <mixed> + <ref name="anyAttListOrElements"/> + </mixed> + </element> + </zeroOrMore> +</define> +</grammar> diff --git a/schema/odf1.1/OpenDocument-strict-schema-v1.1.rng b/schema/odf1.1/OpenDocument-strict-schema-v1.1.rng new file mode 100644 index 000000000000..e77fe4ba6efd --- /dev/null +++ b/schema/odf1.1/OpenDocument-strict-schema-v1.1.rng @@ -0,0 +1,61 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + OASIS OpenDocument v1.1 + OASIS Standard, 1 Feb 2007 + Strict Relax-NG Schema + + $Id$ + + © 2002-2007 OASIS Open + © 1999-2007 Sun Microsystems, Inc. +--> + +<grammar xmlns="http://relaxng.org/ns/structure/1.0"> + <include href="OpenDocument-schema-v1.1.rng"> + <define name="office-meta-content"> + <ref name="office-meta-content-strict"/> + </define> + <define name="style-page-layout-properties-content"> + <ref name="style-page-layout-properties-content-strict"/> + </define> + <define name="style-header-footer-properties-content"> + <ref name="style-header-footer-properties-content-strict"/> + </define> + <define name="style-drawing-page-properties-content"> + <ref name="style-drawing-page-properties-content-strict"/> + </define> + <define name="style-text-properties-content"> + <ref name="style-text-properties-content-strict"/> + </define> + <define name="style-paragraph-properties-content"> + <ref name="style-paragraph-properties-content-strict"/> + </define> + <define name="style-ruby-properties-content"> + <ref name="style-ruby-properties-content-strict"/> + </define> + <define name="style-section-properties-content"> + <ref name="style-section-properties-content-strict"/> + </define> + <define name="style-list-level-properties-content"> + <ref name="style-list-level-properties-content-strict"/> + </define> + <define name="style-table-properties-content"> + <ref name="style-table-properties-content-strict"/> + </define> + <define name="style-table-column-properties-content"> + <ref name="style-table-column-properties-content-strict"/> + </define> + <define name="style-table-row-properties-content"> + <ref name="style-table-row-properties-content-strict"/> + </define> + <define name="style-table-cell-properties-content"> + <ref name="style-table-cell-properties-content-strict"/> + </define> + <define name="style-graphic-properties-content"> + <ref name="style-graphic-properties-content-strict"/> + </define> + <define name="style-chart-properties-content"> + <ref name="style-chart-properties-content-strict"/> + </define> + </include> +</grammar> diff --git a/schema/odf1.2/OpenDocument-v1.2-os-dsig-schema.rng b/schema/odf1.2/OpenDocument-v1.2-os-dsig-schema.rng new file mode 100644 index 000000000000..baab69981e8d --- /dev/null +++ b/schema/odf1.2/OpenDocument-v1.2-os-dsig-schema.rng @@ -0,0 +1,84 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Open Document Format for Office Applications (OpenDocument) Version 1.2 + OASIS Standard, 29 September 2011 + Digital Signatures Relax-NG Schema + Source: http://docs.oasis-open.org/office/v1.2/os/ + Copyright (c) OASIS Open 2002-2011. All Rights Reserved. + + All capitalized terms in the following text have the meanings assigned to them + in the OASIS Intellectual Property Rights Policy (the "OASIS IPR Policy"). The + full Policy may be found at the OASIS website. + + This document and translations of it may be copied and furnished to others, and + derivative works that comment on or otherwise explain it or assist in its + implementation may be prepared, copied, published, and distributed, in whole or + in part, without restriction of any kind, provided that the above copyright + notice and this section are included on all such copies and derivative works. + However, this document itself may not be modified in any way, including by + removing the copyright notice or references to OASIS, except as needed for the + purpose of developing any document or deliverable produced by an OASIS + Technical Committee (in which case the rules applicable to copyrights, as set + forth in the OASIS IPR Policy, must be followed) or as required to translate it + into languages other than English. + + The limited permissions granted above are perpetual and will not be revoked by + OASIS or its successors or assigns. + + This document and the information contained herein is provided on an "AS IS" + basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT + LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT + INFRINGE ANY OWNERSHIP RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR + FITNESS FOR A PARTICULAR PURPOSE. +--> + +<grammar + xmlns="http://relaxng.org/ns/structure/1.0" + + datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes" + + xmlns:dsig="urn:oasis:names:tc:opendocument:xmlns:digitalsignature:1.0" + xmlns:ds="http://www.w3.org/2000/09/xmldsig#" +> +<start> + <choice> + <ref name="dsig-document-signatures"/> + </choice> +</start> +<define name="dsig-document-signatures"> + <element name="dsig:document-signatures"> + <ref name="dsig-document-signatures-attlist"/> + <oneOrMore> + <ref name="ds-signature"/> + </oneOrMore> + </element> +</define> +<define name="dsig-document-signatures-attlist"> + <attribute name="dsig:version"> + <value>1.2</value> + </attribute> +</define> +<define name="ds-signature"> + <element name="ds:Signature"> + <!-- The permitted content of this element is the permitted --> + <!-- content of the Signature element defined by W3C XML --> + <!-- Signature Syntax and Processing (Second Edition). --> + <!-- See OpenDocument v1.2 part 3, section 4.3. --> + <ref name="dsMarkup"/> + </element> +</define> +<define name="dsMarkup"> + <zeroOrMore> + <choice> + <attribute> + <anyName/> + </attribute> + <text/> + <element> + <anyName/> + <ref name="dsMarkup"/> + </element> + </choice> + </zeroOrMore> +</define> +</grammar> diff --git a/schema/odf1.2/OpenDocument-v1.2-os-manifest-schema.rng b/schema/odf1.2/OpenDocument-v1.2-os-manifest-schema.rng new file mode 100644 index 000000000000..af13a26c71ad --- /dev/null +++ b/schema/odf1.2/OpenDocument-v1.2-os-manifest-schema.rng @@ -0,0 +1,224 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Open Document Format for Office Applications (OpenDocument) Version 1.2 + OASIS Standard, 29 September 2011 + Manifest Relax-NG Schema + Source: http://docs.oasis-open.org/office/v1.2/os/ + Copyright (c) OASIS Open 2002-2011. All Rights Reserved. + + All capitalized terms in the following text have the meanings assigned to them + in the OASIS Intellectual Property Rights Policy (the "OASIS IPR Policy"). The + full Policy may be found at the OASIS website. + + This document and translations of it may be copied and furnished to others, and + derivative works that comment on or otherwise explain it or assist in its + implementation may be prepared, copied, published, and distributed, in whole or + in part, without restriction of any kind, provided that the above copyright + notice and this section are included on all such copies and derivative works. + However, this document itself may not be modified in any way, including by + removing the copyright notice or references to OASIS, except as needed for the + purpose of developing any document or deliverable produced by an OASIS + Technical Committee (in which case the rules applicable to copyrights, as set + forth in the OASIS IPR Policy, must be followed) or as required to translate it + into languages other than English. + + The limited permissions granted above are perpetual and will not be revoked by + OASIS or its successors or assigns. + + This document and the information contained herein is provided on an "AS IS" + basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT + LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT + INFRINGE ANY OWNERSHIP RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR + FITNESS FOR A PARTICULAR PURPOSE. +--> +<grammar + xmlns="http://relaxng.org/ns/structure/1.0" + + datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes" + + xmlns:manifest="urn:oasis:names:tc:opendocument:xmlns:manifest:1.0" +> +<start> + <choice> + <ref name="manifest"/> + </choice> +</start> +<define name="manifest"> + <element name="manifest:manifest"> + <ref name="manifest-attlist"/> + <oneOrMore> + <ref name="file-entry"/> + </oneOrMore> + </element> +</define> +<define name="manifest-attlist"> + <attribute name="manifest:version"> + <value>1.2</value> + </attribute> +</define> +<define name="file-entry"> + <element name="manifest:file-entry"> + <ref name="file-entry-attlist"/> + <optional> + <ref name="encryption-data"/> + </optional> + </element> +</define> +<define name="file-entry-attlist"> + <interleave> + <attribute name="manifest:full-path"> + <ref name="string"/> + </attribute> + <optional> + <attribute name="manifest:size"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <attribute name="manifest:media-type"> + <ref name="string"/> + </attribute> + <optional> + <attribute name="manifest:preferred-view-mode"> + <choice> + <value>edit</value> + <value>presentation-slide-show</value> + <value>read-only</value> + <ref name="namespacedToken"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="manifest:version"> + <ref name="string"/> + </attribute> + </optional> + </interleave> +</define> + +<define name="encryption-data"> + <element name="manifest:encryption-data"> + <ref name="encryption-data-attlist"/> + <ref name="algorithm"/> + <optional> + <ref name="start-key-generation"/> + </optional> + <ref name="key-derivation"/> + </element> +</define> +<define name="encryption-data-attlist"> + <interleave> + <attribute name="manifest:checksum-type"> + <choice> + <value>SHA1/1K</value> + <ref name="anyURI"/> + </choice> + </attribute> + <attribute name="manifest:checksum"> + <ref name="base64Binary"/> + </attribute> + </interleave> +</define> +<define name="algorithm"> + <element name="manifest:algorithm"> + <ref name="algorithm-attlist"/> + <ref name="anyElements"/> + </element> +</define> +<define name="algorithm-attlist"> + <interleave> + <attribute name="manifest:algorithm-name"> + <choice> + <value>Blowfish CFB</value> + <ref name="anyURI"/> + </choice> + </attribute> + <attribute name="manifest:initialisation-vector"> + <ref name="base64Binary"/> + </attribute> + </interleave> +</define> +<define name="anyAttListOrElements"> + <zeroOrMore> + <attribute> + <anyName/> + <text/> + </attribute> + </zeroOrMore> + <ref name="anyElements"/> +</define> +<define name="anyElements"> + <zeroOrMore> + <element> + <anyName/> + <mixed> + <ref name="anyAttListOrElements"/> + </mixed> + </element> + </zeroOrMore> +</define> +<define name="key-derivation"> + <element name="manifest:key-derivation"> + <ref name="key-derivation-attlist"/> + <empty/> + </element> +</define> +<define name="key-derivation-attlist"> + <interleave> + <attribute name="manifest:key-derivation-name"> + <choice> + <value>PBKDF2</value> + <ref name="anyURI"/> + </choice> + </attribute> + <attribute name="manifest:salt"> + <ref name="base64Binary"/> + </attribute> + <attribute name="manifest:iteration-count"> + <ref name="nonNegativeInteger"/> + </attribute> + <optional> + <attribute name="manifest:key-size"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + </interleave> +</define> +<define name="start-key-generation"> + <element name="manifest:start-key-generation"> + <ref name="start-key-generation-attlist"/> + <empty/> + </element> +</define> +<define name="start-key-generation-attlist"> + <interleave> + <attribute name="manifest:start-key-generation-name"> + <choice> + <value>SHA1</value> + <ref name="anyURI"/> + </choice> + </attribute> + <optional> + <attribute name="manifest:key-size"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + </interleave> +</define> +<define name="base64Binary"> + <data type="base64Binary"/> +</define> +<define name="namespacedToken"> + <data type="QName"> + <param name="pattern">[^:]+:[^:]+</param> + </data> +</define> +<define name="nonNegativeInteger"> + <data type="nonNegativeInteger"/> +</define> +<define name="string"> + <data type="string"/> +</define> +<define name="anyURI"> + <data type="anyURI"/> +</define> +</grammar> diff --git a/schema/odf1.2/OpenDocument-v1.2-os-metadata.owl b/schema/odf1.2/OpenDocument-v1.2-os-metadata.owl new file mode 100644 index 000000000000..a1eff11e4f18 --- /dev/null +++ b/schema/odf1.2/OpenDocument-v1.2-os-metadata.owl @@ -0,0 +1,86 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Open Document Format for Office Applications (OpenDocument) Version 1.2 + OASIS Standard, 29 September 2011 + OWL Metadata Manifest Description + Source: http://docs.oasis-open.org/office/v1.2/os/ + Copyright (c) OASIS Open 2002-2011. All Rights Reserved. + + All capitalized terms in the following text have the meanings assigned to them + in the OASIS Intellectual Property Rights Policy (the "OASIS IPR Policy"). The + full Policy may be found at the OASIS website. + + This document and translations of it may be copied and furnished to others, and + derivative works that comment on or otherwise explain it or assist in its + implementation may be prepared, copied, published, and distributed, in whole or + in part, without restriction of any kind, provided that the above copyright + notice and this section are included on all such copies and derivative works. + However, this document itself may not be modified in any way, including by + removing the copyright notice or references to OASIS, except as needed for the + purpose of developing any document or deliverable produced by an OASIS + Technical Committee (in which case the rules applicable to copyrights, as set + forth in the OASIS IPR Policy, must be followed) or as required to translate it + into languages other than English. + + The limited permissions granted above are perpetual and will not be revoked by + OASIS or its successors or assigns. + + This document and the information contained herein is provided on an "AS IS" + basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT + LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT + INFRINGE ANY OWNERSHIP RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR + FITNESS FOR A PARTICULAR PURPOSE. +--> + +<rdf:RDF + xmlns="http://www.w3.org/2000/01/rdf-schema#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:owl="http://www.w3.org/2002/07/owl#" + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:pkg="http://docs.oasis-open.org/ns/office/1.2/meta/pkg#" + xmlns:odf="http://docs.oasis-open.org/ns/office/1.2/meta/odf#"> + +<owl:Ontology rdf:about="http://docs.oasis-open.org/ns/office/1.2/meta/odf#"> + <owl:imports rdf:resource="http://docs.oasis-open.org/office/v1.2/os/OpenDocument-v1.2-os-package-metadata.owl" /> + <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing"/> + <dc:title xml:lang="en">Open Document Schema Metadata Manifest Ontology</dc:title> + <label xml:lang="en">ODF Schema Metadata Manifest</label> +</owl:Ontology> + +<owl:Class rdf:about="http://docs.oasis-open.org/ns/office/1.2/meta/odf#ContentFile"> + <label xml:lang="en">The OpenDocument Content File</label> + <comment xml:lang="en">The unique content.xml from the root path of the document</comment> + <subClassOf rdf:resource="http://docs.oasis-open.org/ns/office/1.2/meta/pkg#File"/> +</owl:Class> + +<owl:Class rdf:about="http://docs.oasis-open.org/ns/office/1.2/meta/odf#StylesFile"> + <label xml:lang="en">The OpenDocument Styles File</label> + <comment xml:lang="en">The unique styles.xml from the root path of the document</comment> + <subClassOf rdf:resource="http://docs.oasis-open.org/ns/office/1.2/meta/pkg#File"/> +</owl:Class> + +<owl:Class rdf:about="http://docs.oasis-open.org/ns/office/1.2/meta/odf#Element"> + <label xml:lang="en">OpenDocument Package ODF XML Element</label> + <subClassOf rdf:resource="http://docs.oasis-open.org/ns/office/1.2/meta/pkg#Element"/> +</owl:Class> + +<owl:Class rdf:about="urn:oasis:names:tc:opendocument:xmlns:text:1.0meta-field"> + <label xml:lang="en">OpenDocument Meta field Element</label> + <subClassOf rdf:resource="http://docs.oasis-open.org/ns/office/1.2/meta/odf#Element"/> +</owl:Class> + +<owl:DatatypeProperty rdf:about="http://docs.oasis-open.org/ns/office/1.2/meta/odf#prefix"> + <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#FunctionalProperty"/> + <domain rdf:resource="urn:oasis:names:tc:opendocument:xmlns:text:1.0meta-field"/> + <range rdf:resource="http://www.w3.org/2001/XMLSchema-datatypes#string"/> + <label xml:lang="en">has prefix</label> +</owl:DatatypeProperty> + +<owl:DatatypeProperty rdf:about="http://docs.oasis-open.org/ns/office/1.2/meta/odf#suffix"> + <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#FunctionalProperty"/> + <domain rdf:resource="urn:oasis:names:tc:opendocument:xmlns:text:1.0meta-field"/> + <range rdf:resource="http://www.w3.org/2001/XMLSchema-datatypes#string"/> + <label xml:lang="en">has suffix</label> +</owl:DatatypeProperty> +</rdf:RDF> + diff --git a/schema/odf1.2/OpenDocument-v1.2-os-package-metadata.owl b/schema/odf1.2/OpenDocument-v1.2-os-package-metadata.owl new file mode 100644 index 000000000000..24169558d0f4 --- /dev/null +++ b/schema/odf1.2/OpenDocument-v1.2-os-package-metadata.owl @@ -0,0 +1,81 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Open Document Format for Office Applications (OpenDocument) Version 1.2 + OASIS Standard, 29 September 2011 + OWL Metadata Manifest Description + Source: http://docs.oasis-open.org/office/v1.2/os/ + Copyright (c) OASIS Open 2002-2011. All Rights Reserved. + + All capitalized terms in the following text have the meanings assigned to them + in the OASIS Intellectual Property Rights Policy (the "OASIS IPR Policy"). The + full Policy may be found at the OASIS website. + + This document and translations of it may be copied and furnished to others, and + derivative works that comment on or otherwise explain it or assist in its + implementation may be prepared, copied, published, and distributed, in whole or + in part, without restriction of any kind, provided that the above copyright + notice and this section are included on all such copies and derivative works. + However, this document itself may not be modified in any way, including by + removing the copyright notice or references to OASIS, except as needed for the + purpose of developing any document or deliverable produced by an OASIS + Technical Committee (in which case the rules applicable to copyrights, as set + forth in the OASIS IPR Policy, must be followed) or as required to translate it + into languages other than English. + + The limited permissions granted above are perpetual and will not be revoked by + OASIS or its successors or assigns. + + This document and the information contained herein is provided on an "AS IS" + basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT + LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT + INFRINGE ANY OWNERSHIP RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR + FITNESS FOR A PARTICULAR PURPOSE. +--> + +<rdf:RDF + xmlns="http://www.w3.org/2000/01/rdf-schema#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:owl="http://www.w3.org/2002/07/owl#" + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:pkg="http://docs.oasis-open.org/ns/office/1.2/meta/pkg#"> + +<owl:Ontology rdf:about="http://docs.oasis-open.org/ns/office/1.2/meta/pkg#"> + <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing"/> + <dc:title xml:lang="en">Open Document Package Metadata Manifest Ontology</dc:title> + <label xml:lang="en">ODF Package Metadata Manifest</label> +</owl:Ontology> + +<owl:Class rdf:about="http://docs.oasis-open.org/ns/office/1.2/meta/pkg#Document"> + <label xml:lang="en">OpenDocument Document</label> +</owl:Class> + +<owl:Class rdf:about="http://docs.oasis-open.org/ns/office/1.2/meta/pkg#File"> + <label xml:lang="en"> OpenDocument Document Package File</label> +</owl:Class> + +<owl:ObjectProperty rdf:about="http://docs.oasis-open.org/ns/office/1.2/meta/pkg#hasPart"> + <domain rdf:resource="http://docs.oasis-open.org/ns/office/1.2/meta/pkg#Document"/> + <range rdf:resource="http://docs.oasis-open.org/ns/office/1.2/meta/pkg#File"/> + <label xml:lang="en">contains</label> + <comment xml:lang="en">Related to dcterms:hasPart of the Dublin Core Metadata Initiative</comment> +</owl:ObjectProperty> + +<owl:Class rdf:about="http://docs.oasis-open.org/ns/office/1.2/meta/pkg#MetadataFile"> + <label xml:lang="en">An OpenDocument Metadata File</label> + <comment xml:lang="en">Used for any metadata file in the document</comment> + <subClassOf rdf:resource="http://docs.oasis-open.org/ns/office/1.2/meta/pkg#File"/> +</owl:Class> + +<owl:DatatypeProperty rdf:about="http://docs.oasis-open.org/ns/office/1.2/meta/pkg#mimeType"> + <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#FunctionalProperty"/> + <domain rdf:resource="http://docs.oasis-open.org/ns/office/1.2/meta/pkg#File"/> + <range rdf:resource="http://www.w3.org/2001/XMLSchema-datatypes#string"/> + <label xml:lang="en">the MIME type</label> + <comment xml:lang="en">A string representing the MIME media type of a file (see RFC4288).</comment> +</owl:DatatypeProperty> + +<owl:Class rdf:about="http://docs.oasis-open.org/ns/office/1.2/meta/pkg#Element"> + <label xml:lang="en">OpenDocument Package XML Element</label> +</owl:Class> + +</rdf:RDF> diff --git a/schema/odf1.2/OpenDocument-v1.2-os-schema.rng b/schema/odf1.2/OpenDocument-v1.2-os-schema.rng new file mode 100644 index 000000000000..538c335b3bf6 --- /dev/null +++ b/schema/odf1.2/OpenDocument-v1.2-os-schema.rng @@ -0,0 +1,18127 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Open Document Format for Office Applications (OpenDocument) Version 1.2 + OASIS Standard, 29 September 2011 + Relax-NG Schema + Source: http://docs.oasis-open.org/office/v1.2/os/ + Copyright (c) OASIS Open 2002-2011. All Rights Reserved. + + All capitalized terms in the following text have the meanings assigned to them + in the OASIS Intellectual Property Rights Policy (the "OASIS IPR Policy"). The + full Policy may be found at the OASIS website. + + This document and translations of it may be copied and furnished to others, and + derivative works that comment on or otherwise explain it or assist in its + implementation may be prepared, copied, published, and distributed, in whole or + in part, without restriction of any kind, provided that the above copyright + notice and this section are included on all such copies and derivative works. + However, this document itself may not be modified in any way, including by + removing the copyright notice or references to OASIS, except as needed for the + purpose of developing any document or deliverable produced by an OASIS + Technical Committee (in which case the rules applicable to copyrights, as set + forth in the OASIS IPR Policy, must be followed) or as required to translate it + into languages other than English. + + The limited permissions granted above are perpetual and will not be revoked by + OASIS or its successors or assigns. + + This document and the information contained herein is provided on an "AS IS" + basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT + LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT + INFRINGE ANY OWNERSHIP RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR + FITNESS FOR A PARTICULAR PURPOSE. +--> +<grammar + xmlns="http://relaxng.org/ns/structure/1.0" + + datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes" + + xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" + xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" + xmlns:config="urn:oasis:names:tc:opendocument:xmlns:config:1.0" + xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0" + xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0" + xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0" + xmlns:presentation="urn:oasis:names:tc:opendocument:xmlns:presentation:1.0" + xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0" + xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0" + xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" + xmlns:db="urn:oasis:names:tc:opendocument:xmlns:database:1.0" + xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0" + xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" + xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0" + xmlns:anim="urn:oasis:names:tc:opendocument:xmlns:animation:1.0" + + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:math="http://www.w3.org/1998/Math/MathML" + xmlns:xforms="http://www.w3.org/2002/xforms" + xmlns:grddl="http://www.w3.org/2003/g/data-view#" + xmlns:xhtml="http://www.w3.org/1999/xhtml" + + xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0" + xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" + xmlns:smil="urn:oasis:names:tc:opendocument:xmlns:smil-compatible:1.0" +> + <define name="office-process-content"> + <optional> + <attribute name="office:process-content"> + <ref name="boolean"/> + </attribute> + </optional> + </define> + <start> + <choice> + <ref name="office-document"/> + <ref name="office-document-content"/> + <ref name="office-document-styles"/> + <ref name="office-document-meta"/> + <ref name="office-document-settings"/> + </choice> + </start> + <define name="office-document"> + <element name="office:document"> + <ref name="office-document-attrs"/> + <ref name="office-document-common-attrs"/> + <ref name="office-meta"/> + <ref name="office-settings"/> + <ref name="office-scripts"/> + <ref name="office-font-face-decls"/> + <ref name="office-styles"/> + <ref name="office-automatic-styles"/> + <ref name="office-master-styles"/> + <ref name="office-body"/> + </element> + </define> + <define name="office-document-content"> + <element name="office:document-content"> + <ref name="office-document-common-attrs"/> + <ref name="office-scripts"/> + <ref name="office-font-face-decls"/> + <ref name="office-automatic-styles"/> + <ref name="office-body"/> + </element> + </define> + <define name="office-document-styles"> + <element name="office:document-styles"> + <ref name="office-document-common-attrs"/> + <ref name="office-font-face-decls"/> + <ref name="office-styles"/> + <ref name="office-automatic-styles"/> + <ref name="office-master-styles"/> + </element> + </define> + <define name="office-document-meta"> + <element name="office:document-meta"> + <ref name="office-document-common-attrs"/> + <ref name="office-meta"/> + </element> + </define> + <define name="office-document-settings"> + <element name="office:document-settings"> + <ref name="office-document-common-attrs"/> + <ref name="office-settings"/> + </element> + </define> + <define name="office-document-common-attrs"> + <interleave> + <attribute name="office:version"> + <value>1.2</value> + </attribute> + <optional> + <attribute name="grddl:transformation"> + <list> + <zeroOrMore> + <ref name="anyIRI"/> + </zeroOrMore> + </list> + </attribute> + </optional> + </interleave> + </define> + <define name="office-document-attrs"> + <attribute name="office:mimetype"> + <ref name="string"/> + </attribute> + </define> + <define name="office-meta"> + <optional> + <element name="office:meta"> + <ref name="office-meta-content-strict"/> + </element> + </optional> + </define> + <define name="office-meta-content-strict"> + <zeroOrMore> + <ref name="office-meta-data"/> + </zeroOrMore> + </define> + <define name="office-body"> + <element name="office:body"> + <ref name="office-body-content"/> + </element> + </define> + <define name="office-body-content"> + <choice> + <element name="office:text"> + <ref name="office-text-attlist"/> + <ref name="office-text-content-prelude"/> + <ref name="office-text-content-main"/> + <ref name="office-text-content-epilogue"/> + </element> + <element name="office:drawing"> + <ref name="office-drawing-attlist"/> + <ref name="office-drawing-content-prelude"/> + <ref name="office-drawing-content-main"/> + <ref name="office-drawing-content-epilogue"/> + </element> + <element name="office:presentation"> + <ref name="office-presentation-attlist"/> + <ref name="office-presentation-content-prelude"/> + <ref name="office-presentation-content-main"/> + <ref name="office-presentation-content-epilogue"/> + </element> + <element name="office:spreadsheet"> + <ref name="office-spreadsheet-attlist"/> + <ref name="office-spreadsheet-content-prelude"/> + <ref name="office-spreadsheet-content-main"/> + <ref name="office-spreadsheet-content-epilogue"/> + </element> + <element name="office:chart"> + <ref name="office-chart-attlist"/> + <ref name="office-chart-content-prelude"/> + <ref name="office-chart-content-main"/> + <ref name="office-chart-content-epilogue"/> + </element> + <element name="office:image"> + <ref name="office-image-attlist"/> + <ref name="office-image-content-prelude"/> + <ref name="office-image-content-main"/> + <ref name="office-image-content-epilogue"/> + </element> + <ref name="office-database"/> + </choice> + </define> + <define name="office-text-content-prelude"> + <ref name="office-forms"/> + <ref name="text-tracked-changes"/> + <ref name="text-decls"/> + <ref name="table-decls"/> + </define> + <define name="office-text-content-main"> + <choice> + <zeroOrMore> + <ref name="text-content"/> + </zeroOrMore> + <group> + <ref name="text-page-sequence"/> + <zeroOrMore> + <choice> + <ref name="shape"/> + </choice> + </zeroOrMore> + </group> + </choice> + </define> + <define name="text-content"> + <choice> + <ref name="text-h"/> + <ref name="text-p"/> + <ref name="text-list"/> + <ref name="text-numbered-paragraph"/> + <ref name="table-table"/> + <ref name="text-section"/> + <ref name="text-soft-page-break"/> + <ref name="text-table-of-content"/> + <ref name="text-illustration-index"/> + <ref name="text-table-index"/> + <ref name="text-object-index"/> + <ref name="text-user-index"/> + <ref name="text-alphabetical-index"/> + <ref name="text-bibliography"/> + <ref name="shape"/> + <ref name="change-marks"/> + </choice> + </define> + <define name="office-text-content-epilogue"> + <ref name="table-functions"/> + </define> + <define name="office-text-attlist"> + <interleave> + <optional> + <attribute name="text:global"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:use-soft-page-breaks"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="office-drawing-attlist"> + <empty/> + </define> + <define name="office-drawing-content-prelude"> + <ref name="text-decls"/> + <ref name="table-decls"/> + </define> + <define name="office-drawing-content-main"> + <zeroOrMore> + <ref name="draw-page"/> + </zeroOrMore> + </define> + <define name="office-drawing-content-epilogue"> + <ref name="table-functions"/> + </define> + <define name="office-presentation-attlist"> + <empty/> + </define> + <define name="office-presentation-content-prelude"> + <ref name="text-decls"/> + <ref name="table-decls"/> + <ref name="presentation-decls"/> + </define> + <define name="office-presentation-content-main"> + <zeroOrMore> + <ref name="draw-page"/> + </zeroOrMore> + </define> + <define name="office-presentation-content-epilogue"> + <ref name="presentation-settings"/> + <ref name="table-functions"/> + </define> + <define name="office-spreadsheet-content-prelude"> + <optional> + <ref name="table-tracked-changes"/> + </optional> + <ref name="text-decls"/> + <ref name="table-decls"/> + </define> + <define name="table-decls"> + <optional> + <ref name="table-calculation-settings"/> + </optional> + <optional> + <ref name="table-content-validations"/> + </optional> + <optional> + <ref name="table-label-ranges"/> + </optional> + </define> + <define name="office-spreadsheet-content-main"> + <zeroOrMore> + <ref name="table-table"/> + </zeroOrMore> + </define> + <define name="office-spreadsheet-content-epilogue"> + <ref name="table-functions"/> + </define> + <define name="table-functions"> + <optional> + <ref name="table-named-expressions"/> + </optional> + <optional> + <ref name="table-database-ranges"/> + </optional> + <optional> + <ref name="table-data-pilot-tables"/> + </optional> + <optional> + <ref name="table-consolidation"/> + </optional> + <optional> + <ref name="table-dde-links"/> + </optional> + </define> + <define name="office-chart-attlist"> + <empty/> + </define> + <define name="office-chart-content-prelude"> + <ref name="text-decls"/> + <ref name="table-decls"/> + </define> + <define name="office-chart-content-main"> + <ref name="chart-chart"/> + </define> + <define name="office-chart-content-epilogue"> + <ref name="table-functions"/> + </define> + <define name="office-image-attlist"> + <empty/> + </define> + <define name="office-image-content-prelude"> + <empty/> + </define> + <define name="office-image-content-main"> + <ref name="draw-frame"/> + </define> + <define name="office-image-content-epilogue"> + <empty/> + </define> + <define name="office-settings"> + <optional> + <element name="office:settings"> + <oneOrMore> + <ref name="config-config-item-set"/> + </oneOrMore> + </element> + </optional> + </define> + <define name="config-config-item-set"> + <element name="config:config-item-set"> + <ref name="config-config-item-set-attlist"/> + <ref name="config-items"/> + </element> + </define> + <define name="config-items"> + <oneOrMore> + <choice> + <ref name="config-config-item"/> + <ref name="config-config-item-set"/> + <ref name="config-config-item-map-named"/> + <ref name="config-config-item-map-indexed"/> + </choice> + </oneOrMore> + </define> + <define name="config-config-item-set-attlist"> + <attribute name="config:name"> + <ref name="string"/> + </attribute> + </define> + <define name="config-config-item"> + <element name="config:config-item"> + <ref name="config-config-item-attlist"/> + <text/> + </element> + </define> + <define name="config-config-item-attlist"> + <interleave> + <attribute name="config:name"> + <ref name="string"/> + </attribute> + <attribute name="config:type"> + <choice> + <value>boolean</value> + <value>short</value> + <value>int</value> + <value>long</value> + <value>double</value> + <value>string</value> + <value>datetime</value> + <value>base64Binary</value> + </choice> + </attribute> + </interleave> + </define> + <define name="config-config-item-map-indexed"> + <element name="config:config-item-map-indexed"> + <ref name="config-config-item-map-indexed-attlist"/> + <oneOrMore> + <ref name="config-config-item-map-entry"/> + </oneOrMore> + </element> + </define> + <define name="config-config-item-map-indexed-attlist"> + <attribute name="config:name"> + <ref name="string"/> + </attribute> + </define> + <define name="config-config-item-map-entry"> + <element name="config:config-item-map-entry"> + <ref name="config-config-item-map-entry-attlist"/> + <ref name="config-items"/> + </element> + </define> + <define name="config-config-item-map-entry-attlist"> + <optional> + <attribute name="config:name"> + <ref name="string"/> + </attribute> + </optional> + </define> + <define name="config-config-item-map-named"> + <element name="config:config-item-map-named"> + <ref name="config-config-item-map-named-attlist"/> + <oneOrMore> + <ref name="config-config-item-map-entry"/> + </oneOrMore> + </element> + </define> + <define name="config-config-item-map-named-attlist"> + <attribute name="config:name"> + <ref name="string"/> + </attribute> + </define> + <define name="office-scripts"> + <optional> + <element name="office:scripts"> + <zeroOrMore> + <ref name="office-script"/> + </zeroOrMore> + <optional> + <ref name="office-event-listeners"/> + </optional> + </element> + </optional> + </define> + <define name="office-script"> + <element name="office:script"> + <ref name="office-script-attlist"/> + <mixed> + <ref name="anyElements"/> + </mixed> + </element> + </define> + <define name="office-script-attlist"> + <attribute name="script:language"> + <ref name="string"/> + </attribute> + </define> + <define name="office-font-face-decls"> + <optional> + <element name="office:font-face-decls"> + <zeroOrMore> + <ref name="style-font-face"/> + </zeroOrMore> + </element> + </optional> + </define> + <define name="office-styles"> + <optional> + <element name="office:styles"> + <interleave> + <ref name="styles"/> + <zeroOrMore> + <ref name="style-default-style"/> + </zeroOrMore> + <optional> + <ref name="style-default-page-layout"/> + </optional> + <optional> + <ref name="text-outline-style"/> + </optional> + <zeroOrMore> + <ref name="text-notes-configuration"/> + </zeroOrMore> + <optional> + <ref name="text-bibliography-configuration"/> + </optional> + <optional> + <ref name="text-linenumbering-configuration"/> + </optional> + <zeroOrMore> + <ref name="draw-gradient"/> + </zeroOrMore> + <zeroOrMore> + <ref name="svg-linearGradient"/> + </zeroOrMore> + <zeroOrMore> + <ref name="svg-radialGradient"/> + </zeroOrMore> + <zeroOrMore> + <ref name="draw-hatch"/> + </zeroOrMore> + <zeroOrMore> + <ref name="draw-fill-image"/> + </zeroOrMore> + <zeroOrMore> + <ref name="draw-marker"/> + </zeroOrMore> + <zeroOrMore> + <ref name="draw-stroke-dash"/> + </zeroOrMore> + <zeroOrMore> + <ref name="draw-opacity"/> + </zeroOrMore> + <zeroOrMore> + <ref name="style-presentation-page-layout"/> + </zeroOrMore> + <zeroOrMore> + <ref name="table-table-template"/> + </zeroOrMore> + </interleave> + </element> + </optional> + </define> + <define name="office-automatic-styles"> + <optional> + <element name="office:automatic-styles"> + <interleave> + <ref name="styles"/> + <zeroOrMore> + <ref name="style-page-layout"/> + </zeroOrMore> + </interleave> + </element> + </optional> + </define> + <define name="office-master-styles"> + <optional> + <element name="office:master-styles"> + <interleave> + <zeroOrMore> + <ref name="style-master-page"/> + </zeroOrMore> + <optional> + <ref name="style-handout-master"/> + </optional> + <optional> + <ref name="draw-layer-set"/> + </optional> + </interleave> + </element> + </optional> + </define> + <define name="styles"> + <interleave> + <zeroOrMore> + <ref name="style-style"/> + </zeroOrMore> + <zeroOrMore> + <ref name="text-list-style"/> + </zeroOrMore> + <zeroOrMore> + <ref name="number-number-style"/> + </zeroOrMore> + <zeroOrMore> + <ref name="number-currency-style"/> + </zeroOrMore> + <zeroOrMore> + <ref name="number-percentage-style"/> + </zeroOrMore> + <zeroOrMore> + <ref name="number-date-style"/> + </zeroOrMore> + <zeroOrMore> + <ref name="number-time-style"/> + </zeroOrMore> + <zeroOrMore> + <ref name="number-boolean-style"/> + </zeroOrMore> + <zeroOrMore> + <ref name="number-text-style"/> + </zeroOrMore> + </interleave> + </define> + <define name="office-meta-data"> + <choice> + <element name="meta:generator"> + <ref name="string"/> + </element> + <element name="dc:title"> + <ref name="string"/> + </element> + <element name="dc:description"> + <ref name="string"/> + </element> + <element name="dc:subject"> + <ref name="string"/> + </element> + <element name="meta:keyword"> + <ref name="string"/> + </element> + <element name="meta:initial-creator"> + <ref name="string"/> + </element> + <ref name="dc-creator"/> + <element name="meta:printed-by"> + <ref name="string"/> + </element> + <element name="meta:creation-date"> + <ref name="dateTime"/> + </element> + <ref name="dc-date"/> + <element name="meta:print-date"> + <ref name="dateTime"/> + </element> + <element name="meta:template"> + <attribute name="xlink:type"> + <value>simple</value> + </attribute> + <attribute name="xlink:href"> + <ref name="anyIRI"/> + </attribute> + <optional> + <attribute name="xlink:actuate"> + <value>onRequest</value> + </attribute> + </optional> + <optional> + <attribute name="xlink:title"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="meta:date"> + <ref name="dateTime"/> + </attribute> + </optional> + </element> + <element name="meta:auto-reload"> + <optional> + <attribute name="xlink:type"> + <value>simple</value> + </attribute> + <attribute name="xlink:href"> + <ref name="anyIRI"/> + </attribute> + <optional> + <attribute name="xlink:show"> + <value>replace</value> + </attribute> + </optional> + <optional> + <attribute name="xlink:actuate"> + <value>onLoad</value> + </attribute> + </optional> + </optional> + <optional> + <attribute name="meta:delay"> + <ref name="duration"/> + </attribute> + </optional> + </element> + <element name="meta:hyperlink-behaviour"> + <optional> + <attribute name="office:target-frame-name"> + <ref name="targetFrameName"/> + </attribute> + </optional> + <optional> + <attribute name="xlink:show"> + <choice> + <value>new</value> + <value>replace</value> + </choice> + </attribute> + </optional> + </element> + <element name="dc:language"> + <ref name="language"/> + </element> + <element name="meta:editing-cycles"> + <ref name="nonNegativeInteger"/> + </element> + <element name="meta:editing-duration"> + <ref name="duration"/> + </element> + <element name="meta:document-statistic"> + <optional> + <attribute name="meta:page-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="meta:table-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="meta:draw-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="meta:image-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="meta:ole-object-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="meta:object-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="meta:paragraph-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="meta:word-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="meta:character-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="meta:frame-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="meta:sentence-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="meta:syllable-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="meta:non-whitespace-character-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="meta:row-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="meta:cell-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + </element> + <element name="meta:user-defined"> + <attribute name="meta:name"> + <ref name="string"/> + </attribute> + <choice> + <group> + <attribute name="meta:value-type"> + <value>float</value> + </attribute> + <ref name="double"/> + </group> + <group> + <attribute name="meta:value-type"> + <value>date</value> + </attribute> + <ref name="dateOrDateTime"/> + </group> + <group> + <attribute name="meta:value-type"> + <value>time</value> + </attribute> + <ref name="duration"/> + </group> + <group> + <attribute name="meta:value-type"> + <value>boolean</value> + </attribute> + <ref name="boolean"/> + </group> + <group> + <attribute name="meta:value-type"> + <value>string</value> + </attribute> + <ref name="string"/> + </group> + <text/> + </choice> + </element> + </choice> + </define> + <define name="dc-creator"> + <element name="dc:creator"> + <ref name="string"/> + </element> + </define> + <define name="dc-date"> + <element name="dc:date"> + <ref name="dateTime"/> + </element> + </define> + <define name="text-h"> + <element name="text:h"> + <ref name="heading-attrs"/> + <ref name="paragraph-attrs"/> + <optional> + <ref name="text-number"/> + </optional> + <zeroOrMore> + <ref name="paragraph-content-or-hyperlink"/> + </zeroOrMore> + </element> + </define> + <define name="heading-attrs"> + <interleave> + <attribute name="text:outline-level"> + <ref name="positiveInteger"/> + </attribute> + <optional> + <attribute name="text:restart-numbering"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:start-value"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="text:is-list-header"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="text-number"> + <element name="text:number"> + <ref name="string"/> + </element> + </define> + <define name="text-p"> + <element name="text:p"> + <ref name="paragraph-attrs"/> + <zeroOrMore> + <ref name="paragraph-content-or-hyperlink"/> + </zeroOrMore> + </element> + </define> + <define name="paragraph-attrs"> + <interleave> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="text:class-names"> + <ref name="styleNameRefs"/> + </attribute> + </optional> + <optional> + <attribute name="text:cond-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <group> + <ref name="xml-id"/> + <optional> + <attribute name="text:id"> + <ref name="NCName"/> + </attribute> + </optional> + </group> + </optional> + <optional> + <ref name="common-in-content-meta-attlist"/> + </optional> + </interleave> + </define> + <define name="text-page-sequence"> + <element name="text:page-sequence"> + <oneOrMore> + <ref name="text-page"/> + </oneOrMore> + </element> + </define> + <define name="text-page"> + <element name="text:page"> + <ref name="text-page-attlist"/> + <empty/> + </element> + </define> + <define name="text-page-attlist"> + <attribute name="text:master-page-name"> + <ref name="styleNameRef"/> + </attribute> + </define> + <define name="text-list"> + <element name="text:list"> + <ref name="text-list-attr"/> + <optional> + <ref name="text-list-header"/> + </optional> + <zeroOrMore> + <ref name="text-list-item"/> + </zeroOrMore> + </element> + </define> + <define name="text-list-attr"> + <interleave> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="text:continue-numbering"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:continue-list"> + <ref name="IDREF"/> + </attribute> + </optional> + <optional> + <ref name="xml-id"/> + </optional> + </interleave> + </define> + <define name="text-list-item"> + <element name="text:list-item"> + <ref name="text-list-item-attr"/> + <ref name="text-list-item-content"/> + </element> + </define> + <define name="text-list-item-content"> + <optional> + <ref name="text-number"/> + </optional> + <zeroOrMore> + <choice> + <ref name="text-p"/> + <ref name="text-h"/> + <ref name="text-list"/> + <ref name="text-soft-page-break"/> + </choice> + </zeroOrMore> + </define> + <define name="text-list-item-attr"> + <interleave> + <optional> + <attribute name="text:start-value"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="text:style-override"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <ref name="xml-id"/> + </optional> + </interleave> + </define> + <define name="text-list-header"> + <element name="text:list-header"> + <ref name="text-list-header-attr"/> + <ref name="text-list-item-content"/> + </element> + </define> + <define name="text-list-header-attr"> + <optional> + <ref name="xml-id"/> + </optional> + </define> + <define name="text-numbered-paragraph"> + <element name="text:numbered-paragraph"> + <ref name="text-numbered-paragraph-attr"/> + <optional> + <ref name="text-number"/> + </optional> + <choice> + <ref name="text-p"/> + <ref name="text-h"/> + </choice> + </element> + </define> + <define name="text-numbered-paragraph-attr"> + <interleave> + <attribute name="text:list-id"> + <ref name="NCName"/> + </attribute> + <optional> + <attribute name="text:level"> + <ref name="positiveInteger"/> + </attribute> + </optional> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + <attribute name="text:continue-numbering"> + <ref name="boolean"/> + </attribute> + <attribute name="text:start-value"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <ref name="xml-id"/> + </optional> + </interleave> + </define> + <define name="text-section"> + <element name="text:section"> + <ref name="text-section-attlist"/> + <choice> + <ref name="text-section-source"/> + <ref name="text-section-source-dde"/> + <empty/> + </choice> + <zeroOrMore> + <ref name="text-content"/> + </zeroOrMore> + </element> + </define> + <define name="text-section-attlist"> + <interleave> + <ref name="common-section-attlist"/> + <choice> + <attribute name="text:display"> + <choice> + <value>true</value> + <value>none</value> + </choice> + </attribute> + <group> + <attribute name="text:display"> + <value>condition</value> + </attribute> + <attribute name="text:condition"> + <ref name="string"/> + </attribute> + </group> + <empty/> + </choice> + </interleave> + </define> + <define name="common-section-attlist"> + <interleave> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <attribute name="text:name"> + <ref name="string"/> + </attribute> + <optional> + <attribute name="text:protected"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:protection-key"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="text:protection-key-digest-algorithm"> + <ref name="anyIRI"/> + </attribute> + </optional> + <optional> + <ref name="xml-id"/> + </optional> + </interleave> + </define> + <define name="text-section-source"> + <element name="text:section-source"> + <ref name="text-section-source-attr"/> + </element> + </define> + <define name="text-section-source-attr"> + <interleave> + <optional> + <attribute name="xlink:type"> + <value>simple</value> + </attribute> + <attribute name="xlink:href"> + <ref name="anyIRI"/> + </attribute> + <optional> + <attribute name="xlink:show"> + <value>embed</value> + </attribute> + </optional> + </optional> + <optional> + <attribute name="text:section-name"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="text:filter-name"> + <ref name="string"/> + </attribute> + </optional> + </interleave> + </define> + <define name="text-section-source-dde"> + <ref name="office-dde-source"/> + </define> + <define name="text-tracked-changes"> + <optional> + <element name="text:tracked-changes"> + <ref name="text-tracked-changes-attr"/> + <zeroOrMore> + <ref name="text-changed-region"/> + </zeroOrMore> + </element> + </optional> + </define> + <define name="text-tracked-changes-attr"> + <optional> + <attribute name="text:track-changes"> + <ref name="boolean"/> + </attribute> + </optional> + </define> + <define name="text-changed-region"> + <element name="text:changed-region"> + <ref name="text-changed-region-attr"/> + <ref name="text-changed-region-content"/> + </element> + </define> + <define name="text-changed-region-attr"> + <group> + <ref name="xml-id"/> + <optional> + <attribute name="text:id"> + <ref name="NCName"/> + </attribute> + </optional> + </group> + </define> + <define name="text-changed-region-content"> + <choice> + <element name="text:insertion"> + <ref name="office-change-info"/> + </element> + <element name="text:deletion"> + <ref name="office-change-info"/> + <zeroOrMore> + <ref name="text-content"/> + </zeroOrMore> + </element> + <element name="text:format-change"> + <ref name="office-change-info"/> + </element> + </choice> + </define> + <define name="change-marks"> + <choice> + <element name="text:change"> + <ref name="change-mark-attr"/> + </element> + <element name="text:change-start"> + <ref name="change-mark-attr"/> + </element> + <element name="text:change-end"> + <ref name="change-mark-attr"/> + </element> + </choice> + </define> + <define name="change-mark-attr"> + <attribute name="text:change-id"> + <ref name="IDREF"/> + </attribute> + </define> + <define name="text-soft-page-break"> + <element name="text:soft-page-break"> + <empty/> + </element> + </define> + <define name="text-decls"> + <optional> + <element name="text:variable-decls"> + <zeroOrMore> + <ref name="text-variable-decl"/> + </zeroOrMore> + </element> + </optional> + <optional> + <element name="text:sequence-decls"> + <zeroOrMore> + <ref name="text-sequence-decl"/> + </zeroOrMore> + </element> + </optional> + <optional> + <element name="text:user-field-decls"> + <zeroOrMore> + <ref name="text-user-field-decl"/> + </zeroOrMore> + </element> + </optional> + <optional> + <element name="text:dde-connection-decls"> + <zeroOrMore> + <ref name="text-dde-connection-decl"/> + </zeroOrMore> + </element> + </optional> + <optional> + <ref name="text-alphabetical-index-auto-mark-file"/> + </optional> + </define> + <define name="paragraph-content-or-hyperlink"> + <choice> + <ref name="paragraph-content"/> + <ref name="text-a"/> + </choice> + </define> + <define name="paragraph-content"> + <choice> + <text/> + <element name="text:s"> + <optional> + <attribute name="text:c"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + </element> + <element name="text:tab"> + <ref name="text-tab-attr"/> + </element> + <element name="text:line-break"> + <empty/> + </element> + <ref name="text-soft-page-break"/> + <element name="text:span"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="text:class-names"> + <ref name="styleNameRefs"/> + </attribute> + </optional> + <zeroOrMore> + <ref name="paragraph-content-or-hyperlink"/> + </zeroOrMore> + </element> + <element name="text:meta"> + <ref name="text-meta-attlist"/> + <zeroOrMore> + <ref name="paragraph-content-or-hyperlink"/> + </zeroOrMore> + </element> + <choice> + <ref name="text-bookmark"/> + <ref name="text-bookmark-start"/> + <ref name="text-bookmark-end"/> + </choice> + <element name="text:reference-mark"> + <attribute name="text:name"> + <ref name="string"/> + </attribute> + </element> + <choice> + <element name="text:reference-mark-start"> + <attribute name="text:name"> + <ref name="string"/> + </attribute> + </element> + <element name="text:reference-mark-end"> + <attribute name="text:name"> + <ref name="string"/> + </attribute> + </element> + </choice> + <element name="text:note"> + <ref name="text-note-class"/> + <optional> + <attribute name="text:id"> + <ref name="string"/> + </attribute> + </optional> + <element name="text:note-citation"> + <optional> + <attribute name="text:label"> + <ref name="string"/> + </attribute> + </optional> + <text/> + </element> + <element name="text:note-body"> + <zeroOrMore> + <ref name="text-content"/> + </zeroOrMore> + </element> + </element> + <element name="text:ruby"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <element name="text:ruby-base"> + <zeroOrMore> + <ref name="paragraph-content-or-hyperlink"/> + </zeroOrMore> + </element> + <element name="text:ruby-text"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <text/> + </element> + </element> + <choice> + <ref name="office-annotation"/> + <ref name="office-annotation-end"/> + </choice> + <ref name="change-marks"/> + <ref name="shape"/> + <element name="text:date"> + <ref name="text-date-attlist"/> + <text/> + </element> + <element name="text:time"> + <ref name="text-time-attlist"/> + <text/> + </element> + <element name="text:page-number"> + <ref name="text-page-number-attlist"/> + <text/> + </element> + <element name="text:page-continuation"> + <ref name="text-page-continuation-attlist"/> + <text/> + </element> + <element name="text:sender-firstname"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> + <element name="text:sender-lastname"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> + <element name="text:sender-initials"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> + <element name="text:sender-title"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> + <element name="text:sender-position"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> + <element name="text:sender-email"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> + <element name="text:sender-phone-private"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> + <element name="text:sender-fax"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> + <element name="text:sender-company"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> + <element name="text:sender-phone-work"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> + <element name="text:sender-street"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> + <element name="text:sender-city"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> + <element name="text:sender-postal-code"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> + <element name="text:sender-country"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> + <element name="text:sender-state-or-province"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> + <element name="text:author-name"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> + <element name="text:author-initials"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> + <element name="text:chapter"> + <ref name="text-chapter-attlist"/> + <text/> + </element> + <element name="text:file-name"> + <ref name="text-file-name-attlist"/> + <text/> + </element> + <element name="text:template-name"> + <ref name="text-template-name-attlist"/> + <text/> + </element> + <element name="text:sheet-name"> + <text/> + </element> + <element name="text:variable-set"> + <interleave> + <ref name="common-field-name-attlist"/> + <ref name="common-field-formula-attlist"/> + <ref name="common-value-and-type-attlist"/> + <ref name="common-field-display-value-none-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + </interleave> + <text/> + </element> + <element name="text:variable-get"> + <interleave> + <ref name="common-field-name-attlist"/> + <ref name="common-field-display-value-formula-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + </interleave> + <text/> + </element> + <element name="text:variable-input"> + <interleave> + <ref name="common-field-name-attlist"/> + <ref name="common-field-description-attlist"/> + <ref name="common-value-type-attlist"/> + <ref name="common-field-display-value-none-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + </interleave> + <text/> + </element> + <element name="text:user-field-get"> + <interleave> + <ref name="common-field-name-attlist"/> + <ref name="common-field-display-value-formula-none-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + </interleave> + <text/> + </element> + <element name="text:user-field-input"> + <interleave> + <ref name="common-field-name-attlist"/> + <ref name="common-field-description-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + </interleave> + <text/> + </element> + <element name="text:sequence"> + <interleave> + <ref name="common-field-name-attlist"/> + <ref name="common-field-formula-attlist"/> + <ref name="common-field-num-format-attlist"/> + <ref name="text-sequence-ref-name"/> + </interleave> + <text/> + </element> + <element name="text:expression"> + <interleave> + <ref name="common-field-formula-attlist"/> + <optional> + <ref name="common-value-and-type-attlist"/> + </optional> + <ref name="common-field-display-value-formula-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + </interleave> + <text/> + </element> + <element name="text:text-input"> + <ref name="common-field-description-attlist"/> + <text/> + </element> + <element name="text:initial-creator"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> + <element name="text:creation-date"> + <interleave> + <ref name="common-field-fixed-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + <optional> + <attribute name="text:date-value"> + <ref name="dateOrDateTime"/> + </attribute> + </optional> + </interleave> + <text/> + </element> + <element name="text:creation-time"> + <interleave> + <ref name="common-field-fixed-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + <optional> + <attribute name="text:time-value"> + <ref name="timeOrDateTime"/> + </attribute> + </optional> + </interleave> + <text/> + </element> + <element name="text:description"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> + <element name="text:user-defined"> + <interleave> + <ref name="common-field-fixed-attlist"/> + <attribute name="text:name"> + <ref name="string"/> + </attribute> + <ref name="common-field-data-style-name-attlist"/> + <optional> + <attribute name="office:value"> + <ref name="double"/> + </attribute> + </optional> + <optional> + <attribute name="office:date-value"> + <ref name="dateOrDateTime"/> + </attribute> + </optional> + <optional> + <attribute name="office:time-value"> + <ref name="duration"/> + </attribute> + </optional> + <optional> + <attribute name="office:boolean-value"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="office:string-value"> + <ref name="string"/> + </attribute> + </optional> + </interleave> + <text/> + </element> + <element name="text:print-time"> + <interleave> + <ref name="common-field-fixed-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + <optional> + <attribute name="text:time-value"> + <ref name="time"/> + </attribute> + </optional> + </interleave> + <text/> + </element> + <element name="text:print-date"> + <interleave> + <ref name="common-field-fixed-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + <optional> + <attribute name="text:date-value"> + <ref name="date"/> + </attribute> + </optional> + </interleave> + <text/> + </element> + <element name="text:printed-by"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> + <element name="text:title"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> + <element name="text:subject"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> + <element name="text:keywords"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> + <element name="text:editing-cycles"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> + <element name="text:editing-duration"> + <interleave> + <ref name="common-field-fixed-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + <optional> + <attribute name="text:duration"> + <ref name="duration"/> + </attribute> + </optional> + </interleave> + <text/> + </element> + <element name="text:modification-time"> + <interleave> + <ref name="common-field-fixed-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + <optional> + <attribute name="text:time-value"> + <ref name="time"/> + </attribute> + </optional> + </interleave> + <text/> + </element> + <element name="text:modification-date"> + <interleave> + <ref name="common-field-fixed-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + <optional> + <attribute name="text:date-value"> + <ref name="date"/> + </attribute> + </optional> + </interleave> + <text/> + </element> + <element name="text:creator"> + <ref name="common-field-fixed-attlist"/> + <text/> + </element> + <element> + <choice> + <name>text:page-count</name> + <name>text:paragraph-count</name> + <name>text:word-count</name> + <name>text:character-count</name> + <name>text:table-count</name> + <name>text:image-count</name> + <name>text:object-count</name> + </choice> + <ref name="common-field-num-format-attlist"/> + <text/> + </element> + <element name="text:database-display"> + <ref name="text-database-display-attlist"/> + <text/> + </element> + <element name="text:database-next"> + <ref name="text-database-next-attlist"/> + </element> + <element name="text:database-row-select"> + <ref name="text-database-row-select-attlist"/> + </element> + <element name="text:database-row-number"> + <interleave> + <ref name="common-field-database-table"/> + <ref name="common-field-num-format-attlist"/> + <optional> + <attribute name="text:value"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + </interleave> + <text/> + </element> + <element name="text:database-name"> + <ref name="common-field-database-table"/> + <text/> + </element> + <element name="text:page-variable-set"> + <ref name="text-set-page-variable-attlist"/> + <text/> + </element> + <element name="text:page-variable-get"> + <ref name="text-get-page-variable-attlist"/> + <text/> + </element> + <element name="text:placeholder"> + <ref name="text-placeholder-attlist"/> + <text/> + </element> + <element name="text:conditional-text"> + <ref name="text-conditional-text-attlist"/> + <text/> + </element> + <element name="text:hidden-text"> + <ref name="text-hidden-text-attlist"/> + <text/> + </element> + <element> + <choice> + <name>text:reference-ref</name> + <name>text:bookmark-ref</name> + </choice> + <interleave> + <ref name="text-common-ref-content"/> + <ref name="text-bookmark-ref-content"/> + </interleave> + </element> + <element name="text:note-ref"> + <interleave> + <ref name="text-common-ref-content"/> + <ref name="text-note-ref-content"/> + </interleave> + </element> + <element name="text:sequence-ref"> + <interleave> + <ref name="text-common-ref-content"/> + <ref name="text-sequence-ref-content"/> + </interleave> + </element> + <element name="text:script"> + <interleave> + <choice> + <group> + <attribute name="xlink:type"> + <value>simple</value> + </attribute> + <attribute name="xlink:href"> + <ref name="anyIRI"/> + </attribute> + </group> + <text/> + </choice> + <optional> + <attribute name="script:language"> + <ref name="string"/> + </attribute> + </optional> + </interleave> + </element> + <element name="text:execute-macro"> + <optional> + <attribute name="text:name"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + <text/> + </element> + <element name="text:hidden-paragraph"> + <ref name="text-hidden-paragraph-attlist"/> + <text/> + </element> + <element name="text:dde-connection"> + <attribute name="text:connection-name"> + <ref name="string"/> + </attribute> + <text/> + </element> + <element name="text:measure"> + <attribute name="text:kind"> + <choice> + <value>value</value> + <value>unit</value> + <value>gap</value> + </choice> + </attribute> + <text/> + </element> + <element name="text:table-formula"> + <interleave> + <ref name="common-field-formula-attlist"/> + <ref name="common-field-display-value-formula-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + </interleave> + <text/> + </element> + <element name="text:meta-field"> + <ref name="text-meta-field-attlist"/> + <zeroOrMore> + <ref name="paragraph-content-or-hyperlink"/> + </zeroOrMore> + </element> + <element name="text:toc-mark-start"> + <ref name="text-toc-mark-start-attrs"/> + </element> + <element name="text:toc-mark-end"> + <ref name="text-id"/> + </element> + <element name="text:toc-mark"> + <attribute name="text:string-value"> + <ref name="string"/> + </attribute> + <ref name="text-outline-level"/> + </element> + <element name="text:user-index-mark-start"> + <ref name="text-id"/> + <ref name="text-outline-level"/> + <ref name="text-index-name"/> + </element> + <element name="text:user-index-mark-end"> + <ref name="text-id"/> + </element> + <element name="text:user-index-mark"> + <attribute name="text:string-value"> + <ref name="string"/> + </attribute> + <ref name="text-outline-level"/> + <ref name="text-index-name"/> + </element> + <element name="text:alphabetical-index-mark-start"> + <ref name="text-id"/> + <ref name="text-alphabetical-index-mark-attrs"/> + </element> + <element name="text:alphabetical-index-mark-end"> + <ref name="text-id"/> + </element> + <element name="text:alphabetical-index-mark"> + <attribute name="text:string-value"> + <ref name="string"/> + </attribute> + <ref name="text-alphabetical-index-mark-attrs"/> + </element> + <element name="text:bibliography-mark"> + <attribute name="text:bibliography-type"> + <ref name="text-bibliography-types"/> + </attribute> + <zeroOrMore> + <attribute> + <choice> + <name>text:identifier</name> + <name>text:address</name> + <name>text:annote</name> + <name>text:author</name> + <name>text:booktitle</name> + <name>text:chapter</name> + <name>text:edition</name> + <name>text:editor</name> + <name>text:howpublished</name> + <name>text:institution</name> + <name>text:journal</name> + <name>text:month</name> + <name>text:note</name> + <name>text:number</name> + <name>text:organizations</name> + <name>text:pages</name> + <name>text:publisher</name> + <name>text:school</name> + <name>text:series</name> + <name>text:title</name> + <name>text:report-type</name> + <name>text:volume</name> + <name>text:year</name> + <name>text:url</name> + <name>text:custom1</name> + <name>text:custom2</name> + <name>text:custom3</name> + <name>text:custom4</name> + <name>text:custom5</name> + <name>text:isbn</name> + <name>text:issn</name> + </choice> + <ref name="string"/> + </attribute> + </zeroOrMore> + <text/> + </element> + <element name="presentation:header"> + <empty/> + </element> + <element name="presentation:footer"> + <empty/> + </element> + <element name="presentation:date-time"> + <empty/> + </element> + </choice> + </define> + <define name="text-tab-attr"> + <optional> + <attribute name="text:tab-ref"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + </define> + <define name="text-a"> + <element name="text:a"> + <ref name="text-a-attlist"/> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="paragraph-content"/> + </zeroOrMore> + </element> + </define> + <define name="text-a-attlist"> + <interleave> + <optional> + <attribute name="office:name"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="office:title"> + <ref name="string"/> + </attribute> + </optional> + <attribute name="xlink:type"> + <value>simple</value> + </attribute> + <attribute name="xlink:href"> + <ref name="anyIRI"/> + </attribute> + <optional> + <attribute name="xlink:actuate"> + <value>onRequest</value> + </attribute> + </optional> + <optional> + <attribute name="office:target-frame-name"> + <ref name="targetFrameName"/> + </attribute> + </optional> + <optional> + <attribute name="xlink:show"> + <choice> + <value>new</value> + <value>replace</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="text:visited-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + </interleave> + </define> + <define name="text-meta-attlist"> + <interleave> + <optional> + <ref name="common-in-content-meta-attlist"/> + </optional> + <optional> + <ref name="xml-id"/> + </optional> + </interleave> + </define> + <define name="text-bookmark"> + <element name="text:bookmark"> + <ref name="text-bookmark-attlist"/> + <empty/> + </element> + </define> + <define name="text-bookmark-start"> + <element name="text:bookmark-start"> + <ref name="text-bookmark-start-attlist"/> + <empty/> + </element> + </define> + <define name="text-bookmark-end"> + <element name="text:bookmark-end"> + <ref name="text-bookmark-end-attlist"/> + <empty/> + </element> + </define> + <define name="text-bookmark-attlist"> + <interleave> + <attribute name="text:name"> + <ref name="string"/> + </attribute> + <optional> + <ref name="xml-id"/> + </optional> + </interleave> + </define> + <define name="text-bookmark-start-attlist"> + <interleave> + <attribute name="text:name"> + <ref name="string"/> + </attribute> + <optional> + <ref name="xml-id"/> + </optional> + <optional> + <ref name="common-in-content-meta-attlist"/> + </optional> + </interleave> + </define> + <define name="text-bookmark-end-attlist"> + <attribute name="text:name"> + <ref name="string"/> + </attribute> + </define> + <define name="text-note-class"> + <attribute name="text:note-class"> + <choice> + <value>footnote</value> + <value>endnote</value> + </choice> + </attribute> + </define> + <define name="text-date-attlist"> + <interleave> + <interleave> + <ref name="common-field-fixed-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + </interleave> + <optional> + <attribute name="text:date-value"> + <ref name="dateOrDateTime"/> + </attribute> + </optional> + <optional> + <attribute name="text:date-adjust"> + <ref name="duration"/> + </attribute> + </optional> + </interleave> + </define> + <define name="text-time-attlist"> + <interleave> + <interleave> + <ref name="common-field-fixed-attlist"/> + <ref name="common-field-data-style-name-attlist"/> + </interleave> + <optional> + <attribute name="text:time-value"> + <ref name="timeOrDateTime"/> + </attribute> + </optional> + <optional> + <attribute name="text:time-adjust"> + <ref name="duration"/> + </attribute> + </optional> + </interleave> + </define> + <define name="text-page-number-attlist"> + <interleave> + <interleave> + <ref name="common-field-num-format-attlist"/> + <ref name="common-field-fixed-attlist"/> + </interleave> + <optional> + <attribute name="text:page-adjust"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="text:select-page"> + <choice> + <value>previous</value> + <value>current</value> + <value>next</value> + </choice> + </attribute> + </optional> + </interleave> + </define> + <define name="text-page-continuation-attlist"> + <interleave> + <attribute name="text:select-page"> + <choice> + <value>previous</value> + <value>next</value> + </choice> + </attribute> + <optional> + <attribute name="text:string-value"> + <ref name="string"/> + </attribute> + </optional> + </interleave> + </define> + <define name="text-chapter-attlist"> + <interleave> + <attribute name="text:display"> + <choice> + <value>name</value> + <value>number</value> + <value>number-and-name</value> + <value>plain-number-and-name</value> + <value>plain-number</value> + </choice> + </attribute> + <attribute name="text:outline-level"> + <ref name="nonNegativeInteger"/> + </attribute> + </interleave> + </define> + <define name="text-file-name-attlist"> + <interleave> + <optional> + <attribute name="text:display"> + <choice> + <value>full</value> + <value>path</value> + <value>name</value> + <value>name-and-extension</value> + </choice> + </attribute> + </optional> + <ref name="common-field-fixed-attlist"/> + </interleave> + </define> + <define name="text-template-name-attlist"> + <optional> + <attribute name="text:display"> + <choice> + <value>full</value> + <value>path</value> + <value>name</value> + <value>name-and-extension</value> + <value>area</value> + <value>title</value> + </choice> + </attribute> + </optional> + </define> + <define name="text-variable-decl"> + <element name="text:variable-decl"> + <ref name="common-field-name-attlist"/> + <ref name="common-value-type-attlist"/> + </element> + </define> + <define name="text-user-field-decl"> + <element name="text:user-field-decl"> + <ref name="common-field-name-attlist"/> + <optional> + <ref name="common-field-formula-attlist"/> + </optional> + <ref name="common-value-and-type-attlist"/> + </element> + </define> + <define name="text-sequence-decl"> + <element name="text:sequence-decl"> + <ref name="text-sequence-decl-attlist"/> + </element> + </define> + <define name="text-sequence-decl-attlist"> + <interleave> + <ref name="common-field-name-attlist"/> + <attribute name="text:display-outline-level"> + <ref name="nonNegativeInteger"/> + </attribute> + <optional> + <attribute name="text:separation-character"> + <ref name="character"/> + </attribute> + </optional> + </interleave> + </define> + <define name="text-sequence-ref-name"> + <optional> + <attribute name="text:ref-name"> + <ref name="string"/> + </attribute> + </optional> + </define> + <define name="common-field-database-table"> + <ref name="common-field-database-table-attlist"/> + <ref name="common-field-database-name"/> + </define> + <define name="common-field-database-name"> + <choice> + <optional> + <attribute name="text:database-name"> + <ref name="string"/> + </attribute> + </optional> + <ref name="form-connection-resource"/> + </choice> + </define> + <define name="common-field-database-table-attlist"> + <interleave> + <attribute name="text:table-name"> + <ref name="string"/> + </attribute> + <optional> + <attribute name="text:table-type"> + <choice> + <value>table</value> + <value>query</value> + <value>command</value> + </choice> + </attribute> + </optional> + </interleave> + </define> + <define name="text-database-display-attlist"> + <interleave> + <ref name="common-field-database-table"/> + <ref name="common-field-data-style-name-attlist"/> + <attribute name="text:column-name"> + <ref name="string"/> + </attribute> + </interleave> + </define> + <define name="text-database-next-attlist"> + <interleave> + <ref name="common-field-database-table"/> + <optional> + <attribute name="text:condition"> + <ref name="string"/> + </attribute> + </optional> + </interleave> + </define> + <define name="text-database-row-select-attlist"> + <interleave> + <ref name="common-field-database-table"/> + <optional> + <attribute name="text:condition"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="text:row-number"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + </interleave> + </define> + <define name="text-set-page-variable-attlist"> + <interleave> + <optional> + <attribute name="text:active"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:page-adjust"> + <ref name="integer"/> + </attribute> + </optional> + </interleave> + </define> + <define name="text-get-page-variable-attlist"> + <ref name="common-field-num-format-attlist"/> + </define> + <define name="text-placeholder-attlist"> + <interleave> + <attribute name="text:placeholder-type"> + <choice> + <value>text</value> + <value>table</value> + <value>text-box</value> + <value>image</value> + <value>object</value> + </choice> + </attribute> + <ref name="common-field-description-attlist"/> + </interleave> + </define> + <define name="text-conditional-text-attlist"> + <interleave> + <attribute name="text:condition"> + <ref name="string"/> + </attribute> + <attribute name="text:string-value-if-true"> + <ref name="string"/> + </attribute> + <attribute name="text:string-value-if-false"> + <ref name="string"/> + </attribute> + <optional> + <attribute name="text:current-value"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="text-hidden-text-attlist"> + <interleave> + <attribute name="text:condition"> + <ref name="string"/> + </attribute> + <attribute name="text:string-value"> + <ref name="string"/> + </attribute> + <optional> + <attribute name="text:is-hidden"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="text-common-ref-content"> + <interleave> + <text/> + <optional> + <attribute name="text:ref-name"> + <ref name="string"/> + </attribute> + </optional> + </interleave> + </define> + <define name="text-bookmark-ref-content"> + <optional> + <attribute name="text:reference-format"> + <choice> + <ref name="common-ref-format-values"/> + <value>number-no-superior</value> + <value>number-all-superior</value> + <value>number</value> + </choice> + </attribute> + </optional> + </define> + <define name="text-note-ref-content"> + <interleave> + <optional> + <attribute name="text:reference-format"> + <choice> + <ref name="common-ref-format-values"/> + </choice> + </attribute> + </optional> + <ref name="text-note-class"/> + </interleave> + </define> + <define name="text-sequence-ref-content"> + <optional> + <attribute name="text:reference-format"> + <choice> + <ref name="common-ref-format-values"/> + <value>category-and-value</value> + <value>caption</value> + <value>value</value> + </choice> + </attribute> + </optional> + </define> + <define name="common-ref-format-values"> + <choice> + <value>page</value> + <value>chapter</value> + <value>direction</value> + <value>text</value> + </choice> + </define> + <define name="text-hidden-paragraph-attlist"> + <interleave> + <attribute name="text:condition"> + <ref name="string"/> + </attribute> + <optional> + <attribute name="text:is-hidden"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="text-meta-field-attlist"> + <interleave> + <ref name="xml-id"/> + <ref name="common-field-data-style-name-attlist"/> + </interleave> + </define> + <define name="common-value-type-attlist"> + <attribute name="office:value-type"> + <ref name="valueType"/> + </attribute> + </define> + <define name="common-value-and-type-attlist"> + <choice> + <group> + <attribute name="office:value-type"> + <value>float</value> + </attribute> + <attribute name="office:value"> + <ref name="double"/> + </attribute> + </group> + <group> + <attribute name="office:value-type"> + <value>percentage</value> + </attribute> + <attribute name="office:value"> + <ref name="double"/> + </attribute> + </group> + <group> + <attribute name="office:value-type"> + <value>currency</value> + </attribute> + <attribute name="office:value"> + <ref name="double"/> + </attribute> + <optional> + <attribute name="office:currency"> + <ref name="string"/> + </attribute> + </optional> + </group> + <group> + <attribute name="office:value-type"> + <value>date</value> + </attribute> + <attribute name="office:date-value"> + <ref name="dateOrDateTime"/> + </attribute> + </group> + <group> + <attribute name="office:value-type"> + <value>time</value> + </attribute> + <attribute name="office:time-value"> + <ref name="duration"/> + </attribute> + </group> + <group> + <attribute name="office:value-type"> + <value>boolean</value> + </attribute> + <attribute name="office:boolean-value"> + <ref name="boolean"/> + </attribute> + </group> + <group> + <attribute name="office:value-type"> + <value>string</value> + </attribute> + <optional> + <attribute name="office:string-value"> + <ref name="string"/> + </attribute> + </optional> + </group> + </choice> + </define> + <define name="common-field-fixed-attlist"> + <optional> + <attribute name="text:fixed"> + <ref name="boolean"/> + </attribute> + </optional> + </define> + <define name="common-field-name-attlist"> + <attribute name="text:name"> + <ref name="variableName"/> + </attribute> + </define> + <define name="common-field-description-attlist"> + <optional> + <attribute name="text:description"> + <ref name="string"/> + </attribute> + </optional> + </define> + <define name="common-field-display-value-none-attlist"> + <optional> + <attribute name="text:display"> + <choice> + <value>value</value> + <value>none</value> + </choice> + </attribute> + </optional> + </define> + <define name="common-field-display-value-formula-none-attlist"> + <optional> + <attribute name="text:display"> + <choice> + <value>value</value> + <value>formula</value> + <value>none</value> + </choice> + </attribute> + </optional> + </define> + <define name="common-field-display-value-formula-attlist"> + <optional> + <attribute name="text:display"> + <choice> + <value>value</value> + <value>formula</value> + </choice> + </attribute> + </optional> + </define> + <define name="common-field-formula-attlist"> + <optional> + <attribute name="text:formula"> + <ref name="string"/> + </attribute> + </optional> + </define> + <define name="common-field-data-style-name-attlist"> + <optional> + <attribute name="style:data-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + </define> + <define name="common-field-num-format-attlist"> + <optional> + <ref name="common-num-format-attlist"/> + </optional> + </define> + <define name="text-toc-mark-start-attrs"> + <ref name="text-id"/> + <ref name="text-outline-level"/> + </define> + <define name="text-outline-level"> + <optional> + <attribute name="text:outline-level"> + <ref name="positiveInteger"/> + </attribute> + </optional> + </define> + <define name="text-id"> + <attribute name="text:id"> + <ref name="string"/> + </attribute> + </define> + <define name="text-index-name"> + <attribute name="text:index-name"> + <ref name="string"/> + </attribute> + </define> + <define name="text-alphabetical-index-mark-attrs"> + <interleave> + <optional> + <attribute name="text:key1"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="text:key2"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="text:string-value-phonetic"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="text:key1-phonetic"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="text:key2-phonetic"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="text:main-entry"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="text-bibliography-types"> + <choice> + <value>article</value> + <value>book</value> + <value>booklet</value> + <value>conference</value> + <value>custom1</value> + <value>custom2</value> + <value>custom3</value> + <value>custom4</value> + <value>custom5</value> + <value>email</value> + <value>inbook</value> + <value>incollection</value> + <value>inproceedings</value> + <value>journal</value> + <value>manual</value> + <value>mastersthesis</value> + <value>misc</value> + <value>phdthesis</value> + <value>proceedings</value> + <value>techreport</value> + <value>unpublished</value> + <value>www</value> + </choice> + </define> + <define name="text-index-body"> + <element name="text:index-body"> + <zeroOrMore> + <ref name="index-content-main"/> + </zeroOrMore> + </element> + </define> + <define name="index-content-main"> + <choice> + <ref name="text-content"/> + <ref name="text-index-title"/> + </choice> + </define> + <define name="text-index-title"> + <element name="text:index-title"> + <ref name="common-section-attlist"/> + <zeroOrMore> + <ref name="index-content-main"/> + </zeroOrMore> + </element> + </define> + <define name="text-table-of-content"> + <element name="text:table-of-content"> + <ref name="common-section-attlist"/> + <ref name="text-table-of-content-source"/> + <ref name="text-index-body"/> + </element> + </define> + <define name="text-table-of-content-source"> + <element name="text:table-of-content-source"> + <ref name="text-table-of-content-source-attlist"/> + <optional> + <ref name="text-index-title-template"/> + </optional> + <zeroOrMore> + <ref name="text-table-of-content-entry-template"/> + </zeroOrMore> + <zeroOrMore> + <ref name="text-index-source-styles"/> + </zeroOrMore> + </element> + </define> + <define name="text-table-of-content-source-attlist"> + <interleave> + <optional> + <attribute name="text:outline-level"> + <ref name="positiveInteger"/> + </attribute> + </optional> + <optional> + <attribute name="text:use-outline-level"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:use-index-marks"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:use-index-source-styles"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:index-scope"> + <choice> + <value>document</value> + <value>chapter</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="text:relative-tab-stop-position"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="text-table-of-content-entry-template"> + <element name="text:table-of-content-entry-template"> + <ref name="text-table-of-content-entry-template-attlist"/> + <zeroOrMore> + <ref name="text-table-of-content-children"/> + </zeroOrMore> + </element> + </define> + <define name="text-table-of-content-children"> + <choice> + <ref name="text-index-entry-chapter"/> + <ref name="text-index-entry-page-number"/> + <ref name="text-index-entry-text"/> + <ref name="text-index-entry-span"/> + <ref name="text-index-entry-tab-stop"/> + <ref name="text-index-entry-link-start"/> + <ref name="text-index-entry-link-end"/> + </choice> + </define> + <define name="text-table-of-content-entry-template-attlist"> + <interleave> + <attribute name="text:outline-level"> + <ref name="positiveInteger"/> + </attribute> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </interleave> + </define> + <define name="text-illustration-index"> + <element name="text:illustration-index"> + <ref name="common-section-attlist"/> + <ref name="text-illustration-index-source"/> + <ref name="text-index-body"/> + </element> + </define> + <define name="text-illustration-index-source"> + <element name="text:illustration-index-source"> + <ref name="text-illustration-index-source-attrs"/> + <optional> + <ref name="text-index-title-template"/> + </optional> + <optional> + <ref name="text-illustration-index-entry-template"/> + </optional> + </element> + </define> + <define name="text-illustration-index-source-attrs"> + <interleave> + <ref name="text-index-scope-attr"/> + <ref name="text-relative-tab-stop-position-attr"/> + <optional> + <attribute name="text:use-caption"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:caption-sequence-name"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="text:caption-sequence-format"> + <choice> + <value>text</value> + <value>category-and-value</value> + <value>caption</value> + </choice> + </attribute> + </optional> + </interleave> + </define> + <define name="text-index-scope-attr"> + <optional> + <attribute name="text:index-scope"> + <choice> + <value>document</value> + <value>chapter</value> + </choice> + </attribute> + </optional> + </define> + <define name="text-relative-tab-stop-position-attr"> + <optional> + <attribute name="text:relative-tab-stop-position"> + <ref name="boolean"/> + </attribute> + </optional> + </define> + <define name="text-illustration-index-entry-template"> + <element name="text:illustration-index-entry-template"> + <ref name="text-illustration-index-entry-content"/> + </element> + </define> + <define name="text-illustration-index-entry-content"> + <ref name="text-illustration-index-entry-template-attrs"/> + <zeroOrMore> + <choice> + <ref name="text-index-entry-chapter"/> + <ref name="text-index-entry-page-number"/> + <ref name="text-index-entry-text"/> + <ref name="text-index-entry-span"/> + <ref name="text-index-entry-tab-stop"/> + </choice> + </zeroOrMore> + </define> + <define name="text-illustration-index-entry-template-attrs"> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </define> + <define name="text-table-index"> + <element name="text:table-index"> + <ref name="common-section-attlist"/> + <ref name="text-table-index-source"/> + <ref name="text-index-body"/> + </element> + </define> + <define name="text-table-index-source"> + <element name="text:table-index-source"> + <ref name="text-illustration-index-source-attrs"/> + <optional> + <ref name="text-index-title-template"/> + </optional> + <optional> + <ref name="text-table-index-entry-template"/> + </optional> + </element> + </define> + <define name="text-table-index-entry-template"> + <element name="text:table-index-entry-template"> + <ref name="text-illustration-index-entry-content"/> + </element> + </define> + <define name="text-object-index"> + <element name="text:object-index"> + <ref name="common-section-attlist"/> + <ref name="text-object-index-source"/> + <ref name="text-index-body"/> + </element> + </define> + <define name="text-object-index-source"> + <element name="text:object-index-source"> + <ref name="text-object-index-source-attrs"/> + <optional> + <ref name="text-index-title-template"/> + </optional> + <optional> + <ref name="text-object-index-entry-template"/> + </optional> + </element> + </define> + <define name="text-object-index-source-attrs"> + <interleave> + <ref name="text-index-scope-attr"/> + <ref name="text-relative-tab-stop-position-attr"/> + <optional> + <attribute name="text:use-spreadsheet-objects"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:use-math-objects"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:use-draw-objects"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:use-chart-objects"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:use-other-objects"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="text-object-index-entry-template"> + <element name="text:object-index-entry-template"> + <ref name="text-illustration-index-entry-content"/> + </element> + </define> + <define name="text-user-index"> + <element name="text:user-index"> + <ref name="common-section-attlist"/> + <ref name="text-user-index-source"/> + <ref name="text-index-body"/> + </element> + </define> + <define name="text-user-index-source"> + <element name="text:user-index-source"> + <ref name="text-user-index-source-attr"/> + <optional> + <ref name="text-index-title-template"/> + </optional> + <zeroOrMore> + <ref name="text-user-index-entry-template"/> + </zeroOrMore> + <zeroOrMore> + <ref name="text-index-source-styles"/> + </zeroOrMore> + </element> + </define> + <define name="text-user-index-source-attr"> + <interleave> + <ref name="text-index-scope-attr"/> + <ref name="text-relative-tab-stop-position-attr"/> + <optional> + <attribute name="text:use-index-marks"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:use-index-source-styles"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:use-graphics"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:use-tables"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:use-floating-frames"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:use-objects"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:copy-outline-levels"> + <ref name="boolean"/> + </attribute> + </optional> + <attribute name="text:index-name"> + <ref name="string"/> + </attribute> + </interleave> + </define> + <define name="text-user-index-entry-template"> + <element name="text:user-index-entry-template"> + <ref name="text-user-index-entry-template-attrs"/> + <zeroOrMore> + <choice> + <ref name="text-index-entry-chapter"/> + <ref name="text-index-entry-page-number"/> + <ref name="text-index-entry-text"/> + <ref name="text-index-entry-span"/> + <ref name="text-index-entry-tab-stop"/> + </choice> + </zeroOrMore> + </element> + </define> + <define name="text-user-index-entry-template-attrs"> + <interleave> + <attribute name="text:outline-level"> + <ref name="positiveInteger"/> + </attribute> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </interleave> + </define> + <define name="text-alphabetical-index"> + <element name="text:alphabetical-index"> + <ref name="common-section-attlist"/> + <ref name="text-alphabetical-index-source"/> + <ref name="text-index-body"/> + </element> + </define> + <define name="text-alphabetical-index-source"> + <element name="text:alphabetical-index-source"> + <ref name="text-alphabetical-index-source-attrs"/> + <optional> + <ref name="text-index-title-template"/> + </optional> + <zeroOrMore> + <ref name="text-alphabetical-index-entry-template"/> + </zeroOrMore> + </element> + </define> + <define name="text-alphabetical-index-source-attrs"> + <interleave> + <ref name="text-index-scope-attr"/> + <ref name="text-relative-tab-stop-position-attr"/> + <optional> + <attribute name="text:ignore-case"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:main-entry-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="text:alphabetical-separators"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:combine-entries"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:combine-entries-with-dash"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:combine-entries-with-pp"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:use-keys-as-entries"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:capitalize-entries"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:comma-separated"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="fo:language"> + <ref name="languageCode"/> + </attribute> + </optional> + <optional> + <attribute name="fo:country"> + <ref name="countryCode"/> + </attribute> + </optional> + <optional> + <attribute name="fo:script"> + <ref name="scriptCode"/> + </attribute> + </optional> + <optional> + <attribute name="style:rfc-language-tag"> + <ref name="language"/> + </attribute> + </optional> + <optional> + <attribute name="text:sort-algorithm"> + <ref name="string"/> + </attribute> + </optional> + </interleave> + </define> + <define name="text-alphabetical-index-auto-mark-file"> + <element name="text:alphabetical-index-auto-mark-file"> + <attribute name="xlink:type"> + <value>simple</value> + </attribute> + <attribute name="xlink:href"> + <ref name="anyIRI"/> + </attribute> + </element> + </define> + <define name="text-alphabetical-index-entry-template"> + <element name="text:alphabetical-index-entry-template"> + <ref name="text-alphabetical-index-entry-template-attrs"/> + <zeroOrMore> + <choice> + <ref name="text-index-entry-chapter"/> + <ref name="text-index-entry-page-number"/> + <ref name="text-index-entry-text"/> + <ref name="text-index-entry-span"/> + <ref name="text-index-entry-tab-stop"/> + </choice> + </zeroOrMore> + </element> + </define> + <define name="text-alphabetical-index-entry-template-attrs"> + <interleave> + <attribute name="text:outline-level"> + <choice> + <value>1</value> + <value>2</value> + <value>3</value> + <value>separator</value> + </choice> + </attribute> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </interleave> + </define> + <define name="text-bibliography"> + <element name="text:bibliography"> + <ref name="common-section-attlist"/> + <ref name="text-bibliography-source"/> + <ref name="text-index-body"/> + </element> + </define> + <define name="text-bibliography-source"> + <element name="text:bibliography-source"> + <optional> + <ref name="text-index-title-template"/> + </optional> + <zeroOrMore> + <ref name="text-bibliography-entry-template"/> + </zeroOrMore> + </element> + </define> + <define name="text-bibliography-entry-template"> + <element name="text:bibliography-entry-template"> + <ref name="text-bibliography-entry-template-attrs"/> + <zeroOrMore> + <choice> + <ref name="text-index-entry-span"/> + <ref name="text-index-entry-tab-stop"/> + <ref name="text-index-entry-bibliography"/> + </choice> + </zeroOrMore> + </element> + </define> + <define name="text-bibliography-entry-template-attrs"> + <interleave> + <attribute name="text:bibliography-type"> + <ref name="text-bibliography-types"/> + </attribute> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </interleave> + </define> + <define name="text-index-source-styles"> + <element name="text:index-source-styles"> + <attribute name="text:outline-level"> + <ref name="positiveInteger"/> + </attribute> + <zeroOrMore> + <ref name="text-index-source-style"/> + </zeroOrMore> + </element> + </define> + <define name="text-index-source-style"> + <element name="text:index-source-style"> + <attribute name="text:style-name"> + <ref name="styleName"/> + </attribute> + <empty/> + </element> + </define> + <define name="text-index-title-template"> + <element name="text:index-title-template"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <text/> + </element> + </define> + <define name="text-index-entry-chapter"> + <element name="text:index-entry-chapter"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <ref name="text-index-entry-chapter-attrs"/> + </element> + </define> + <define name="text-index-entry-chapter-attrs"> + <interleave> + <optional> + <attribute name="text:display"> + <choice> + <value>name</value> + <value>number</value> + <value>number-and-name</value> + <value>plain-number</value> + <value>plain-number-and-name</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="text:outline-level"> + <ref name="positiveInteger"/> + </attribute> + </optional> + </interleave> + </define> + <define name="text-index-entry-text"> + <element name="text:index-entry-text"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + </element> + </define> + <define name="text-index-entry-page-number"> + <element name="text:index-entry-page-number"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + </element> + </define> + <define name="text-index-entry-span"> + <element name="text:index-entry-span"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <text/> + </element> + </define> + <define name="text-index-entry-bibliography"> + <element name="text:index-entry-bibliography"> + <ref name="text-index-entry-bibliography-attrs"/> + </element> + </define> + <define name="text-index-entry-bibliography-attrs"> + <interleave> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <attribute name="text:bibliography-data-field"> + <choice> + <value>address</value> + <value>annote</value> + <value>author</value> + <value>bibliography-type</value> + <value>booktitle</value> + <value>chapter</value> + <value>custom1</value> + <value>custom2</value> + <value>custom3</value> + <value>custom4</value> + <value>custom5</value> + <value>edition</value> + <value>editor</value> + <value>howpublished</value> + <value>identifier</value> + <value>institution</value> + <value>isbn</value> + <value>issn</value> + <value>journal</value> + <value>month</value> + <value>note</value> + <value>number</value> + <value>organizations</value> + <value>pages</value> + <value>publisher</value> + <value>report-type</value> + <value>school</value> + <value>series</value> + <value>title</value> + <value>url</value> + <value>volume</value> + <value>year</value> + </choice> + </attribute> + </interleave> + </define> + <define name="text-index-entry-tab-stop"> + <element name="text:index-entry-tab-stop"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <ref name="text-index-entry-tab-stop-attrs"/> + </element> + </define> + <define name="text-index-entry-tab-stop-attrs"> + <interleave> + <optional> + <attribute name="style:leader-char"> + <ref name="character"/> + </attribute> + </optional> + <choice> + <attribute name="style:type"> + <value>right</value> + </attribute> + <group> + <attribute name="style:type"> + <value>left</value> + </attribute> + <attribute name="style:position"> + <ref name="length"/> + </attribute> + </group> + </choice> + </interleave> + </define> + <define name="text-index-entry-link-start"> + <element name="text:index-entry-link-start"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + </element> + </define> + <define name="text-index-entry-link-end"> + <element name="text:index-entry-link-end"> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + </element> + </define> + <define name="table-table"> + <element name="table:table"> + <ref name="table-table-attlist"/> + <optional> + <ref name="table-title"/> + </optional> + <optional> + <ref name="table-desc"/> + </optional> + <optional> + <ref name="table-table-source"/> + </optional> + <optional> + <ref name="office-dde-source"/> + </optional> + <optional> + <ref name="table-scenario"/> + </optional> + <optional> + <ref name="office-forms"/> + </optional> + <optional> + <ref name="table-shapes"/> + </optional> + <ref name="table-columns-and-groups"/> + <ref name="table-rows-and-groups"/> + <optional> + <ref name="table-named-expressions"/> + </optional> + </element> + </define> + <define name="table-columns-and-groups"> + <oneOrMore> + <choice> + <ref name="table-table-column-group"/> + <ref name="table-columns-no-group"/> + </choice> + </oneOrMore> + </define> + <define name="table-columns-no-group"> + <choice> + <group> + <ref name="table-columns"/> + <optional> + <ref name="table-table-header-columns"/> + <optional> + <ref name="table-columns"/> + </optional> + </optional> + </group> + <group> + <ref name="table-table-header-columns"/> + <optional> + <ref name="table-columns"/> + </optional> + </group> + </choice> + </define> + <define name="table-columns"> + <choice> + <ref name="table-table-columns"/> + <oneOrMore> + <ref name="table-table-column"/> + </oneOrMore> + </choice> + </define> + <define name="table-rows-and-groups"> + <oneOrMore> + <choice> + <ref name="table-table-row-group"/> + <ref name="table-rows-no-group"/> + </choice> + </oneOrMore> + </define> + <define name="table-rows-no-group"> + <choice> + <group> + <ref name="table-rows"/> + <optional> + <ref name="table-table-header-rows"/> + <optional> + <ref name="table-rows"/> + </optional> + </optional> + </group> + <group> + <ref name="table-table-header-rows"/> + <optional> + <ref name="table-rows"/> + </optional> + </group> + </choice> + </define> + <define name="table-rows"> + <choice> + <ref name="table-table-rows"/> + <oneOrMore> + <optional> + <ref name="text-soft-page-break"/> + </optional> + <ref name="table-table-row"/> + </oneOrMore> + </choice> + </define> + <define name="table-table-attlist"> + <interleave> + <optional> + <attribute name="table:name"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="table:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="table:template-name"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="table:use-first-row-styles"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:use-last-row-styles"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:use-first-column-styles"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:use-last-column-styles"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:use-banding-rows-styles"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:use-banding-columns-styles"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:protected"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:protection-key"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="table:protection-key-digest-algorithm"> + <ref name="anyIRI"/> + </attribute> + </optional> + <optional> + <attribute name="table:print"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:print-ranges"> + <ref name="cellRangeAddressList"/> + </attribute> + </optional> + <optional> + <ref name="xml-id"/> + </optional> + <optional> + <attribute name="table:is-sub-table"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="table-title"> + <element name="table:title"> + <text/> + </element> + </define> + <define name="table-desc"> + <element name="table:desc"> + <text/> + </element> + </define> + <define name="table-table-row"> + <element name="table:table-row"> + <ref name="table-table-row-attlist"/> + <oneOrMore> + <choice> + <ref name="table-table-cell"/> + <ref name="table-covered-table-cell"/> + </choice> + </oneOrMore> + </element> + </define> + <define name="table-table-row-attlist"> + <interleave> + <optional> + <attribute name="table:number-rows-repeated"> + <ref name="positiveInteger"/> + </attribute> + </optional> + <optional> + <attribute name="table:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="table:default-cell-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="table:visibility"> + <ref name="table-visibility-value"/> + </attribute> + </optional> + <optional> + <ref name="xml-id"/> + </optional> + </interleave> + </define> + <define name="table-visibility-value"> + <choice> + <value>visible</value> + <value>collapse</value> + <value>filter</value> + </choice> + </define> + <define name="table-table-cell"> + <element name="table:table-cell"> + <ref name="table-table-cell-attlist"/> + <ref name="table-table-cell-attlist-extra"/> + <ref name="table-table-cell-content"/> + </element> + </define> + <define name="table-covered-table-cell"> + <element name="table:covered-table-cell"> + <ref name="table-table-cell-attlist"/> + <ref name="table-table-cell-content"/> + </element> + </define> + <define name="table-table-cell-content"> + <optional> + <ref name="table-cell-range-source"/> + </optional> + <optional> + <ref name="office-annotation"/> + </optional> + <optional> + <ref name="table-detective"/> + </optional> + <zeroOrMore> + <ref name="text-content"/> + </zeroOrMore> + </define> + <define name="table-table-cell-attlist"> + <interleave> + <optional> + <attribute name="table:number-columns-repeated"> + <ref name="positiveInteger"/> + </attribute> + </optional> + <optional> + <attribute name="table:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="table:content-validation-name"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="table:formula"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <ref name="common-value-and-type-attlist"/> + </optional> + <optional> + <attribute name="table:protect"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:protected"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <ref name="xml-id"/> + </optional> + <optional> + <ref name="common-in-content-meta-attlist"/> + </optional> + </interleave> + </define> + <define name="table-table-cell-attlist-extra"> + <interleave> + <optional> + <attribute name="table:number-columns-spanned"> + <ref name="positiveInteger"/> + </attribute> + </optional> + <optional> + <attribute name="table:number-rows-spanned"> + <ref name="positiveInteger"/> + </attribute> + </optional> + <optional> + <attribute name="table:number-matrix-columns-spanned"> + <ref name="positiveInteger"/> + </attribute> + </optional> + <optional> + <attribute name="table:number-matrix-rows-spanned"> + <ref name="positiveInteger"/> + </attribute> + </optional> + </interleave> + </define> + <define name="table-table-column"> + <element name="table:table-column"> + <ref name="table-table-column-attlist"/> + <empty/> + </element> + </define> + <define name="table-table-column-attlist"> + <interleave> + <optional> + <attribute name="table:number-columns-repeated"> + <ref name="positiveInteger"/> + </attribute> + </optional> + <optional> + <attribute name="table:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="table:visibility"> + <ref name="table-visibility-value"/> + </attribute> + </optional> + <optional> + <attribute name="table:default-cell-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <ref name="xml-id"/> + </optional> + </interleave> + </define> + <define name="table-table-header-columns"> + <element name="table:table-header-columns"> + <oneOrMore> + <ref name="table-table-column"/> + </oneOrMore> + </element> + </define> + <define name="table-table-columns"> + <element name="table:table-columns"> + <oneOrMore> + <ref name="table-table-column"/> + </oneOrMore> + </element> + </define> + <define name="table-table-column-group"> + <element name="table:table-column-group"> + <ref name="table-table-column-group-attlist"/> + <ref name="table-columns-and-groups"/> + </element> + </define> + <define name="table-table-column-group-attlist"> + <optional> + <attribute name="table:display"> + <ref name="boolean"/> + </attribute> + </optional> + </define> + <define name="table-table-header-rows"> + <element name="table:table-header-rows"> + <oneOrMore> + <optional> + <ref name="text-soft-page-break"/> + </optional> + <ref name="table-table-row"/> + </oneOrMore> + </element> + </define> + <define name="table-table-rows"> + <element name="table:table-rows"> + <oneOrMore> + <optional> + <ref name="text-soft-page-break"/> + </optional> + <ref name="table-table-row"/> + </oneOrMore> + </element> + </define> + <define name="table-table-row-group"> + <element name="table:table-row-group"> + <ref name="table-table-row-group-attlist"/> + <ref name="table-rows-and-groups"/> + </element> + </define> + <define name="table-table-row-group-attlist"> + <optional> + <attribute name="table:display"> + <ref name="boolean"/> + </attribute> + </optional> + </define> + <define name="cellAddress"> + <data type="string"> + <param name="pattern">($?([^\. ']+|'([^']|'')+'))?\.$?[A-Z]+$?[0-9]+</param> + </data> + </define> + <define name="cellRangeAddress"> + <choice> + <data type="string"> + <param name="pattern">($?([^\. ']+|'([^']|'')+'))?\.$?[A-Z]+$?[0-9]+(:($?([^\. ']+|'([^']|'')+'))?\.$?[A-Z]+$?[0-9]+)?</param> + </data> + <data type="string"> + <param name="pattern">($?([^\. ']+|'([^']|'')+'))?\.$?[0-9]+:($?([^\. ']+|'([^']|'')+'))?\.$?[0-9]+</param> + </data> + <data type="string"> + <param name="pattern">($?([^\. ']+|'([^']|'')+'))?\.$?[A-Z]+:($?([^\. ']+|'([^']|'')+'))?\.$?[A-Z]+</param> + </data> + </choice> + </define> + <define name="cellRangeAddressList"> + <data type="string"/> + <dc:description>Value is a space separated list of "cellRangeAddress" patterns</dc:description> + </define> + <define name="table-table-source"> + <element name="table:table-source"> + <ref name="table-table-source-attlist"/> + <ref name="table-linked-source-attlist"/> + <empty/> + </element> + </define> + <define name="table-table-source-attlist"> + <interleave> + <optional> + <attribute name="table:mode"> + <choice> + <value>copy-all</value> + <value>copy-results-only</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="table:table-name"> + <ref name="string"/> + </attribute> + </optional> + </interleave> + </define> + <define name="table-linked-source-attlist"> + <interleave> + <attribute name="xlink:type"> + <value>simple</value> + </attribute> + <attribute name="xlink:href"> + <ref name="anyIRI"/> + </attribute> + <optional> + <attribute name="xlink:actuate"> + <value>onRequest</value> + </attribute> + </optional> + <optional> + <attribute name="table:filter-name"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="table:filter-options"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="table:refresh-delay"> + <ref name="duration"/> + </attribute> + </optional> + </interleave> + </define> + <define name="table-scenario"> + <element name="table:scenario"> + <ref name="table-scenario-attlist"/> + <empty/> + </element> + </define> + <define name="table-scenario-attlist"> + <interleave> + <attribute name="table:scenario-ranges"> + <ref name="cellRangeAddressList"/> + </attribute> + <attribute name="table:is-active"> + <ref name="boolean"/> + </attribute> + <optional> + <attribute name="table:display-border"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:border-color"> + <ref name="color"/> + </attribute> + </optional> + <optional> + <attribute name="table:copy-back"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:copy-styles"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:copy-formulas"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:comment"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="table:protected"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="table-shapes"> + <element name="table:shapes"> + <oneOrMore> + <ref name="shape"/> + </oneOrMore> + </element> + </define> + <define name="table-cell-range-source"> + <element name="table:cell-range-source"> + <ref name="table-table-cell-range-source-attlist"/> + <ref name="table-linked-source-attlist"/> + <empty/> + </element> + </define> + <define name="table-table-cell-range-source-attlist"> + <interleave> + <attribute name="table:name"> + <ref name="string"/> + </attribute> + <attribute name="table:last-column-spanned"> + <ref name="positiveInteger"/> + </attribute> + <attribute name="table:last-row-spanned"> + <ref name="positiveInteger"/> + </attribute> + </interleave> + </define> + <define name="table-detective"> + <element name="table:detective"> + <zeroOrMore> + <ref name="table-highlighted-range"/> + </zeroOrMore> + <zeroOrMore> + <ref name="table-operation"/> + </zeroOrMore> + </element> + </define> + <define name="table-operation"> + <element name="table:operation"> + <ref name="table-operation-attlist"/> + <empty/> + </element> + </define> + <define name="table-operation-attlist"> + <interleave> + <attribute name="table:name"> + <choice> + <value>trace-dependents</value> + <value>remove-dependents</value> + <value>trace-precedents</value> + <value>remove-precedents</value> + <value>trace-errors</value> + </choice> + </attribute> + <attribute name="table:index"> + <ref name="nonNegativeInteger"/> + </attribute> + </interleave> + </define> + <define name="table-highlighted-range"> + <element name="table:highlighted-range"> + <choice> + <group> + <ref name="table-highlighted-range-attlist"/> + </group> + <group> + <ref name="table-highlighted-range-attlist-invalid"/> + </group> + </choice> + <empty/> + </element> + </define> + <define name="table-highlighted-range-attlist"> + <interleave> + <optional> + <attribute name="table:cell-range-address"> + <ref name="cellRangeAddress"/> + </attribute> + </optional> + <attribute name="table:direction"> + <choice> + <value>from-another-table</value> + <value>to-another-table</value> + <value>from-same-table</value> + </choice> + </attribute> + <optional> + <attribute name="table:contains-error"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="table-highlighted-range-attlist-invalid"> + <attribute name="table:marked-invalid"> + <ref name="boolean"/> + </attribute> + </define> + <define name="office-spreadsheet-attlist"> + <optional> + <attribute name="table:structure-protected"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:protection-key"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="table:protection-key-digest-algorithm"> + <ref name="anyIRI"/> + </attribute> + </optional> + </define> + <define name="table-calculation-settings"> + <element name="table:calculation-settings"> + <ref name="table-calculation-setting-attlist"/> + <optional> + <ref name="table-null-date"/> + </optional> + <optional> + <ref name="table-iteration"/> + </optional> + </element> + </define> + <define name="table-calculation-setting-attlist"> + <interleave> + <optional> + <attribute name="table:case-sensitive"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:precision-as-shown"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:search-criteria-must-apply-to-whole-cell"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:automatic-find-labels"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:use-regular-expressions"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:use-wildcards"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:null-year"> + <ref name="positiveInteger"/> + </attribute> + </optional> + </interleave> + </define> + <define name="table-null-date"> + <element name="table:null-date"> + <optional> + <attribute name="table:value-type"> + <value>date</value> + </attribute> + </optional> + <optional> + <attribute name="table:date-value"> + <ref name="date"/> + </attribute> + </optional> + <empty/> + </element> + </define> + <define name="table-iteration"> + <element name="table:iteration"> + <optional> + <attribute name="table:status"> + <choice> + <value>enable</value> + <value>disable</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="table:steps"> + <ref name="positiveInteger"/> + </attribute> + </optional> + <optional> + <attribute name="table:maximum-difference"> + <ref name="double"/> + </attribute> + </optional> + <empty/> + </element> + </define> + <define name="table-content-validations"> + <element name="table:content-validations"> + <oneOrMore> + <ref name="table-content-validation"/> + </oneOrMore> + </element> + </define> + <define name="table-content-validation"> + <element name="table:content-validation"> + <ref name="table-validation-attlist"/> + <optional> + <ref name="table-help-message"/> + </optional> + <optional> + <choice> + <ref name="table-error-message"/> + <group> + <ref name="table-error-macro"/> + <ref name="office-event-listeners"/> + </group> + </choice> + </optional> + </element> + </define> + <define name="table-validation-attlist"> + <interleave> + <attribute name="table:name"> + <ref name="string"/> + </attribute> + <optional> + <attribute name="table:condition"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="table:base-cell-address"> + <ref name="cellAddress"/> + </attribute> + </optional> + <optional> + <attribute name="table:allow-empty-cell"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:display-list"> + <choice> + <value>none</value> + <value>unsorted</value> + <value>sort-ascending</value> + </choice> + </attribute> + </optional> + </interleave> + </define> + <define name="table-help-message"> + <element name="table:help-message"> + <optional> + <attribute name="table:title"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="table:display"> + <ref name="boolean"/> + </attribute> + </optional> + <zeroOrMore> + <ref name="text-p"/> + </zeroOrMore> + </element> + </define> + <define name="table-error-message"> + <element name="table:error-message"> + <optional> + <attribute name="table:title"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="table:display"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:message-type"> + <choice> + <value>stop</value> + <value>warning</value> + <value>information</value> + </choice> + </attribute> + </optional> + <zeroOrMore> + <ref name="text-p"/> + </zeroOrMore> + </element> + </define> + <define name="table-error-macro"> + <element name="table:error-macro"> + <optional> + <attribute name="table:execute"> + <ref name="boolean"/> + </attribute> + </optional> + </element> + </define> + <define name="table-label-ranges"> + <element name="table:label-ranges"> + <zeroOrMore> + <ref name="table-label-range"/> + </zeroOrMore> + </element> + </define> + <define name="table-label-range"> + <element name="table:label-range"> + <ref name="table-label-range-attlist"/> + <empty/> + </element> + </define> + <define name="table-label-range-attlist"> + <interleave> + <attribute name="table:label-cell-range-address"> + <ref name="cellRangeAddress"/> + </attribute> + <attribute name="table:data-cell-range-address"> + <ref name="cellRangeAddress"/> + </attribute> + <attribute name="table:orientation"> + <choice> + <value>column</value> + <value>row</value> + </choice> + </attribute> + </interleave> + </define> + <define name="table-named-expressions"> + <element name="table:named-expressions"> + <zeroOrMore> + <choice> + <ref name="table-named-range"/> + <ref name="table-named-expression"/> + </choice> + </zeroOrMore> + </element> + </define> + <define name="table-named-range"> + <element name="table:named-range"> + <ref name="table-named-range-attlist"/> + <empty/> + </element> + </define> + <define name="table-named-range-attlist"> + <attribute name="table:name"> + <ref name="string"/> + </attribute> + <attribute name="table:cell-range-address"> + <ref name="cellRangeAddress"/> + </attribute> + <optional> + <attribute name="table:base-cell-address"> + <ref name="cellAddress"/> + </attribute> + </optional> + <optional> + <attribute name="table:range-usable-as"> + <choice> + <value>none</value> + <list> + <oneOrMore> + <choice> + <value>print-range</value> + <value>filter</value> + <value>repeat-row</value> + <value>repeat-column</value> + </choice> + </oneOrMore> + </list> + </choice> + </attribute> + </optional> + </define> + <define name="table-named-expression"> + <element name="table:named-expression"> + <ref name="table-named-expression-attlist"/> + <empty/> + </element> + </define> + <define name="table-named-expression-attlist"> + <attribute name="table:name"> + <ref name="string"/> + </attribute> + <attribute name="table:expression"> + <ref name="string"/> + </attribute> + <optional> + <attribute name="table:base-cell-address"> + <ref name="cellAddress"/> + </attribute> + </optional> + </define> + <define name="table-database-ranges"> + <element name="table:database-ranges"> + <zeroOrMore> + <ref name="table-database-range"/> + </zeroOrMore> + </element> + </define> + <define name="table-database-range"> + <element name="table:database-range"> + <ref name="table-database-range-attlist"/> + <optional> + <choice> + <ref name="table-database-source-sql"/> + <ref name="table-database-source-table"/> + <ref name="table-database-source-query"/> + </choice> + </optional> + <optional> + <ref name="table-filter"/> + </optional> + <optional> + <ref name="table-sort"/> + </optional> + <optional> + <ref name="table-subtotal-rules"/> + </optional> + </element> + </define> + <define name="table-database-range-attlist"> + <interleave> + <optional> + <attribute name="table:name"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="table:is-selection"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:on-update-keep-styles"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:on-update-keep-size"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:has-persistent-data"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:orientation"> + <choice> + <value>column</value> + <value>row</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="table:contains-header"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:display-filter-buttons"> + <ref name="boolean"/> + </attribute> + </optional> + <attribute name="table:target-range-address"> + <ref name="cellRangeAddress"/> + </attribute> + <optional> + <attribute name="table:refresh-delay"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="table-database-source-sql"> + <element name="table:database-source-sql"> + <ref name="table-database-source-sql-attlist"/> + <empty/> + </element> + </define> + <define name="table-database-source-sql-attlist"> + <interleave> + <attribute name="table:database-name"> + <ref name="string"/> + </attribute> + <attribute name="table:sql-statement"> + <ref name="string"/> + </attribute> + <optional> + <attribute name="table:parse-sql-statement"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="table-database-source-query"> + <element name="table:database-source-table"> + <ref name="table-database-source-table-attlist"/> + <empty/> + </element> + </define> + <define name="table-database-source-table-attlist"> + <interleave> + <attribute name="table:database-name"> + <ref name="string"/> + </attribute> + <attribute name="table:database-table-name"> + <ref name="string"/> + </attribute> + </interleave> + </define> + <define name="table-database-source-table"> + <element name="table:database-source-query"> + <ref name="table-database-source-query-attlist"/> + <empty/> + </element> + </define> + <define name="table-database-source-query-attlist"> + <interleave> + <attribute name="table:database-name"> + <ref name="string"/> + </attribute> + <attribute name="table:query-name"> + <ref name="string"/> + </attribute> + </interleave> + </define> + <define name="table-sort"> + <element name="table:sort"> + <ref name="table-sort-attlist"/> + <oneOrMore> + <ref name="table-sort-by"/> + </oneOrMore> + </element> + </define> + <define name="table-sort-attlist"> + <interleave> + <optional> + <attribute name="table:bind-styles-to-content"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:target-range-address"> + <ref name="cellRangeAddress"/> + </attribute> + </optional> + <optional> + <attribute name="table:case-sensitive"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:language"> + <ref name="languageCode"/> + </attribute> + </optional> + <optional> + <attribute name="table:country"> + <ref name="countryCode"/> + </attribute> + </optional> + <optional> + <attribute name="table:script"> + <ref name="scriptCode"/> + </attribute> + </optional> + <optional> + <attribute name="table:rfc-language-tag"> + <ref name="language"/> + </attribute> + </optional> + <optional> + <attribute name="table:algorithm"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="table:embedded-number-behavior"> + <choice> + <value>alpha-numeric</value> + <value>integer</value> + <value>double</value> + </choice> + </attribute> + </optional> + </interleave> + </define> + <define name="table-sort-by"> + <element name="table:sort-by"> + <ref name="table-sort-by-attlist"/> + <empty/> + </element> + </define> + <define name="table-sort-by-attlist"> + <interleave> + <attribute name="table:field-number"> + <ref name="nonNegativeInteger"/> + </attribute> + <optional> + <attribute name="table:data-type"> + <choice> + <value>text</value> + <value>number</value> + <value>automatic</value> + <ref name="string"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="table:order"> + <choice> + <value>ascending</value> + <value>descending</value> + </choice> + </attribute> + </optional> + </interleave> + </define> + <define name="table-subtotal-rules"> + <element name="table:subtotal-rules"> + <ref name="table-subtotal-rules-attlist"/> + <optional> + <ref name="table-sort-groups"/> + </optional> + <zeroOrMore> + <ref name="table-subtotal-rule"/> + </zeroOrMore> + </element> + </define> + <define name="table-subtotal-rules-attlist"> + <interleave> + <optional> + <attribute name="table:bind-styles-to-content"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:case-sensitive"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:page-breaks-on-group-change"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="table-sort-groups"> + <element name="table:sort-groups"> + <ref name="table-sort-groups-attlist"/> + <empty/> + </element> + </define> + <define name="table-sort-groups-attlist"> + <interleave> + <optional> + <attribute name="table:data-type"> + <choice> + <value>text</value> + <value>number</value> + <value>automatic</value> + <ref name="string"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="table:order"> + <choice> + <value>ascending</value> + <value>descending</value> + </choice> + </attribute> + </optional> + </interleave> + </define> + <define name="table-subtotal-rule"> + <element name="table:subtotal-rule"> + <ref name="table-subtotal-rule-attlist"/> + <zeroOrMore> + <ref name="table-subtotal-field"/> + </zeroOrMore> + </element> + </define> + <define name="table-subtotal-rule-attlist"> + <attribute name="table:group-by-field-number"> + <ref name="nonNegativeInteger"/> + </attribute> + </define> + <define name="table-subtotal-field"> + <element name="table:subtotal-field"> + <ref name="table-subtotal-field-attlist"/> + <empty/> + </element> + </define> + <define name="table-subtotal-field-attlist"> + <interleave> + <attribute name="table:field-number"> + <ref name="nonNegativeInteger"/> + </attribute> + <attribute name="table:function"> + <choice> + <value>average</value> + <value>count</value> + <value>countnums</value> + <value>max</value> + <value>min</value> + <value>product</value> + <value>stdev</value> + <value>stdevp</value> + <value>sum</value> + <value>var</value> + <value>varp</value> + <ref name="string"/> + </choice> + </attribute> + </interleave> + </define> + <define name="table-filter"> + <element name="table:filter"> + <ref name="table-filter-attlist"/> + <choice> + <ref name="table-filter-condition"/> + <ref name="table-filter-and"/> + <ref name="table-filter-or"/> + </choice> + </element> + </define> + <define name="table-filter-attlist"> + <interleave> + <optional> + <attribute name="table:target-range-address"> + <ref name="cellRangeAddress"/> + </attribute> + </optional> + <optional> + <attribute name="table:condition-source"> + <choice> + <value>self</value> + <value>cell-range</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="table:condition-source-range-address"> + <ref name="cellRangeAddress"/> + </attribute> + </optional> + <optional> + <attribute name="table:display-duplicates"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="table-filter-and"> + <element name="table:filter-and"> + <oneOrMore> + <choice> + <ref name="table-filter-or"/> + <ref name="table-filter-condition"/> + </choice> + </oneOrMore> + </element> + </define> + <define name="table-filter-or"> + <element name="table:filter-or"> + <oneOrMore> + <choice> + <ref name="table-filter-and"/> + <ref name="table-filter-condition"/> + </choice> + </oneOrMore> + </element> + </define> + <define name="table-filter-condition"> + <element name="table:filter-condition"> + <ref name="table-filter-condition-attlist"/> + <zeroOrMore> + <ref name="table-filter-set-item"/> + </zeroOrMore> + </element> + </define> + <define name="table-filter-condition-attlist"> + <interleave> + <attribute name="table:field-number"> + <ref name="nonNegativeInteger"/> + </attribute> + <attribute name="table:value"> + <choice> + <ref name="string"/> + <ref name="double"/> + </choice> + </attribute> + <attribute name="table:operator"> + <ref name="string"/> + </attribute> + <optional> + <attribute name="table:case-sensitive"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="table:data-type"> + <choice> + <value>text</value> + <value>number</value> + </choice> + </attribute> + </optional> + </interleave> + </define> + <define name="table-filter-set-item"> + <element name="table:filter-set-item"> + <attribute name="table:value"> + <ref name="string"/> + </attribute> + <empty/> + </element> + </define> + <define name="table-data-pilot-tables"> + <element name="table:data-pilot-tables"> + <zeroOrMore> + <ref name="table-data-pilot-table"/> + </zeroOrMore> + </element> + </define> + <define name="table-data-pilot-table"> + <element name="table:data-pilot-table"> + <ref name="table-data-pilot-table-attlist"/> + <optional> + <choice> + <ref name="table-database-source-sql"/> + <ref name="table-database-source-table"/> + <ref name="table-database-source-query"/> + <ref name="table-source-service"/> + <ref name="table-source-cell-range"/> + </choice> + </optional> + <oneOrMore> + <ref name="table-data-pilot-field"/> + </oneOrMore> + </element> + </define> + <define name="table-data-pilot-table-attlist"> + <interleave> + <attribute name="table:name"> + <ref name="string"/> + </attribute> + <optional> + <attribute name="table:application-data"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="table:grand-total"> + <choice> + <value>none</value> + <value>row</value> + <value>column</value> + <value>both</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="table:ignore-empty-rows"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:identify-categories"> + <ref name="boolean"/> + </attribute> + </optional> + <attribute name="table:target-range-address"> + <ref name="cellRangeAddress"/> + </attribute> + <optional> + <attribute name="table:buttons"> + <ref name="cellRangeAddressList"/> + </attribute> + </optional> + <optional> + <attribute name="table:show-filter-button"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:drill-down-on-double-click"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="table-source-cell-range"> + <element name="table:source-cell-range"> + <ref name="table-source-cell-range-attlist"/> + <optional> + <ref name="table-filter"/> + </optional> + </element> + </define> + <define name="table-source-cell-range-attlist"> + <attribute name="table:cell-range-address"> + <ref name="cellRangeAddress"/> + </attribute> + </define> + <define name="table-source-service"> + <element name="table:source-service"> + <ref name="table-source-service-attlist"/> + <empty/> + </element> + </define> + <define name="table-source-service-attlist"> + <interleave> + <attribute name="table:name"> + <ref name="string"/> + </attribute> + <attribute name="table:source-name"> + <ref name="string"/> + </attribute> + <attribute name="table:object-name"> + <ref name="string"/> + </attribute> + <optional> + <attribute name="table:user-name"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="table:password"> + <ref name="string"/> + </attribute> + </optional> + </interleave> + </define> + <define name="table-data-pilot-field"> + <element name="table:data-pilot-field"> + <ref name="table-data-pilot-field-attlist"/> + <optional> + <ref name="table-data-pilot-level"/> + </optional> + <optional> + <ref name="table-data-pilot-field-reference"/> + </optional> + <optional> + <ref name="table-data-pilot-groups"/> + </optional> + </element> + </define> + <define name="table-data-pilot-field-attlist"> + <interleave> + <attribute name="table:source-field-name"> + <ref name="string"/> + </attribute> + <choice> + <attribute name="table:orientation"> + <choice> + <value>row</value> + <value>column</value> + <value>data</value> + <value>hidden</value> + </choice> + </attribute> + <group> + <attribute name="table:orientation"> + <value>page</value> + </attribute> + <attribute name="table:selected-page"> + <ref name="string"/> + </attribute> + </group> + </choice> + <optional> + <attribute name="table:is-data-layout-field"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="table:function"> + <choice> + <value>auto</value> + <value>average</value> + <value>count</value> + <value>countnums</value> + <value>max</value> + <value>min</value> + <value>product</value> + <value>stdev</value> + <value>stdevp</value> + <value>sum</value> + <value>var</value> + <value>varp</value> + <ref name="string"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="table:used-hierarchy"> + <ref name="integer"/> + </attribute> + </optional> + </interleave> + </define> + <define name="table-data-pilot-level"> + <element name="table:data-pilot-level"> + <ref name="table-data-pilot-level-attlist"/> + <optional> + <ref name="table-data-pilot-subtotals"/> + </optional> + <optional> + <ref name="table-data-pilot-members"/> + </optional> + <optional> + <ref name="table-data-pilot-display-info"/> + </optional> + <optional> + <ref name="table-data-pilot-sort-info"/> + </optional> + <optional> + <ref name="table-data-pilot-layout-info"/> + </optional> + </element> + </define> + <define name="table-data-pilot-level-attlist"> + <optional> + <attribute name="table:show-empty"> + <ref name="boolean"/> + </attribute> + </optional> + </define> + <define name="table-data-pilot-subtotals"> + <element name="table:data-pilot-subtotals"> + <zeroOrMore> + <ref name="table-data-pilot-subtotal"/> + </zeroOrMore> + </element> + </define> + <define name="table-data-pilot-subtotal"> + <element name="table:data-pilot-subtotal"> + <ref name="table-data-pilot-subtotal-attlist"/> + <empty/> + </element> + </define> + <define name="table-data-pilot-subtotal-attlist"> + <attribute name="table:function"> + <choice> + <value>auto</value> + <value>average</value> + <value>count</value> + <value>countnums</value> + <value>max</value> + <value>min</value> + <value>product</value> + <value>stdev</value> + <value>stdevp</value> + <value>sum</value> + <value>var</value> + <value>varp</value> + <ref name="string"/> + </choice> + </attribute> + </define> + <define name="table-data-pilot-members"> + <element name="table:data-pilot-members"> + <zeroOrMore> + <ref name="table-data-pilot-member"/> + </zeroOrMore> + </element> + </define> + <define name="table-data-pilot-member"> + <element name="table:data-pilot-member"> + <ref name="table-data-pilot-member-attlist"/> + <empty/> + </element> + </define> + <define name="table-data-pilot-member-attlist"> + <interleave> + <attribute name="table:name"> + <ref name="string"/> + </attribute> + <optional> + <attribute name="table:display"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:show-details"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="table-data-pilot-display-info"> + <element name="table:data-pilot-display-info"> + <ref name="table-data-pilot-display-info-attlist"/> + <empty/> + </element> + </define> + <define name="table-data-pilot-display-info-attlist"> + <interleave> + <attribute name="table:enabled"> + <ref name="boolean"/> + </attribute> + <attribute name="table:data-field"> + <ref name="string"/> + </attribute> + <attribute name="table:member-count"> + <ref name="nonNegativeInteger"/> + </attribute> + <attribute name="table:display-member-mode"> + <choice> + <value>from-top</value> + <value>from-bottom</value> + </choice> + </attribute> + </interleave> + </define> + <define name="table-data-pilot-sort-info"> + <element name="table:data-pilot-sort-info"> + <ref name="table-data-pilot-sort-info-attlist"/> + <empty/> + </element> + </define> + <define name="table-data-pilot-sort-info-attlist"> + <interleave> + <choice> + <group> + <attribute name="table:sort-mode"> + <value>data</value> + </attribute> + <attribute name="table:data-field"> + <ref name="string"/> + </attribute> + </group> + <attribute name="table:sort-mode"> + <choice> + <value>none</value> + <value>manual</value> + <value>name</value> + </choice> + </attribute> + </choice> + <attribute name="table:order"> + <choice> + <value>ascending</value> + <value>descending</value> + </choice> + </attribute> + </interleave> + </define> + <define name="table-data-pilot-layout-info"> + <element name="table:data-pilot-layout-info"> + <ref name="table-data-pilot-layout-info-attlist"/> + <empty/> + </element> + </define> + <define name="table-data-pilot-layout-info-attlist"> + <interleave> + <attribute name="table:layout-mode"> + <choice> + <value>tabular-layout</value> + <value>outline-subtotals-top</value> + <value>outline-subtotals-bottom</value> + </choice> + </attribute> + <attribute name="table:add-empty-lines"> + <ref name="boolean"/> + </attribute> + </interleave> + </define> + <define name="table-data-pilot-field-reference"> + <element name="table:data-pilot-field-reference"> + <ref name="table-data-pilot-field-reference-attlist"/> + </element> + </define> + <define name="table-data-pilot-field-reference-attlist"> + <interleave> + <attribute name="table:field-name"> + <ref name="string"/> + </attribute> + <choice> + <group> + <attribute name="table:member-type"> + <value>named</value> + </attribute> + <attribute name="table:member-name"> + <ref name="string"/> + </attribute> + </group> + <attribute name="table:member-type"> + <choice> + <value>previous</value> + <value>next</value> + </choice> + </attribute> + </choice> + <attribute name="table:type"> + <choice> + <value>none</value> + <value>member-difference</value> + <value>member-percentage</value> + <value>member-percentage-difference</value> + <value>running-total</value> + <value>row-percentage</value> + <value>column-percentage</value> + <value>total-percentage</value> + <value>index</value> + </choice> + </attribute> + </interleave> + </define> + <define name="table-data-pilot-groups"> + <element name="table:data-pilot-groups"> + <ref name="table-data-pilot-groups-attlist"/> + <oneOrMore> + <ref name="table-data-pilot-group"/> + </oneOrMore> + </element> + </define> + <define name="table-data-pilot-groups-attlist"> + <interleave> + <attribute name="table:source-field-name"> + <ref name="string"/> + </attribute> + <choice> + <attribute name="table:date-start"> + <choice> + <ref name="dateOrDateTime"/> + <value>auto</value> + </choice> + </attribute> + <attribute name="table:start"> + <choice> + <ref name="double"/> + <value>auto</value> + </choice> + </attribute> + </choice> + <choice> + <attribute name="table:date-end"> + <choice> + <ref name="dateOrDateTime"/> + <value>auto</value> + </choice> + </attribute> + <attribute name="table:end"> + <choice> + <ref name="double"/> + <value>auto</value> + </choice> + </attribute> + </choice> + <attribute name="table:step"> + <ref name="double"/> + </attribute> + <attribute name="table:grouped-by"> + <choice> + <value>seconds</value> + <value>minutes</value> + <value>hours</value> + <value>days</value> + <value>months</value> + <value>quarters</value> + <value>years</value> + </choice> + </attribute> + </interleave> + </define> + <define name="table-data-pilot-group"> + <element name="table:data-pilot-group"> + <ref name="table-data-pilot-group-attlist"/> + <oneOrMore> + <ref name="table-data-pilot-group-member"/> + </oneOrMore> + </element> + </define> + <define name="table-data-pilot-group-attlist"> + <attribute name="table:name"> + <ref name="string"/> + </attribute> + </define> + <define name="table-data-pilot-group-member"> + <element name="table:data-pilot-group-member"> + <ref name="table-data-pilot-group-member-attlist"/> + </element> + </define> + <define name="table-data-pilot-group-member-attlist"> + <attribute name="table:name"> + <ref name="string"/> + </attribute> + </define> + <define name="table-consolidation"> + <element name="table:consolidation"> + <ref name="table-consolidation-attlist"/> + <empty/> + </element> + </define> + <define name="table-consolidation-attlist"> + <interleave> + <attribute name="table:function"> + <choice> + <value>average</value> + <value>count</value> + <value>countnums</value> + <value>max</value> + <value>min</value> + <value>product</value> + <value>stdev</value> + <value>stdevp</value> + <value>sum</value> + <value>var</value> + <value>varp</value> + <ref name="string"/> + </choice> + </attribute> + <attribute name="table:source-cell-range-addresses"> + <ref name="cellRangeAddressList"/> + </attribute> + <attribute name="table:target-cell-address"> + <ref name="cellAddress"/> + </attribute> + <optional> + <attribute name="table:use-labels"> + <choice> + <value>none</value> + <value>row</value> + <value>column</value> + <value>both</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="table:link-to-source-data"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="table-dde-links"> + <element name="table:dde-links"> + <oneOrMore> + <ref name="table-dde-link"/> + </oneOrMore> + </element> + </define> + <define name="table-tracked-changes"> + <element name="table:tracked-changes"> + <ref name="table-tracked-changes-attlist"/> + <zeroOrMore> + <choice> + <ref name="table-cell-content-change"/> + <ref name="table-insertion"/> + <ref name="table-deletion"/> + <ref name="table-movement"/> + </choice> + </zeroOrMore> + </element> + </define> + <define name="table-tracked-changes-attlist"> + <optional> + <attribute name="table:track-changes"> + <ref name="boolean"/> + </attribute> + </optional> + </define> + <define name="table-insertion"> + <element name="table:insertion"> + <ref name="table-insertion-attlist"/> + <ref name="common-table-change-attlist"/> + <ref name="office-change-info"/> + <optional> + <ref name="table-dependencies"/> + </optional> + <optional> + <ref name="table-deletions"/> + </optional> + </element> + </define> + <define name="table-insertion-attlist"> + <interleave> + <attribute name="table:type"> + <choice> + <value>row</value> + <value>column</value> + <value>table</value> + </choice> + </attribute> + <attribute name="table:position"> + <ref name="integer"/> + </attribute> + <optional> + <attribute name="table:count"> + <ref name="positiveInteger"/> + </attribute> + </optional> + <optional> + <attribute name="table:table"> + <ref name="integer"/> + </attribute> + </optional> + </interleave> + </define> + <define name="table-dependencies"> + <element name="table:dependencies"> + <oneOrMore> + <ref name="table-dependency"/> + </oneOrMore> + </element> + </define> + <define name="table-dependency"> + <element name="table:dependency"> + <attribute name="table:id"> + <ref name="string"/> + </attribute> + <empty/> + </element> + </define> + <define name="table-deletions"> + <element name="table:deletions"> + <oneOrMore> + <choice> + <ref name="table-cell-content-deletion"/> + <ref name="table-change-deletion"/> + </choice> + </oneOrMore> + </element> + </define> + <define name="table-cell-content-deletion"> + <element name="table:cell-content-deletion"> + <optional> + <attribute name="table:id"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <ref name="table-cell-address"/> + </optional> + <optional> + <ref name="table-change-track-table-cell"/> + </optional> + </element> + </define> + <define name="table-change-deletion"> + <element name="table:change-deletion"> + <optional> + <attribute name="table:id"> + <ref name="string"/> + </attribute> + </optional> + <empty/> + </element> + </define> + <define name="table-deletion"> + <element name="table:deletion"> + <ref name="table-deletion-attlist"/> + <ref name="common-table-change-attlist"/> + <ref name="office-change-info"/> + <optional> + <ref name="table-dependencies"/> + </optional> + <optional> + <ref name="table-deletions"/> + </optional> + <optional> + <ref name="table-cut-offs"/> + </optional> + </element> + </define> + <define name="table-deletion-attlist"> + <interleave> + <attribute name="table:type"> + <choice> + <value>row</value> + <value>column</value> + <value>table</value> + </choice> + </attribute> + <attribute name="table:position"> + <ref name="integer"/> + </attribute> + <optional> + <attribute name="table:table"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="table:multi-deletion-spanned"> + <ref name="integer"/> + </attribute> + </optional> + </interleave> + </define> + <define name="table-cut-offs"> + <element name="table:cut-offs"> + <choice> + <oneOrMore> + <ref name="table-movement-cut-off"/> + </oneOrMore> + <group> + <ref name="table-insertion-cut-off"/> + <zeroOrMore> + <ref name="table-movement-cut-off"/> + </zeroOrMore> + </group> + </choice> + </element> + </define> + <define name="table-insertion-cut-off"> + <element name="table:insertion-cut-off"> + <ref name="table-insertion-cut-off-attlist"/> + <empty/> + </element> + </define> + <define name="table-insertion-cut-off-attlist"> + <interleave> + <attribute name="table:id"> + <ref name="string"/> + </attribute> + <attribute name="table:position"> + <ref name="integer"/> + </attribute> + </interleave> + </define> + <define name="table-movement-cut-off"> + <element name="table:movement-cut-off"> + <ref name="table-movement-cut-off-attlist"/> + <empty/> + </element> + </define> + <define name="table-movement-cut-off-attlist"> + <choice> + <attribute name="table:position"> + <ref name="integer"/> + </attribute> + <group> + <attribute name="table:start-position"> + <ref name="integer"/> + </attribute> + <attribute name="table:end-position"> + <ref name="integer"/> + </attribute> + </group> + </choice> + </define> + <define name="table-movement"> + <element name="table:movement"> + <ref name="common-table-change-attlist"/> + <ref name="table-source-range-address"/> + <ref name="table-target-range-address"/> + <ref name="office-change-info"/> + <optional> + <ref name="table-dependencies"/> + </optional> + <optional> + <ref name="table-deletions"/> + </optional> + </element> + </define> + <define name="table-source-range-address"> + <element name="table:source-range-address"> + <ref name="common-table-range-attlist"/> + <empty/> + </element> + </define> + <define name="table-target-range-address"> + <element name="table:target-range-address"> + <ref name="common-table-range-attlist"/> + <empty/> + </element> + </define> + <define name="common-table-range-attlist"> + <choice> + <group> + <ref name="common-table-cell-address-attlist"/> + </group> + <group> + <ref name="common-table-cell-range-address-attlist"/> + </group> + </choice> + </define> + <define name="common-table-cell-address-attlist"> + <attribute name="table:column"> + <ref name="integer"/> + </attribute> + <attribute name="table:row"> + <ref name="integer"/> + </attribute> + <attribute name="table:table"> + <ref name="integer"/> + </attribute> + </define> + <define name="common-table-cell-range-address-attlist"> + <attribute name="table:start-column"> + <ref name="integer"/> + </attribute> + <attribute name="table:start-row"> + <ref name="integer"/> + </attribute> + <attribute name="table:start-table"> + <ref name="integer"/> + </attribute> + <attribute name="table:end-column"> + <ref name="integer"/> + </attribute> + <attribute name="table:end-row"> + <ref name="integer"/> + </attribute> + <attribute name="table:end-table"> + <ref name="integer"/> + </attribute> + </define> + <define name="table-change-track-table-cell"> + <element name="table:change-track-table-cell"> + <ref name="table-change-track-table-cell-attlist"/> + <zeroOrMore> + <ref name="text-p"/> + </zeroOrMore> + </element> + </define> + <define name="table-change-track-table-cell-attlist"> + <interleave> + <optional> + <attribute name="table:cell-address"> + <ref name="cellAddress"/> + </attribute> + </optional> + <optional> + <attribute name="table:matrix-covered"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:formula"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="table:number-matrix-columns-spanned"> + <ref name="positiveInteger"/> + </attribute> + </optional> + <optional> + <attribute name="table:number-matrix-rows-spanned"> + <ref name="positiveInteger"/> + </attribute> + </optional> + <optional> + <ref name="common-value-and-type-attlist"/> + </optional> + </interleave> + </define> + <define name="table-cell-content-change"> + <element name="table:cell-content-change"> + <ref name="common-table-change-attlist"/> + <ref name="table-cell-address"/> + <ref name="office-change-info"/> + <optional> + <ref name="table-dependencies"/> + </optional> + <optional> + <ref name="table-deletions"/> + </optional> + <ref name="table-previous"/> + </element> + </define> + <define name="table-cell-address"> + <element name="table:cell-address"> + <ref name="common-table-cell-address-attlist"/> + <empty/> + </element> + </define> + <define name="table-previous"> + <element name="table:previous"> + <optional> + <attribute name="table:id"> + <ref name="string"/> + </attribute> + </optional> + <ref name="table-change-track-table-cell"/> + </element> + </define> + <define name="common-table-change-attlist"> + <interleave> + <attribute name="table:id"> + <ref name="string"/> + </attribute> + <optional> + <attribute name="table:acceptance-state"> + <choice> + <value>accepted</value> + <value>rejected</value> + <value>pending</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="table:rejecting-change-id"> + <ref name="string"/> + </attribute> + </optional> + </interleave> + </define> + <define name="style-handout-master"> + <element name="style:handout-master"> + <ref name="common-presentation-header-footer-attlist"/> + <ref name="style-handout-master-attlist"/> + <zeroOrMore> + <ref name="shape"/> + </zeroOrMore> + </element> + </define> + <define name="style-handout-master-attlist"> + <interleave> + <optional> + <attribute name="presentation:presentation-page-layout-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <attribute name="style:page-layout-name"> + <ref name="styleNameRef"/> + </attribute> + <optional> + <attribute name="draw:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + </interleave> + </define> + <define name="draw-layer-set"> + <element name="draw:layer-set"> + <zeroOrMore> + <ref name="draw-layer"/> + </zeroOrMore> + </element> + </define> + <define name="draw-layer"> + <element name="draw:layer"> + <ref name="draw-layer-attlist"/> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + </element> + </define> + <define name="draw-layer-attlist"> + <interleave> + <attribute name="draw:name"> + <ref name="string"/> + </attribute> + <optional> + <attribute name="draw:protected"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="draw:display"> + <choice> + <value>always</value> + <value>screen</value> + <value>printer</value> + <value>none</value> + </choice> + </attribute> + </optional> + </interleave> + </define> + <define name="draw-page"> + <element name="draw:page"> + <ref name="common-presentation-header-footer-attlist"/> + <ref name="draw-page-attlist"/> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <optional> + <ref name="draw-layer-set"/> + </optional> + <optional> + <ref name="office-forms"/> + </optional> + <zeroOrMore> + <ref name="shape"/> + </zeroOrMore> + <optional> + <choice> + <ref name="presentation-animations"/> + <ref name="animation-element"/> + </choice> + </optional> + <optional> + <ref name="presentation-notes"/> + </optional> + </element> + </define> + <define name="draw-page-attlist"> + <interleave> + <optional> + <attribute name="draw:name"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="draw:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <attribute name="draw:master-page-name"> + <ref name="styleNameRef"/> + </attribute> + <optional> + <attribute name="presentation:presentation-page-layout-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <group> + <ref name="xml-id"/> + <optional> + <attribute name="draw:id"> + <ref name="NCName"/> + </attribute> + </optional> + </group> + </optional> + <optional> + <attribute name="draw:nav-order"> + <ref name="IDREFS"/> + </attribute> + </optional> + </interleave> + </define> + <define name="common-presentation-header-footer-attlist"> + <interleave> + <optional> + <attribute name="presentation:use-header-name"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="presentation:use-footer-name"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="presentation:use-date-time-name"> + <ref name="string"/> + </attribute> + </optional> + </interleave> + </define> + <define name="shape"> + <choice> + <ref name="shape-instance"/> + <ref name="draw-a"/> + </choice> + </define> + <define name="shape-instance"> + <choice> + <ref name="draw-rect"/> + <ref name="draw-line"/> + <ref name="draw-polyline"/> + <ref name="draw-polygon"/> + <ref name="draw-regular-polygon"/> + <ref name="draw-path"/> + <ref name="draw-circle"/> + <ref name="draw-ellipse"/> + <ref name="draw-g"/> + <ref name="draw-page-thumbnail"/> + <ref name="draw-frame"/> + <ref name="draw-measure"/> + <ref name="draw-caption"/> + <ref name="draw-connector"/> + <ref name="draw-control"/> + <ref name="dr3d-scene"/> + <ref name="draw-custom-shape"/> + </choice> + </define> + <define name="draw-rect"> + <element name="draw:rect"> + <ref name="draw-rect-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <ref name="common-draw-caption-id-attlist"/> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <ref name="draw-text"/> + </element> + </define> + <define name="draw-rect-attlist"> + <choice> + <optional> + <attribute name="draw:corner-radius"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> + <group> + <optional> + <attribute name="svg:rx"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> + <optional> + <attribute name="svg:ry"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> + </group> + </choice> + </define> + <define name="draw-line"> + <element name="draw:line"> + <ref name="draw-line-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <ref name="common-draw-caption-id-attlist"/> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <ref name="draw-text"/> + </element> + </define> + <define name="draw-line-attlist"> + <interleave> + <attribute name="svg:x1"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:y1"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:x2"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:y2"> + <ref name="coordinate"/> + </attribute> + </interleave> + </define> + <define name="draw-polyline"> + <element name="draw:polyline"> + <ref name="common-draw-points-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-viewbox-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <ref name="common-draw-caption-id-attlist"/> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <ref name="draw-text"/> + </element> + </define> + <define name="common-draw-points-attlist"> + <attribute name="draw:points"> + <ref name="points"/> + </attribute> + </define> + <define name="draw-polygon"> + <element name="draw:polygon"> + <ref name="common-draw-points-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-viewbox-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <ref name="common-draw-caption-id-attlist"/> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <ref name="draw-text"/> + </element> + </define> + <define name="draw-regular-polygon"> + <element name="draw:regular-polygon"> + <ref name="draw-regular-polygon-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <ref name="common-draw-caption-id-attlist"/> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <ref name="draw-text"/> + </element> + </define> + <define name="draw-regular-polygon-attlist"> + <interleave> + <choice> + <attribute name="draw:concave"> + <value>false</value> + </attribute> + <group> + <attribute name="draw:concave"> + <value>true</value> + </attribute> + <ref name="draw-regular-polygon-sharpness-attlist"/> + </group> + </choice> + <attribute name="draw:corners"> + <ref name="positiveInteger"/> + </attribute> + </interleave> + </define> + <define name="draw-regular-polygon-sharpness-attlist"> + <attribute name="draw:sharpness"> + <ref name="percent"/> + </attribute> + </define> + <define name="draw-path"> + <element name="draw:path"> + <ref name="common-draw-path-data-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-viewbox-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <ref name="common-draw-caption-id-attlist"/> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <ref name="draw-text"/> + </element> + </define> + <define name="common-draw-path-data-attlist"> + <attribute name="svg:d"> + <ref name="pathData"/> + </attribute> + </define> + <define name="draw-circle"> + <element name="draw:circle"> + <choice> + <group> + <ref name="draw-circle-attlist"/> + <ref name="common-draw-circle-ellipse-pos-attlist"/> + </group> + <group> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + </group> + </choice> + <ref name="common-draw-circle-ellipse-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <ref name="common-draw-caption-id-attlist"/> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <ref name="draw-text"/> + </element> + </define> + <define name="common-draw-circle-ellipse-pos-attlist"> + <attribute name="svg:cx"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:cy"> + <ref name="coordinate"/> + </attribute> + </define> + <define name="draw-circle-attlist"> + <attribute name="svg:r"> + <ref name="length"/> + </attribute> + </define> + <define name="common-draw-circle-ellipse-attlist"> + <interleave> + <optional> + <attribute name="draw:kind"> + <choice> + <value>full</value> + <value>section</value> + <value>cut</value> + <value>arc</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="draw:start-angle"> + <ref name="angle"/> + </attribute> + </optional> + <optional> + <attribute name="draw:end-angle"> + <ref name="angle"/> + </attribute> + </optional> + </interleave> + </define> + <define name="draw-ellipse"> + <element name="draw:ellipse"> + <choice> + <group> + <ref name="draw-ellipse-attlist"/> + <ref name="common-draw-circle-ellipse-pos-attlist"/> + </group> + <group> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + </group> + </choice> + <ref name="common-draw-circle-ellipse-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <ref name="common-draw-caption-id-attlist"/> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <ref name="draw-text"/> + </element> + </define> + <define name="draw-ellipse-attlist"> + <attribute name="svg:rx"> + <ref name="length"/> + </attribute> + <attribute name="svg:ry"> + <ref name="length"/> + </attribute> + </define> + <define name="draw-connector"> + <element name="draw:connector"> + <ref name="draw-connector-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <ref name="common-draw-caption-id-attlist"/> + <ref name="common-draw-viewbox-attlist"/> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <ref name="draw-text"/> + </element> + </define> + <define name="draw-connector-attlist"> + <interleave> + <optional> + <attribute name="draw:type"> + <choice> + <value>standard</value> + <value>lines</value> + <value>line</value> + <value>curve</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="svg:x1"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:y1"> + <ref name="coordinate"/> + </attribute> + </optional> + <optional> + <attribute name="draw:start-shape"> + <ref name="IDREF"/> + </attribute> + </optional> + <optional> + <attribute name="draw:start-glue-point"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="svg:x2"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:y2"> + <ref name="coordinate"/> + </attribute> + </optional> + <optional> + <attribute name="draw:end-shape"> + <ref name="IDREF"/> + </attribute> + </optional> + <optional> + <attribute name="draw:end-glue-point"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="draw:line-skew"> + <list> + <ref name="length"/> + <optional> + <ref name="length"/> + <optional> + <ref name="length"/> + </optional> + </optional> + </list> + </attribute> + </optional> + <optional> + <attribute name="svg:d"> + <ref name="pathData"/> + </attribute> + </optional> + </interleave> + </define> + <define name="draw-caption"> + <element name="draw:caption"> + <ref name="draw-caption-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <ref name="common-draw-caption-id-attlist"/> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <ref name="draw-text"/> + </element> + </define> + <define name="draw-caption-attlist"> + <interleave> + <optional> + <attribute name="draw:caption-point-x"> + <ref name="coordinate"/> + </attribute> + <attribute name="draw:caption-point-y"> + <ref name="coordinate"/> + </attribute> + </optional> + <optional> + <attribute name="draw:corner-radius"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> + </interleave> + </define> + <define name="draw-measure"> + <element name="draw:measure"> + <ref name="draw-measure-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <ref name="common-draw-caption-id-attlist"/> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <ref name="draw-text"/> + </element> + </define> + <define name="draw-measure-attlist"> + <interleave> + <attribute name="svg:x1"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:y1"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:x2"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:y2"> + <ref name="coordinate"/> + </attribute> + </interleave> + </define> + <define name="draw-control"> + <element name="draw:control"> + <ref name="draw-control-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <ref name="common-draw-caption-id-attlist"/> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + </element> + </define> + <define name="draw-control-attlist"> + <attribute name="draw:control"> + <ref name="IDREF"/> + </attribute> + </define> + <define name="draw-page-thumbnail"> + <element name="draw:page-thumbnail"> + <ref name="draw-page-thumbnail-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="presentation-shape-attlist"/> + <ref name="common-draw-shape-with-styles-attlist"/> + <ref name="common-draw-caption-id-attlist"/> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + </element> + </define> + <define name="draw-page-thumbnail-attlist"> + <optional> + <attribute name="draw:page-number"> + <ref name="positiveInteger"/> + </attribute> + </optional> + </define> + <define name="draw-g"> + <element name="draw:g"> + <ref name="draw-g-attlist"/> + <ref name="common-draw-z-index-attlist"/> + <ref name="common-draw-name-attlist"/> + <ref name="common-draw-id-attlist"/> + <ref name="common-draw-style-name-attlist"/> + <ref name="common-text-spreadsheet-shape-attlist"/> + <ref name="common-draw-caption-id-attlist"/> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <zeroOrMore> + <ref name="shape"/> + </zeroOrMore> + </element> + </define> + <define name="draw-g-attlist"> + <optional> + <attribute name="svg:y"> + <ref name="coordinate"/> + </attribute> + </optional> + </define> + <define name="common-draw-name-attlist"> + <optional> + <attribute name="draw:name"> + <ref name="string"/> + </attribute> + </optional> + </define> + <define name="common-draw-caption-id-attlist"> + <optional> + <attribute name="draw:caption-id"> + <ref name="IDREF"/> + </attribute> + </optional> + </define> + <define name="common-draw-position-attlist"> + <optional> + <attribute name="svg:x"> + <ref name="coordinate"/> + </attribute> + </optional> + <optional> + <attribute name="svg:y"> + <ref name="coordinate"/> + </attribute> + </optional> + </define> + <define name="common-draw-size-attlist"> + <optional> + <attribute name="svg:width"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="svg:height"> + <ref name="length"/> + </attribute> + </optional> + </define> + <define name="common-draw-transform-attlist"> + <optional> + <attribute name="draw:transform"> + <ref name="string"/> + </attribute> + </optional> + </define> + <define name="common-draw-viewbox-attlist"> + <attribute name="svg:viewBox"> + <list> + <ref name="integer"/> + <ref name="integer"/> + <ref name="integer"/> + <ref name="integer"/> + </list> + </attribute> + </define> + <define name="common-draw-style-name-attlist"> + <choice> + <group> + <optional> + <attribute name="draw:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="draw:class-names"> + <ref name="styleNameRefs"/> + </attribute> + </optional> + </group> + <group> + <optional> + <attribute name="presentation:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="presentation:class-names"> + <ref name="styleNameRefs"/> + </attribute> + </optional> + </group> + </choice> + </define> + <define name="common-draw-text-style-name-attlist"> + <optional> + <attribute name="draw:text-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + </define> + <define name="common-draw-layer-name-attlist"> + <optional> + <attribute name="draw:layer"> + <ref name="string"/> + </attribute> + </optional> + </define> + <define name="common-draw-id-attlist"> + <optional> + <group> + <ref name="xml-id"/> + <optional> + <attribute name="draw:id"> + <ref name="NCName"/> + </attribute> + </optional> + </group> + </optional> + </define> + <define name="common-draw-z-index-attlist"> + <optional> + <attribute name="draw:z-index"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + </define> + <define name="common-text-spreadsheet-shape-attlist"> + <interleave> + <optional> + <attribute name="table:end-cell-address"> + <ref name="cellAddress"/> + </attribute> + </optional> + <optional> + <attribute name="table:end-x"> + <ref name="coordinate"/> + </attribute> + </optional> + <optional> + <attribute name="table:end-y"> + <ref name="coordinate"/> + </attribute> + </optional> + <optional> + <attribute name="table:table-background"> + <ref name="boolean"/> + </attribute> + </optional> + <ref name="common-text-anchor-attlist"/> + </interleave> + </define> + <define name="common-text-anchor-attlist"> + <interleave> + <optional> + <attribute name="text:anchor-type"> + <choice> + <value>page</value> + <value>frame</value> + <value>paragraph</value> + <value>char</value> + <value>as-char</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="text:anchor-page-number"> + <ref name="positiveInteger"/> + </attribute> + </optional> + </interleave> + </define> + <define name="draw-text"> + <zeroOrMore> + <choice> + <ref name="text-p"/> + <ref name="text-list"/> + </choice> + </zeroOrMore> + </define> + <define name="common-draw-shape-with-styles-attlist"> + <ref name="common-draw-z-index-attlist"/> + <ref name="common-draw-id-attlist"/> + <ref name="common-draw-layer-name-attlist"/> + <ref name="common-draw-style-name-attlist"/> + <ref name="common-draw-transform-attlist"/> + <ref name="common-draw-name-attlist"/> + <ref name="common-text-spreadsheet-shape-attlist"/> + </define> + <define name="common-draw-shape-with-text-and-styles-attlist"> + <ref name="common-draw-shape-with-styles-attlist"/> + <ref name="common-draw-text-style-name-attlist"/> + </define> + <define name="draw-glue-point"> + <element name="draw:glue-point"> + <ref name="draw-glue-point-attlist"/> + <empty/> + </element> + </define> + <define name="draw-glue-point-attlist"> + <interleave> + <attribute name="draw:id"> + <ref name="nonNegativeInteger"/> + </attribute> + <attribute name="svg:x"> + <choice> + <ref name="distance"/> + <ref name="percent"/> + </choice> + </attribute> + <attribute name="svg:y"> + <choice> + <ref name="distance"/> + <ref name="percent"/> + </choice> + </attribute> + <optional> + <attribute name="draw:align"> + <choice> + <value>top-left</value> + <value>top</value> + <value>top-right</value> + <value>left</value> + <value>center</value> + <value>right</value> + <value>bottom-left</value> + <value>bottom-right</value> + </choice> + </attribute> + </optional> + <attribute name="draw:escape-direction"> + <choice> + <value>auto</value> + <value>left</value> + <value>right</value> + <value>up</value> + <value>down</value> + <value>horizontal</value> + <value>vertical</value> + </choice> + </attribute> + </interleave> + </define> + <define name="svg-title"> + <element name="svg:title"> + <text/> + </element> + </define> + <define name="svg-desc"> + <element name="svg:desc"> + <text/> + </element> + </define> + <define name="draw-frame"> + <element name="draw:frame"> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-rel-size-attlist"/> + <ref name="common-draw-caption-id-attlist"/> + <ref name="presentation-shape-attlist"/> + <ref name="draw-frame-attlist"/> + <zeroOrMore> + <choice> + <ref name="draw-text-box"/> + <ref name="draw-image"/> + <ref name="draw-object"/> + <ref name="draw-object-ole"/> + <ref name="draw-applet"/> + <ref name="draw-floating-frame"/> + <ref name="draw-plugin"/> + <ref name="table-table"/> + </choice> + </zeroOrMore> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <optional> + <ref name="draw-image-map"/> + </optional> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <optional> + <choice> + <ref name="draw-contour-polygon"/> + <ref name="draw-contour-path"/> + </choice> + </optional> + </element> + </define> + <define name="common-draw-rel-size-attlist"> + <ref name="common-draw-size-attlist"/> + <optional> + <attribute name="style:rel-width"> + <choice> + <ref name="percent"/> + <value>scale</value> + <value>scale-min</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:rel-height"> + <choice> + <ref name="percent"/> + <value>scale</value> + <value>scale-min</value> + </choice> + </attribute> + </optional> + </define> + <define name="draw-frame-attlist"> + <optional> + <attribute name="draw:copy-of"> + <ref name="string"/> + </attribute> + </optional> + </define> + <define name="draw-text-box"> + <element name="draw:text-box"> + <ref name="draw-text-box-attlist"/> + <zeroOrMore> + <ref name="text-content"/> + </zeroOrMore> + </element> + </define> + <define name="draw-text-box-attlist"> + <interleave> + <optional> + <attribute name="draw:chain-next-name"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="draw:corner-radius"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> + <optional> + <attribute name="fo:min-height"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="fo:min-width"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="fo:max-height"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="fo:max-width"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <group> + <ref name="xml-id"/> + <optional> + <attribute name="text:id"> + <ref name="NCName"/> + </attribute> + </optional> + </group> + </optional> + </interleave> + </define> + <define name="draw-image"> + <element name="draw:image"> + <ref name="draw-image-attlist"/> + <choice> + <ref name="common-draw-data-attlist"/> + <ref name="office-binary-data"/> + </choice> + <ref name="draw-text"/> + </element> + </define> + <define name="common-draw-data-attlist"> + <group> + <attribute name="xlink:type"> + <value>simple</value> + </attribute> + <attribute name="xlink:href"> + <ref name="anyIRI"/> + </attribute> + <optional> + <attribute name="xlink:show"> + <value>embed</value> + </attribute> + </optional> + <optional> + <attribute name="xlink:actuate"> + <value>onLoad</value> + </attribute> + </optional> + </group> + </define> + <define name="office-binary-data"> + <element name="office:binary-data"> + <ref name="base64Binary"/> + </element> + </define> + <define name="draw-image-attlist"> + <interleave> + <optional> + <attribute name="draw:filter-name"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <ref name="xml-id"/> + </optional> + </interleave> + </define> + <define name="draw-object"> + <element name="draw:object"> + <ref name="draw-object-attlist"/> + <choice> + <ref name="common-draw-data-attlist"/> + <ref name="office-document"/> + <ref name="math-math"/> + </choice> + </element> + </define> + <define name="draw-object-ole"> + <element name="draw:object-ole"> + <ref name="draw-object-ole-attlist"/> + <choice> + <ref name="common-draw-data-attlist"/> + <ref name="office-binary-data"/> + </choice> + </element> + </define> + <define name="draw-object-attlist"> + <interleave> + <optional> + <attribute name="draw:notify-on-update-of-ranges"> + <choice> + <ref name="cellRangeAddressList"/> + <ref name="string"/> + </choice> + </attribute> + </optional> + <optional> + <ref name="xml-id"/> + </optional> + </interleave> + </define> + <define name="draw-object-ole-attlist"> + <interleave> + <optional> + <attribute name="draw:class-id"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <ref name="xml-id"/> + </optional> + </interleave> + </define> + <define name="draw-applet"> + <element name="draw:applet"> + <ref name="draw-applet-attlist"/> + <optional> + <ref name="common-draw-data-attlist"/> + </optional> + <zeroOrMore> + <ref name="draw-param"/> + </zeroOrMore> + </element> + </define> + <define name="draw-applet-attlist"> + <interleave> + <optional> + <attribute name="draw:code"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="draw:object"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="draw:archive"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="draw:may-script"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <ref name="xml-id"/> + </optional> + </interleave> + </define> + <define name="draw-plugin"> + <element name="draw:plugin"> + <ref name="draw-plugin-attlist"/> + <ref name="common-draw-data-attlist"/> + <zeroOrMore> + <ref name="draw-param"/> + </zeroOrMore> + </element> + </define> + <define name="draw-plugin-attlist"> + <interleave> + <optional> + <attribute name="draw:mime-type"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <ref name="xml-id"/> + </optional> + </interleave> + </define> + <define name="draw-param"> + <element name="draw:param"> + <ref name="draw-param-attlist"/> + <empty/> + </element> + </define> + <define name="draw-param-attlist"> + <interleave> + <optional> + <attribute name="draw:name"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="draw:value"> + <ref name="string"/> + </attribute> + </optional> + </interleave> + </define> + <define name="draw-floating-frame"> + <element name="draw:floating-frame"> + <ref name="draw-floating-frame-attlist"/> + <ref name="common-draw-data-attlist"/> + </element> + </define> + <define name="draw-floating-frame-attlist"> + <interleave> + <optional> + <attribute name="draw:frame-name"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <ref name="xml-id"/> + </optional> + </interleave> + </define> + <define name="draw-contour-polygon"> + <element name="draw:contour-polygon"> + <ref name="common-contour-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-viewbox-attlist"/> + <ref name="common-draw-points-attlist"/> + <empty/> + </element> + </define> + <define name="draw-contour-path"> + <element name="draw:contour-path"> + <ref name="common-contour-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-viewbox-attlist"/> + <ref name="common-draw-path-data-attlist"/> + <empty/> + </element> + </define> + <define name="common-contour-attlist"> + <attribute name="draw:recreate-on-edit"> + <ref name="boolean"/> + </attribute> + </define> + <define name="draw-a"> + <element name="draw:a"> + <ref name="draw-a-attlist"/> + <ref name="shape-instance"/> + </element> + </define> + <define name="draw-a-attlist"> + <interleave> + <attribute name="xlink:type"> + <value>simple</value> + </attribute> + <attribute name="xlink:href"> + <ref name="anyIRI"/> + </attribute> + <optional> + <attribute name="xlink:actuate"> + <value>onRequest</value> + </attribute> + </optional> + <optional> + <attribute name="office:target-frame-name"> + <ref name="targetFrameName"/> + </attribute> + </optional> + <optional> + <attribute name="xlink:show"> + <choice> + <value>new</value> + <value>replace</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="office:name"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="office:title"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="office:server-map"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <ref name="xml-id"/> + </optional> + </interleave> + </define> + <define name="draw-image-map"> + <element name="draw:image-map"> + <zeroOrMore> + <choice> + <ref name="draw-area-rectangle"/> + <ref name="draw-area-circle"/> + <ref name="draw-area-polygon"/> + </choice> + </zeroOrMore> + </element> + </define> + <define name="draw-area-rectangle"> + <element name="draw:area-rectangle"> + <ref name="common-draw-area-attlist"/> + <attribute name="svg:x"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:y"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:width"> + <ref name="length"/> + </attribute> + <attribute name="svg:height"> + <ref name="length"/> + </attribute> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + </element> + </define> + <define name="draw-area-circle"> + <element name="draw:area-circle"> + <ref name="common-draw-area-attlist"/> + <attribute name="svg:cx"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:cy"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:r"> + <ref name="length"/> + </attribute> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + </element> + </define> + <define name="draw-area-polygon"> + <element name="draw:area-polygon"> + <ref name="common-draw-area-attlist"/> + <attribute name="svg:x"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:y"> + <ref name="coordinate"/> + </attribute> + <attribute name="svg:width"> + <ref name="length"/> + </attribute> + <attribute name="svg:height"> + <ref name="length"/> + </attribute> + <ref name="common-draw-viewbox-attlist"/> + <ref name="common-draw-points-attlist"/> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + </element> + </define> + <define name="common-draw-area-attlist"> + <interleave> + <optional> + <attribute name="xlink:type"> + <value>simple</value> + </attribute> + <attribute name="xlink:href"> + <ref name="anyIRI"/> + </attribute> + <optional> + <attribute name="office:target-frame-name"> + <ref name="targetFrameName"/> + </attribute> + </optional> + <optional> + <attribute name="xlink:show"> + <choice> + <value>new</value> + <value>replace</value> + </choice> + </attribute> + </optional> + </optional> + <optional> + <attribute name="office:name"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="draw:nohref"> + <value>nohref</value> + </attribute> + </optional> + </interleave> + </define> + <define name="dr3d-scene"> + <element name="dr3d:scene"> + <ref name="dr3d-scene-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-style-name-attlist"/> + <ref name="common-draw-z-index-attlist"/> + <ref name="common-draw-id-attlist"/> + <ref name="common-draw-layer-name-attlist"/> + <ref name="common-text-spreadsheet-shape-attlist"/> + <ref name="common-dr3d-transform-attlist"/> + <ref name="common-draw-caption-id-attlist"/> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <zeroOrMore> + <ref name="dr3d-light"/> + </zeroOrMore> + <zeroOrMore> + <ref name="shapes3d"/> + </zeroOrMore> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + </element> + </define> + <define name="shapes3d"> + <choice> + <ref name="dr3d-scene"/> + <ref name="dr3d-extrude"/> + <ref name="dr3d-sphere"/> + <ref name="dr3d-rotate"/> + <ref name="dr3d-cube"/> + </choice> + </define> + <define name="dr3d-scene-attlist"> + <interleave> + <optional> + <attribute name="dr3d:vrp"> + <ref name="vector3D"/> + </attribute> + </optional> + <optional> + <attribute name="dr3d:vpn"> + <ref name="vector3D"/> + </attribute> + </optional> + <optional> + <attribute name="dr3d:vup"> + <ref name="vector3D"/> + </attribute> + </optional> + <optional> + <attribute name="dr3d:projection"> + <choice> + <value>parallel</value> + <value>perspective</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="dr3d:distance"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="dr3d:focal-length"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="dr3d:shadow-slant"> + <ref name="angle"/> + </attribute> + </optional> + <optional> + <attribute name="dr3d:shade-mode"> + <choice> + <value>flat</value> + <value>phong</value> + <value>gouraud</value> + <value>draft</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="dr3d:ambient-color"> + <ref name="color"/> + </attribute> + </optional> + <optional> + <attribute name="dr3d:lighting-mode"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="common-dr3d-transform-attlist"> + <optional> + <attribute name="dr3d:transform"> + <ref name="string"/> + </attribute> + </optional> + </define> + <define name="dr3d-light"> + <element name="dr3d:light"> + <ref name="dr3d-light-attlist"/> + <empty/> + </element> + </define> + <define name="dr3d-light-attlist"> + <interleave> + <optional> + <attribute name="dr3d:diffuse-color"> + <ref name="color"/> + </attribute> + </optional> + <attribute name="dr3d:direction"> + <ref name="vector3D"/> + </attribute> + <optional> + <attribute name="dr3d:enabled"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="dr3d:specular"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="dr3d-cube"> + <element name="dr3d:cube"> + <ref name="dr3d-cube-attlist"/> + <ref name="common-draw-z-index-attlist"/> + <ref name="common-draw-id-attlist"/> + <ref name="common-draw-layer-name-attlist"/> + <ref name="common-draw-style-name-attlist"/> + <ref name="common-dr3d-transform-attlist"/> + <empty/> + </element> + </define> + <define name="dr3d-cube-attlist"> + <optional> + <attribute name="dr3d:min-edge"> + <ref name="vector3D"/> + </attribute> + </optional> + <optional> + <attribute name="dr3d:max-edge"> + <ref name="vector3D"/> + </attribute> + </optional> + </define> + <define name="dr3d-sphere"> + <element name="dr3d:sphere"> + <ref name="dr3d-sphere-attlist"/> + <ref name="common-draw-z-index-attlist"/> + <ref name="common-draw-id-attlist"/> + <ref name="common-draw-layer-name-attlist"/> + <ref name="common-draw-style-name-attlist"/> + <ref name="common-dr3d-transform-attlist"/> + <empty/> + </element> + </define> + <define name="dr3d-sphere-attlist"> + <interleave> + <optional> + <attribute name="dr3d:center"> + <ref name="vector3D"/> + </attribute> + </optional> + <optional> + <attribute name="dr3d:size"> + <ref name="vector3D"/> + </attribute> + </optional> + </interleave> + </define> + <define name="dr3d-extrude"> + <element name="dr3d:extrude"> + <ref name="common-draw-path-data-attlist"/> + <ref name="common-draw-viewbox-attlist"/> + <ref name="common-draw-id-attlist"/> + <ref name="common-draw-z-index-attlist"/> + <ref name="common-draw-layer-name-attlist"/> + <ref name="common-draw-style-name-attlist"/> + <ref name="common-dr3d-transform-attlist"/> + <empty/> + </element> + </define> + <define name="dr3d-rotate"> + <element name="dr3d:rotate"> + <ref name="common-draw-viewbox-attlist"/> + <ref name="common-draw-path-data-attlist"/> + <ref name="common-draw-z-index-attlist"/> + <ref name="common-draw-id-attlist"/> + <ref name="common-draw-layer-name-attlist"/> + <ref name="common-draw-style-name-attlist"/> + <ref name="common-dr3d-transform-attlist"/> + <empty/> + </element> + </define> + <define name="draw-custom-shape"> + <element name="draw:custom-shape"> + <ref name="draw-custom-shape-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <ref name="common-draw-caption-id-attlist"/> + <optional> + <ref name="svg-title"/> + </optional> + <optional> + <ref name="svg-desc"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <ref name="draw-glue-point"/> + </zeroOrMore> + <ref name="draw-text"/> + <optional> + <ref name="draw-enhanced-geometry"/> + </optional> + </element> + </define> + <define name="draw-custom-shape-attlist"> + <interleave> + <optional> + <attribute name="draw:engine"> + <ref name="namespacedToken"/> + </attribute> + </optional> + <optional> + <attribute name="draw:data"> + <ref name="string"/> + </attribute> + </optional> + </interleave> + </define> + <define name="draw-enhanced-geometry"> + <element name="draw:enhanced-geometry"> + <ref name="draw-enhanced-geometry-attlist"/> + <zeroOrMore> + <ref name="draw-equation"/> + </zeroOrMore> + <zeroOrMore> + <ref name="draw-handle"/> + </zeroOrMore> + </element> + </define> + <define name="draw-enhanced-geometry-attlist"> + <interleave> + <optional> + <attribute name="draw:type"> + <ref name="custom-shape-type"/> + </attribute> + </optional> + <optional> + <attribute name="svg:viewBox"> + <list> + <ref name="integer"/> + <ref name="integer"/> + <ref name="integer"/> + <ref name="integer"/> + </list> + </attribute> + </optional> + <optional> + <attribute name="draw:mirror-vertical"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="draw:mirror-horizontal"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="draw:text-rotate-angle"> + <ref name="angle"/> + </attribute> + </optional> + <optional> + <attribute name="draw:extrusion-allowed"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="draw:text-path-allowed"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="draw:concentric-gradient-fill-allowed"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="draw:extrusion"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="draw:extrusion-brightness"> + <ref name="zeroToHundredPercent"/> + </attribute> + </optional> + <optional> + <attribute name="draw:extrusion-depth"> + <list> + <ref name="length"/> + <ref name="double"/> + </list> + </attribute> + </optional> + <optional> + <attribute name="draw:extrusion-diffusion"> + <ref name="percent"/> + </attribute> + </optional> + <optional> + <attribute name="draw:extrusion-number-of-line-segments"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="draw:extrusion-light-face"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="draw:extrusion-first-light-harsh"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="draw:extrusion-second-light-harsh"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="draw:extrusion-first-light-level"> + <ref name="zeroToHundredPercent"/> + </attribute> + </optional> + <optional> + <attribute name="draw:extrusion-second-light-level"> + <ref name="zeroToHundredPercent"/> + </attribute> + </optional> + <optional> + <attribute name="draw:extrusion-first-light-direction"> + <ref name="vector3D"/> + </attribute> + </optional> + <optional> + <attribute name="draw:extrusion-second-light-direction"> + <ref name="vector3D"/> + </attribute> + </optional> + <optional> + <attribute name="draw:extrusion-metal"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="dr3d:shade-mode"> + <choice> + <value>flat</value> + <value>phong</value> + <value>gouraud</value> + <value>draft</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="draw:extrusion-rotation-angle"> + <list> + <ref name="angle"/> + <ref name="angle"/> + </list> + </attribute> + </optional> + <optional> + <attribute name="draw:extrusion-rotation-center"> + <ref name="vector3D"/> + </attribute> + </optional> + <optional> + <attribute name="draw:extrusion-shininess"> + <ref name="zeroToHundredPercent"/> + </attribute> + </optional> + <optional> + <attribute name="draw:extrusion-skew"> + <list> + <ref name="double"/> + <ref name="angle"/> + </list> + </attribute> + </optional> + <optional> + <attribute name="draw:extrusion-specularity"> + <ref name="zeroToHundredPercent"/> + </attribute> + </optional> + <optional> + <attribute name="dr3d:projection"> + <choice> + <value>parallel</value> + <value>perspective</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="draw:extrusion-viewpoint"> + <ref name="point3D"/> + </attribute> + </optional> + <optional> + <attribute name="draw:extrusion-origin"> + <list> + <ref name="extrusionOrigin"/> + <ref name="extrusionOrigin"/> + </list> + </attribute> + </optional> + <optional> + <attribute name="draw:extrusion-color"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="draw:enhanced-path"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="draw:path-stretchpoint-x"> + <ref name="double"/> + </attribute> + </optional> + <optional> + <attribute name="draw:path-stretchpoint-y"> + <ref name="double"/> + </attribute> + </optional> + <optional> + <attribute name="draw:text-areas"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="draw:glue-points"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="draw:glue-point-type"> + <choice> + <value>none</value> + <value>segments</value> + <value>rectangle</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="draw:glue-point-leaving-directions"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="draw:text-path"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="draw:text-path-mode"> + <choice> + <value>normal</value> + <value>path</value> + <value>shape</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="draw:text-path-scale"> + <choice> + <value>path</value> + <value>shape</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="draw:text-path-same-letter-heights"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="draw:modifiers"> + <ref name="string"/> + </attribute> + </optional> + </interleave> + </define> + <define name="custom-shape-type"> + <choice> + <value>non-primitive</value> + <ref name="string"/> + </choice> + </define> + <define name="point3D"> + <data type="string"> + <param name="pattern">\([ ]*-?([0-9]+(\.[0-9]*)?|\.[0-9]+)((cm)|(mm)|(in)|(pt)|(pc))([ ]+-?([0-9]+(\.[0-9]*)?|\.[0-9]+)((cm)|(mm)|(in)|(pt)|(pc))){2}[ ]*\)</param> + </data> + </define> + <define name="extrusionOrigin"> + <data type="double"> + <param name="minInclusive">-0.5</param> + <param name="maxInclusive">0.5</param> + </data> + </define> + <define name="draw-equation"> + <element name="draw:equation"> + <ref name="draw-equation-attlist"/> + <empty/> + </element> + </define> + <define name="draw-equation-attlist"> + <interleave> + <optional> + <attribute name="draw:name"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="draw:formula"> + <ref name="string"/> + </attribute> + </optional> + </interleave> + </define> + <define name="draw-handle"> + <element name="draw:handle"> + <ref name="draw-handle-attlist"/> + <empty/> + </element> + </define> + <define name="draw-handle-attlist"> + <interleave> + <optional> + <attribute name="draw:handle-mirror-vertical"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="draw:handle-mirror-horizontal"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="draw:handle-switched"> + <ref name="boolean"/> + </attribute> + </optional> + <attribute name="draw:handle-position"> + <ref name="string"/> + </attribute> + <optional> + <attribute name="draw:handle-range-x-minimum"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="draw:handle-range-x-maximum"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="draw:handle-range-y-minimum"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="draw:handle-range-y-maximum"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="draw:handle-polar"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="draw:handle-radius-range-minimum"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="draw:handle-radius-range-maximum"> + <ref name="string"/> + </attribute> + </optional> + </interleave> + </define> + <define name="presentation-shape-attlist"> + <interleave> + <optional> + <attribute name="presentation:class"> + <ref name="presentation-classes"/> + </attribute> + </optional> + <optional> + <attribute name="presentation:placeholder"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="presentation:user-transformed"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="presentation-classes"> + <choice> + <value>title</value> + <value>outline</value> + <value>subtitle</value> + <value>text</value> + <value>graphic</value> + <value>object</value> + <value>chart</value> + <value>table</value> + <value>orgchart</value> + <value>page</value> + <value>notes</value> + <value>handout</value> + <value>header</value> + <value>footer</value> + <value>date-time</value> + <value>page-number</value> + </choice> + </define> + <define name="presentation-animations"> + <element name="presentation:animations"> + <zeroOrMore> + <choice> + <ref name="presentation-animation-elements"/> + <ref name="presentation-animation-group"/> + </choice> + </zeroOrMore> + </element> + </define> + <define name="presentation-animation-elements"> + <choice> + <ref name="presentation-show-shape"/> + <ref name="presentation-show-text"/> + <ref name="presentation-hide-shape"/> + <ref name="presentation-hide-text"/> + <ref name="presentation-dim"/> + <ref name="presentation-play"/> + </choice> + </define> + <define name="presentation-sound"> + <element name="presentation:sound"> + <ref name="presentation-sound-attlist"/> + <attribute name="xlink:type"> + <value>simple</value> + </attribute> + <attribute name="xlink:href"> + <ref name="anyIRI"/> + </attribute> + <optional> + <attribute name="xlink:actuate"> + <value>onRequest</value> + </attribute> + </optional> + <optional> + <attribute name="xlink:show"> + <choice> + <value>new</value> + <value>replace</value> + </choice> + </attribute> + </optional> + <empty/> + </element> + </define> + <define name="presentation-sound-attlist"> + <interleave> + <optional> + <attribute name="presentation:play-full"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <ref name="xml-id"/> + </optional> + </interleave> + </define> + <define name="presentation-show-shape"> + <element name="presentation:show-shape"> + <ref name="common-presentation-effect-attlist"/> + <optional> + <ref name="presentation-sound"/> + </optional> + </element> + </define> + <define name="common-presentation-effect-attlist"> + <interleave> + <attribute name="draw:shape-id"> + <ref name="IDREF"/> + </attribute> + <optional> + <attribute name="presentation:effect"> + <ref name="presentationEffects"/> + </attribute> + </optional> + <optional> + <attribute name="presentation:direction"> + <ref name="presentationEffectDirections"/> + </attribute> + </optional> + <optional> + <attribute name="presentation:speed"> + <ref name="presentationSpeeds"/> + </attribute> + </optional> + <optional> + <attribute name="presentation:delay"> + <ref name="duration"/> + </attribute> + </optional> + <optional> + <attribute name="presentation:start-scale"> + <ref name="percent"/> + </attribute> + </optional> + <optional> + <attribute name="presentation:path-id"> + <ref name="string"/> + </attribute> + </optional> + </interleave> + </define> + <define name="presentationEffects"> + <choice> + <value>none</value> + <value>fade</value> + <value>move</value> + <value>stripes</value> + <value>open</value> + <value>close</value> + <value>dissolve</value> + <value>wavyline</value> + <value>random</value> + <value>lines</value> + <value>laser</value> + <value>appear</value> + <value>hide</value> + <value>move-short</value> + <value>checkerboard</value> + <value>rotate</value> + <value>stretch</value> + </choice> + </define> + <define name="presentationEffectDirections"> + <choice> + <value>none</value> + <value>from-left</value> + <value>from-top</value> + <value>from-right</value> + <value>from-bottom</value> + <value>from-center</value> + <value>from-upper-left</value> + <value>from-upper-right</value> + <value>from-lower-left</value> + <value>from-lower-right</value> + <value>to-left</value> + <value>to-top</value> + <value>to-right</value> + <value>to-bottom</value> + <value>to-upper-left</value> + <value>to-upper-right</value> + <value>to-lower-right</value> + <value>to-lower-left</value> + <value>path</value> + <value>spiral-inward-left</value> + <value>spiral-inward-right</value> + <value>spiral-outward-left</value> + <value>spiral-outward-right</value> + <value>vertical</value> + <value>horizontal</value> + <value>to-center</value> + <value>clockwise</value> + <value>counter-clockwise</value> + </choice> + </define> + <define name="presentationSpeeds"> + <choice> + <value>slow</value> + <value>medium</value> + <value>fast</value> + </choice> + </define> + <define name="presentation-show-text"> + <element name="presentation:show-text"> + <ref name="common-presentation-effect-attlist"/> + <optional> + <ref name="presentation-sound"/> + </optional> + </element> + </define> + <define name="presentation-hide-shape"> + <element name="presentation:hide-shape"> + <ref name="common-presentation-effect-attlist"/> + <optional> + <ref name="presentation-sound"/> + </optional> + </element> + </define> + <define name="presentation-hide-text"> + <element name="presentation:hide-text"> + <ref name="common-presentation-effect-attlist"/> + <optional> + <ref name="presentation-sound"/> + </optional> + </element> + </define> + <define name="presentation-dim"> + <element name="presentation:dim"> + <ref name="presentation-dim-attlist"/> + <optional> + <ref name="presentation-sound"/> + </optional> + </element> + </define> + <define name="presentation-dim-attlist"> + <interleave> + <attribute name="draw:shape-id"> + <ref name="IDREF"/> + </attribute> + <attribute name="draw:color"> + <ref name="color"/> + </attribute> + </interleave> + </define> + <define name="presentation-play"> + <element name="presentation:play"> + <ref name="presentation-play-attlist"/> + <empty/> + </element> + </define> + <define name="presentation-play-attlist"> + <attribute name="draw:shape-id"> + <ref name="IDREF"/> + </attribute> + <optional> + <attribute name="presentation:speed"> + <ref name="presentationSpeeds"/> + </attribute> + </optional> + </define> + <define name="presentation-animation-group"> + <element name="presentation:animation-group"> + <zeroOrMore> + <ref name="presentation-animation-elements"/> + </zeroOrMore> + </element> + </define> + <define name="common-anim-attlist"> + <interleave> + <optional> + <attribute name="presentation:node-type"> + <choice> + <value>default</value> + <value>on-click</value> + <value>with-previous</value> + <value>after-previous</value> + <value>timing-root</value> + <value>main-sequence</value> + <value>interactive-sequence</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="presentation:preset-id"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="presentation:preset-sub-type"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="presentation:preset-class"> + <choice> + <value>custom</value> + <value>entrance</value> + <value>exit</value> + <value>emphasis</value> + <value>motion-path</value> + <value>ole-action</value> + <value>media-call</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="presentation:master-element"> + <ref name="IDREF"/> + </attribute> + </optional> + <optional> + <attribute name="presentation:group-id"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <group> + <ref name="xml-id"/> + <optional> + <attribute name="anim:id"> + <ref name="NCName"/> + </attribute> + </optional> + </group> + </optional> + </interleave> + </define> + <define name="presentation-event-listener"> + <element name="presentation:event-listener"> + <ref name="presentation-event-listener-attlist"/> + <optional> + <ref name="presentation-sound"/> + </optional> + </element> + </define> + <define name="presentation-event-listener-attlist"> + <interleave> + <attribute name="script:event-name"> + <ref name="string"/> + </attribute> + <attribute name="presentation:action"> + <choice> + <value>none</value> + <value>previous-page</value> + <value>next-page</value> + <value>first-page</value> + <value>last-page</value> + <value>hide</value> + <value>stop</value> + <value>execute</value> + <value>show</value> + <value>verb</value> + <value>fade-out</value> + <value>sound</value> + <value>last-visited-page</value> + </choice> + </attribute> + <optional> + <attribute name="presentation:effect"> + <ref name="presentationEffects"/> + </attribute> + </optional> + <optional> + <attribute name="presentation:direction"> + <ref name="presentationEffectDirections"/> + </attribute> + </optional> + <optional> + <attribute name="presentation:speed"> + <ref name="presentationSpeeds"/> + </attribute> + </optional> + <optional> + <attribute name="presentation:start-scale"> + <ref name="percent"/> + </attribute> + </optional> + <optional> + <attribute name="xlink:type"> + <value>simple</value> + </attribute> + <attribute name="xlink:href"> + <ref name="anyIRI"/> + </attribute> + <optional> + <attribute name="xlink:show"> + <value>embed</value> + </attribute> + </optional> + <optional> + <attribute name="xlink:actuate"> + <value>onRequest</value> + </attribute> + </optional> + </optional> + <optional> + <attribute name="presentation:verb"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + </interleave> + </define> + <define name="presentation-decls"> + <zeroOrMore> + <ref name="presentation-decl"/> + </zeroOrMore> + </define> + <define name="presentation-decl"> + <choice> + <element name="presentation:header-decl"> + <ref name="presentation-header-decl-attlist"/> + <text/> + </element> + <element name="presentation:footer-decl"> + <ref name="presentation-footer-decl-attlist"/> + <text/> + </element> + <element name="presentation:date-time-decl"> + <ref name="presentation-date-time-decl-attlist"/> + <text/> + </element> + </choice> + </define> + <define name="presentation-header-decl-attlist"> + <attribute name="presentation:name"> + <ref name="string"/> + </attribute> + </define> + <define name="presentation-footer-decl-attlist"> + <attribute name="presentation:name"> + <ref name="string"/> + </attribute> + </define> + <define name="presentation-date-time-decl-attlist"> + <interleave> + <attribute name="presentation:name"> + <ref name="string"/> + </attribute> + <attribute name="presentation:source"> + <choice> + <value>fixed</value> + <value>current-date</value> + </choice> + </attribute> + <optional> + <attribute name="style:data-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + </interleave> + </define> + <define name="presentation-settings"> + <optional> + <element name="presentation:settings"> + <ref name="presentation-settings-attlist"/> + <zeroOrMore> + <ref name="presentation-show"/> + </zeroOrMore> + </element> + </optional> + </define> + <define name="presentation-settings-attlist"> + <interleave> + <optional> + <attribute name="presentation:start-page"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="presentation:show"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="presentation:full-screen"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="presentation:endless"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="presentation:pause"> + <ref name="duration"/> + </attribute> + </optional> + <optional> + <attribute name="presentation:show-logo"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="presentation:force-manual"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="presentation:mouse-visible"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="presentation:mouse-as-pen"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="presentation:start-with-navigator"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="presentation:animations"> + <choice> + <value>enabled</value> + <value>disabled</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="presentation:transition-on-click"> + <choice> + <value>enabled</value> + <value>disabled</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="presentation:stay-on-top"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="presentation:show-end-of-presentation-slide"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="presentation-show"> + <element name="presentation:show"> + <ref name="presentation-show-attlist"/> + <empty/> + </element> + </define> + <define name="presentation-show-attlist"> + <interleave> + <attribute name="presentation:name"> + <ref name="string"/> + </attribute> + <attribute name="presentation:pages"> + <ref name="string"/> + </attribute> + </interleave> + </define> + <define name="chart-chart"> + <element name="chart:chart"> + <ref name="chart-chart-attlist"/> + <optional> + <ref name="chart-title"/> + </optional> + <optional> + <ref name="chart-subtitle"/> + </optional> + <optional> + <ref name="chart-footer"/> + </optional> + <optional> + <ref name="chart-legend"/> + </optional> + <ref name="chart-plot-area"/> + <optional> + <ref name="table-table"/> + </optional> + </element> + </define> + <define name="chart-chart-attlist"> + <interleave> + <attribute name="chart:class"> + <ref name="namespacedToken"/> + </attribute> + <ref name="common-draw-size-attlist"/> + <optional> + <attribute name="chart:column-mapping"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="chart:row-mapping"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <group> + <attribute name="xlink:type"> + <value>simple</value> + </attribute> + <attribute name="xlink:href"> + <ref name="anyIRI"/> + </attribute> + </group> + </optional> + <optional> + <ref name="xml-id"/> + </optional> + </interleave> + </define> + <define name="chart-title"> + <element name="chart:title"> + <ref name="chart-title-attlist"/> + <optional> + <ref name="text-p"/> + </optional> + </element> + </define> + <define name="chart-title-attlist"> + <interleave> + <optional> + <attribute name="table:cell-range"> + <ref name="cellRangeAddressList"/> + </attribute> + </optional> + <ref name="common-draw-position-attlist"/> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + </interleave> + </define> + <define name="chart-subtitle"> + <element name="chart:subtitle"> + <ref name="chart-title-attlist"/> + <optional> + <ref name="text-p"/> + </optional> + </element> + </define> + <define name="chart-footer"> + <element name="chart:footer"> + <ref name="chart-title-attlist"/> + <optional> + <ref name="text-p"/> + </optional> + </element> + </define> + <define name="chart-legend"> + <element name="chart:legend"> + <ref name="chart-legend-attlist"/> + <optional> + <ref name="text-p"/> + </optional> + </element> + </define> + <define name="chart-legend-attlist"> + <interleave> + <choice> + <group> + <attribute name="chart:legend-position"> + <choice> + <value>start</value> + <value>end</value> + <value>top</value> + <value>bottom</value> + </choice> + </attribute> + <optional> + <attribute name="chart:legend-align"> + <choice> + <value>start</value> + <value>center</value> + <value>end</value> + </choice> + </attribute> + </optional> + </group> + <attribute name="chart:legend-position"> + <choice> + <value>top-start</value> + <value>bottom-start</value> + <value>top-end</value> + <value>bottom-end</value> + </choice> + </attribute> + <empty/> + </choice> + <ref name="common-draw-position-attlist"/> + <choice> + <attribute name="style:legend-expansion"> + <choice> + <value>wide</value> + <value>high</value> + <value>balanced</value> + </choice> + </attribute> + <group> + <attribute name="style:legend-expansion"> + <value>custom</value> + </attribute> + <attribute name="style:legend-expansion-aspect-ratio"> + <ref name="double"/> + </attribute> + </group> + <empty/> + </choice> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + </interleave> + </define> + <define name="chart-plot-area"> + <element name="chart:plot-area"> + <ref name="chart-plot-area-attlist"/> + <zeroOrMore> + <ref name="dr3d-light"/> + </zeroOrMore> + <zeroOrMore> + <ref name="chart-axis"/> + </zeroOrMore> + <zeroOrMore> + <ref name="chart-series"/> + </zeroOrMore> + <optional> + <ref name="chart-stock-gain-marker"/> + </optional> + <optional> + <ref name="chart-stock-loss-marker"/> + </optional> + <optional> + <ref name="chart-stock-range-line"/> + </optional> + <optional> + <ref name="chart-wall"/> + </optional> + <optional> + <ref name="chart-floor"/> + </optional> + </element> + </define> + <define name="chart-plot-area-attlist"> + <interleave> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="table:cell-range-address"> + <ref name="cellRangeAddressList"/> + </attribute> + </optional> + <optional> + <attribute name="chart:data-source-has-labels"> + <choice> + <value>none</value> + <value>row</value> + <value>column</value> + <value>both</value> + </choice> + </attribute> + </optional> + <ref name="dr3d-scene-attlist"/> + <ref name="common-dr3d-transform-attlist"/> + <optional> + <ref name="xml-id"/> + </optional> + </interleave> + </define> + <define name="chart-wall"> + <element name="chart:wall"> + <ref name="chart-wall-attlist"/> + <empty/> + </element> + </define> + <define name="chart-wall-attlist"> + <interleave> + <optional> + <attribute name="svg:width"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + </interleave> + </define> + <define name="chart-floor"> + <element name="chart:floor"> + <ref name="chart-floor-attlist"/> + <empty/> + </element> + </define> + <define name="chart-floor-attlist"> + <interleave> + <optional> + <attribute name="svg:width"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + </interleave> + </define> + <define name="chart-axis"> + <element name="chart:axis"> + <ref name="chart-axis-attlist"/> + <optional> + <ref name="chart-title"/> + </optional> + <optional> + <ref name="chart-categories"/> + </optional> + <zeroOrMore> + <ref name="chart-grid"/> + </zeroOrMore> + </element> + </define> + <define name="chart-axis-attlist"> + <interleave> + <attribute name="chart:dimension"> + <ref name="chart-dimension"/> + </attribute> + <optional> + <attribute name="chart:name"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + </interleave> + </define> + <define name="chart-dimension"> + <choice> + <value>x</value> + <value>y</value> + <value>z</value> + </choice> + </define> + <define name="chart-categories"> + <element name="chart:categories"> + <optional> + <attribute name="table:cell-range-address"> + <ref name="cellRangeAddressList"/> + </attribute> + </optional> + </element> + </define> + <define name="chart-grid"> + <element name="chart:grid"> + <ref name="chart-grid-attlist"/> + </element> + </define> + <define name="chart-grid-attlist"> + <interleave> + <optional> + <attribute name="chart:class"> + <choice> + <value>major</value> + <value>minor</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + </interleave> + </define> + <define name="chart-series"> + <element name="chart:series"> + <ref name="chart-series-attlist"/> + <zeroOrMore> + <ref name="chart-domain"/> + </zeroOrMore> + <optional> + <ref name="chart-mean-value"/> + </optional> + <zeroOrMore> + <ref name="chart-regression-curve"/> + </zeroOrMore> + <zeroOrMore> + <ref name="chart-error-indicator"/> + </zeroOrMore> + <zeroOrMore> + <ref name="chart-data-point"/> + </zeroOrMore> + <optional> + <ref name="chart-data-label"/> + </optional> + </element> + </define> + <define name="chart-series-attlist"> + <interleave> + <optional> + <attribute name="chart:values-cell-range-address"> + <ref name="cellRangeAddressList"/> + </attribute> + </optional> + <optional> + <attribute name="chart:label-cell-address"> + <ref name="cellRangeAddressList"/> + </attribute> + </optional> + <optional> + <attribute name="chart:class"> + <ref name="namespacedToken"/> + </attribute> + </optional> + <optional> + <attribute name="chart:attached-axis"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <ref name="xml-id"/> + </optional> + </interleave> + </define> + <define name="chart-domain"> + <element name="chart:domain"> + <optional> + <attribute name="table:cell-range-address"> + <ref name="cellRangeAddressList"/> + </attribute> + </optional> + </element> + </define> + <define name="chart-data-point"> + <element name="chart:data-point"> + <ref name="chart-data-point-attlist"/> + <optional> + <ref name="chart-data-label"/> + </optional> + </element> + </define> + <define name="chart-data-point-attlist"> + <interleave> + <optional> + <attribute name="chart:repeated"> + <ref name="positiveInteger"/> + </attribute> + </optional> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <ref name="xml-id"/> + </optional> + </interleave> + </define> + <define name="chart-data-label"> + <element name="chart:data-label"> + <ref name="chart-data-label-attlist"/> + <optional> + <ref name="text-p"/> + </optional> + </element> + </define> + <define name="chart-data-label-attlist"> + <interleave> + <ref name="common-draw-position-attlist"/> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + </interleave> + </define> + <define name="chart-mean-value"> + <element name="chart:mean-value"> + <ref name="chart-mean-value-attlist"/> + <empty/> + </element> + </define> + <define name="chart-mean-value-attlist"> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + </define> + <define name="chart-error-indicator"> + <element name="chart:error-indicator"> + <ref name="chart-error-indicator-attlist"/> + <empty/> + </element> + </define> + <define name="chart-error-indicator-attlist"> + <interleave> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <attribute name="chart:dimension"> + <ref name="chart-dimension"/> + </attribute> + </interleave> + </define> + <define name="chart-regression-curve"> + <element name="chart:regression-curve"> + <ref name="chart-regression-curve-attlist"/> + <optional> + <ref name="chart-equation"/> + </optional> + </element> + </define> + <define name="chart-regression-curve-attlist"> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + </define> + <define name="chart-equation"> + <element name="chart:equation"> + <ref name="chart-equation-attlist"/> + <optional> + <ref name="text-p"/> + </optional> + </element> + </define> + <define name="chart-equation-attlist"> + <interleave> + <optional> + <attribute name="chart:automatic-content"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:display-r-square"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:display-equation"> + <ref name="boolean"/> + </attribute> + </optional> + <ref name="common-draw-position-attlist"/> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + </interleave> + </define> + <define name="chart-stock-gain-marker"> + <element name="chart:stock-gain-marker"> + <ref name="common-stock-marker-attlist"/> + </element> + </define> + <define name="chart-stock-loss-marker"> + <element name="chart:stock-loss-marker"> + <ref name="common-stock-marker-attlist"/> + </element> + </define> + <define name="chart-stock-range-line"> + <element name="chart:stock-range-line"> + <ref name="common-stock-marker-attlist"/> + </element> + </define> + <define name="common-stock-marker-attlist"> + <optional> + <attribute name="chart:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + </define> + <define name="office-database"> + <element name="office:database"> + <ref name="db-data-source"/> + <optional> + <ref name="db-forms"/> + </optional> + <optional> + <ref name="db-reports"/> + </optional> + <optional> + <ref name="db-queries"/> + </optional> + <optional> + <ref name="db-table-presentations"/> + </optional> + <optional> + <ref name="db-schema-definition"/> + </optional> + </element> + </define> + <define name="db-data-source"> + <element name="db:data-source"> + <ref name="db-data-source-attlist"/> + <ref name="db-connection-data"/> + <optional> + <ref name="db-driver-settings"/> + </optional> + <optional> + <ref name="db-application-connection-settings"/> + </optional> + </element> + </define> + <define name="db-data-source-attlist"> + <empty/> + </define> + <define name="db-connection-data"> + <element name="db:connection-data"> + <ref name="db-connection-data-attlist"/> + <choice> + <ref name="db-database-description"/> + <ref name="db-connection-resource"/> + </choice> + <optional> + <ref name="db-login"/> + </optional> + </element> + </define> + <define name="db-connection-data-attlist"> + <empty/> + </define> + <define name="db-database-description"> + <element name="db:database-description"> + <ref name="db-database-description-attlist"/> + <choice> + <ref name="db-file-based-database"/> + <ref name="db-server-database"/> + </choice> + </element> + </define> + <define name="db-database-description-attlist"> + <empty/> + </define> + <define name="db-file-based-database"> + <element name="db:file-based-database"> + <ref name="db-file-based-database-attlist"/> + </element> + </define> + <define name="db-file-based-database-attlist"> + <interleave> + <attribute name="xlink:type"> + <value>simple</value> + </attribute> + <attribute name="xlink:href"> + <ref name="anyIRI"/> + </attribute> + <attribute name="db:media-type"> + <ref name="string"/> + </attribute> + <optional> + <attribute name="db:extension"> + <ref name="string"/> + </attribute> + </optional> + </interleave> + </define> + <define name="db-server-database"> + <element name="db:server-database"> + <ref name="db-server-database-attlist"/> + <empty/> + </element> + </define> + <define name="db-server-database-attlist"> + <interleave> + <attribute name="db:type"> + <ref name="namespacedToken"/> + </attribute> + <choice> + <ref name="db-host-and-port"/> + <ref name="db-local-socket-name"/> + </choice> + <optional> + <attribute name="db:database-name"> + <ref name="string"/> + </attribute> + </optional> + </interleave> + </define> + <define name="db-host-and-port"> + <attribute name="db:hostname"> + <ref name="string"/> + </attribute> + <optional> + <attribute name="db:port"> + <ref name="positiveInteger"/> + </attribute> + </optional> + </define> + <define name="db-local-socket-name"> + <optional> + <attribute name="db:local-socket"> + <ref name="string"/> + </attribute> + </optional> + </define> + <define name="db-connection-resource"> + <element name="db:connection-resource"> + <ref name="db-connection-resource-attlist"/> + <empty/> + </element> + </define> + <define name="db-connection-resource-attlist"> + <attribute name="xlink:type"> + <value>simple</value> + </attribute> + <attribute name="xlink:href"> + <ref name="anyIRI"/> + </attribute> + <optional> + <attribute name="xlink:show"> + <value>none</value> + </attribute> + </optional> + <optional> + <attribute name="xlink:actuate"> + <value>onRequest</value> + </attribute> + </optional> + </define> + <define name="db-login"> + <element name="db:login"> + <ref name="db-login-attlist"/> + <empty/> + </element> + </define> + <define name="db-login-attlist"> + <interleave> + <optional> + <choice> + <attribute name="db:user-name"> + <ref name="string"/> + </attribute> + <attribute name="db:use-system-user"> + <ref name="boolean"/> + </attribute> + </choice> + </optional> + <optional> + <attribute name="db:is-password-required"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="db:login-timeout"> + <ref name="positiveInteger"/> + </attribute> + </optional> + </interleave> + </define> + <define name="db-driver-settings"> + <element name="db:driver-settings"> + <ref name="db-driver-settings-attlist"/> + <optional> + <ref name="db-auto-increment"/> + </optional> + <optional> + <ref name="db-delimiter"/> + </optional> + <optional> + <ref name="db-character-set"/> + </optional> + <optional> + <ref name="db-table-settings"/> + </optional> + </element> + </define> + <define name="db-driver-settings-attlist"> + <interleave> + <ref name="db-show-deleted"/> + <optional> + <attribute name="db:system-driver-settings"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="db:base-dn"> + <ref name="string"/> + </attribute> + </optional> + <ref name="db-is-first-row-header-line"/> + <optional> + <attribute name="db:parameter-name-substitution"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="db-show-deleted"> + <optional> + <attribute name="db:show-deleted"> + <ref name="boolean"/> + </attribute> + </optional> + </define> + <define name="db-is-first-row-header-line"> + <optional> + <attribute name="db:is-first-row-header-line"> + <ref name="boolean"/> + </attribute> + </optional> + </define> + <define name="db-auto-increment"> + <element name="db:auto-increment"> + <ref name="db-auto-increment-attlist"/> + <empty/> + </element> + </define> + <define name="db-auto-increment-attlist"> + <interleave> + <optional> + <attribute name="db:additional-column-statement"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="db:row-retrieving-statement"> + <ref name="string"/> + </attribute> + </optional> + </interleave> + </define> + <define name="db-delimiter"> + <element name="db:delimiter"> + <ref name="db-delimiter-attlist"/> + <empty/> + </element> + </define> + <define name="db-delimiter-attlist"> + <interleave> + <optional> + <attribute name="db:field"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="db:string"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="db:decimal"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="db:thousand"> + <ref name="string"/> + </attribute> + </optional> + </interleave> + </define> + <define name="db-character-set"> + <element name="db:character-set"> + <ref name="db-character-set-attlist"/> + <empty/> + </element> + </define> + <define name="db-character-set-attlist"> + <optional> + <attribute name="db:encoding"> + <ref name="textEncoding"/> + </attribute> + </optional> + </define> + <define name="db-table-settings"> + <element name="db:table-settings"> + <zeroOrMore> + <ref name="db-table-setting"/> + </zeroOrMore> + </element> + </define> + <define name="db-table-setting"> + <element name="db:table-setting"> + <ref name="db-table-setting-attlist"/> + <optional> + <ref name="db-delimiter"/> + </optional> + <optional> + <ref name="db-character-set"/> + </optional> + <empty/> + </element> + </define> + <define name="db-table-setting-attlist"> + <ref name="db-is-first-row-header-line"/> + <ref name="db-show-deleted"/> + </define> + <define name="db-application-connection-settings"> + <element name="db:application-connection-settings"> + <ref name="db-application-connection-settings-attlist"/> + <optional> + <ref name="db-table-filter"/> + </optional> + <optional> + <ref name="db-table-type-filter"/> + </optional> + <optional> + <ref name="db-data-source-settings"/> + </optional> + </element> + </define> + <define name="db-application-connection-settings-attlist"> + <interleave> + <optional> + <attribute name="db:is-table-name-length-limited"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="db:enable-sql92-check"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="db:append-table-alias-name"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="db:ignore-driver-privileges"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="db:boolean-comparison-mode"> + <choice> + <value>equal-integer</value> + <value>is-boolean</value> + <value>equal-boolean</value> + <value>equal-use-only-zero</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="db:use-catalog"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="db:max-row-count"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="db:suppress-version-columns"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="db-table-filter"> + <element name="db:table-filter"> + <ref name="db-table-filter-attlist"/> + <optional> + <ref name="db-table-include-filter"/> + </optional> + <optional> + <ref name="db-table-exclude-filter"/> + </optional> + </element> + </define> + <define name="db-table-filter-attlist"> + <empty/> + </define> + <define name="db-table-include-filter"> + <element name="db:table-include-filter"> + <ref name="db-table-include-filter-attlist"/> + <oneOrMore> + <ref name="db-table-filter-pattern"/> + </oneOrMore> + </element> + </define> + <define name="db-table-include-filter-attlist"> + <empty/> + </define> + <define name="db-table-exclude-filter"> + <element name="db:table-exclude-filter"> + <ref name="db-table-exclude-filter-attlist"/> + <oneOrMore> + <ref name="db-table-filter-pattern"/> + </oneOrMore> + </element> + </define> + <define name="db-table-exclude-filter-attlist"> + <empty/> + </define> + <define name="db-table-filter-pattern"> + <element name="db:table-filter-pattern"> + <ref name="db-table-filter-pattern-attlist"/> + <ref name="string"/> + </element> + </define> + <define name="db-table-filter-pattern-attlist"> + <empty/> + </define> + <define name="db-table-type-filter"> + <element name="db:table-type-filter"> + <ref name="db-table-type-filter-attlist"/> + <zeroOrMore> + <ref name="db-table-type"/> + </zeroOrMore> + </element> + </define> + <define name="db-table-type-filter-attlist"> + <empty/> + </define> + <define name="db-table-type"> + <element name="db:table-type"> + <ref name="db-table-type-attlist"/> + <ref name="string"/> + </element> + </define> + <define name="db-table-type-attlist"> + <empty/> + </define> + <define name="db-data-source-settings"> + <element name="db:data-source-settings"> + <ref name="db-data-source-settings-attlist"/> + <oneOrMore> + <ref name="db-data-source-setting"/> + </oneOrMore> + </element> + </define> + <define name="db-data-source-settings-attlist"> + <empty/> + </define> + <define name="db-data-source-setting"> + <element name="db:data-source-setting"> + <ref name="db-data-source-setting-attlist"/> + <oneOrMore> + <ref name="db-data-source-setting-value"/> + </oneOrMore> + </element> + </define> + <define name="db-data-source-setting-attlist"> + <interleave> + <optional> + <attribute name="db:data-source-setting-is-list"> + <ref name="boolean"/> + </attribute> + </optional> + <attribute name="db:data-source-setting-name"> + <ref name="string"/> + </attribute> + <attribute name="db:data-source-setting-type"> + <ref name="db-data-source-setting-types"/> + </attribute> + </interleave> + </define> + <define name="db-data-source-setting-types"> + <choice> + <value>boolean</value> + <value>short</value> + <value>int</value> + <value>long</value> + <value>double</value> + <value>string</value> + </choice> + </define> + <define name="db-data-source-setting-value"> + <element name="db:data-source-setting-value"> + <ref name="db-data-source-setting-value-attlist"/> + <ref name="string"/> + </element> + </define> + <define name="db-data-source-setting-value-attlist"> + <empty/> + </define> + <define name="db-forms"> + <element name="db:forms"> + <ref name="db-forms-attlist"/> + <zeroOrMore> + <choice> + <ref name="db-component"/> + <ref name="db-component-collection"/> + </choice> + </zeroOrMore> + </element> + </define> + <define name="db-forms-attlist"> + <empty/> + </define> + <define name="db-reports"> + <element name="db:reports"> + <ref name="db-reports-attlist"/> + <zeroOrMore> + <choice> + <ref name="db-component"/> + <ref name="db-component-collection"/> + </choice> + </zeroOrMore> + </element> + </define> + <define name="db-reports-attlist"> + <empty/> + </define> + <define name="db-component-collection"> + <element name="db:component-collection"> + <ref name="db-component-collection-attlist"/> + <ref name="common-db-object-name"/> + <ref name="common-db-object-title"/> + <ref name="common-db-object-description"/> + <zeroOrMore> + <choice> + <ref name="db-component"/> + <ref name="db-component-collection"/> + </choice> + </zeroOrMore> + </element> + </define> + <define name="db-component-collection-attlist"> + <empty/> + </define> + <define name="db-component"> + <element name="db:component"> + <ref name="db-component-attlist"/> + <ref name="common-db-object-name"/> + <ref name="common-db-object-title"/> + <ref name="common-db-object-description"/> + <optional> + <choice> + <ref name="office-document"/> + <ref name="math-math"/> + </choice> + </optional> + </element> + </define> + <define name="db-component-attlist"> + <interleave> + <optional> + <attribute name="xlink:type"> + <value>simple</value> + </attribute> + <attribute name="xlink:href"> + <ref name="anyIRI"/> + </attribute> + <optional> + <attribute name="xlink:show"> + <value>none</value> + </attribute> + </optional> + <optional> + <attribute name="xlink:actuate"> + <value>onRequest</value> + </attribute> + </optional> + </optional> + <optional> + <attribute name="db:as-template"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="db-queries"> + <element name="db:queries"> + <ref name="db-queries-attlist"/> + <zeroOrMore> + <choice> + <ref name="db-query"/> + <ref name="db-query-collection"/> + </choice> + </zeroOrMore> + </element> + </define> + <define name="db-queries-attlist"> + <empty/> + </define> + <define name="db-query-collection"> + <element name="db:query-collection"> + <ref name="db-query-collection-attlist"/> + <ref name="common-db-object-name"/> + <ref name="common-db-object-title"/> + <ref name="common-db-object-description"/> + <zeroOrMore> + <choice> + <ref name="db-query"/> + <ref name="db-query-collection"/> + </choice> + </zeroOrMore> + </element> + </define> + <define name="db-query-collection-attlist"> + <empty/> + </define> + <define name="db-query"> + <element name="db:query"> + <ref name="db-query-attlist"/> + <ref name="common-db-object-name"/> + <ref name="common-db-object-title"/> + <ref name="common-db-object-description"/> + <ref name="common-db-table-style-name"/> + <optional> + <ref name="db-order-statement"/> + </optional> + <optional> + <ref name="db-filter-statement"/> + </optional> + <optional> + <ref name="db-columns"/> + </optional> + <optional> + <ref name="db-update-table"/> + </optional> + </element> + </define> + <define name="db-query-attlist"> + <interleave> + <attribute name="db:command"> + <ref name="string"/> + </attribute> + <optional> + <attribute name="db:escape-processing"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="db-order-statement"> + <element name="db:order-statement"> + <ref name="db-command"/> + <ref name="db-apply-command"/> + <empty/> + </element> + </define> + <define name="db-filter-statement"> + <element name="db:filter-statement"> + <ref name="db-command"/> + <ref name="db-apply-command"/> + <empty/> + </element> + </define> + <define name="db-update-table"> + <element name="db:update-table"> + <ref name="common-db-table-name-attlist"/> + </element> + </define> + <define name="db-table-presentations"> + <element name="db:table-representations"> + <ref name="db-table-presentations-attlist"/> + <zeroOrMore> + <ref name="db-table-presentation"/> + </zeroOrMore> + </element> + </define> + <define name="db-table-presentations-attlist"> + <empty/> + </define> + <define name="db-table-presentation"> + <element name="db:table-representation"> + <ref name="db-table-presentation-attlist"/> + <ref name="common-db-table-name-attlist"/> + <ref name="common-db-object-title"/> + <ref name="common-db-object-description"/> + <ref name="common-db-table-style-name"/> + <optional> + <ref name="db-order-statement"/> + </optional> + <optional> + <ref name="db-filter-statement"/> + </optional> + <optional> + <ref name="db-columns"/> + </optional> + </element> + </define> + <define name="db-table-presentation-attlist"> + <empty/> + </define> + <define name="db-columns"> + <element name="db:columns"> + <ref name="db-columns-attlist"/> + <oneOrMore> + <ref name="db-column"/> + </oneOrMore> + </element> + </define> + <define name="db-columns-attlist"> + <empty/> + </define> + <define name="db-column"> + <element name="db:column"> + <ref name="db-column-attlist"/> + <ref name="common-db-object-name"/> + <ref name="common-db-object-title"/> + <ref name="common-db-object-description"/> + <ref name="common-db-default-value"/> + </element> + </define> + <define name="db-column-attlist"> + <interleave> + <optional> + <attribute name="db:visible"> + <ref name="boolean"/> + </attribute> + </optional> + + <optional> + <attribute name="db:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="db:default-cell-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + </interleave> + </define> + <define name="db-command"> + <attribute name="db:command"> + <ref name="string"/> + </attribute> + </define> + <define name="db-apply-command"> + <optional> + <attribute name="db:apply-command"> + <ref name="boolean"/> + </attribute> + </optional> + </define> + <define name="common-db-table-name-attlist"> + <interleave> + <attribute name="db:name"> + <ref name="string"/> + </attribute> + <optional> + <attribute name="db:catalog-name"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="db:schema-name"> + <ref name="string"/> + </attribute> + </optional> + </interleave> + </define> + <define name="common-db-object-name"> + <attribute name="db:name"> + <ref name="string"/> + </attribute> + </define> + <define name="common-db-object-title"> + <optional> + <attribute name="db:title"> + <ref name="string"/> + </attribute> + </optional> + </define> + <define name="common-db-object-description"> + <optional> + <attribute name="db:description"> + <ref name="string"/> + </attribute> + </optional> + </define> + <define name="common-db-table-style-name"> + <interleave> + <optional> + <attribute name="db:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="db:default-row-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + </interleave> + </define> + <define name="common-db-default-value"> + <optional> + <ref name="common-value-and-type-attlist"/> + </optional> + </define> + <define name="db-schema-definition"> + <element name="db:schema-definition"> + <ref name="db-schema-definition-attlist"/> + <ref name="db-table-definitions"/> + </element> + </define> + <define name="db-schema-definition-attlist"> + <empty/> + </define> + <define name="db-table-definitions"> + <element name="db:table-definitions"> + <ref name="db-table-definitions-attlist"/> + <zeroOrMore> + <ref name="db-table-definition"/> + </zeroOrMore> + </element> + </define> + <define name="db-table-definitions-attlist"> + <empty/> + </define> + <define name="db-table-definition"> + <element name="db:table-definition"> + <ref name="common-db-table-name-attlist"/> + <ref name="db-table-definition-attlist"/> + <ref name="db-column-definitions"/> + <optional> + <ref name="db-keys"/> + </optional> + <optional> + <ref name="db-indices"/> + </optional> + </element> + </define> + <define name="db-table-definition-attlist"> + <optional> + <attribute name="db:type"> + <ref name="string"/> + </attribute> + </optional> + </define> + <define name="db-column-definitions"> + <element name="db:column-definitions"> + <ref name="db-column-definitions-attlist"/> + <oneOrMore> + <ref name="db-column-definition"/> + </oneOrMore> + </element> + </define> + <define name="db-column-definitions-attlist"> + <empty/> + </define> + <define name="db-column-definition"> + <element name="db:column-definition"> + <ref name="db-column-definition-attlist"/> + <ref name="common-db-default-value"/> + </element> + </define> + <define name="db-column-definition-attlist"> + <interleave> + <attribute name="db:name"> + <ref name="string"/> + </attribute> + + <optional> + <attribute name="db:data-type"> + <ref name="db-data-types"/> + </attribute> + </optional> + + <optional> + <attribute name="db:type-name"> + <ref name="string"/> + </attribute> + </optional> + + <optional> + <attribute name="db:precision"> + <ref name="positiveInteger"/> + </attribute> + </optional> + + <optional> + <attribute name="db:scale"> + <ref name="positiveInteger"/> + </attribute> + </optional> + + <optional> + <attribute name="db:is-nullable"> + <choice> + <value>no-nulls</value> + <value>nullable</value> + </choice> + </attribute> + </optional> + + <optional> + <attribute name="db:is-empty-allowed"> + <ref name="boolean"/> + </attribute> + </optional> + + <optional> + <attribute name="db:is-autoincrement"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="db-data-types"> + <choice> + <value>bit</value> + <value>boolean</value> + <value>tinyint</value> + <value>smallint</value> + <value>integer</value> + <value>bigint</value> + <value>float</value> + <value>real</value> + <value>double</value> + <value>numeric</value> + <value>decimal</value> + <value>char</value> + <value>varchar</value> + <value>longvarchar</value> + <value>date</value> + <value>time</value> + <value>timestmp</value> + <value>binary</value> + <value>varbinary</value> + <value>longvarbinary</value> + <value>sqlnull</value> + <value>other</value> + <value>object</value> + <value>distinct</value> + <value>struct</value> + <value>array</value> + <value>blob</value> + <value>clob</value> + <value>ref</value> + </choice> + </define> + <define name="db-keys"> + <element name="db:keys"> + <ref name="db-keys-attlist"/> + <oneOrMore> + <ref name="db-key"/> + </oneOrMore> + </element> + </define> + <define name="db-keys-attlist"> + <empty/> + </define> + <define name="db-key"> + <element name="db:key"> + <ref name="db-key-attlist"/> + <oneOrMore> + <ref name="db-key-columns"/> + </oneOrMore> + </element> + </define> + <define name="db-key-attlist"> + <interleave> + <optional> + <attribute name="db:name"> + <ref name="string"/> + </attribute> + </optional> + + <attribute name="db:type"> + <choice> + <value>primary</value> + <value>unique</value> + <value>foreign</value> + </choice> + </attribute> + + <optional> + <attribute name="db:referenced-table-name"> + <ref name="string"/> + </attribute> + </optional> + + <optional> + <attribute name="db:update-rule"> + <choice> + <value>cascade</value> + <value>restrict</value> + <value>set-null</value> + <value>no-action</value> + <value>set-default</value> + </choice> + </attribute> + </optional> + + <optional> + <attribute name="db:delete-rule"> + <choice> + <value>cascade</value> + <value>restrict</value> + <value>set-null</value> + <value>no-action</value> + <value>set-default</value> + </choice> + </attribute> + </optional> + </interleave> + </define> + <define name="db-key-columns"> + <element name="db:key-columns"> + <ref name="db-key-columns-attlist"/> + <oneOrMore> + <ref name="db-key-column"/> + </oneOrMore> + </element> + </define> + <define name="db-key-columns-attlist"> + <empty/> + </define> + <define name="db-key-column"> + <element name="db:key-column"> + <ref name="db-key-column-attlist"/> + <empty/> + </element> + </define> + <define name="db-key-column-attlist"> + <interleave> + <optional> + <attribute name="db:name"> + <ref name="string"/> + </attribute> + </optional> + + <optional> + <attribute name="db:related-column-name"> + <ref name="string"/> + </attribute> + </optional> + </interleave> + </define> + <define name="db-indices"> + <element name="db:indices"> + <ref name="db-indices-attlist"/> + <oneOrMore> + <ref name="db-index"/> + </oneOrMore> + </element> + </define> + <define name="db-indices-attlist"> + <empty/> + </define> + <define name="db-index"> + <element name="db:index"> + <ref name="db-index-attlist"/> + <oneOrMore> + <ref name="db-index-columns"/> + </oneOrMore> + </element> + </define> + <define name="db-index-attlist"> + <interleave> + <attribute name="db:name"> + <ref name="string"/> + </attribute> + + <optional> + <attribute name="db:catalog-name"> + <ref name="string"/> + </attribute> + </optional> + + <optional> + <attribute name="db:is-unique"> + <ref name="boolean"/> + </attribute> + </optional> + + <optional> + <attribute name="db:is-clustered"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="db-index-columns"> + <element name="db:index-columns"> + <oneOrMore> + <ref name="db-index-column"/> + </oneOrMore> + </element> + </define> + <define name="db-index-column"> + <element name="db:index-column"> + <ref name="db-index-column-attlist"/> + <empty/> + </element> + </define> + <define name="db-index-column-attlist"> + <interleave> + <attribute name="db:name"> + <ref name="string"/> + </attribute> + + <optional> + <attribute name="db:is-ascending"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="office-forms"> + <optional> + <element name="office:forms"> + <ref name="office-forms-attlist"/> + <zeroOrMore> + <choice> + <ref name="form-form"/> + <ref name="xforms-model"/> + </choice> + </zeroOrMore> + </element> + </optional> + </define> + <define name="office-forms-attlist"> + <interleave> + <optional> + <attribute name="form:automatic-focus"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="form:apply-design-mode"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="form-form"> + <element name="form:form"> + <ref name="common-form-control-attlist"/> + <ref name="form-form-attlist"/> + <optional> + <ref name="form-properties"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + <zeroOrMore> + <choice> + <ref name="controls"/> + <ref name="form-form"/> + </choice> + </zeroOrMore> + <optional> + <ref name="form-connection-resource"/> + </optional> + </element> + </define> + <define name="form-form-attlist"> + <interleave> + <optional> + <attribute name="xlink:type"> + <value>simple</value> + </attribute> + <attribute name="xlink:href"> + <ref name="anyIRI"/> + </attribute> + <optional> + <attribute name="xlink:actuate"> + <value>onRequest</value> + </attribute> + </optional> + </optional> + <optional> + <attribute name="office:target-frame"> + <ref name="targetFrameName"/> + </attribute> + </optional> + <optional> + <attribute name="form:method"> + <choice> + <value>get</value> + <value>post</value> + <ref name="string"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="form:enctype"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="form:allow-deletes"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="form:allow-inserts"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="form:allow-updates"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="form:apply-filter"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="form:command-type"> + <choice> + <value>table</value> + <value>query</value> + <value>command</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="form:command"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="form:datasource"> + <choice> + <ref name="anyIRI"/> + <ref name="string"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="form:master-fields"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="form:detail-fields"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="form:escape-processing"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="form:filter"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="form:ignore-result"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="form:navigation-mode"> + <ref name="navigation"/> + </attribute> + </optional> + <optional> + <attribute name="form:order"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="form:tab-cycle"> + <ref name="tab-cycles"/> + </attribute> + </optional> + </interleave> + </define> + <define name="navigation"> + <choice> + <value>none</value> + <value>current</value> + <value>parent</value> + </choice> + </define> + <define name="tab-cycles"> + <choice> + <value>records</value> + <value>current</value> + <value>page</value> + </choice> + </define> + <define name="form-connection-resource"> + <element name="form:connection-resource"> + <attribute name="xlink:href"> + <ref name="anyIRI"/> + </attribute> + <empty/> + </element> + </define> + <define name="xforms-model"> + <element name="xforms:model"> + <ref name="anyAttListOrElements"/> + </element> + </define> + <define name="column-controls"> + <choice> + <element name="form:text"> + <ref name="form-text-attlist"/> + <ref name="common-form-control-content"/> + </element> + <element name="form:textarea"> + <ref name="form-textarea-attlist"/> + <ref name="common-form-control-content"/> + <zeroOrMore> + <ref name="text-p"/> + </zeroOrMore> + </element> + <element name="form:formatted-text"> + <ref name="form-formatted-text-attlist"/> + <ref name="common-form-control-content"/> + </element> + <element name="form:number"> + <ref name="form-number-attlist"/> + <ref name="common-numeric-control-attlist"/> + <ref name="common-form-control-content"/> + <ref name="common-linked-cell"/> + <ref name="common-spin-button"/> + <ref name="common-repeat"/> + <ref name="common-delay-for-repeat"/> + </element> + <element name="form:date"> + <ref name="form-date-attlist"/> + <ref name="common-numeric-control-attlist"/> + <ref name="common-form-control-content"/> + <ref name="common-linked-cell"/> + <ref name="common-spin-button"/> + <ref name="common-repeat"/> + <ref name="common-delay-for-repeat"/> + </element> + <element name="form:time"> + <ref name="form-time-attlist"/> + <ref name="common-numeric-control-attlist"/> + <ref name="common-form-control-content"/> + <ref name="common-linked-cell"/> + <ref name="common-spin-button"/> + <ref name="common-repeat"/> + <ref name="common-delay-for-repeat"/> + </element> + <element name="form:combobox"> + <ref name="form-combobox-attlist"/> + <ref name="common-form-control-content"/> + <zeroOrMore> + <ref name="form-item"/> + </zeroOrMore> + </element> + <element name="form:listbox"> + <ref name="form-listbox-attlist"/> + <ref name="common-form-control-content"/> + <zeroOrMore> + <ref name="form-option"/> + </zeroOrMore> + </element> + <element name="form:checkbox"> + <ref name="form-checkbox-attlist"/> + <ref name="common-form-control-content"/> + </element> + </choice> + </define> + <define name="controls"> + <choice> + <ref name="column-controls"/> + <element name="form:password"> + <ref name="form-password-attlist"/> + <ref name="common-form-control-content"/> + </element> + <element name="form:file"> + <ref name="form-file-attlist"/> + <ref name="common-form-control-content"/> + </element> + <element name="form:fixed-text"> + <ref name="form-fixed-text-attlist"/> + <ref name="common-form-control-content"/> + </element> + <element name="form:button"> + <ref name="form-button-attlist"/> + <ref name="common-form-control-content"/> + </element> + <element name="form:image"> + <ref name="form-image-attlist"/> + <ref name="common-form-control-content"/> + </element> + <element name="form:radio"> + <ref name="form-radio-attlist"/> + <ref name="common-form-control-content"/> + </element> + <element name="form:frame"> + <ref name="form-frame-attlist"/> + <ref name="common-form-control-content"/> + </element> + <element name="form:image-frame"> + <ref name="form-image-frame-attlist"/> + <ref name="common-form-control-content"/> + </element> + <element name="form:hidden"> + <ref name="form-hidden-attlist"/> + <ref name="common-form-control-content"/> + </element> + <element name="form:grid"> + <ref name="form-grid-attlist"/> + <ref name="common-form-control-content"/> + <zeroOrMore> + <ref name="form-column"/> + </zeroOrMore> + </element> + <element name="form:value-range"> + <ref name="form-value-range-attlist"/> + <ref name="common-form-control-content"/> + </element> + <element name="form:generic-control"> + <ref name="form-generic-control-attlist"/> + <ref name="common-form-control-content"/> + </element> + </choice> + </define> + <define name="form-text-attlist"> + <ref name="form-control-attlist"/> + <ref name="common-current-value-attlist"/> + <ref name="common-disabled-attlist"/> + <ref name="common-maxlength-attlist"/> + <ref name="common-printable-attlist"/> + <ref name="common-readonly-attlist"/> + <ref name="common-tab-attlist"/> + <ref name="common-title-attlist"/> + <ref name="common-value-attlist"/> + <ref name="common-convert-empty-attlist"/> + <ref name="common-data-field-attlist"/> + <ref name="common-linked-cell"/> + </define> + <define name="form-control-attlist"> + <ref name="common-form-control-attlist"/> + <ref name="common-control-id-attlist"/> + <ref name="xforms-bind-attlist"/> + </define> + <define name="common-form-control-content"> + <optional> + <ref name="form-properties"/> + </optional> + <optional> + <ref name="office-event-listeners"/> + </optional> + </define> + <define name="form-textarea-attlist"> + <ref name="form-control-attlist"/> + <ref name="common-current-value-attlist"/> + <ref name="common-disabled-attlist"/> + <ref name="common-maxlength-attlist"/> + <ref name="common-printable-attlist"/> + <ref name="common-readonly-attlist"/> + <ref name="common-tab-attlist"/> + <ref name="common-title-attlist"/> + <ref name="common-value-attlist"/> + <ref name="common-convert-empty-attlist"/> + <ref name="common-data-field-attlist"/> + <ref name="common-linked-cell"/> + </define> + <define name="form-password-attlist"> + <interleave> + <ref name="form-control-attlist"/> + <ref name="common-disabled-attlist"/> + <ref name="common-maxlength-attlist"/> + <ref name="common-printable-attlist"/> + <ref name="common-tab-attlist"/> + <ref name="common-title-attlist"/> + <ref name="common-value-attlist"/> + <ref name="common-convert-empty-attlist"/> + <ref name="common-linked-cell"/> + <optional> + <attribute name="form:echo-char"> + <ref name="character"/> + </attribute> + </optional> + </interleave> + </define> + <define name="form-file-attlist"> + <ref name="form-control-attlist"/> + <ref name="common-current-value-attlist"/> + <ref name="common-disabled-attlist"/> + <ref name="common-maxlength-attlist"/> + <ref name="common-printable-attlist"/> + <ref name="common-readonly-attlist"/> + <ref name="common-tab-attlist"/> + <ref name="common-title-attlist"/> + <ref name="common-value-attlist"/> + <ref name="common-linked-cell"/> + </define> + <define name="form-formatted-text-attlist"> + <interleave> + <ref name="form-control-attlist"/> + <ref name="common-current-value-attlist"/> + <ref name="common-disabled-attlist"/> + <ref name="common-maxlength-attlist"/> + <ref name="common-printable-attlist"/> + <ref name="common-readonly-attlist"/> + <ref name="common-tab-attlist"/> + <ref name="common-title-attlist"/> + <ref name="common-value-attlist"/> + <ref name="common-convert-empty-attlist"/> + <ref name="common-data-field-attlist"/> + <ref name="common-linked-cell"/> + <ref name="common-spin-button"/> + <ref name="common-repeat"/> + <ref name="common-delay-for-repeat"/> + <optional> + <attribute name="form:max-value"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="form:min-value"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="form:validation"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="common-numeric-control-attlist"> + <ref name="form-control-attlist"/> + <ref name="common-disabled-attlist"/> + <ref name="common-maxlength-attlist"/> + <ref name="common-printable-attlist"/> + <ref name="common-readonly-attlist"/> + <ref name="common-tab-attlist"/> + <ref name="common-title-attlist"/> + <ref name="common-convert-empty-attlist"/> + <ref name="common-data-field-attlist"/> + </define> + <define name="form-number-attlist"> + <interleave> + <optional> + <attribute name="form:value"> + <ref name="double"/> + </attribute> + </optional> + <optional> + <attribute name="form:current-value"> + <ref name="double"/> + </attribute> + </optional> + <optional> + <attribute name="form:min-value"> + <ref name="double"/> + </attribute> + </optional> + <optional> + <attribute name="form:max-value"> + <ref name="double"/> + </attribute> + </optional> + </interleave> + </define> + <define name="form-date-attlist"> + <interleave> + <optional> + <attribute name="form:value"> + <ref name="date"/> + </attribute> + </optional> + <optional> + <attribute name="form:current-value"> + <ref name="date"/> + </attribute> + </optional> + <optional> + <attribute name="form:min-value"> + <ref name="date"/> + </attribute> + </optional> + <optional> + <attribute name="form:max-value"> + <ref name="date"/> + </attribute> + </optional> + </interleave> + </define> + <define name="form-time-attlist"> + <interleave> + <optional> + <attribute name="form:value"> + <ref name="time"/> + </attribute> + </optional> + <optional> + <attribute name="form:current-value"> + <ref name="time"/> + </attribute> + </optional> + <optional> + <attribute name="form:min-value"> + <ref name="time"/> + </attribute> + </optional> + <optional> + <attribute name="form:max-value"> + <ref name="time"/> + </attribute> + </optional> + </interleave> + </define> + <define name="form-fixed-text-attlist"> + <interleave> + <ref name="form-control-attlist"/> + <ref name="for"/> + <ref name="common-disabled-attlist"/> + <ref name="label"/> + <ref name="common-printable-attlist"/> + <ref name="common-title-attlist"/> + <optional> + <attribute name="form:multi-line"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="form-combobox-attlist"> + <interleave> + <ref name="form-control-attlist"/> + <ref name="common-current-value-attlist"/> + <ref name="common-disabled-attlist"/> + <ref name="dropdown"/> + <ref name="common-maxlength-attlist"/> + <ref name="common-printable-attlist"/> + <ref name="common-readonly-attlist"/> + <ref name="size"/> + <ref name="common-tab-attlist"/> + <ref name="common-title-attlist"/> + <ref name="common-value-attlist"/> + <ref name="common-convert-empty-attlist"/> + <ref name="common-data-field-attlist"/> + <ref name="list-source"/> + <ref name="list-source-type"/> + <ref name="common-linked-cell"/> + <ref name="common-source-cell-range"/> + <optional> + <attribute name="form:auto-complete"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="form-item"> + <element name="form:item"> + <ref name="form-item-attlist"/> + <text/> + </element> + </define> + <define name="form-item-attlist"> + <ref name="label"/> + </define> + <define name="form-listbox-attlist"> + <interleave> + <ref name="form-control-attlist"/> + <ref name="common-disabled-attlist"/> + <ref name="dropdown"/> + <ref name="common-printable-attlist"/> + <ref name="size"/> + <ref name="common-tab-attlist"/> + <ref name="common-title-attlist"/> + <ref name="bound-column"/> + <ref name="common-data-field-attlist"/> + <ref name="list-source"/> + <ref name="list-source-type"/> + <ref name="common-linked-cell"/> + <ref name="list-linkage-type"/> + <ref name="common-source-cell-range"/> + <optional> + <attribute name="form:multiple"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="form:xforms-list-source"> + <ref name="string"/> + </attribute> + </optional> + </interleave> + </define> + <define name="list-linkage-type"> + <optional> + <attribute name="form:list-linkage-type"> + <choice> + <value>selection</value> + <value>selection-indices</value> + </choice> + </attribute> + </optional> + </define> + <define name="form-option"> + <element name="form:option"> + <ref name="form-option-attlist"/> + <text/> + </element> + </define> + <define name="form-option-attlist"> + <ref name="current-selected"/> + <ref name="selected"/> + <ref name="label"/> + <ref name="common-value-attlist"/> + </define> + <define name="form-button-attlist"> + <interleave> + <ref name="form-control-attlist"/> + <ref name="button-type"/> + <ref name="common-disabled-attlist"/> + <ref name="label"/> + <ref name="image-data"/> + <ref name="common-printable-attlist"/> + <ref name="common-tab-attlist"/> + <ref name="target-frame"/> + <ref name="target-location"/> + <ref name="common-title-attlist"/> + <ref name="common-value-attlist"/> + <ref name="common-form-relative-image-position-attlist"/> + <ref name="common-repeat"/> + <ref name="common-delay-for-repeat"/> + <optional> + <attribute name="form:default-button"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="form:toggle"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="form:focus-on-click"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="form:xforms-submission"> + <ref name="string"/> + </attribute> + </optional> + </interleave> + </define> + <define name="form-image-attlist"> + <ref name="form-control-attlist"/> + <ref name="button-type"/> + <ref name="common-disabled-attlist"/> + <ref name="image-data"/> + <ref name="common-printable-attlist"/> + <ref name="common-tab-attlist"/> + <ref name="target-frame"/> + <ref name="target-location"/> + <ref name="common-title-attlist"/> + <ref name="common-value-attlist"/> + </define> + <define name="form-checkbox-attlist"> + <interleave> + <ref name="form-control-attlist"/> + <ref name="common-disabled-attlist"/> + <ref name="label"/> + <ref name="common-printable-attlist"/> + <ref name="common-tab-attlist"/> + <ref name="common-title-attlist"/> + <ref name="common-value-attlist"/> + <ref name="common-data-field-attlist"/> + <ref name="common-form-visual-effect-attlist"/> + <ref name="common-form-relative-image-position-attlist"/> + <ref name="common-linked-cell"/> + <optional> + <attribute name="form:current-state"> + <ref name="states"/> + </attribute> + </optional> + <optional> + <attribute name="form:is-tristate"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="form:state"> + <ref name="states"/> + </attribute> + </optional> + </interleave> + </define> + <define name="states"> + <choice> + <value>unchecked</value> + <value>checked</value> + <value>unknown</value> + </choice> + </define> + <define name="form-radio-attlist"> + <ref name="form-control-attlist"/> + <ref name="current-selected"/> + <ref name="common-disabled-attlist"/> + <ref name="label"/> + <ref name="common-printable-attlist"/> + <ref name="selected"/> + <ref name="common-tab-attlist"/> + <ref name="common-title-attlist"/> + <ref name="common-value-attlist"/> + <ref name="common-data-field-attlist"/> + <ref name="common-form-visual-effect-attlist"/> + <ref name="common-form-relative-image-position-attlist"/> + <ref name="common-linked-cell"/> + </define> + <define name="form-frame-attlist"> + <ref name="form-control-attlist"/> + <ref name="common-disabled-attlist"/> + <ref name="for"/> + <ref name="label"/> + <ref name="common-printable-attlist"/> + <ref name="common-title-attlist"/> + </define> + <define name="form-image-frame-attlist"> + <ref name="form-control-attlist"/> + <ref name="common-disabled-attlist"/> + <ref name="image-data"/> + <ref name="common-printable-attlist"/> + <ref name="common-readonly-attlist"/> + <ref name="common-title-attlist"/> + <ref name="common-data-field-attlist"/> + </define> + <define name="form-hidden-attlist"> + <ref name="form-control-attlist"/> + <ref name="common-value-attlist"/> + </define> + <define name="form-grid-attlist"> + <ref name="form-control-attlist"/> + <ref name="common-disabled-attlist"/> + <ref name="common-printable-attlist"/> + <ref name="common-tab-attlist"/> + <ref name="common-title-attlist"/> + </define> + <define name="form-column"> + <element name="form:column"> + <ref name="form-column-attlist"/> + <oneOrMore> + <ref name="column-controls"/> + </oneOrMore> + </element> + </define> + <define name="form-column-attlist"> + <ref name="common-form-control-attlist"/> + <ref name="label"/> + <ref name="text-style-name"/> + </define> + <define name="text-style-name"> + <optional> + <attribute name="form:text-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + </define> + <define name="form-value-range-attlist"> + <interleave> + <ref name="form-control-attlist"/> + <ref name="common-disabled-attlist"/> + <ref name="common-printable-attlist"/> + <ref name="common-tab-attlist"/> + <ref name="common-title-attlist"/> + <ref name="common-value-attlist"/> + <ref name="common-linked-cell"/> + <ref name="common-repeat"/> + <ref name="common-delay-for-repeat"/> + <optional> + <attribute name="form:max-value"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="form:min-value"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="form:step-size"> + <ref name="positiveInteger"/> + </attribute> + </optional> + <optional> + <attribute name="form:page-step-size"> + <ref name="positiveInteger"/> + </attribute> + </optional> + <optional> + <attribute name="form:orientation"> + <choice> + <value>horizontal</value> + <value>vertical</value> + </choice> + </attribute> + </optional> + </interleave> + </define> + <define name="form-generic-control-attlist"> + <ref name="form-control-attlist"/> + </define> + <define name="common-form-control-attlist"> + <interleave> + <optional> + <attribute name="form:name"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="form:control-implementation"> + <ref name="namespacedToken"/> + </attribute> + </optional> + </interleave> + </define> + <define name="xforms-bind-attlist"> + <optional> + <attribute name="xforms:bind"> + <ref name="string"/> + </attribute> + </optional> + </define> + <define name="types"> + <choice> + <value>submit</value> + <value>reset</value> + <value>push</value> + <value>url</value> + </choice> + </define> + <define name="button-type"> + <optional> + <attribute name="form:button-type"> + <ref name="types"/> + </attribute> + </optional> + </define> + <define name="common-control-id-attlist"> + <group> + <ref name="xml-id"/> + <optional> + <attribute name="form:id"> + <ref name="NCName"/> + </attribute> + </optional> + </group> + </define> + <define name="current-selected"> + <optional> + <attribute name="form:current-selected"> + <ref name="boolean"/> + </attribute> + </optional> + </define> + <define name="common-value-attlist"> + <optional> + <attribute name="form:value"> + <ref name="string"/> + </attribute> + </optional> + </define> + <define name="common-current-value-attlist"> + <optional> + <attribute name="form:current-value"> + <ref name="string"/> + </attribute> + </optional> + </define> + <define name="common-disabled-attlist"> + <optional> + <attribute name="form:disabled"> + <ref name="boolean"/> + </attribute> + </optional> + </define> + <define name="dropdown"> + <optional> + <attribute name="form:dropdown"> + <ref name="boolean"/> + </attribute> + </optional> + </define> + <define name="for"> + <optional> + <attribute name="form:for"> + <ref name="string"/> + </attribute> + </optional> + </define> + <define name="image-data"> + <optional> + <attribute name="form:image-data"> + <ref name="anyIRI"/> + </attribute> + </optional> + </define> + <define name="label"> + <optional> + <attribute name="form:label"> + <ref name="string"/> + </attribute> + </optional> + </define> + <define name="common-maxlength-attlist"> + <optional> + <attribute name="form:max-length"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + </define> + <define name="common-printable-attlist"> + <optional> + <attribute name="form:printable"> + <ref name="boolean"/> + </attribute> + </optional> + </define> + <define name="common-readonly-attlist"> + <optional> + <attribute name="form:readonly"> + <ref name="boolean"/> + </attribute> + </optional> + </define> + <define name="selected"> + <optional> + <attribute name="form:selected"> + <ref name="boolean"/> + </attribute> + </optional> + </define> + <define name="size"> + <optional> + <attribute name="form:size"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + </define> + <define name="common-tab-attlist"> + <interleave> + <optional> + <attribute name="form:tab-index"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="form:tab-stop"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="target-frame"> + <optional> + <attribute name="office:target-frame"> + <ref name="targetFrameName"/> + </attribute> + </optional> + </define> + <define name="target-location"> + <optional> + <attribute name="xlink:href"> + <ref name="anyIRI"/> + </attribute> + </optional> + </define> + <define name="common-title-attlist"> + <optional> + <attribute name="form:title"> + <ref name="string"/> + </attribute> + </optional> + </define> + <define name="common-form-visual-effect-attlist"> + <optional> + <attribute name="form:visual-effect"> + <choice> + <value>flat</value> + <value>3d</value> + </choice> + </attribute> + </optional> + </define> + <define name="common-form-relative-image-position-attlist"> + <choice> + <optional> + <attribute name="form:image-position"> + <value>center</value> + </attribute> + </optional> + <group> + <attribute name="form:image-position"> + <choice> + <value>start</value> + <value>end</value> + <value>top</value> + <value>bottom</value> + </choice> + </attribute> + <optional> + <attribute name="form:image-align"> + <choice> + <value>start</value> + <value>center</value> + <value>end</value> + </choice> + </attribute> + </optional> + </group> + </choice> + </define> + <define name="bound-column"> + <optional> + <attribute name="form:bound-column"> + <ref name="string"/> + </attribute> + </optional> + </define> + <define name="common-convert-empty-attlist"> + <optional> + <attribute name="form:convert-empty-to-null"> + <ref name="boolean"/> + </attribute> + </optional> + </define> + <define name="common-data-field-attlist"> + <optional> + <attribute name="form:data-field"> + <ref name="string"/> + </attribute> + </optional> + </define> + <define name="list-source"> + <optional> + <attribute name="form:list-source"> + <ref name="string"/> + </attribute> + </optional> + </define> + <define name="list-source-type"> + <optional> + <attribute name="form:list-source-type"> + <choice> + <value>table</value> + <value>query</value> + <value>sql</value> + <value>sql-pass-through</value> + <value>value-list</value> + <value>table-fields</value> + </choice> + </attribute> + </optional> + </define> + <define name="common-linked-cell"> + <optional> + <attribute name="form:linked-cell"> + <choice> + <ref name="cellAddress"/> + <ref name="string"/> + </choice> + </attribute> + </optional> + </define> + <define name="common-source-cell-range"> + <optional> + <attribute name="form:source-cell-range"> + <choice> + <ref name="cellRangeAddress"/> + <ref name="string"/> + </choice> + </attribute> + </optional> + </define> + <define name="common-spin-button"> + <optional> + <attribute name="form:spin-button"> + <ref name="boolean"/> + </attribute> + </optional> + </define> + <define name="common-repeat"> + <optional> + <attribute name="form:repeat"> + <ref name="boolean"/> + </attribute> + </optional> + </define> + <define name="common-delay-for-repeat"> + <optional> + <attribute name="form:delay-for-repeat"> + <ref name="duration"/> + </attribute> + </optional> + </define> + <define name="form-properties"> + <element name="form:properties"> + <oneOrMore> + <ref name="form-property"/> + </oneOrMore> + </element> + </define> + <define name="form-property"> + <choice> + <element name="form:property"> + <ref name="form-property-name"/> + <ref name="form-property-value-and-type-attlist"/> + </element> + <element name="form:list-property"> + <ref name="form-property-name"/> + <ref name="form-property-type-and-value-list"/> + </element> + </choice> + </define> + <define name="form-property-name"> + <attribute name="form:property-name"> + <ref name="string"/> + </attribute> + </define> + <define name="form-property-value-and-type-attlist"> + <choice> + <ref name="common-value-and-type-attlist"/> + <attribute name="office:value-type"> + <value>void</value> + </attribute> + </choice> + </define> + <define name="form-property-type-and-value-list"> + <choice> + <group> + <attribute name="office:value-type"> + <value>float</value> + </attribute> + <zeroOrMore> + <element name="form:list-value"> + <attribute name="office:value"> + <ref name="double"/> + </attribute> + </element> + </zeroOrMore> + </group> + <group> + <attribute name="office:value-type"> + <value>percentage</value> + </attribute> + <zeroOrMore> + <element name="form:list-value"> + <attribute name="office:value"> + <ref name="double"/> + </attribute> + </element> + </zeroOrMore> + </group> + <group> + <attribute name="office:value-type"> + <value>currency</value> + </attribute> + <zeroOrMore> + <element name="form:list-value"> + <attribute name="office:value"> + <ref name="double"/> + </attribute> + <optional> + <attribute name="office:currency"> + <ref name="string"/> + </attribute> + </optional> + </element> + </zeroOrMore> + </group> + <group> + <attribute name="office:value-type"> + <value>date</value> + </attribute> + <zeroOrMore> + <element name="form:list-value"> + <attribute name="office:date-value"> + <ref name="dateOrDateTime"/> + </attribute> + </element> + </zeroOrMore> + </group> + <group> + <attribute name="office:value-type"> + <value>time</value> + </attribute> + <zeroOrMore> + <element name="form:list-value"> + <attribute name="office:time-value"> + <ref name="duration"/> + </attribute> + </element> + </zeroOrMore> + </group> + <group> + <attribute name="office:value-type"> + <value>boolean</value> + </attribute> + <zeroOrMore> + <element name="form:list-value"> + <attribute name="office:boolean-value"> + <ref name="boolean"/> + </attribute> + </element> + </zeroOrMore> + </group> + <group> + <attribute name="office:value-type"> + <value>string</value> + </attribute> + <zeroOrMore> + <element name="form:list-value"> + <attribute name="office:string-value"> + <ref name="string"/> + </attribute> + </element> + </zeroOrMore> + </group> + <attribute name="office:value-type"> + <value>void</value> + </attribute> + </choice> + </define> + <define name="office-annotation"> + <element name="office:annotation"> + <ref name="office-annotation-attlist"/> + <ref name="draw-caption-attlist"/> + <ref name="common-draw-position-attlist"/> + <ref name="common-draw-size-attlist"/> + <ref name="common-draw-shape-with-text-and-styles-attlist"/> + <optional> + <ref name="dc-creator"/> + </optional> + <optional> + <ref name="dc-date"/> + </optional> + <optional> + <ref name="meta-date-string"/> + </optional> + <zeroOrMore> + <choice> + <ref name="text-p"/> + <ref name="text-list"/> + </choice> + </zeroOrMore> + </element> + </define> + <define name="office-annotation-end"> + <element name="office:annotation-end"> + <ref name="office-annotation-end-attlist"/> + </element> + </define> + <define name="office-annotation-attlist"> + <interleave> + <optional> + <attribute name="office:display"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <ref name="common-office-annotation-name-attlist"/> + </optional> + </interleave> + </define> + <define name="office-annotation-end-attlist"> + <ref name="common-office-annotation-name-attlist"/> + </define> + <define name="common-office-annotation-name-attlist"> + <attribute name="office:name"> + <ref name="string"/> + </attribute> + </define> + <define name="meta-date-string"> + <element name="meta:date-string"> + <ref name="string"/> + </element> + </define> + <define name="common-num-format-prefix-suffix-attlist"> + <optional> + <attribute name="style:num-prefix"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="style:num-suffix"> + <ref name="string"/> + </attribute> + </optional> + </define> + <define name="common-num-format-attlist"> + <choice> + <attribute name="style:num-format"> + <choice> + <value>1</value> + <value>i</value> + <value>I</value> + <ref name="string"/> + <empty/> + </choice> + </attribute> + <group> + <attribute name="style:num-format"> + <choice> + <value>a</value> + <value>A</value> + </choice> + </attribute> + <ref name="style-num-letter-sync-attlist"/> + </group> + <empty/> + </choice> + </define> + <define name="style-num-letter-sync-attlist"> + <optional> + <attribute name="style:num-letter-sync"> + <ref name="boolean"/> + </attribute> + </optional> + </define> + <define name="office-change-info"> + <element name="office:change-info"> + <ref name="dc-creator"/> + <ref name="dc-date"/> + <zeroOrMore> + <ref name="text-p"/> + </zeroOrMore> + </element> + </define> + <define name="office-event-listeners"> + <element name="office:event-listeners"> + <zeroOrMore> + <choice> + <ref name="script-event-listener"/> + <ref name="presentation-event-listener"/> + </choice> + </zeroOrMore> + </element> + </define> + <define name="script-event-listener"> + <element name="script:event-listener"> + <ref name="script-event-listener-attlist"/> + <empty/> + </element> + </define> + <define name="script-event-listener-attlist"> + <interleave> + <attribute name="script:event-name"> + <ref name="string"/> + </attribute> + <attribute name="script:language"> + <ref name="string"/> + </attribute> + <choice> + <attribute name="script:macro-name"> + <ref name="string"/> + </attribute> + <group> + <attribute name="xlink:type"> + <value>simple</value> + </attribute> + <attribute name="xlink:href"> + <ref name="anyIRI"/> + </attribute> + <optional> + <attribute name="xlink:actuate"> + <value>onRequest</value> + </attribute> + </optional> + </group> + </choice> + </interleave> + </define> + <define name="math-math"> + <element name="math:math"> + <ref name="mathMarkup"/> + </element> + </define> + <define name="mathMarkup"> + <dc:description>To avoid inclusion of the complete MathML schema, anything is allowed within a math:math top-level element</dc:description> + <zeroOrMore> + <choice> + <attribute> + <anyName/> + </attribute> + <text/> + <element> + <anyName/> + <ref name="mathMarkup"/> + </element> + </choice> + </zeroOrMore> + </define> + <define name="text-dde-connection-decl"> + <element name="text:dde-connection-decl"> + <ref name="text-dde-connection-decl-attlist"/> + <ref name="common-dde-connection-decl-attlist"/> + </element> + </define> + <define name="text-dde-connection-decl-attlist"> + <attribute name="office:name"> + <ref name="string"/> + </attribute> + </define> + <define name="common-dde-connection-decl-attlist"> + <interleave> + <attribute name="office:dde-application"> + <ref name="string"/> + </attribute> + <attribute name="office:dde-topic"> + <ref name="string"/> + </attribute> + <attribute name="office:dde-item"> + <ref name="string"/> + </attribute> + <optional> + <attribute name="office:automatic-update"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="table-dde-link"> + <element name="table:dde-link"> + <ref name="office-dde-source"/> + <ref name="table-table"/> + </element> + </define> + <define name="office-dde-source"> + <element name="office:dde-source"> + <ref name="office-dde-source-attlist"/> + <ref name="common-dde-connection-decl-attlist"/> + </element> + </define> + <define name="office-dde-source-attlist"> + <interleave> + <optional> + <attribute name="office:name"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="office:conversion-mode"> + <choice> + <value>into-default-style-data-style</value> + <value>into-english-number</value> + <value>keep-text</value> + </choice> + </attribute> + </optional> + </interleave> + </define> + <define name="animation-element"> + <choice> + <element name="anim:animate"> + <ref name="common-anim-target-attlist"/> + <ref name="common-anim-named-target-attlist"/> + <ref name="common-anim-values-attlist"/> + <ref name="common-anim-spline-mode-attlist"/> + <ref name="common-spline-anim-value-attlist"/> + <ref name="common-timing-attlist"/> + <ref name="common-anim-add-accum-attlist"/> + </element> + <element name="anim:set"> + <ref name="common-anim-target-attlist"/> + <ref name="common-anim-named-target-attlist"/> + <ref name="common-anim-set-values-attlist"/> + <ref name="common-timing-attlist"/> + <ref name="common-anim-add-accum-attlist"/> + </element> + <element name="anim:animateMotion"> + <ref name="anim-animate-motion-attlist"/> + <ref name="common-anim-target-attlist"/> + <ref name="common-anim-named-target-attlist"/> + <ref name="common-anim-add-accum-attlist"/> + <ref name="common-anim-values-attlist"/> + <ref name="common-timing-attlist"/> + <ref name="common-spline-anim-value-attlist"/> + </element> + <element name="anim:animateColor"> + <ref name="common-anim-target-attlist"/> + <ref name="common-anim-named-target-attlist"/> + <ref name="common-anim-add-accum-attlist"/> + <ref name="common-anim-values-attlist"/> + <ref name="common-anim-spline-mode-attlist"/> + <ref name="common-spline-anim-value-attlist"/> + <ref name="anim-animate-color-attlist"/> + <ref name="common-timing-attlist"/> + </element> + <element name="anim:animateTransform"> + <ref name="common-anim-target-attlist"/> + <ref name="common-anim-named-target-attlist"/> + <ref name="common-anim-add-accum-attlist"/> + <ref name="common-anim-values-attlist"/> + <ref name="anim-animate-transform-attlist"/> + <ref name="common-timing-attlist"/> + </element> + <element name="anim:transitionFilter"> + <ref name="common-anim-target-attlist"/> + <ref name="common-anim-add-accum-attlist"/> + <ref name="common-anim-values-attlist"/> + <ref name="common-anim-spline-mode-attlist"/> + <ref name="anim-transition-filter-attlist"/> + <ref name="common-timing-attlist"/> + </element> + <element name="anim:par"> + <ref name="common-anim-attlist"/> + <ref name="common-timing-attlist"/> + <ref name="common-endsync-timing-attlist"/> + <zeroOrMore> + <ref name="animation-element"/> + </zeroOrMore> + </element> + <element name="anim:seq"> + <ref name="common-anim-attlist"/> + <ref name="common-endsync-timing-attlist"/> + <ref name="common-timing-attlist"/> + <zeroOrMore> + <ref name="animation-element"/> + </zeroOrMore> + </element> + <element name="anim:iterate"> + <ref name="common-anim-attlist"/> + <ref name="anim-iterate-attlist"/> + <ref name="common-timing-attlist"/> + <ref name="common-endsync-timing-attlist"/> + <zeroOrMore> + <ref name="animation-element"/> + </zeroOrMore> + </element> + <element name="anim:audio"> + <ref name="common-anim-attlist"/> + <ref name="anim-audio-attlist"/> + <ref name="common-basic-timing-attlist"/> + </element> + <element name="anim:command"> + <ref name="common-anim-attlist"/> + <ref name="anim-command-attlist"/> + <ref name="common-begin-end-timing-attlist"/> + <ref name="common-anim-target-attlist"/> + <zeroOrMore> + <element name="anim:param"> + <attribute name="anim:name"> + <ref name="string"/> + </attribute> + <attribute name="anim:value"> + <ref name="string"/> + </attribute> + </element> + </zeroOrMore> + </element> + </choice> + </define> + <define name="anim-animate-motion-attlist"> + <interleave> + <optional> + <attribute name="svg:path"> + <ref name="pathData"/> + </attribute> + </optional> + <optional> + <attribute name="svg:origin"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="smil:calcMode"> + <choice> + <value>discrete</value> + <value>linear</value> + <value>paced</value> + <value>spline</value> + </choice> + </attribute> + </optional> + </interleave> + </define> + <define name="anim-animate-color-attlist"> + <interleave> + <optional> + <attribute name="anim:color-interpolation"> + <choice> + <value>rgb</value> + <value>hsl</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="anim:color-interpolation-direction"> + <choice> + <value>clockwise</value> + <value>counter-clockwise</value> + </choice> + </attribute> + </optional> + </interleave> + </define> + <define name="anim-animate-transform-attlist"> + <attribute name="svg:type"> + <choice> + <value>translate</value> + <value>scale</value> + <value>rotate</value> + <value>skewX</value> + <value>skewY</value> + </choice> + </attribute> + </define> + <define name="anim-transition-filter-attlist"> + <interleave> + <attribute name="smil:type"> + <ref name="string"/> + </attribute> + <optional> + <attribute name="smil:subtype"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="smil:direction"> + <choice> + <value>forward</value> + <value>reverse</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="smil:fadeColor"> + <ref name="color"/> + </attribute> + </optional> + <optional> + <attribute name="smil:mode"> + <choice> + <value>in</value> + <value>out</value> + </choice> + </attribute> + </optional> + </interleave> + </define> + <define name="common-anim-target-attlist"> + <interleave> + <optional> + <attribute name="smil:targetElement"> + <ref name="IDREF"/> + </attribute> + </optional> + <optional> + <attribute name="anim:sub-item"> + <ref name="string"/> + </attribute> + </optional> + </interleave> + </define> + <define name="common-anim-named-target-attlist"> + <attribute name="smil:attributeName"> + <ref name="string"/> + </attribute> + </define> + <define name="common-anim-values-attlist"> + <interleave> + <optional> + <attribute name="smil:values"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="anim:formula"> + <ref name="string"/> + </attribute> + </optional> + <ref name="common-anim-set-values-attlist"/> + <optional> + <attribute name="smil:from"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="smil:by"> + <ref name="string"/> + </attribute> + </optional> + </interleave> + </define> + <define name="common-anim-spline-mode-attlist"> + <optional> + <attribute name="smil:calcMode"> + <choice> + <value>discrete</value> + <value>linear</value> + <value>paced</value> + <value>spline</value> + </choice> + </attribute> + </optional> + </define> + <define name="common-spline-anim-value-attlist"> + <interleave> + <optional> + <attribute name="smil:keyTimes"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="smil:keySplines"> + <ref name="string"/> + </attribute> + </optional> + </interleave> + </define> + <define name="common-anim-add-accum-attlist"> + <interleave> + <optional> + <attribute name="smil:accumulate"> + <choice> + <value>none</value> + <value>sum</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="smil:additive"> + <choice> + <value>replace</value> + <value>sum</value> + </choice> + </attribute> + </optional> + </interleave> + </define> + <define name="common-anim-set-values-attlist"> + <optional> + <attribute name="smil:to"> + <ref name="string"/> + </attribute> + </optional> + </define> + <define name="common-begin-end-timing-attlist"> + <interleave> + <optional> + <attribute name="smil:begin"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="smil:end"> + <ref name="string"/> + </attribute> + </optional> + </interleave> + </define> + <define name="common-dur-timing-attlist"> + <optional> + <attribute name="smil:dur"> + <ref name="string"/> + </attribute> + </optional> + </define> + <define name="common-endsync-timing-attlist"> + <optional> + <attribute name="smil:endsync"> + <choice> + <value>first</value> + <value>last</value> + <value>all</value> + <value>media</value> + <ref name="IDREF"/> + </choice> + </attribute> + </optional> + </define> + <define name="common-repeat-timing-attlist"> + <optional> + <attribute name="smil:repeatDur"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="smil:repeatCount"> + <choice> + <ref name="nonNegativeDecimal"/> + <value>indefinite</value> + </choice> + </attribute> + </optional> + </define> + <define name="nonNegativeDecimal"> + <data type="decimal"> + <param name="minInclusive">0.0</param> + </data> + </define> + <define name="common-fill-timing-attlist"> + <optional> + <attribute name="smil:fill"> + <choice> + <value>remove</value> + <value>freeze</value> + <value>hold</value> + <value>auto</value> + <value>default</value> + <value>transition</value> + </choice> + </attribute> + </optional> + </define> + <define name="common-fill-default-attlist"> + <optional> + <attribute name="smil:fillDefault"> + <choice> + <value>remove</value> + <value>freeze</value> + <value>hold</value> + <value>transition</value> + <value>auto</value> + <value>inherit</value> + </choice> + </attribute> + </optional> + </define> + <define name="common-restart-timing-attlist"> + <optional> + <attribute name="smil:restart"> + <choice> + <value>never</value> + <value>always</value> + <value>whenNotActive</value> + <value>default</value> + </choice> + </attribute> + </optional> + </define> + <define name="common-restart-default-attlist"> + <optional> + <attribute name="smil:restartDefault"> + <choice> + <value>never</value> + <value>always</value> + <value>whenNotActive</value> + <value>inherit</value> + </choice> + </attribute> + </optional> + </define> + <define name="common-time-manip-attlist"> + <interleave> + <optional> + <attribute name="smil:accelerate"> + <ref name="zeroToOneDecimal"/> + </attribute> + </optional> + <optional> + <attribute name="smil:decelerate"> + <ref name="zeroToOneDecimal"/> + </attribute> + </optional> + <optional> + <attribute name="smil:autoReverse"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="zeroToOneDecimal"> + <data type="decimal"> + <param name="minInclusive">0</param> + <param name="maxInclusive">1</param> + </data> + </define> + <define name="common-basic-timing-attlist"> + <ref name="common-begin-end-timing-attlist"/> + <ref name="common-dur-timing-attlist"/> + <ref name="common-repeat-timing-attlist"/> + <ref name="common-restart-timing-attlist"/> + <ref name="common-restart-default-attlist"/> + <ref name="common-fill-timing-attlist"/> + <ref name="common-fill-default-attlist"/> + </define> + <define name="common-timing-attlist"> + <ref name="common-basic-timing-attlist"/> + <ref name="common-time-manip-attlist"/> + </define> + <define name="anim-iterate-attlist"> + <interleave> + <ref name="common-anim-target-attlist"/> + <optional> + <attribute name="anim:iterate-type"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="anim:iterate-interval"> + <ref name="duration"/> + </attribute> + </optional> + </interleave> + </define> + <define name="anim-audio-attlist"> + <interleave> + <optional> + <attribute name="xlink:href"> + <ref name="anyIRI"/> + </attribute> + </optional> + <optional> + <attribute name="anim:audio-level"> + <ref name="double"/> + </attribute> + </optional> + </interleave> + </define> + <define name="anim-command-attlist"> + <attribute name="anim:command"> + <ref name="string"/> + </attribute> + </define> + <define name="style-style"> + <element name="style:style"> + <ref name="style-style-attlist"/> + <ref name="style-style-content"/> + <zeroOrMore> + <ref name="style-map"/> + </zeroOrMore> + </element> + </define> + <define name="common-in-content-meta-attlist"> + <attribute name="xhtml:about"> + <ref name="URIorSafeCURIE"/> + </attribute> + <attribute name="xhtml:property"> + <ref name="CURIEs"/> + </attribute> + <ref name="common-meta-literal-attlist"/> + </define> + <define name="common-meta-literal-attlist"> + <optional> + <attribute name="xhtml:datatype"> + <ref name="CURIE"/> + </attribute> + </optional> + <optional> + <attribute name="xhtml:content"> + <ref name="string"/> + </attribute> + </optional> + </define> + <define name="xml-id"> + <attribute name="xml:id"> + <ref name="ID"/> + </attribute> + </define> + <define name="style-style-attlist"> + <interleave> + <attribute name="style:name"> + <ref name="styleName"/> + </attribute> + <optional> + <attribute name="style:display-name"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="style:parent-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="style:next-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="style:list-level"> + <choice> + <ref name="positiveInteger"/> + <empty/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:list-style-name"> + <choice> + <ref name="styleName"/> + <empty/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:master-page-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="style:auto-update"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="style:data-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="style:percentage-data-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="style:class"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="style:default-outline-level"> + <choice> + <ref name="positiveInteger"/> + <empty/> + </choice> + </attribute> + </optional> + </interleave> + </define> + <define name="style-map"> + <element name="style:map"> + <ref name="style-map-attlist"/> + <empty/> + </element> + </define> + <define name="style-map-attlist"> + <interleave> + <attribute name="style:condition"> + <ref name="string"/> + </attribute> + <attribute name="style:apply-style-name"> + <ref name="styleNameRef"/> + </attribute> + <optional> + <attribute name="style:base-cell-address"> + <ref name="cellAddress"/> + </attribute> + </optional> + </interleave> + </define> + <define name="style-default-style"> + <element name="style:default-style"> + <ref name="style-style-content"/> + </element> + </define> + <define name="style-page-layout"> + <element name="style:page-layout"> + <ref name="style-page-layout-attlist"/> + <ref name="style-page-layout-content"/> + </element> + </define> + <define name="style-page-layout-content"> + <optional> + <ref name="style-page-layout-properties"/> + </optional> + <optional> + <ref name="style-header-style"/> + </optional> + <optional> + <ref name="style-footer-style"/> + </optional> + </define> + <define name="style-page-layout-attlist"> + <interleave> + <attribute name="style:name"> + <ref name="styleName"/> + </attribute> + <optional> + <attribute name="style:page-usage"> + <choice> + <value>all</value> + <value>left</value> + <value>right</value> + <value>mirrored</value> + </choice> + </attribute> + </optional> + </interleave> + </define> + <define name="style-header-style"> + <element name="style:header-style"> + <optional> + <ref name="style-header-footer-properties"/> + </optional> + </element> + </define> + <define name="style-footer-style"> + <element name="style:footer-style"> + <optional> + <ref name="style-header-footer-properties"/> + </optional> + </element> + </define> + <define name="style-default-page-layout"> + <element name="style:default-page-layout"> + <ref name="style-page-layout-content"/> + </element> + </define> + <define name="style-master-page"> + <element name="style:master-page"> + <ref name="style-master-page-attlist"/> + <optional> + <ref name="style-header"/> + <optional> + <ref name="style-header-left"/> + </optional> + </optional> + <optional> + <ref name="style-footer"/> + <optional> + <ref name="style-footer-left"/> + </optional> + </optional> + <optional> + <ref name="draw-layer-set"/> + </optional> + <optional> + <ref name="office-forms"/> + </optional> + <zeroOrMore> + <ref name="shape"/> + </zeroOrMore> + <optional> + <ref name="animation-element"/> + </optional> + <optional> + <ref name="presentation-notes"/> + </optional> + </element> + </define> + <define name="style-master-page-attlist"> + <interleave> + <attribute name="style:name"> + <ref name="styleName"/> + </attribute> + <optional> + <attribute name="style:display-name"> + <ref name="string"/> + </attribute> + </optional> + <attribute name="style:page-layout-name"> + <ref name="styleNameRef"/> + </attribute> + <optional> + <attribute name="draw:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="style:next-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + </interleave> + </define> + <define name="style-header"> + <element name="style:header"> + <ref name="common-style-header-footer-attlist"/> + <ref name="header-footer-content"/> + </element> + </define> + <define name="style-footer"> + <element name="style:footer"> + <ref name="common-style-header-footer-attlist"/> + <ref name="header-footer-content"/> + </element> + </define> + <define name="style-header-left"> + <element name="style:header-left"> + <ref name="common-style-header-footer-attlist"/> + <ref name="header-footer-content"/> + </element> + </define> + <define name="style-footer-left"> + <element name="style:footer-left"> + <ref name="common-style-header-footer-attlist"/> + <ref name="header-footer-content"/> + </element> + </define> + <define name="header-footer-content"> + <choice> + <group> + <ref name="text-tracked-changes"/> + <ref name="text-decls"/> + <zeroOrMore> + <choice> + <ref name="text-h"/> + <ref name="text-p"/> + <ref name="text-list"/> + <ref name="table-table"/> + <ref name="text-section"/> + <ref name="text-table-of-content"/> + <ref name="text-illustration-index"/> + <ref name="text-table-index"/> + <ref name="text-object-index"/> + <ref name="text-user-index"/> + <ref name="text-alphabetical-index"/> + <ref name="text-bibliography"/> + <ref name="text-index-title"/> + <ref name="change-marks"/> + </choice> + </zeroOrMore> + </group> + <group> + <optional> + <ref name="style-region-left"/> + </optional> + <optional> + <ref name="style-region-center"/> + </optional> + <optional> + <ref name="style-region-right"/> + </optional> + </group> + </choice> + </define> + <define name="common-style-header-footer-attlist"> + <optional> + <attribute name="style:display"> + <ref name="boolean"/> + </attribute> + </optional> + </define> + <define name="style-region-left"> + <element name="style:region-left"> + <ref name="region-content"/> + </element> + </define> + <define name="style-region-center"> + <element name="style:region-center"> + <ref name="region-content"/> + </element> + </define> + <define name="style-region-right"> + <element name="style:region-right"> + <ref name="region-content"/> + </element> + </define> + <define name="region-content"> + <zeroOrMore> + <ref name="text-p"/> + </zeroOrMore> + </define> + <define name="presentation-notes"> + <element name="presentation:notes"> + <ref name="common-presentation-header-footer-attlist"/> + <ref name="presentation-notes-attlist"/> + <ref name="office-forms"/> + <zeroOrMore> + <ref name="shape"/> + </zeroOrMore> + </element> + </define> + <define name="presentation-notes-attlist"> + <interleave> + <optional> + <attribute name="style:page-layout-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="draw:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + </interleave> + </define> + <define name="table-table-template"> + <element name="table:table-template"> + <ref name="table-table-template-attlist"/> + <optional> + <ref name="table-first-row"/> + </optional> + <optional> + <ref name="table-last-row"/> + </optional> + <optional> + <ref name="table-first-column"/> + </optional> + <optional> + <ref name="table-last-column"/> + </optional> + <ref name="table-body"/> + <optional> + <ref name="table-even-rows"/> + </optional> + <optional> + <ref name="table-odd-rows"/> + </optional> + <optional> + <ref name="table-even-columns"/> + </optional> + <optional> + <ref name="table-odd-columns"/> + </optional> + <optional> + <ref name="table-background"/> + </optional> + </element> + </define> + <define name="table-table-template-attlist"> + <interleave> + <attribute name="table:name"> + <ref name="string"/> + </attribute> + <attribute name="table:first-row-start-column"> + <ref name="rowOrCol"/> + </attribute> + <attribute name="table:first-row-end-column"> + <ref name="rowOrCol"/> + </attribute> + <attribute name="table:last-row-start-column"> + <ref name="rowOrCol"/> + </attribute> + <attribute name="table:last-row-end-column"> + <ref name="rowOrCol"/> + </attribute> + </interleave> + </define> + <define name="rowOrCol"> + <choice> + <value>row</value> + <value>column</value> + </choice> + </define> + <define name="table-first-row"> + <element name="table:first-row"> + <ref name="common-table-template-attlist"/> + <empty/> + </element> + </define> + <define name="table-last-row"> + <element name="table:last-row"> + <ref name="common-table-template-attlist"/> + <empty/> + </element> + </define> + <define name="table-first-column"> + <element name="table:first-column"> + <ref name="common-table-template-attlist"/> + <empty/> + </element> + </define> + <define name="table-last-column"> + <element name="table:last-column"> + <ref name="common-table-template-attlist"/> + <empty/> + </element> + </define> + <define name="table-body"> + <element name="table:body"> + <ref name="common-table-template-attlist"/> + <empty/> + </element> + </define> + <define name="table-even-rows"> + <element name="table:even-rows"> + <ref name="common-table-template-attlist"/> + <empty/> + </element> + </define> + <define name="table-odd-rows"> + <element name="table:odd-rows"> + <ref name="common-table-template-attlist"/> + <empty/> + </element> + </define> + <define name="table-even-columns"> + <element name="table:even-columns"> + <ref name="common-table-template-attlist"/> + <empty/> + </element> + </define> + <define name="table-odd-columns"> + <element name="table:odd-columns"> + <ref name="common-table-template-attlist"/> + <empty/> + </element> + </define> + <define name="common-table-template-attlist"> + <attribute name="table:style-name"> + <ref name="styleNameRef"/> + </attribute> + <optional> + <attribute name="table:paragraph-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + </define> + <define name="table-background"> + <element name="table:background"> + <ref name="table-background-attlist"/> + <empty/> + </element> + </define> + <define name="table-background-attlist"> + <attribute name="table:style-name"> + <ref name="styleNameRef"/> + </attribute> + </define> + <define name="style-font-face"> + <element name="style:font-face"> + <ref name="style-font-face-attlist"/> + <optional> + <ref name="svg-font-face-src"/> + </optional> + <optional> + <ref name="svg-definition-src"/> + </optional> + </element> + </define> + <define name="style-font-face-attlist"> + <interleave> + <optional> + <attribute name="svg:font-family"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="svg:font-style"> + <ref name="fontStyle"/> + </attribute> + </optional> + <optional> + <attribute name="svg:font-variant"> + <ref name="fontVariant"/> + </attribute> + </optional> + <optional> + <attribute name="svg:font-weight"> + <ref name="fontWeight"/> + </attribute> + </optional> + <optional> + <attribute name="svg:font-stretch"> + <choice> + <value>normal</value> + <value>ultra-condensed</value> + <value>extra-condensed</value> + <value>condensed</value> + <value>semi-condensed</value> + <value>semi-expanded</value> + <value>expanded</value> + <value>extra-expanded</value> + <value>ultra-expanded</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="svg:font-size"> + <ref name="positiveLength"/> + </attribute> + </optional> + <optional> + <attribute name="svg:unicode-range"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="svg:units-per-em"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:panose-1"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="svg:stemv"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:stemh"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:slope"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:cap-height"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:x-height"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:accent-height"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:ascent"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:descent"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:widths"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="svg:bbox"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="svg:ideographic"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:alphabetic"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:mathematical"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:hanging"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:v-ideographic"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:v-alphabetic"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:v-mathematical"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:v-hanging"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:underline-position"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:underline-thickness"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:strikethrough-position"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:strikethrough-thickness"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:overline-position"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="svg:overline-thickness"> + <ref name="integer"/> + </attribute> + </optional> + <attribute name="style:name"> + <ref name="string"/> + </attribute> + <optional> + <attribute name="style:font-adornments"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-family-generic"> + <ref name="fontFamilyGeneric"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-pitch"> + <ref name="fontPitch"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-charset"> + <ref name="textEncoding"/> + </attribute> + </optional> + </interleave> + </define> + <define name="svg-font-face-src"> + <element name="svg:font-face-src"> + <oneOrMore> + <choice> + <ref name="svg-font-face-uri"/> + <ref name="svg-font-face-name"/> + </choice> + </oneOrMore> + </element> + </define> + <define name="svg-font-face-uri"> + <element name="svg:font-face-uri"> + <ref name="common-svg-font-face-xlink-attlist"/> + <zeroOrMore> + <ref name="svg-font-face-format"/> + </zeroOrMore> + </element> + </define> + <define name="svg-font-face-format"> + <element name="svg:font-face-format"> + <optional> + <attribute name="svg:string"> + <ref name="string"/> + </attribute> + </optional> + <empty/> + </element> + </define> + <define name="svg-font-face-name"> + <element name="svg:font-face-name"> + <optional> + <attribute name="svg:name"> + <ref name="string"/> + </attribute> + </optional> + <empty/> + </element> + </define> + <define name="svg-definition-src"> + <element name="svg:definition-src"> + <ref name="common-svg-font-face-xlink-attlist"/> + <empty/> + </element> + </define> + <define name="common-svg-font-face-xlink-attlist"> + <attribute name="xlink:type"> + <value>simple</value> + </attribute> + <attribute name="xlink:href"> + <ref name="anyIRI"/> + </attribute> + <optional> + <attribute name="xlink:actuate"> + <value>onRequest</value> + </attribute> + </optional> + </define> + <define name="number-number-style"> + <element name="number:number-style"> + <ref name="common-data-style-attlist"/> + <optional> + <ref name="style-text-properties"/> + </optional> + <optional> + <ref name="number-text"/> + </optional> + <optional> + <ref name="any-number"/> + <optional> + <ref name="number-text"/> + </optional> + </optional> + <zeroOrMore> + <ref name="style-map"/> + </zeroOrMore> + </element> + </define> + <define name="any-number"> + <choice> + <ref name="number-number"/> + <ref name="number-scientific-number"/> + <ref name="number-fraction"/> + </choice> + </define> + <define name="number-number"> + <element name="number:number"> + <ref name="number-number-attlist"/> + <ref name="common-decimal-places-attlist"/> + <ref name="common-number-attlist"/> + <zeroOrMore> + <ref name="number-embedded-text"/> + </zeroOrMore> + </element> + </define> + <define name="number-number-attlist"> + <interleave> + <optional> + <attribute name="number:decimal-replacement"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="number:display-factor"> + <ref name="double"/> + </attribute> + </optional> + </interleave> + </define> + <define name="number-embedded-text"> + <element name="number:embedded-text"> + <ref name="number-embedded-text-attlist"/> + <text/> + </element> + </define> + <define name="number-embedded-text-attlist"> + <attribute name="number:position"> + <ref name="integer"/> + </attribute> + </define> + <define name="number-scientific-number"> + <element name="number:scientific-number"> + <ref name="number-scientific-number-attlist"/> + <ref name="common-decimal-places-attlist"/> + <ref name="common-number-attlist"/> + <empty/> + </element> + </define> + <define name="number-scientific-number-attlist"> + <optional> + <attribute name="number:min-exponent-digits"> + <ref name="integer"/> + </attribute> + </optional> + </define> + <define name="number-fraction"> + <element name="number:fraction"> + <ref name="number-fraction-attlist"/> + <ref name="common-number-attlist"/> + <empty/> + </element> + </define> + <define name="number-fraction-attlist"> + <interleave> + <optional> + <attribute name="number:min-numerator-digits"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="number:min-denominator-digits"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="number:denominator-value"> + <ref name="integer"/> + </attribute> + </optional> + </interleave> + </define> + <define name="number-currency-style"> + <element name="number:currency-style"> + <ref name="common-data-style-attlist"/> + <ref name="common-auto-reorder-attlist"/> + <optional> + <ref name="style-text-properties"/> + </optional> + <optional> + <ref name="number-text"/> + </optional> + <optional> + <choice> + <group> + <ref name="number-and-text"/> + <optional> + <ref name="currency-symbol-and-text"/> + </optional> + </group> + <group> + <ref name="currency-symbol-and-text"/> + <optional> + <ref name="number-and-text"/> + </optional> + </group> + </choice> + </optional> + <zeroOrMore> + <ref name="style-map"/> + </zeroOrMore> + </element> + </define> + <define name="currency-symbol-and-text"> + <ref name="number-currency-symbol"/> + <optional> + <ref name="number-text"/> + </optional> + </define> + <define name="number-and-text"> + <ref name="number-number"/> + <optional> + <ref name="number-text"/> + </optional> + </define> + <define name="number-currency-symbol"> + <element name="number:currency-symbol"> + <ref name="number-currency-symbol-attlist"/> + <text/> + </element> + </define> + <define name="number-currency-symbol-attlist"> + <optional> + <attribute name="number:language"> + <ref name="languageCode"/> + </attribute> + </optional> + <optional> + <attribute name="number:country"> + <ref name="countryCode"/> + </attribute> + </optional> + <optional> + <attribute name="number:script"> + <ref name="scriptCode"/> + </attribute> + </optional> + <optional> + <attribute name="number:rfc-language-tag"> + <ref name="language"/> + </attribute> + </optional> + </define> + <define name="number-percentage-style"> + <element name="number:percentage-style"> + <ref name="common-data-style-attlist"/> + <optional> + <ref name="style-text-properties"/> + </optional> + <optional> + <ref name="number-text"/> + </optional> + <optional> + <ref name="number-and-text"/> + </optional> + <zeroOrMore> + <ref name="style-map"/> + </zeroOrMore> + </element> + </define> + <define name="number-date-style"> + <element name="number:date-style"> + <ref name="common-data-style-attlist"/> + <ref name="common-auto-reorder-attlist"/> + <ref name="common-format-source-attlist"/> + <optional> + <ref name="style-text-properties"/> + </optional> + <optional> + <ref name="number-text"/> + </optional> + <oneOrMore> + <ref name="any-date"/> + <optional> + <ref name="number-text"/> + </optional> + </oneOrMore> + <zeroOrMore> + <ref name="style-map"/> + </zeroOrMore> + </element> + </define> + <define name="any-date"> + <choice> + <ref name="number-day"/> + <ref name="number-month"/> + <ref name="number-year"/> + <ref name="number-era"/> + <ref name="number-day-of-week"/> + <ref name="number-week-of-year"/> + <ref name="number-quarter"/> + <ref name="number-hours"/> + <ref name="number-am-pm"/> + <ref name="number-minutes"/> + <ref name="number-seconds"/> + </choice> + </define> + <define name="number-day"> + <element name="number:day"> + <ref name="number-day-attlist"/> + <ref name="common-calendar-attlist"/> + <empty/> + </element> + </define> + <define name="number-day-attlist"> + <optional> + <attribute name="number:style"> + <choice> + <value>short</value> + <value>long</value> + </choice> + </attribute> + </optional> + </define> + <define name="number-month"> + <element name="number:month"> + <ref name="number-month-attlist"/> + <ref name="common-calendar-attlist"/> + <empty/> + </element> + </define> + <define name="number-month-attlist"> + <interleave> + <optional> + <attribute name="number:textual"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="number:possessive-form"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="number:style"> + <choice> + <value>short</value> + <value>long</value> + </choice> + </attribute> + </optional> + </interleave> + </define> + <define name="number-year"> + <element name="number:year"> + <ref name="number-year-attlist"/> + <ref name="common-calendar-attlist"/> + <empty/> + </element> + </define> + <define name="number-year-attlist"> + <optional> + <attribute name="number:style"> + <choice> + <value>short</value> + <value>long</value> + </choice> + </attribute> + </optional> + </define> + <define name="number-era"> + <element name="number:era"> + <ref name="number-era-attlist"/> + <ref name="common-calendar-attlist"/> + <empty/> + </element> + </define> + <define name="number-era-attlist"> + <optional> + <attribute name="number:style"> + <choice> + <value>short</value> + <value>long</value> + </choice> + </attribute> + </optional> + </define> + <define name="number-day-of-week"> + <element name="number:day-of-week"> + <ref name="number-day-of-week-attlist"/> + <ref name="common-calendar-attlist"/> + <empty/> + </element> + </define> + <define name="number-day-of-week-attlist"> + <optional> + <attribute name="number:style"> + <choice> + <value>short</value> + <value>long</value> + </choice> + </attribute> + </optional> + </define> + <define name="number-week-of-year"> + <element name="number:week-of-year"> + <ref name="common-calendar-attlist"/> + <empty/> + </element> + </define> + <define name="number-quarter"> + <element name="number:quarter"> + <ref name="number-quarter-attlist"/> + <ref name="common-calendar-attlist"/> + <empty/> + </element> + </define> + <define name="number-quarter-attlist"> + <optional> + <attribute name="number:style"> + <choice> + <value>short</value> + <value>long</value> + </choice> + </attribute> + </optional> + </define> + <define name="number-time-style"> + <element name="number:time-style"> + <ref name="number-time-style-attlist"/> + <ref name="common-data-style-attlist"/> + <ref name="common-format-source-attlist"/> + <optional> + <ref name="style-text-properties"/> + </optional> + <optional> + <ref name="number-text"/> + </optional> + <oneOrMore> + <ref name="any-time"/> + <optional> + <ref name="number-text"/> + </optional> + </oneOrMore> + <zeroOrMore> + <ref name="style-map"/> + </zeroOrMore> + </element> + </define> + <define name="any-time"> + <choice> + <ref name="number-hours"/> + <ref name="number-am-pm"/> + <ref name="number-minutes"/> + <ref name="number-seconds"/> + </choice> + </define> + <define name="number-time-style-attlist"> + <optional> + <attribute name="number:truncate-on-overflow"> + <ref name="boolean"/> + </attribute> + </optional> + </define> + <define name="number-hours"> + <element name="number:hours"> + <ref name="number-hours-attlist"/> + <empty/> + </element> + </define> + <define name="number-hours-attlist"> + <optional> + <attribute name="number:style"> + <choice> + <value>short</value> + <value>long</value> + </choice> + </attribute> + </optional> + </define> + <define name="number-minutes"> + <element name="number:minutes"> + <ref name="number-minutes-attlist"/> + <empty/> + </element> + </define> + <define name="number-minutes-attlist"> + <optional> + <attribute name="number:style"> + <choice> + <value>short</value> + <value>long</value> + </choice> + </attribute> + </optional> + </define> + <define name="number-seconds"> + <element name="number:seconds"> + <ref name="number-seconds-attlist"/> + <empty/> + </element> + </define> + <define name="number-seconds-attlist"> + <interleave> + <optional> + <attribute name="number:style"> + <choice> + <value>short</value> + <value>long</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="number:decimal-places"> + <ref name="integer"/> + </attribute> + </optional> + </interleave> + </define> + <define name="number-am-pm"> + <element name="number:am-pm"> + <empty/> + </element> + </define> + <define name="number-boolean-style"> + <element name="number:boolean-style"> + <ref name="common-data-style-attlist"/> + <optional> + <ref name="style-text-properties"/> + </optional> + <optional> + <ref name="number-text"/> + </optional> + <optional> + <ref name="number-boolean"/> + <optional> + <ref name="number-text"/> + </optional> + </optional> + <zeroOrMore> + <ref name="style-map"/> + </zeroOrMore> + </element> + </define> + <define name="number-boolean"> + <element name="number:boolean"> + <empty/> + </element> + </define> + <define name="number-text-style"> + <element name="number:text-style"> + <ref name="common-data-style-attlist"/> + <optional> + <ref name="style-text-properties"/> + </optional> + <optional> + <ref name="number-text"/> + </optional> + <zeroOrMore> + <ref name="number-text-content"/> + <optional> + <ref name="number-text"/> + </optional> + </zeroOrMore> + <zeroOrMore> + <ref name="style-map"/> + </zeroOrMore> + </element> + </define> + <define name="number-text"> + <element name="number:text"> + <text/> + </element> + </define> + <define name="number-text-content"> + <element name="number:text-content"> + <empty/> + </element> + </define> + <define name="common-data-style-attlist"> + <interleave> + <attribute name="style:name"> + <ref name="styleName"/> + </attribute> + <optional> + <attribute name="style:display-name"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="number:language"> + <ref name="languageCode"/> + </attribute> + </optional> + <optional> + <attribute name="number:country"> + <ref name="countryCode"/> + </attribute> + </optional> + <optional> + <attribute name="number:script"> + <ref name="scriptCode"/> + </attribute> + </optional> + <optional> + <attribute name="number:rfc-language-tag"> + <ref name="language"/> + </attribute> + </optional> + <optional> + <attribute name="number:title"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="style:volatile"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="number:transliteration-format"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="number:transliteration-language"> + <ref name="countryCode"/> + </attribute> + </optional> + <optional> + <attribute name="number:transliteration-country"> + <ref name="countryCode"/> + </attribute> + </optional> + <optional> + <attribute name="number:transliteration-style"> + <choice> + <value>short</value> + <value>medium</value> + <value>long</value> + </choice> + </attribute> + </optional> + </interleave> + </define> + <define name="common-auto-reorder-attlist"> + <optional> + <attribute name="number:automatic-order"> + <ref name="boolean"/> + </attribute> + </optional> + </define> + <define name="common-format-source-attlist"> + <optional> + <attribute name="number:format-source"> + <choice> + <value>fixed</value> + <value>language</value> + </choice> + </attribute> + </optional> + </define> + <define name="common-decimal-places-attlist"> + <optional> + <attribute name="number:decimal-places"> + <ref name="integer"/> + </attribute> + </optional> + </define> + <define name="common-number-attlist"> + <interleave> + <optional> + <attribute name="number:min-integer-digits"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="number:grouping"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="common-calendar-attlist"> + <optional> + <attribute name="number:calendar"> + <choice> + <value>gregorian</value> + <value>gengou</value> + <value>ROC</value> + <value>hanja_yoil</value> + <value>hanja</value> + <value>hijri</value> + <value>jewish</value> + <value>buddhist</value> + <ref name="string"/> + </choice> + </attribute> + </optional> + </define> + <define name="style-style-content"> + <choice> + <group> + <attribute name="style:family"> + <value>text</value> + </attribute> + <optional> + <ref name="style-text-properties"/> + </optional> + </group> + <group> + <attribute name="style:family"> + <value>paragraph</value> + </attribute> + <optional> + <ref name="style-paragraph-properties"/> + </optional> + <optional> + <ref name="style-text-properties"/> + </optional> + </group> + <group> + <attribute name="style:family"> + <value>section</value> + </attribute> + <optional> + <ref name="style-section-properties"/> + </optional> + </group> + <group> + <attribute name="style:family"> + <value>ruby</value> + </attribute> + <optional> + <ref name="style-ruby-properties"/> + </optional> + </group> + <group> + <attribute name="style:family"> + <value>table</value> + </attribute> + <optional> + <ref name="style-table-properties"/> + </optional> + </group> + <group> + <attribute name="style:family"> + <value>table-column</value> + </attribute> + <optional> + <ref name="style-table-column-properties"/> + </optional> + </group> + <group> + <attribute name="style:family"> + <value>table-row</value> + </attribute> + <optional> + <ref name="style-table-row-properties"/> + </optional> + </group> + <group> + <attribute name="style:family"> + <value>table-cell</value> + </attribute> + <optional> + <ref name="style-table-cell-properties"/> + </optional> + <optional> + <ref name="style-paragraph-properties"/> + </optional> + <optional> + <ref name="style-text-properties"/> + </optional> + </group> + <group> + <attribute name="style:family"> + <choice> + <value>graphic</value> + <value>presentation</value> + </choice> + </attribute> + <optional> + <ref name="style-graphic-properties"/> + </optional> + <optional> + <ref name="style-paragraph-properties"/> + </optional> + <optional> + <ref name="style-text-properties"/> + </optional> + </group> + <group> + <attribute name="style:family"> + <value>drawing-page</value> + </attribute> + <optional> + <ref name="style-drawing-page-properties"/> + </optional> + </group> + <group> + <attribute name="style:family"> + <value>chart</value> + </attribute> + <optional> + <ref name="style-chart-properties"/> + </optional> + <optional> + <ref name="style-graphic-properties"/> + </optional> + <optional> + <ref name="style-paragraph-properties"/> + </optional> + <optional> + <ref name="style-text-properties"/> + </optional> + </group> + </choice> + </define> + <define name="text-linenumbering-configuration"> + <element name="text:linenumbering-configuration"> + <ref name="text-linenumbering-configuration-attlist"/> + <optional> + <ref name="text-linenumbering-separator"/> + </optional> + </element> + </define> + <define name="text-linenumbering-configuration-attlist"> + <interleave> + <optional> + <attribute name="text:number-lines"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <ref name="common-num-format-attlist"/> + </optional> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="text:increment"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="text:number-position"> + <choice> + <value>left</value> + <value>right</value> + <value>inner</value> + <value>outer</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="text:offset"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> + <optional> + <attribute name="text:count-empty-lines"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:count-in-text-boxes"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:restart-on-page"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="text-linenumbering-separator"> + <element name="text:linenumbering-separator"> + <optional> + <attribute name="text:increment"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <text/> + </element> + </define> + <define name="text-notes-configuration"> + <element name="text:notes-configuration"> + <ref name="text-notes-configuration-content"/> + </element> + </define> + <define name="text-notes-configuration-content"> + <interleave> + <ref name="text-note-class"/> + <optional> + <attribute name="text:citation-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="text:citation-body-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="text:default-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="text:master-page-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="text:start-value"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <ref name="common-num-format-prefix-suffix-attlist"/> + <optional> + <ref name="common-num-format-attlist"/> + </optional> + <optional> + <attribute name="text:start-numbering-at"> + <choice> + <value>document</value> + <value>chapter</value> + <value>page</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="text:footnotes-position"> + <choice> + <value>text</value> + <value>page</value> + <value>section</value> + <value>document</value> + </choice> + </attribute> + </optional> + <optional> + <element name="text:note-continuation-notice-forward"> + <text/> + </element> + </optional> + <optional> + <element name="text:note-continuation-notice-backward"> + <text/> + </element> + </optional> + </interleave> + </define> + <define name="text-bibliography-configuration"> + <element name="text:bibliography-configuration"> + <ref name="text-bibliography-configuration-attlist"/> + <zeroOrMore> + <ref name="text-sort-key"/> + </zeroOrMore> + </element> + </define> + <define name="text-bibliography-configuration-attlist"> + <interleave> + <optional> + <attribute name="text:prefix"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="text:suffix"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="text:numbered-entries"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:sort-by-position"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="fo:language"> + <ref name="languageCode"/> + </attribute> + </optional> + <optional> + <attribute name="fo:country"> + <ref name="countryCode"/> + </attribute> + </optional> + <optional> + <attribute name="fo:script"> + <ref name="scriptCode"/> + </attribute> + </optional> + <optional> + <attribute name="style:rfc-language-tag"> + <ref name="language"/> + </attribute> + </optional> + <optional> + <attribute name="text:sort-algorithm"> + <ref name="string"/> + </attribute> + </optional> + </interleave> + </define> + <define name="text-sort-key"> + <element name="text:sort-key"> + <ref name="text-sort-key-attlist"/> + <empty/> + </element> + </define> + <define name="text-sort-key-attlist"> + <attribute name="text:key"> + <choice> + <value>address</value> + <value>annote</value> + <value>author</value> + <value>bibliography-type</value> + <value>booktitle</value> + <value>chapter</value> + <value>custom1</value> + <value>custom2</value> + <value>custom3</value> + <value>custom4</value> + <value>custom5</value> + <value>edition</value> + <value>editor</value> + <value>howpublished</value> + <value>identifier</value> + <value>institution</value> + <value>isbn</value> + <value>issn</value> + <value>journal</value> + <value>month</value> + <value>note</value> + <value>number</value> + <value>organizations</value> + <value>pages</value> + <value>publisher</value> + <value>report-type</value> + <value>school</value> + <value>series</value> + <value>title</value> + <value>url</value> + <value>volume</value> + <value>year</value> + </choice> + </attribute> + <optional> + <attribute name="text:sort-ascending"> + <ref name="boolean"/> + </attribute> + </optional> + </define> + <define name="text-list-style"> + <element name="text:list-style"> + <ref name="text-list-style-attr"/> + <zeroOrMore> + <ref name="text-list-style-content"/> + </zeroOrMore> + </element> + </define> + <define name="text-list-style-attr"> + <interleave> + <attribute name="style:name"> + <ref name="styleName"/> + </attribute> + <optional> + <attribute name="style:display-name"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="text:consecutive-numbering"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="text-list-style-content"> + <choice> + <element name="text:list-level-style-number"> + <ref name="text-list-level-style-attr"/> + <ref name="text-list-level-style-number-attr"/> + <optional> + <ref name="style-list-level-properties"/> + </optional> + <optional> + <ref name="style-text-properties"/> + </optional> + </element> + <element name="text:list-level-style-bullet"> + <ref name="text-list-level-style-attr"/> + <ref name="text-list-level-style-bullet-attr"/> + <optional> + <ref name="style-list-level-properties"/> + </optional> + <optional> + <ref name="style-text-properties"/> + </optional> + </element> + <element name="text:list-level-style-image"> + <ref name="text-list-level-style-attr"/> + <ref name="text-list-level-style-image-attr"/> + <optional> + <ref name="style-list-level-properties"/> + </optional> + </element> + </choice> + </define> + <define name="text-list-level-style-number-attr"> + <interleave> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <ref name="common-num-format-attlist"/> + <ref name="common-num-format-prefix-suffix-attlist"/> + <optional> + <attribute name="text:display-levels"> + <ref name="positiveInteger"/> + </attribute> + </optional> + <optional> + <attribute name="text:start-value"> + <ref name="positiveInteger"/> + </attribute> + </optional> + </interleave> + </define> + <define name="text-list-level-style-bullet-attr"> + <interleave> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <attribute name="text:bullet-char"> + <ref name="character"/> + </attribute> + <ref name="common-num-format-prefix-suffix-attlist"/> + <optional> + <attribute name="text:bullet-relative-size"> + <ref name="percent"/> + </attribute> + </optional> + </interleave> + </define> + <define name="text-list-level-style-image-attr"> + <choice> + <ref name="common-draw-data-attlist"/> + <ref name="office-binary-data"/> + </choice> + </define> + <define name="text-list-level-style-attr"> + <attribute name="text:level"> + <ref name="positiveInteger"/> + </attribute> + </define> + <define name="text-outline-style"> + <element name="text:outline-style"> + <ref name="text-outline-style-attr"/> + <oneOrMore> + <ref name="text-outline-level-style"/> + </oneOrMore> + </element> + </define> + <define name="text-outline-style-attr"> + <attribute name="style:name"> + <ref name="styleName"/> + </attribute> + </define> + <define name="text-outline-level-style"> + <element name="text:outline-level-style"> + <ref name="text-outline-level-style-attlist"/> + <optional> + <ref name="style-list-level-properties"/> + </optional> + <optional> + <ref name="style-text-properties"/> + </optional> + </element> + </define> + <define name="text-outline-level-style-attlist"> + <interleave> + <attribute name="text:level"> + <ref name="positiveInteger"/> + </attribute> + <optional> + <attribute name="text:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <ref name="common-num-format-attlist"/> + <ref name="common-num-format-prefix-suffix-attlist"/> + <optional> + <attribute name="text:display-levels"> + <ref name="positiveInteger"/> + </attribute> + </optional> + <optional> + <attribute name="text:start-value"> + <ref name="positiveInteger"/> + </attribute> + </optional> + </interleave> + </define> + <define name="style-graphic-properties"> + <element name="style:graphic-properties"> + <ref name="style-graphic-properties-content-strict"/> + </element> + </define> + <define name="style-graphic-properties-content-strict"> + <ref name="style-graphic-properties-attlist"/> + <ref name="style-graphic-fill-properties-attlist"/> + <ref name="style-graphic-properties-elements"/> + </define> + <define name="style-drawing-page-properties"> + <element name="style:drawing-page-properties"> + <ref name="style-drawing-page-properties-content-strict"/> + </element> + </define> + <define name="style-drawing-page-properties-content-strict"> + <ref name="style-graphic-fill-properties-attlist"/> + <ref name="style-drawing-page-properties-attlist"/> + <ref name="style-drawing-page-properties-elements"/> + </define> + <define name="draw-gradient"> + <element name="draw:gradient"> + <ref name="common-draw-gradient-attlist"/> + <ref name="draw-gradient-attlist"/> + <empty/> + </element> + </define> + <define name="common-draw-gradient-attlist"> + <interleave> + <optional> + <attribute name="draw:name"> + <ref name="styleName"/> + </attribute> + </optional> + <optional> + <attribute name="draw:display-name"> + <ref name="string"/> + </attribute> + </optional> + <attribute name="draw:style"> + <ref name="gradient-style"/> + </attribute> + <optional> + <attribute name="draw:cx"> + <ref name="percent"/> + </attribute> + </optional> + <optional> + <attribute name="draw:cy"> + <ref name="percent"/> + </attribute> + </optional> + <optional> + <attribute name="draw:angle"> + <ref name="angle"/> + </attribute> + </optional> + <optional> + <attribute name="draw:border"> + <ref name="percent"/> + </attribute> + </optional> + </interleave> + </define> + <define name="gradient-style"> + <choice> + <value>linear</value> + <value>axial</value> + <value>radial</value> + <value>ellipsoid</value> + <value>square</value> + <value>rectangular</value> + </choice> + </define> + <define name="draw-gradient-attlist"> + <interleave> + <optional> + <attribute name="draw:start-color"> + <ref name="color"/> + </attribute> + </optional> + <optional> + <attribute name="draw:end-color"> + <ref name="color"/> + </attribute> + </optional> + <optional> + <attribute name="draw:start-intensity"> + <ref name="zeroToHundredPercent"/> + </attribute> + </optional> + <optional> + <attribute name="draw:end-intensity"> + <ref name="zeroToHundredPercent"/> + </attribute> + </optional> + </interleave> + </define> + <define name="svg-linearGradient"> + <element name="svg:linearGradient"> + <ref name="common-svg-gradient-attlist"/> + <optional> + <attribute name="svg:x1"> + <choice> + <ref name="coordinate"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="svg:y1"> + <choice> + <ref name="coordinate"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="svg:x2"> + <choice> + <ref name="coordinate"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="svg:y2"> + <choice> + <ref name="coordinate"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <zeroOrMore> + <ref name="svg-stop"/> + </zeroOrMore> + </element> + </define> + <define name="svg-radialGradient"> + <element name="svg:radialGradient"> + <ref name="common-svg-gradient-attlist"/> + <optional> + <attribute name="svg:cx"> + <choice> + <ref name="coordinate"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="svg:cy"> + <choice> + <ref name="coordinate"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="svg:r"> + <choice> + <ref name="coordinate"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="svg:fx"> + <choice> + <ref name="coordinate"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="svg:fy"> + <choice> + <ref name="coordinate"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <zeroOrMore> + <ref name="svg-stop"/> + </zeroOrMore> + </element> + </define> + <define name="svg-stop"> + <element name="svg:stop"> + <attribute name="svg:offset"> + <choice> + <ref name="double"/> + <ref name="percent"/> + </choice> + </attribute> + <optional> + <attribute name="svg:stop-color"> + <ref name="color"/> + </attribute> + </optional> + <optional> + <attribute name="svg:stop-opacity"> + <ref name="double"/> + </attribute> + </optional> + </element> + </define> + <define name="common-svg-gradient-attlist"> + <interleave> + <optional> + <attribute name="svg:gradientUnits"> + <value>objectBoundingBox</value> + </attribute> + </optional> + <optional> + <attribute name="svg:gradientTransform"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="svg:spreadMethod"> + <choice> + <value>pad</value> + <value>reflect</value> + <value>repeat</value> + </choice> + </attribute> + </optional> + <attribute name="draw:name"> + <ref name="styleName"/> + </attribute> + <optional> + <attribute name="draw:display-name"> + <ref name="string"/> + </attribute> + </optional> + </interleave> + </define> + <define name="draw-hatch"> + <element name="draw:hatch"> + <ref name="draw-hatch-attlist"/> + <empty/> + </element> + </define> + <define name="draw-hatch-attlist"> + <interleave> + <attribute name="draw:name"> + <ref name="styleName"/> + </attribute> + <optional> + <attribute name="draw:display-name"> + <ref name="string"/> + </attribute> + </optional> + <attribute name="draw:style"> + <choice> + <value>single</value> + <value>double</value> + <value>triple</value> + </choice> + </attribute> + <optional> + <attribute name="draw:color"> + <ref name="color"/> + </attribute> + </optional> + <optional> + <attribute name="draw:distance"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="draw:rotation"> + <ref name="angle"/> + </attribute> + </optional> + </interleave> + </define> + <define name="draw-fill-image"> + <element name="draw:fill-image"> + <ref name="draw-fill-image-attlist"/> + <attribute name="xlink:type"> + <value>simple</value> + </attribute> + <attribute name="xlink:href"> + <ref name="anyIRI"/> + </attribute> + <optional> + <attribute name="xlink:show"> + <value>embed</value> + </attribute> + </optional> + <optional> + <attribute name="xlink:actuate"> + <value>onLoad</value> + </attribute> + </optional> + <empty/> + </element> + </define> + <define name="draw-fill-image-attlist"> + <interleave> + <attribute name="draw:name"> + <ref name="styleName"/> + </attribute> + <optional> + <attribute name="draw:display-name"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="svg:width"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="svg:height"> + <ref name="length"/> + </attribute> + </optional> + </interleave> + </define> + <define name="draw-opacity"> + <element name="draw:opacity"> + <ref name="common-draw-gradient-attlist"/> + <ref name="draw-opacity-attlist"/> + <empty/> + </element> + </define> + <define name="draw-opacity-attlist"> + <optional> + <attribute name="draw:start"> + <ref name="zeroToHundredPercent"/> + </attribute> + </optional> + <optional> + <attribute name="draw:end"> + <ref name="zeroToHundredPercent"/> + </attribute> + </optional> + </define> + <define name="draw-marker"> + <element name="draw:marker"> + <ref name="draw-marker-attlist"/> + <ref name="common-draw-viewbox-attlist"/> + <ref name="common-draw-path-data-attlist"/> + <empty/> + </element> + </define> + <define name="draw-marker-attlist"> + <interleave> + <attribute name="draw:name"> + <ref name="styleName"/> + </attribute> + <optional> + <attribute name="draw:display-name"> + <ref name="string"/> + </attribute> + </optional> + </interleave> + </define> + <define name="draw-stroke-dash"> + <element name="draw:stroke-dash"> + <ref name="draw-stroke-dash-attlist"/> + <empty/> + </element> + </define> + <define name="draw-stroke-dash-attlist"> + <interleave> + <attribute name="draw:name"> + <ref name="styleName"/> + </attribute> + <optional> + <attribute name="draw:display-name"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="draw:style"> + <choice> + <value>rect</value> + <value>round</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="draw:dots1"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="draw:dots1-length"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="draw:dots2"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="draw:dots2-length"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="draw:distance"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + </interleave> + </define> + <define name="style-presentation-page-layout"> + <element name="style:presentation-page-layout"> + <attribute name="style:name"> + <ref name="styleName"/> + </attribute> + <optional> + <attribute name="style:display-name"> + <ref name="string"/> + </attribute> + </optional> + <zeroOrMore> + <ref name="presentation-placeholder"/> + </zeroOrMore> + </element> + </define> + <define name="presentation-placeholder"> + <element name="presentation:placeholder"> + <attribute name="presentation:object"> + <ref name="presentation-classes"/> + </attribute> + <attribute name="svg:x"> + <choice> + <ref name="coordinate"/> + <ref name="percent"/> + </choice> + </attribute> + <attribute name="svg:y"> + <choice> + <ref name="coordinate"/> + <ref name="percent"/> + </choice> + </attribute> + <attribute name="svg:width"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + <attribute name="svg:height"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + <empty/> + </element> + </define> + <define name="style-page-layout-properties"> + <element name="style:page-layout-properties"> + <ref name="style-page-layout-properties-content-strict"/> + </element> + </define> + <define name="style-page-layout-properties-content-strict"> + <ref name="style-page-layout-properties-attlist"/> + <ref name="style-page-layout-properties-elements"/> + </define> + <define name="style-page-layout-properties-attlist"> + <interleave> + <optional> + <attribute name="fo:page-width"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="fo:page-height"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <ref name="common-num-format-attlist"/> + </optional> + <ref name="common-num-format-prefix-suffix-attlist"/> + <optional> + <attribute name="style:paper-tray-name"> + <choice> + <value>default</value> + <ref name="string"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:print-orientation"> + <choice> + <value>portrait</value> + <value>landscape</value> + </choice> + </attribute> + </optional> + <ref name="common-horizontal-margin-attlist"/> + <ref name="common-vertical-margin-attlist"/> + <ref name="common-margin-attlist"/> + <ref name="common-border-attlist"/> + <ref name="common-border-line-width-attlist"/> + <ref name="common-padding-attlist"/> + <ref name="common-shadow-attlist"/> + <ref name="common-background-color-attlist"/> + <optional> + <attribute name="style:register-truth-ref-style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="style:print"> + <list> + <zeroOrMore> + <choice> + <value>headers</value> + <value>grid</value> + <value>annotations</value> + <value>objects</value> + <value>charts</value> + <value>drawings</value> + <value>formulas</value> + <value>zero-values</value> + </choice> + </zeroOrMore> + </list> + </attribute> + </optional> + <optional> + <attribute name="style:print-page-order"> + <choice> + <value>ttb</value> + <value>ltr</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:first-page-number"> + <choice> + <ref name="positiveInteger"/> + <value>continue</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:scale-to"> + <ref name="percent"/> + </attribute> + </optional> + <optional> + <attribute name="style:scale-to-pages"> + <ref name="positiveInteger"/> + </attribute> + </optional> + <optional> + <attribute name="style:table-centering"> + <choice> + <value>horizontal</value> + <value>vertical</value> + <value>both</value> + <value>none</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:footnote-max-height"> + <ref name="length"/> + </attribute> + </optional> + <ref name="common-writing-mode-attlist"/> + <optional> + <attribute name="style:layout-grid-mode"> + <choice> + <value>none</value> + <value>line</value> + <value>both</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:layout-grid-standard-mode"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="style:layout-grid-base-height"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="style:layout-grid-ruby-height"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="style:layout-grid-lines"> + <ref name="positiveInteger"/> + </attribute> + </optional> + <optional> + <attribute name="style:layout-grid-base-width"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="style:layout-grid-color"> + <ref name="color"/> + </attribute> + </optional> + <optional> + <attribute name="style:layout-grid-ruby-below"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="style:layout-grid-print"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="style:layout-grid-display"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="style:layout-grid-snap-to"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="style-page-layout-properties-elements"> + <interleave> + <ref name="style-background-image"/> + <ref name="style-columns"/> + <ref name="style-footnote-sep"/> + </interleave> + </define> + <define name="style-footnote-sep"> + <optional> + <element name="style:footnote-sep"> + <ref name="style-footnote-sep-attlist"/> + <empty/> + </element> + </optional> + </define> + <define name="style-footnote-sep-attlist"> + <optional> + <attribute name="style:width"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="style:rel-width"> + <ref name="percent"/> + </attribute> + </optional> + <optional> + <attribute name="style:color"> + <ref name="color"/> + </attribute> + </optional> + <optional> + <attribute name="style:line-style"> + <ref name="lineStyle"/> + </attribute> + </optional> + <optional> + <attribute name="style:adjustment"> + <choice> + <value>left</value> + <value>center</value> + <value>right</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:distance-before-sep"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="style:distance-after-sep"> + <ref name="length"/> + </attribute> + </optional> + </define> + <define name="style-header-footer-properties"> + <element name="style:header-footer-properties"> + <ref name="style-header-footer-properties-content-strict"/> + </element> + </define> + <define name="style-header-footer-properties-content-strict"> + <ref name="style-header-footer-properties-attlist"/> + <ref name="style-header-footer-properties-elements"/> + </define> + <define name="style-header-footer-properties-attlist"> + <interleave> + <optional> + <attribute name="svg:height"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="fo:min-height"> + <ref name="length"/> + </attribute> + </optional> + <ref name="common-horizontal-margin-attlist"/> + <ref name="common-vertical-margin-attlist"/> + <ref name="common-margin-attlist"/> + <ref name="common-border-attlist"/> + <ref name="common-border-line-width-attlist"/> + <ref name="common-padding-attlist"/> + <ref name="common-background-color-attlist"/> + <ref name="common-shadow-attlist"/> + <optional> + <attribute name="style:dynamic-spacing"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="style-header-footer-properties-elements"> + <ref name="style-background-image"/> + </define> + <define name="style-text-properties"> + <element name="style:text-properties"> + <ref name="style-text-properties-content-strict"/> + </element> + </define> + <define name="style-text-properties-content-strict"> + <ref name="style-text-properties-attlist"/> + <ref name="style-text-properties-elements"/> + </define> + <define name="style-text-properties-elements"> + <empty/> + </define> + <define name="style-text-properties-attlist"> + <interleave> + <optional> + <attribute name="fo:font-variant"> + <ref name="fontVariant"/> + </attribute> + </optional> + <optional> + <attribute name="fo:text-transform"> + <choice> + <value>none</value> + <value>lowercase</value> + <value>uppercase</value> + <value>capitalize</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="fo:color"> + <ref name="color"/> + </attribute> + </optional> + <optional> + <attribute name="style:use-window-font-color"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="style:text-outline"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="style:text-line-through-type"> + <ref name="lineType"/> + </attribute> + </optional> + <optional> + <attribute name="style:text-line-through-style"> + <ref name="lineStyle"/> + </attribute> + </optional> + <optional> + <attribute name="style:text-line-through-width"> + <ref name="lineWidth"/> + </attribute> + </optional> + <optional> + <attribute name="style:text-line-through-color"> + <choice> + <value>font-color</value> + <ref name="color"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:text-line-through-text"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="style:text-line-through-text-style"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="style:text-position"> + <list> + <choice> + <ref name="percent"/> + <value>super</value> + <value>sub</value> + </choice> + <optional> + <ref name="percent"/> + </optional> + </list> + </attribute> + </optional> + <optional> + <attribute name="style:font-name"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-name-asian"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-name-complex"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="fo:font-family"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-family-asian"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-family-complex"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-family-generic"> + <ref name="fontFamilyGeneric"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-family-generic-asian"> + <ref name="fontFamilyGeneric"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-family-generic-complex"> + <ref name="fontFamilyGeneric"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-style-name"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-style-name-asian"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-style-name-complex"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-pitch"> + <ref name="fontPitch"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-pitch-asian"> + <ref name="fontPitch"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-pitch-complex"> + <ref name="fontPitch"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-charset"> + <ref name="textEncoding"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-charset-asian"> + <ref name="textEncoding"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-charset-complex"> + <ref name="textEncoding"/> + </attribute> + </optional> + <optional> + <attribute name="fo:font-size"> + <choice> + <ref name="positiveLength"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:font-size-asian"> + <choice> + <ref name="positiveLength"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:font-size-complex"> + <choice> + <ref name="positiveLength"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:font-size-rel"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-size-rel-asian"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-size-rel-complex"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="style:script-type"> + <choice> + <value>latin</value> + <value>asian</value> + <value>complex</value> + <value>ignore</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="fo:letter-spacing"> + <choice> + <ref name="length"/> + <value>normal</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="fo:language"> + <ref name="languageCode"/> + </attribute> + </optional> + <optional> + <attribute name="style:language-asian"> + <ref name="languageCode"/> + </attribute> + </optional> + <optional> + <attribute name="style:language-complex"> + <ref name="languageCode"/> + </attribute> + </optional> + <optional> + <attribute name="fo:country"> + <ref name="countryCode"/> + </attribute> + </optional> + <optional> + <attribute name="style:country-asian"> + <ref name="countryCode"/> + </attribute> + </optional> + <optional> + <attribute name="style:country-complex"> + <ref name="countryCode"/> + </attribute> + </optional> + <optional> + <attribute name="fo:script"> + <ref name="scriptCode"/> + </attribute> + </optional> + <optional> + <attribute name="style:script-asian"> + <ref name="scriptCode"/> + </attribute> + </optional> + <optional> + <attribute name="style:script-complex"> + <ref name="scriptCode"/> + </attribute> + </optional> + <optional> + <attribute name="style:rfc-language-tag"> + <ref name="language"/> + </attribute> + </optional> + <optional> + <attribute name="style:rfc-language-tag-asian"> + <ref name="language"/> + </attribute> + </optional> + <optional> + <attribute name="style:rfc-language-tag-complex"> + <ref name="language"/> + </attribute> + </optional> + <optional> + <attribute name="fo:font-style"> + <ref name="fontStyle"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-style-asian"> + <ref name="fontStyle"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-style-complex"> + <ref name="fontStyle"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-relief"> + <choice> + <value>none</value> + <value>embossed</value> + <value>engraved</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="fo:text-shadow"> + <ref name="shadowType"/> + </attribute> + </optional> + <optional> + <attribute name="style:text-underline-type"> + <ref name="lineType"/> + </attribute> + </optional> + <optional> + <attribute name="style:text-underline-style"> + <ref name="lineStyle"/> + </attribute> + </optional> + <optional> + <attribute name="style:text-underline-width"> + <ref name="lineWidth"/> + </attribute> + </optional> + <optional> + <attribute name="style:text-underline-color"> + <choice> + <value>font-color</value> + <ref name="color"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:text-overline-type"> + <ref name="lineType"/> + </attribute> + </optional> + <optional> + <attribute name="style:text-overline-style"> + <ref name="lineStyle"/> + </attribute> + </optional> + <optional> + <attribute name="style:text-overline-width"> + <ref name="lineWidth"/> + </attribute> + </optional> + <optional> + <attribute name="style:text-overline-color"> + <choice> + <value>font-color</value> + <ref name="color"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:text-overline-mode"> + <ref name="lineMode"/> + </attribute> + </optional> + <optional> + <attribute name="fo:font-weight"> + <ref name="fontWeight"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-weight-asian"> + <ref name="fontWeight"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-weight-complex"> + <ref name="fontWeight"/> + </attribute> + </optional> + <optional> + <attribute name="style:text-underline-mode"> + <ref name="lineMode"/> + </attribute> + </optional> + <optional> + <attribute name="style:text-line-through-mode"> + <ref name="lineMode"/> + </attribute> + </optional> + <optional> + <attribute name="style:letter-kerning"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="style:text-blinking"> + <ref name="boolean"/> + </attribute> + </optional> + <ref name="common-background-color-attlist"/> + <optional> + <attribute name="style:text-combine"> + <choice> + <value>none</value> + <value>letters</value> + <value>lines</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:text-combine-start-char"> + <ref name="character"/> + </attribute> + </optional> + <optional> + <attribute name="style:text-combine-end-char"> + <ref name="character"/> + </attribute> + </optional> + <optional> + <attribute name="style:text-emphasize"> + <choice> + <value>none</value> + <list> + <choice> + <value>none</value> + <value>accent</value> + <value>dot</value> + <value>circle</value> + <value>disc</value> + </choice> + <choice> + <value>above</value> + <value>below</value> + </choice> + </list> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:text-scale"> + <ref name="percent"/> + </attribute> + </optional> + <optional> + <attribute name="style:text-rotation-angle"> + <ref name="angle"/> + </attribute> + </optional> + <optional> + <attribute name="style:text-rotation-scale"> + <choice> + <value>fixed</value> + <value>line-height</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="fo:hyphenate"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="fo:hyphenation-remain-char-count"> + <ref name="positiveInteger"/> + </attribute> + </optional> + <optional> + <attribute name="fo:hyphenation-push-char-count"> + <ref name="positiveInteger"/> + </attribute> + </optional> + <choice> + <attribute name="text:display"> + <value>true</value> + </attribute> + <attribute name="text:display"> + <value>none</value> + </attribute> + <group> + <attribute name="text:display"> + <value>condition</value> + </attribute> + <attribute name="text:condition"> + <value>none</value> + </attribute> + </group> + <empty/> + </choice> + </interleave> + </define> + <define name="fontVariant"> + <choice> + <value>normal</value> + <value>small-caps</value> + </choice> + </define> + <define name="fontFamilyGeneric"> + <choice> + <value>roman</value> + <value>swiss</value> + <value>modern</value> + <value>decorative</value> + <value>script</value> + <value>system</value> + </choice> + </define> + <define name="fontPitch"> + <choice> + <value>fixed</value> + <value>variable</value> + </choice> + </define> + <define name="textEncoding"> + <data type="string"> + <param name="pattern">[A-Za-z][A-Za-z0-9._\-]*</param> + </data> + </define> + <define name="fontStyle"> + <choice> + <value>normal</value> + <value>italic</value> + <value>oblique</value> + </choice> + </define> + <define name="shadowType"> + <choice> + <value>none</value> + <ref name="string"/> + </choice> + </define> + <define name="lineType"> + <choice> + <value>none</value> + <value>single</value> + <value>double</value> + </choice> + </define> + <define name="lineStyle"> + <choice> + <value>none</value> + <value>solid</value> + <value>dotted</value> + <value>dash</value> + <value>long-dash</value> + <value>dot-dash</value> + <value>dot-dot-dash</value> + <value>wave</value> + </choice> + </define> + <define name="lineWidth"> + <choice> + <value>auto</value> + <value>normal</value> + <value>bold</value> + <value>thin</value> + <value>medium</value> + <value>thick</value> + <ref name="positiveInteger"/> + <ref name="percent"/> + <ref name="positiveLength"/> + </choice> + </define> + <define name="fontWeight"> + <choice> + <value>normal</value> + <value>bold</value> + <value>100</value> + <value>200</value> + <value>300</value> + <value>400</value> + <value>500</value> + <value>600</value> + <value>700</value> + <value>800</value> + <value>900</value> + </choice> + </define> + <define name="lineMode"> + <choice> + <value>continuous</value> + <value>skip-white-space</value> + </choice> + </define> + <define name="style-paragraph-properties"> + <element name="style:paragraph-properties"> + <ref name="style-paragraph-properties-content-strict"/> + </element> + </define> + <define name="style-paragraph-properties-content-strict"> + <ref name="style-paragraph-properties-attlist"/> + <ref name="style-paragraph-properties-elements"/> + </define> + <define name="style-paragraph-properties-attlist"> + <interleave> + <optional> + <attribute name="fo:line-height"> + <choice> + <value>normal</value> + <ref name="nonNegativeLength"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:line-height-at-least"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> + <optional> + <attribute name="style:line-spacing"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-independent-line-spacing"> + <ref name="boolean"/> + </attribute> + </optional> + <ref name="common-text-align"/> + <optional> + <attribute name="fo:text-align-last"> + <choice> + <value>start</value> + <value>center</value> + <value>justify</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:justify-single-word"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="fo:keep-together"> + <choice> + <value>auto</value> + <value>always</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="fo:widows"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="fo:orphans"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="style:tab-stop-distance"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> + <optional> + <attribute name="fo:hyphenation-keep"> + <choice> + <value>auto</value> + <value>page</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="fo:hyphenation-ladder-count"> + <choice> + <value>no-limit</value> + <ref name="positiveInteger"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:register-true"> + <ref name="boolean"/> + </attribute> + </optional> + + <ref name="common-horizontal-margin-attlist"/> + <optional> + <attribute name="fo:text-indent"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:auto-text-indent"> + <ref name="boolean"/> + </attribute> + </optional> + <ref name="common-vertical-margin-attlist"/> + <ref name="common-margin-attlist"/> + <ref name="common-break-attlist"/> + <ref name="common-background-color-attlist"/> + <ref name="common-border-attlist"/> + <ref name="common-border-line-width-attlist"/> + <optional> + <attribute name="style:join-border"> + <ref name="boolean"/> + </attribute> + </optional> + <ref name="common-padding-attlist"/> + <ref name="common-shadow-attlist"/> + <ref name="common-keep-with-next-attlist"/> + <optional> + <attribute name="text:number-lines"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:line-number"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="style:text-autospace"> + <choice> + <value>none</value> + <value>ideograph-alpha</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:punctuation-wrap"> + <choice> + <value>simple</value> + <value>hanging</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:line-break"> + <choice> + <value>normal</value> + <value>strict</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:vertical-align"> + <choice> + <value>top</value> + <value>middle</value> + <value>bottom</value> + <value>auto</value> + <value>baseline</value> + </choice> + </attribute> + </optional> + <ref name="common-writing-mode-attlist"/> + <optional> + <attribute name="style:writing-mode-automatic"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="style:snap-to-layout-grid"> + <ref name="boolean"/> + </attribute> + </optional> + <ref name="common-page-number-attlist"/> + <ref name="common-background-transparency-attlist"/> + </interleave> + </define> + <define name="common-text-align"> + <optional> + <attribute name="fo:text-align"> + <choice> + <value>start</value> + <value>end</value> + <value>left</value> + <value>right</value> + <value>center</value> + <value>justify</value> + </choice> + </attribute> + </optional> + </define> + <define name="style-paragraph-properties-elements"> + <interleave> + <ref name="style-tab-stops"/> + <ref name="style-drop-cap"/> + <ref name="style-background-image"/> + </interleave> + </define> + <define name="style-tab-stops"> + <optional> + <element name="style:tab-stops"> + <zeroOrMore> + <ref name="style-tab-stop"/> + </zeroOrMore> + </element> + </optional> + </define> + <define name="style-tab-stop"> + <element name="style:tab-stop"> + <ref name="style-tab-stop-attlist"/> + <empty/> + </element> + </define> + <define name="style-tab-stop-attlist"> + <interleave> + <attribute name="style:position"> + <ref name="length"/> + </attribute> + <choice> + <optional> + <attribute name="style:type"> + <choice> + <value>left</value> + <value>center</value> + <value>right</value> + </choice> + </attribute> + </optional> + <group> + <attribute name="style:type"> + <value>char</value> + </attribute> + <ref name="style-tab-stop-char-attlist"/> + </group> + </choice> + <optional> + <attribute name="style:leader-type"> + <ref name="lineType"/> + </attribute> + </optional> + <optional> + <attribute name="style:leader-style"> + <ref name="lineStyle"/> + </attribute> + </optional> + <optional> + <attribute name="style:leader-width"> + <ref name="lineWidth"/> + </attribute> + </optional> + <optional> + <attribute name="style:leader-color"> + <choice> + <value>font-color</value> + <ref name="color"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:leader-text"> + <ref name="character"/> + </attribute> + </optional> + <optional> + <attribute name="style:leader-text-style"> + <ref name="styleNameRef"/> + </attribute> + </optional> + </interleave> + </define> + <define name="style-tab-stop-char-attlist"> + <attribute name="style:char"> + <ref name="character"/> + </attribute> + </define> + <define name="style-drop-cap"> + <optional> + <element name="style:drop-cap"> + <ref name="style-drop-cap-attlist"/> + <empty/> + </element> + </optional> + </define> + <define name="style-drop-cap-attlist"> + <interleave> + <optional> + <attribute name="style:length"> + <choice> + <value>word</value> + <ref name="positiveInteger"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:lines"> + <ref name="positiveInteger"/> + </attribute> + </optional> + <optional> + <attribute name="style:distance"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="style:style-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + </interleave> + </define> + <define name="common-horizontal-margin-attlist"> + <optional> + <attribute name="fo:margin-left"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="fo:margin-right"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + </define> + <define name="common-vertical-margin-attlist"> + <optional> + <attribute name="fo:margin-top"> + <choice> + <ref name="nonNegativeLength"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="fo:margin-bottom"> + <choice> + <ref name="nonNegativeLength"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + </define> + <define name="common-margin-attlist"> + <optional> + <attribute name="fo:margin"> + <choice> + <ref name="nonNegativeLength"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + </define> + <define name="common-break-attlist"> + <optional> + <attribute name="fo:break-before"> + <choice> + <value>auto</value> + <value>column</value> + <value>page</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="fo:break-after"> + <choice> + <value>auto</value> + <value>column</value> + <value>page</value> + </choice> + </attribute> + </optional> + </define> + <define name="common-background-color-attlist"> + <optional> + <attribute name="fo:background-color"> + <choice> + <value>transparent</value> + <ref name="color"/> + </choice> + </attribute> + </optional> + </define> + <define name="style-background-image"> + <optional> + <element name="style:background-image"> + <ref name="style-background-image-attlist"/> + <choice> + <ref name="common-draw-data-attlist"/> + <ref name="office-binary-data"/> + <empty/> + </choice> + </element> + </optional> + </define> + <define name="style-background-image-attlist"> + <interleave> + <optional> + <attribute name="style:repeat"> + <choice> + <value>no-repeat</value> + <value>repeat</value> + <value>stretch</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:position"> + <choice> + <value>left</value> + <value>center</value> + <value>right</value> + <value>top</value> + <value>bottom</value> + <list> + <ref name="horiBackPos"/> + <ref name="vertBackPos"/> + </list> + <list> + <ref name="vertBackPos"/> + <ref name="horiBackPos"/> + </list> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:filter-name"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="draw:opacity"> + <ref name="zeroToHundredPercent"/> + </attribute> + </optional> + </interleave> + </define> + <define name="horiBackPos"> + <choice> + <value>left</value> + <value>center</value> + <value>right</value> + </choice> + </define> + <define name="vertBackPos"> + <choice> + <value>top</value> + <value>center</value> + <value>bottom</value> + </choice> + </define> + <define name="common-border-attlist"> + <optional> + <attribute name="fo:border"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="fo:border-top"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="fo:border-bottom"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="fo:border-left"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="fo:border-right"> + <ref name="string"/> + </attribute> + </optional> + </define> + <define name="common-border-line-width-attlist"> + <optional> + <attribute name="style:border-line-width"> + <ref name="borderWidths"/> + </attribute> + </optional> + <optional> + <attribute name="style:border-line-width-top"> + <ref name="borderWidths"/> + </attribute> + </optional> + <optional> + <attribute name="style:border-line-width-bottom"> + <ref name="borderWidths"/> + </attribute> + </optional> + <optional> + <attribute name="style:border-line-width-left"> + <ref name="borderWidths"/> + </attribute> + </optional> + <optional> + <attribute name="style:border-line-width-right"> + <ref name="borderWidths"/> + </attribute> + </optional> + </define> + <define name="borderWidths"> + <list> + <ref name="positiveLength"/> + <ref name="positiveLength"/> + <ref name="positiveLength"/> + </list> + </define> + <define name="common-padding-attlist"> + <optional> + <attribute name="fo:padding"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> + <optional> + <attribute name="fo:padding-top"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> + <optional> + <attribute name="fo:padding-bottom"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> + <optional> + <attribute name="fo:padding-left"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> + <optional> + <attribute name="fo:padding-right"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> + </define> + <define name="common-shadow-attlist"> + <optional> + <attribute name="style:shadow"> + <ref name="shadowType"/> + </attribute> + </optional> + </define> + <define name="common-keep-with-next-attlist"> + <optional> + <attribute name="fo:keep-with-next"> + <choice> + <value>auto</value> + <value>always</value> + </choice> + </attribute> + </optional> + </define> + <define name="common-writing-mode-attlist"> + <optional> + <attribute name="style:writing-mode"> + <choice> + <value>lr-tb</value> + <value>rl-tb</value> + <value>tb-rl</value> + <value>tb-lr</value> + <value>lr</value> + <value>rl</value> + <value>tb</value> + <value>page</value> + </choice> + </attribute> + </optional> + </define> + <define name="common-page-number-attlist"> + <optional> + <attribute name="style:page-number"> + <choice> + <ref name="positiveInteger"/> + <value>auto</value> + </choice> + </attribute> + </optional> + </define> + <define name="common-background-transparency-attlist"> + <optional> + <attribute name="style:background-transparency"> + <ref name="zeroToHundredPercent"/> + </attribute> + </optional> + </define> + <define name="style-ruby-properties"> + <element name="style:ruby-properties"> + <ref name="style-ruby-properties-content-strict"/> + </element> + </define> + <define name="style-ruby-properties-content-strict"> + <ref name="style-ruby-properties-attlist"/> + <ref name="style-ruby-properties-elements"/> + </define> + <define name="style-ruby-properties-elements"> + <empty/> + </define> + <define name="style-ruby-properties-attlist"> + <interleave> + <optional> + <attribute name="style:ruby-position"> + <choice> + <value>above</value> + <value>below</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:ruby-align"> + <choice> + <value>left</value> + <value>center</value> + <value>right</value> + <value>distribute-letter</value> + <value>distribute-space</value> + </choice> + </attribute> + </optional> + </interleave> + </define> + <define name="style-section-properties"> + <element name="style:section-properties"> + <ref name="style-section-properties-content-strict"/> + </element> + </define> + <define name="style-section-properties-content-strict"> + <ref name="style-section-properties-attlist"/> + <ref name="style-section-properties-elements"/> + </define> + <define name="style-section-properties-attlist"> + <interleave> + <ref name="common-background-color-attlist"/> + <ref name="common-horizontal-margin-attlist"/> + <optional> + <attribute name="style:protect"> + <ref name="boolean"/> + </attribute> + </optional> + <ref name="common-editable-attlist"/> + <optional> + <attribute name="text:dont-balance-text-columns"> + <ref name="boolean"/> + </attribute> + </optional> + <ref name="common-writing-mode-attlist"/> + </interleave> + </define> + <define name="style-section-properties-elements"> + <interleave> + <ref name="style-background-image"/> + <ref name="style-columns"/> + <zeroOrMore> + <ref name="text-notes-configuration"/> + </zeroOrMore> + </interleave> + </define> + <define name="style-columns"> + <optional> + <element name="style:columns"> + <ref name="style-columns-attlist"/> + <optional> + <ref name="style-column-sep"/> + </optional> + <zeroOrMore> + <ref name="style-column"/> + </zeroOrMore> + </element> + </optional> + </define> + <define name="style-columns-attlist"> + <interleave> + <attribute name="fo:column-count"> + <ref name="positiveInteger"/> + </attribute> + <optional> + <attribute name="fo:column-gap"> + <ref name="length"/> + </attribute> + </optional> + </interleave> + </define> + <define name="style-column"> + <element name="style:column"> + <ref name="style-column-attlist"/> + </element> + </define> + <define name="style-column-attlist"> + <interleave> + <attribute name="style:rel-width"> + <ref name="relativeLength"/> + </attribute> + <optional> + <attribute name="fo:start-indent"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="fo:end-indent"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="fo:space-before"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="fo:space-after"> + <ref name="length"/> + </attribute> + </optional> + </interleave> + </define> + <define name="style-column-sep"> + <element name="style:column-sep"> + <ref name="style-column-sep-attlist"/> + </element> + </define> + <define name="style-column-sep-attlist"> + <interleave> + <optional> + <attribute name="style:style"> + <choice> + <value>none</value> + <value>solid</value> + <value>dotted</value> + <value>dashed</value> + <value>dot-dashed</value> + </choice> + </attribute> + </optional> + <attribute name="style:width"> + <ref name="length"/> + </attribute> + <optional> + <attribute name="style:height"> + <ref name="zeroToHundredPercent"/> + </attribute> + </optional> + <optional> + <attribute name="style:vertical-align"> + <choice> + <value>top</value> + <value>middle</value> + <value>bottom</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:color"> + <ref name="color"/> + </attribute> + </optional> + </interleave> + </define> + <define name="style-table-properties"> + <element name="style:table-properties"> + <ref name="style-table-properties-content-strict"/> + </element> + </define> + <define name="style-table-properties-content-strict"> + <ref name="style-table-properties-attlist"/> + <ref name="style-table-properties-elements"/> + </define> + <define name="style-table-properties-attlist"> + <interleave> + <optional> + <attribute name="style:width"> + <ref name="positiveLength"/> + </attribute> + </optional> + <optional> + <attribute name="style:rel-width"> + <ref name="percent"/> + </attribute> + </optional> + <optional> + <attribute name="table:align"> + <choice> + <value>left</value> + <value>center</value> + <value>right</value> + <value>margins</value> + </choice> + </attribute> + </optional> + <ref name="common-horizontal-margin-attlist"/> + <ref name="common-vertical-margin-attlist"/> + <ref name="common-margin-attlist"/> + <ref name="common-page-number-attlist"/> + <ref name="common-break-attlist"/> + <ref name="common-background-color-attlist"/> + <ref name="common-shadow-attlist"/> + <ref name="common-keep-with-next-attlist"/> + <optional> + <attribute name="style:may-break-between-rows"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="table:border-model"> + <choice> + <value>collapsing</value> + <value>separating</value> + </choice> + </attribute> + </optional> + <ref name="common-writing-mode-attlist"/> + <optional> + <attribute name="table:display"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="style-table-properties-elements"> + <ref name="style-background-image"/> + </define> + <define name="style-table-column-properties"> + <element name="style:table-column-properties"> + <ref name="style-table-column-properties-content-strict"/> + </element> + </define> + <define name="style-table-column-properties-content-strict"> + <ref name="style-table-column-properties-attlist"/> + <ref name="style-table-column-properties-elements"/> + </define> + <define name="style-table-column-properties-elements"> + <empty/> + </define> + <define name="style-table-column-properties-attlist"> + <interleave> + <optional> + <attribute name="style:column-width"> + <ref name="positiveLength"/> + </attribute> + </optional> + <optional> + <attribute name="style:rel-column-width"> + <ref name="relativeLength"/> + </attribute> + </optional> + <optional> + <attribute name="style:use-optimal-column-width"> + <ref name="boolean"/> + </attribute> + </optional> + <ref name="common-break-attlist"/> + </interleave> + </define> + <define name="style-table-row-properties"> + <element name="style:table-row-properties"> + <ref name="style-table-row-properties-content-strict"/> + </element> + </define> + <define name="style-table-row-properties-content-strict"> + <ref name="style-table-row-properties-attlist"/> + <ref name="style-table-row-properties-elements"/> + </define> + <define name="style-table-row-properties-attlist"> + <interleave> + <optional> + <attribute name="style:row-height"> + <ref name="positiveLength"/> + </attribute> + </optional> + <optional> + <attribute name="style:min-row-height"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> + <optional> + <attribute name="style:use-optimal-row-height"> + <ref name="boolean"/> + </attribute> + </optional> + <ref name="common-background-color-attlist"/> + <ref name="common-break-attlist"/> + <optional> + <attribute name="fo:keep-together"> + <choice> + <value>auto</value> + <value>always</value> + </choice> + </attribute> + </optional> + </interleave> + </define> + <define name="style-table-row-properties-elements"> + <ref name="style-background-image"/> + </define> + <define name="style-table-cell-properties"> + <element name="style:table-cell-properties"> + <ref name="style-table-cell-properties-content-strict"/> + </element> + </define> + <define name="style-table-cell-properties-content-strict"> + <ref name="style-table-cell-properties-attlist"/> + <ref name="style-table-cell-properties-elements"/> + </define> + <define name="style-table-cell-properties-attlist"> + <interleave> + <optional> + <attribute name="style:vertical-align"> + <choice> + <value>top</value> + <value>middle</value> + <value>bottom</value> + <value>automatic</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:text-align-source"> + <choice> + <value>fix</value> + <value>value-type</value> + </choice> + </attribute> + </optional> + <ref name="common-style-direction-attlist"/> + <optional> + <attribute name="style:glyph-orientation-vertical"> + <choice> + <value>auto</value> + <value>0</value> + <value>0deg</value> + <value>0rad</value> + <value>0grad</value> + </choice> + </attribute> + </optional> + <ref name="common-writing-mode-attlist"/> + <ref name="common-shadow-attlist"/> + <ref name="common-background-color-attlist"/> + <ref name="common-border-attlist"/> + <optional> + <attribute name="style:diagonal-tl-br"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="style:diagonal-tl-br-widths"> + <ref name="borderWidths"/> + </attribute> + </optional> + <optional> + <attribute name="style:diagonal-bl-tr"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="style:diagonal-bl-tr-widths"> + <ref name="borderWidths"/> + </attribute> + </optional> + <ref name="common-border-line-width-attlist"/> + <ref name="common-padding-attlist"/> + <optional> + <attribute name="fo:wrap-option"> + <choice> + <value>no-wrap</value> + <value>wrap</value> + </choice> + </attribute> + </optional> + <ref name="common-rotation-angle-attlist"/> + <optional> + <attribute name="style:rotation-align"> + <choice> + <value>none</value> + <value>bottom</value> + <value>top</value> + <value>center</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:cell-protect"> + <choice> + <value>none</value> + <value>hidden-and-protected</value> + <list> + <oneOrMore> + <choice> + <value>protected</value> + <value>formula-hidden</value> + </choice> + </oneOrMore> + </list> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:print-content"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="style:decimal-places"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="style:repeat-content"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="style:shrink-to-fit"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="common-style-direction-attlist"> + <optional> + <attribute name="style:direction"> + <choice> + <value>ltr</value> + <value>ttb</value> + </choice> + </attribute> + </optional> + </define> + <define name="style-table-cell-properties-elements"> + <ref name="style-background-image"/> + </define> + <define name="common-rotation-angle-attlist"> + <optional> + <attribute name="style:rotation-angle"> + <ref name="angle"/> + </attribute> + </optional> + </define> + <define name="style-list-level-properties"> + <element name="style:list-level-properties"> + <ref name="style-list-level-properties-content-strict"/> + </element> + </define> + <define name="style-list-level-properties-content-strict"> + <ref name="style-list-level-properties-attlist"/> + <ref name="style-list-level-properties-elements"/> + </define> + <define name="style-list-level-properties-attlist"> + <interleave> + <ref name="common-text-align"/> + <optional> + <attribute name="text:space-before"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="text:min-label-width"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> + <optional> + <attribute name="text:min-label-distance"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> + <optional> + <attribute name="style:font-name"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="fo:width"> + <ref name="positiveLength"/> + </attribute> + </optional> + <optional> + <attribute name="fo:height"> + <ref name="positiveLength"/> + </attribute> + </optional> + <ref name="common-vertical-rel-attlist"/> + <ref name="common-vertical-pos-attlist"/> + <optional> + <attribute name="text:list-level-position-and-space-mode"> + <choice> + <value>label-width-and-position</value> + <value>label-alignment</value> + </choice> + </attribute> + </optional> + </interleave> + </define> + <define name="style-list-level-properties-elements"> + <ref name="style-list-level-label-alignment"/> + </define> + <define name="style-list-level-label-alignment"> + <optional> + <element name="style:list-level-label-alignment"> + <ref name="style-list-level-label-alignment-attlist"/> + <empty/> + </element> + </optional> + </define> + <define name="style-list-level-label-alignment-attlist"> + <interleave> + <attribute name="text:label-followed-by"> + <choice> + <value>listtab</value> + <value>space</value> + <value>nothing</value> + </choice> + </attribute> + <optional> + <attribute name="text:list-tab-stop-position"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="fo:text-indent"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="fo:margin-left"> + <ref name="length"/> + </attribute> + </optional> + </interleave> + </define> + <define name="style-graphic-properties-attlist"> + <interleave> + <optional> + <attribute name="draw:stroke"> + <choice> + <value>none</value> + <value>dash</value> + <value>solid</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="draw:stroke-dash"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="draw:stroke-dash-names"> + <ref name="styleNameRefs"/> + </attribute> + </optional> + <optional> + <attribute name="svg:stroke-width"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="svg:stroke-color"> + <ref name="color"/> + </attribute> + </optional> + <optional> + <attribute name="draw:marker-start"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="draw:marker-end"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="draw:marker-start-width"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="draw:marker-end-width"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="draw:marker-start-center"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="draw:marker-end-center"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="svg:stroke-opacity"> + <choice> + <data type="double"> + <param name="minInclusive">0</param> + <param name="maxInclusive">1</param> + </data> + <ref name="zeroToHundredPercent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="draw:stroke-linejoin"> + <choice> + <value>miter</value> + <value>round</value> + <value>bevel</value> + <value>middle</value> + <value>none</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="svg:stroke-linecap"> + <choice> + <value>butt</value> + <value>square</value> + <value>round</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="draw:symbol-color"> + <ref name="color"/> + </attribute> + </optional> + <optional> + <attribute name="text:animation"> + <choice> + <value>none</value> + <value>scroll</value> + <value>alternate</value> + <value>slide</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="text:animation-direction"> + <choice> + <value>left</value> + <value>right</value> + <value>up</value> + <value>down</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="text:animation-start-inside"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:animation-stop-inside"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:animation-repeat"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="text:animation-delay"> + <ref name="duration"/> + </attribute> + </optional> + <optional> + <attribute name="text:animation-steps"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="draw:auto-grow-width"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="draw:auto-grow-height"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="draw:fit-to-size"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="draw:fit-to-contour"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="draw:textarea-vertical-align"> + <choice> + <value>top</value> + <value>middle</value> + <value>bottom</value> + <value>justify</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="draw:textarea-horizontal-align"> + <choice> + <value>left</value> + <value>center</value> + <value>right</value> + <value>justify</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="fo:wrap-option"> + <choice> + <value>no-wrap</value> + <value>wrap</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:shrink-to-fit"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="draw:color-mode"> + <choice> + <value>greyscale</value> + <value>mono</value> + <value>watermark</value> + <value>standard</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="draw:color-inversion"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="draw:luminance"> + <ref name="zeroToHundredPercent"/> + </attribute> + </optional> + <optional> + <attribute name="draw:contrast"> + <ref name="percent"/> + </attribute> + </optional> + <optional> + <attribute name="draw:gamma"> + <ref name="percent"/> + </attribute> + </optional> + <optional> + <attribute name="draw:red"> + <ref name="signedZeroToHundredPercent"/> + </attribute> + </optional> + <optional> + <attribute name="draw:green"> + <ref name="signedZeroToHundredPercent"/> + </attribute> + </optional> + <optional> + <attribute name="draw:blue"> + <ref name="signedZeroToHundredPercent"/> + </attribute> + </optional> + <optional> + <attribute name="draw:image-opacity"> + <ref name="zeroToHundredPercent"/> + </attribute> + </optional> + <optional> + <attribute name="draw:shadow"> + <choice> + <value>visible</value> + <value>hidden</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="draw:shadow-offset-x"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="draw:shadow-offset-y"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="draw:shadow-color"> + <ref name="color"/> + </attribute> + </optional> + <optional> + <attribute name="draw:shadow-opacity"> + <ref name="zeroToHundredPercent"/> + </attribute> + </optional> + <optional> + <attribute name="draw:start-line-spacing-horizontal"> + <ref name="distance"/> + </attribute> + </optional> + <optional> + <attribute name="draw:start-line-spacing-vertical"> + <ref name="distance"/> + </attribute> + </optional> + <optional> + <attribute name="draw:end-line-spacing-horizontal"> + <ref name="distance"/> + </attribute> + </optional> + <optional> + <attribute name="draw:end-line-spacing-vertical"> + <ref name="distance"/> + </attribute> + </optional> + <optional> + <attribute name="draw:line-distance"> + <ref name="distance"/> + </attribute> + </optional> + <optional> + <attribute name="draw:guide-overhang"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="draw:guide-distance"> + <ref name="distance"/> + </attribute> + </optional> + <optional> + <attribute name="draw:start-guide"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="draw:end-guide"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="draw:placing"> + <choice> + <value>below</value> + <value>above</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="draw:parallel"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="draw:measure-align"> + <choice> + <value>automatic</value> + <value>left-outside</value> + <value>inside</value> + <value>right-outside</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="draw:measure-vertical-align"> + <choice> + <value>automatic</value> + <value>above</value> + <value>below</value> + <value>center</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="draw:unit"> + <choice> + <value>automatic</value> + <value>mm</value> + <value>cm</value> + <value>m</value> + <value>km</value> + <value>pt</value> + <value>pc</value> + <value>inch</value> + <value>ft</value> + <value>mi</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="draw:show-unit"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="draw:decimal-places"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="draw:caption-type"> + <choice> + <value>straight-line</value> + <value>angled-line</value> + <value>angled-connector-line</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="draw:caption-angle-type"> + <choice> + <value>fixed</value> + <value>free</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="draw:caption-angle"> + <ref name="angle"/> + </attribute> + </optional> + <optional> + <attribute name="draw:caption-gap"> + <ref name="distance"/> + </attribute> + </optional> + <optional> + <attribute name="draw:caption-escape-direction"> + <choice> + <value>horizontal</value> + <value>vertical</value> + <value>auto</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="draw:caption-escape"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="draw:caption-line-length"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="draw:caption-fit-line-length"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="dr3d:horizontal-segments"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="dr3d:vertical-segments"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="dr3d:edge-rounding"> + <ref name="percent"/> + </attribute> + </optional> + <optional> + <attribute name="dr3d:edge-rounding-mode"> + <choice> + <value>correct</value> + <value>attractive</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="dr3d:back-scale"> + <ref name="percent"/> + </attribute> + </optional> + <optional> + <attribute name="dr3d:depth"> + <ref name="length"/> + </attribute> + </optional> + <optional> + <attribute name="dr3d:backface-culling"> + <choice> + <value>enabled</value> + <value>disabled</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="dr3d:end-angle"> + <ref name="angle"/> + </attribute> + </optional> + <optional> + <attribute name="dr3d:close-front"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="dr3d:close-back"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="dr3d:lighting-mode"> + <choice> + <value>standard</value> + <value>double-sided</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="dr3d:normals-kind"> + <choice> + <value>object</value> + <value>flat</value> + <value>sphere</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="dr3d:normals-direction"> + <choice> + <value>normal</value> + <value>inverse</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="dr3d:texture-generation-mode-x"> + <choice> + <value>object</value> + <value>parallel</value> + <value>sphere</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="dr3d:texture-generation-mode-y"> + <choice> + <value>object</value> + <value>parallel</value> + <value>sphere</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="dr3d:texture-kind"> + <choice> + <value>luminance</value> + <value>intensity</value> + <value>color</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="dr3d:texture-filter"> + <choice> + <value>enabled</value> + <value>disabled</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="dr3d:texture-mode"> + <choice> + <value>replace</value> + <value>modulate</value> + <value>blend</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="dr3d:ambient-color"> + <ref name="color"/> + </attribute> + </optional> + <optional> + <attribute name="dr3d:emissive-color"> + <ref name="color"/> + </attribute> + </optional> + <optional> + <attribute name="dr3d:specular-color"> + <ref name="color"/> + </attribute> + </optional> + <optional> + <attribute name="dr3d:diffuse-color"> + <ref name="color"/> + </attribute> + </optional> + <optional> + <attribute name="dr3d:shininess"> + <ref name="percent"/> + </attribute> + </optional> + <optional> + <attribute name="dr3d:shadow"> + <choice> + <value>visible</value> + <value>hidden</value> + </choice> + </attribute> + </optional> + <ref name="common-draw-rel-size-attlist"/> + <optional> + <attribute name="fo:min-width"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="fo:min-height"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="fo:max-height"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="fo:max-width"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <ref name="common-horizontal-margin-attlist"/> + <ref name="common-vertical-margin-attlist"/> + <ref name="common-margin-attlist"/> + <optional> + <attribute name="style:print-content"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="style:protect"> + <choice> + <value>none</value> + <list> + <oneOrMore> + <choice> + <value>content</value> + <value>position</value> + <value>size</value> + </choice> + </oneOrMore> + </list> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:horizontal-pos"> + <choice> + <value>left</value> + <value>center</value> + <value>right</value> + <value>from-left</value> + <value>inside</value> + <value>outside</value> + <value>from-inside</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="svg:x"> + <ref name="coordinate"/> + </attribute> + </optional> + <optional> + <attribute name="style:horizontal-rel"> + <choice> + <value>page</value> + <value>page-content</value> + <value>page-start-margin</value> + <value>page-end-margin</value> + <value>frame</value> + <value>frame-content</value> + <value>frame-start-margin</value> + <value>frame-end-margin</value> + <value>paragraph</value> + <value>paragraph-content</value> + <value>paragraph-start-margin</value> + <value>paragraph-end-margin</value> + <value>char</value> + </choice> + </attribute> + </optional> + <ref name="common-vertical-pos-attlist"/> + <ref name="common-vertical-rel-attlist"/> + <ref name="common-text-anchor-attlist"/> + <ref name="common-border-attlist"/> + <ref name="common-border-line-width-attlist"/> + <ref name="common-padding-attlist"/> + <ref name="common-shadow-attlist"/> + <ref name="common-background-color-attlist"/> + <ref name="common-background-transparency-attlist"/> + <ref name="common-editable-attlist"/> + <optional> + <attribute name="style:wrap"> + <choice> + <value>none</value> + <value>left</value> + <value>right</value> + <value>parallel</value> + <value>dynamic</value> + <value>run-through</value> + <value>biggest</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:wrap-dynamic-threshold"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> + <optional> + <attribute name="style:number-wrapped-paragraphs"> + <choice> + <value>no-limit</value> + <ref name="positiveInteger"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:wrap-contour"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="style:wrap-contour-mode"> + <choice> + <value>full</value> + <value>outside</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:run-through"> + <choice> + <value>foreground</value> + <value>background</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:flow-with-text"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="style:overflow-behavior"> + <choice> + <value>clip</value> + <value>auto-create-new-frame</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="style:mirror"> + <choice> + <value>none</value> + <value>vertical</value> + <ref name="horizontal-mirror"/> + <list> + <value>vertical</value> + <ref name="horizontal-mirror"/> + </list> + <list> + <ref name="horizontal-mirror"/> + <value>vertical</value> + </list> + </choice> + </attribute> + </optional> + <optional> + <attribute name="fo:clip"> + <choice> + <value>auto</value> + <ref name="clipShape"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="draw:wrap-influence-on-position"> + <choice> + <value>iterative</value> + <value>once-concurrent</value> + <value>once-successive</value> + </choice> + </attribute> + </optional> + <ref name="common-writing-mode-attlist"/> + <optional> + <attribute name="draw:frame-display-scrollbar"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="draw:frame-display-border"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="draw:frame-margin-horizontal"> + <ref name="nonNegativePixelLength"/> + </attribute> + </optional> + <optional> + <attribute name="draw:frame-margin-vertical"> + <ref name="nonNegativePixelLength"/> + </attribute> + </optional> + <optional> + <attribute name="draw:visible-area-left"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> + <optional> + <attribute name="draw:visible-area-top"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> + <optional> + <attribute name="draw:visible-area-width"> + <ref name="positiveLength"/> + </attribute> + </optional> + <optional> + <attribute name="draw:visible-area-height"> + <ref name="positiveLength"/> + </attribute> + </optional> + <optional> + <attribute name="draw:draw-aspect"> + <choice> + <value>content</value> + <value>thumbnail</value> + <value>icon</value> + <value>print-view</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="draw:ole-draw-aspect"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + </interleave> + </define> + <define name="style-graphic-fill-properties-attlist"> + <interleave> + <optional> + <attribute name="draw:fill"> + <choice> + <value>none</value> + <value>solid</value> + <value>bitmap</value> + <value>gradient</value> + <value>hatch</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="draw:fill-color"> + <ref name="color"/> + </attribute> + </optional> + <optional> + <attribute name="draw:secondary-fill-color"> + <ref name="color"/> + </attribute> + </optional> + <optional> + <attribute name="draw:fill-gradient-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="draw:gradient-step-count"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="draw:fill-hatch-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="draw:fill-hatch-solid"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="draw:fill-image-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="style:repeat"> + <choice> + <value>no-repeat</value> + <value>repeat</value> + <value>stretch</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="draw:fill-image-width"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="draw:fill-image-height"> + <choice> + <ref name="length"/> + <ref name="percent"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="draw:fill-image-ref-point-x"> + <ref name="percent"/> + </attribute> + </optional> + <optional> + <attribute name="draw:fill-image-ref-point-y"> + <ref name="percent"/> + </attribute> + </optional> + <optional> + <attribute name="draw:fill-image-ref-point"> + <choice> + <value>top-left</value> + <value>top</value> + <value>top-right</value> + <value>left</value> + <value>center</value> + <value>right</value> + <value>bottom-left</value> + <value>bottom</value> + <value>bottom-right</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="draw:tile-repeat-offset"> + <list> + <ref name="zeroToHundredPercent"/> + <choice> + <value>horizontal</value> + <value>vertical</value> + </choice> + </list> + </attribute> + </optional> + <optional> + <attribute name="draw:opacity"> + <ref name="zeroToHundredPercent"/> + </attribute> + </optional> + <optional> + <attribute name="draw:opacity-name"> + <ref name="styleNameRef"/> + </attribute> + </optional> + <optional> + <attribute name="svg:fill-rule"> + <choice> + <value>nonzero</value> + <value>evenodd</value> + </choice> + </attribute> + </optional> + </interleave> + </define> + <define name="style-graphic-properties-elements"> + <interleave> + <optional> + <ref name="text-list-style"/> + </optional> + <ref name="style-background-image"/> + <ref name="style-columns"/> + </interleave> + </define> + <define name="common-vertical-pos-attlist"> + <optional> + <attribute name="style:vertical-pos"> + <choice> + <value>top</value> + <value>middle</value> + <value>bottom</value> + <value>from-top</value> + <value>below</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="svg:y"> + <ref name="coordinate"/> + </attribute> + </optional> + </define> + <define name="common-vertical-rel-attlist"> + <optional> + <attribute name="style:vertical-rel"> + <choice> + <value>page</value> + <value>page-content</value> + <value>frame</value> + <value>frame-content</value> + <value>paragraph</value> + <value>paragraph-content</value> + <value>char</value> + <value>line</value> + <value>baseline</value> + <value>text</value> + </choice> + </attribute> + </optional> + </define> + <define name="common-editable-attlist"> + <optional> + <attribute name="style:editable"> + <ref name="boolean"/> + </attribute> + </optional> + </define> + <define name="horizontal-mirror"> + <choice> + <value>horizontal</value> + <value>horizontal-on-odd</value> + <value>horizontal-on-even</value> + </choice> + </define> + <define name="clipShape"> + <data type="string"> + <param name="pattern">rect\([ ]*((-?([0-9]+(\.[0-9]*)?|\.[0-9]+)((cm)|(mm)|(in)|(pt)|(pc)))|(auto))([ ]*,[ ]*((-?([0-9]+(\.[0-9]*)?|\.[0-9]+)((cm)|(mm)|(in)|(pt)|(pc))))|(auto)){3}[ ]*\)</param> + </data> + </define> + <define name="nonNegativePixelLength"> + <data type="string"> + <param name="pattern">([0-9]+(\.[0-9]*)?|\.[0-9]+)(px)</param> + </data> + </define> + <define name="style-chart-properties"> + <element name="style:chart-properties"> + <ref name="style-chart-properties-content-strict"/> + </element> + </define> + <define name="style-chart-properties-content-strict"> + <ref name="style-chart-properties-attlist"/> + <ref name="style-chart-properties-elements"/> + </define> + <define name="style-chart-properties-elements"> + <empty/> + </define> + <define name="style-chart-properties-attlist"> + <interleave> + <optional> + <attribute name="chart:scale-text"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:three-dimensional"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:deep"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:right-angled-axes"> + <ref name="boolean"/> + </attribute> + </optional> + <choice> + <attribute name="chart:symbol-type"> + <value>none</value> + </attribute> + <attribute name="chart:symbol-type"> + <value>automatic</value> + </attribute> + <group> + <attribute name="chart:symbol-type"> + <value>named-symbol</value> + </attribute> + <attribute name="chart:symbol-name"> + <choice> + <value>square</value> + <value>diamond</value> + <value>arrow-down</value> + <value>arrow-up</value> + <value>arrow-right</value> + <value>arrow-left</value> + <value>bow-tie</value> + <value>hourglass</value> + <value>circle</value> + <value>star</value> + <value>x</value> + <value>plus</value> + <value>asterisk</value> + <value>horizontal-bar</value> + <value>vertical-bar</value> + </choice> + </attribute> + </group> + <group> + <attribute name="chart:symbol-type"> + <value>image</value> + </attribute> + <element name="chart:symbol-image"> + <attribute name="xlink:href"> + <ref name="anyIRI"/> + </attribute> + </element> + </group> + <empty/> + </choice> + <optional> + <attribute name="chart:symbol-width"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> + <optional> + <attribute name="chart:symbol-height"> + <ref name="nonNegativeLength"/> + </attribute> + </optional> + <optional> + <attribute name="chart:sort-by-x-values"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:vertical"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:connect-bars"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:gap-width"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="chart:overlap"> + <ref name="integer"/> + </attribute> + </optional> + <optional> + <attribute name="chart:group-bars-per-axis"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:japanese-candle-stick"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:interpolation"> + <choice> + <value>none</value> + <value>cubic-spline</value> + <value>b-spline</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="chart:spline-order"> + <ref name="positiveInteger"/> + </attribute> + </optional> + <optional> + <attribute name="chart:spline-resolution"> + <ref name="positiveInteger"/> + </attribute> + </optional> + <optional> + <attribute name="chart:pie-offset"> + <ref name="nonNegativeInteger"/> + </attribute> + </optional> + <optional> + <attribute name="chart:angle-offset"> + <ref name="angle"/> + </attribute> + </optional> + <optional> + <attribute name="chart:hole-size"> + <ref name="percent"/> + </attribute> + </optional> + <optional> + <attribute name="chart:lines"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:solid-type"> + <choice> + <value>cuboid</value> + <value>cylinder</value> + <value>cone</value> + <value>pyramid</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="chart:stacked"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:percentage"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:treat-empty-cells"> + <choice> + <value>use-zero</value> + <value>leave-gap</value> + <value>ignore</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="chart:link-data-style-to-source"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:logarithmic"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:maximum"> + <ref name="double"/> + </attribute> + </optional> + <optional> + <attribute name="chart:minimum"> + <ref name="double"/> + </attribute> + </optional> + <optional> + <attribute name="chart:origin"> + <ref name="double"/> + </attribute> + </optional> + <optional> + <attribute name="chart:interval-major"> + <ref name="double"/> + </attribute> + </optional> + <optional> + <attribute name="chart:interval-minor-divisor"> + <ref name="positiveInteger"/> + </attribute> + </optional> + <optional> + <attribute name="chart:tick-marks-major-inner"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:tick-marks-major-outer"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:tick-marks-minor-inner"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:tick-marks-minor-outer"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:reverse-direction"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:display-label"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:text-overlap"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="text:line-break"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:label-arrangement"> + <choice> + <value>side-by-side</value> + <value>stagger-even</value> + <value>stagger-odd</value> + </choice> + </attribute> + </optional> + <ref name="common-style-direction-attlist"/> + <ref name="common-rotation-angle-attlist"/> + <optional> + <attribute name="chart:data-label-number"> + <choice> + <value>none</value> + <value>value</value> + <value>percentage</value> + <value>value-and-percentage</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="chart:data-label-text"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:data-label-symbol"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <element name="chart:label-separator"> + <ref name="text-p"/> + </element> + </optional> + <optional> + <attribute name="chart:label-position"> + <ref name="labelPositions"/> + </attribute> + </optional> + <optional> + <attribute name="chart:label-position-negative"> + <ref name="labelPositions"/> + </attribute> + </optional> + <optional> + <attribute name="chart:visible"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:auto-position"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:auto-size"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:mean-value"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:error-category"> + <choice> + <value>none</value> + <value>variance</value> + <value>standard-deviation</value> + <value>percentage</value> + <value>error-margin</value> + <value>constant</value> + <value>standard-error</value> + <value>cell-range</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="chart:error-percentage"> + <ref name="double"/> + </attribute> + </optional> + <optional> + <attribute name="chart:error-margin"> + <ref name="double"/> + </attribute> + </optional> + <optional> + <attribute name="chart:error-lower-limit"> + <ref name="double"/> + </attribute> + </optional> + <optional> + <attribute name="chart:error-upper-limit"> + <ref name="double"/> + </attribute> + </optional> + <optional> + <attribute name="chart:error-upper-indicator"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:error-lower-indicator"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="chart:error-lower-range"> + <ref name="cellRangeAddressList"/> + </attribute> + </optional> + <optional> + <attribute name="chart:error-upper-range"> + <ref name="cellRangeAddressList"/> + </attribute> + </optional> + <optional> + <attribute name="chart:series-source"> + <choice> + <value>columns</value> + <value>rows</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="chart:regression-type"> + <choice> + <value>none</value> + <value>linear</value> + <value>logarithmic</value> + <value>exponential</value> + <value>power</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="chart:axis-position"> + <choice> + <value>start</value> + <value>end</value> + <ref name="double"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="chart:axis-label-position"> + <choice> + <value>near-axis</value> + <value>near-axis-other-side</value> + <value>outside-start</value> + <value>outside-end</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="chart:tick-mark-position"> + <choice> + <value>at-labels</value> + <value>at-axis</value> + <value>at-labels-and-axis</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="chart:include-hidden-cells"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="labelPositions"> + <choice> + <value>avoid-overlap</value> + <value>center</value> + <value>top</value> + <value>top-right</value> + <value>right</value> + <value>bottom-right</value> + <value>bottom</value> + <value>bottom-left</value> + <value>left</value> + <value>top-left</value> + <value>inside</value> + <value>outside</value> + <value>near-origin</value> + </choice> + </define> + <define name="style-drawing-page-properties-attlist"> + <interleave> + <optional> + <attribute name="presentation:transition-type"> + <choice> + <value>manual</value> + <value>automatic</value> + <value>semi-automatic</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="presentation:transition-style"> + <choice> + <value>none</value> + <value>fade-from-left</value> + <value>fade-from-top</value> + <value>fade-from-right</value> + <value>fade-from-bottom</value> + <value>fade-from-upperleft</value> + <value>fade-from-upperright</value> + <value>fade-from-lowerleft</value> + <value>fade-from-lowerright</value> + <value>move-from-left</value> + <value>move-from-top</value> + <value>move-from-right</value> + <value>move-from-bottom</value> + <value>move-from-upperleft</value> + <value>move-from-upperright</value> + <value>move-from-lowerleft</value> + <value>move-from-lowerright</value> + <value>uncover-to-left</value> + <value>uncover-to-top</value> + <value>uncover-to-right</value> + <value>uncover-to-bottom</value> + <value>uncover-to-upperleft</value> + <value>uncover-to-upperright</value> + <value>uncover-to-lowerleft</value> + <value>uncover-to-lowerright</value> + <value>fade-to-center</value> + <value>fade-from-center</value> + <value>vertical-stripes</value> + <value>horizontal-stripes</value> + <value>clockwise</value> + <value>counterclockwise</value> + <value>open-vertical</value> + <value>open-horizontal</value> + <value>close-vertical</value> + <value>close-horizontal</value> + <value>wavyline-from-left</value> + <value>wavyline-from-top</value> + <value>wavyline-from-right</value> + <value>wavyline-from-bottom</value> + <value>spiralin-left</value> + <value>spiralin-right</value> + <value>spiralout-left</value> + <value>spiralout-right</value> + <value>roll-from-top</value> + <value>roll-from-left</value> + <value>roll-from-right</value> + <value>roll-from-bottom</value> + <value>stretch-from-left</value> + <value>stretch-from-top</value> + <value>stretch-from-right</value> + <value>stretch-from-bottom</value> + <value>vertical-lines</value> + <value>horizontal-lines</value> + <value>dissolve</value> + <value>random</value> + <value>vertical-checkerboard</value> + <value>horizontal-checkerboard</value> + <value>interlocking-horizontal-left</value> + <value>interlocking-horizontal-right</value> + <value>interlocking-vertical-top</value> + <value>interlocking-vertical-bottom</value> + <value>fly-away</value> + <value>open</value> + <value>close</value> + <value>melt</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="presentation:transition-speed"> + <ref name="presentationSpeeds"/> + </attribute> + </optional> + <optional> + <attribute name="smil:type"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="smil:subtype"> + <ref name="string"/> + </attribute> + </optional> + <optional> + <attribute name="smil:direction"> + <choice> + <value>forward</value> + <value>reverse</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="smil:fadeColor"> + <ref name="color"/> + </attribute> + </optional> + <optional> + <attribute name="presentation:duration"> + <ref name="duration"/> + </attribute> + </optional> + <optional> + <attribute name="presentation:visibility"> + <choice> + <value>visible</value> + <value>hidden</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="draw:background-size"> + <choice> + <value>full</value> + <value>border</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="presentation:background-objects-visible"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="presentation:background-visible"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="presentation:display-header"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="presentation:display-footer"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="presentation:display-page-number"> + <ref name="boolean"/> + </attribute> + </optional> + <optional> + <attribute name="presentation:display-date-time"> + <ref name="boolean"/> + </attribute> + </optional> + </interleave> + </define> + <define name="style-drawing-page-properties-elements"> + <optional> + <ref name="presentation-sound"/> + </optional> + </define> + <define name="string"> + <data type="string"/> + </define> + <define name="date"> + <data type="date"/> + </define> + <define name="time"> + <data type="time"/> + </define> + <define name="dateTime"> + <data type="dateTime"/> + </define> + <define name="duration"> + <data type="duration"/> + </define> + <define name="integer"> + <data type="integer"/> + </define> + <define name="nonNegativeInteger"> + <data type="nonNegativeInteger"/> + </define> + <define name="positiveInteger"> + <data type="positiveInteger"/> + </define> + <define name="double"> + <data type="double"/> + </define> + <define name="anyURI"> + <data type="anyURI"/> + </define> + <define name="base64Binary"> + <data type="base64Binary"/> + </define> + <define name="ID"> + <data type="ID"/> + </define> + <define name="IDREF"> + <data type="IDREF"/> + </define> + <define name="IDREFS"> + <data type="IDREFS"/> + </define> + <define name="NCName"> + <data type="NCName"/> + </define> + <define name="boolean"> + <choice> + <value>true</value> + <value>false</value> + </choice> + </define> + <define name="dateOrDateTime"> + <choice> + <data type="date"/> + <data type="dateTime"/> + </choice> + </define> + <define name="timeOrDateTime"> + <choice> + <data type="time"/> + <data type="dateTime"/> + </choice> + </define> + <define name="language"> + <data type="language"/> + </define> + <define name="countryCode"> + <data type="token"> + <param name="pattern">[A-Za-z0-9]{1,8}</param> + </data> + </define> + <define name="languageCode"> + <data type="token"> + <param name="pattern">[A-Za-z]{1,8}</param> + </data> + </define> + <define name="scriptCode"> + <data type="token"> + <param name="pattern">[A-Za-z0-9]{1,8}</param> + </data> + </define> + <define name="character"> + <data type="string"> + <param name="length">1</param> + </data> + </define> + <define name="length"> + <data type="string"> + <param name="pattern">-?([0-9]+(\.[0-9]*)?|\.[0-9]+)((cm)|(mm)|(in)|(pt)|(pc)|(px))</param> + </data> + </define> + <define name="nonNegativeLength"> + <data type="string"> + <param name="pattern">([0-9]+(\.[0-9]*)?|\.[0-9]+)((cm)|(mm)|(in)|(pt)|(pc)|(px))</param> + </data> + </define> + <define name="positiveLength"> + <data type="string"> + <param name="pattern">([0-9]*[1-9][0-9]*(\.[0-9]*)?|0+\.[0-9]*[1-9][0-9]*|\.[0-9]*[1-9][0-9]*)((cm)|(mm)|(in)|(pt)|(pc)|(px))</param> + </data> + </define> + <define name="percent"> + <data type="string"> + <param name="pattern">-?([0-9]+(\.[0-9]*)?|\.[0-9]+)%</param> + </data> + </define> + <define name="zeroToHundredPercent"> + <data type="string"> + <param name="pattern">([0-9]?[0-9](\.[0-9]*)?|100(\.0*)?|\.[0-9]+)%</param> + </data> + </define> + <define name="signedZeroToHundredPercent"> + <data type="string"> + <param name="pattern">-?([0-9]?[0-9](\.[0-9]*)?|100(\.0*)?|\.[0-9]+)%</param> + </data> + </define> + <define name="relativeLength"> + <data type="string"> + <param name="pattern">[0-9]+\*</param> + </data> + </define> + <define name="coordinate"> + <ref name="length"/> + </define> + <define name="distance"> + <ref name="length"/> + </define> + <define name="color"> + <data type="string"> + <param name="pattern">#[0-9a-fA-F]{6}</param> + </data> + </define> + <define name="angle"> + <data type="string"/> + </define> + <define name="CURIE"> + <data type="string"> + <param name="pattern">(([\i-[:]][\c-[:]]*)?:)?.+</param> + <param name="minLength">1</param> + </data> + </define> + <define name="CURIEs"> + <list> + <oneOrMore> + <ref name="CURIE"/> + </oneOrMore> + </list> + </define> + <define name="SafeCURIE"> + <data type="string"> + <param name="pattern">\[(([\i-[:]][\c-[:]]*)?:)?.+\]</param> + <param name="minLength">3</param> + </data> + </define> + <define name="URIorSafeCURIE"> + <choice> + <ref name="anyURI"/> + <ref name="SafeCURIE"/> + </choice> + </define> + <define name="styleName"> + <data type="NCName"/> + </define> + <define name="styleNameRef"> + <choice> + <data type="NCName"/> + <empty/> + </choice> + </define> + <define name="styleNameRefs"> + <list> + <zeroOrMore> + <data type="NCName"/> + </zeroOrMore> + </list> + </define> + <define name="variableName"> + <data type="string"/> + </define> + <define name="targetFrameName"> + <choice> + <value>_self</value> + <value>_blank</value> + <value>_parent</value> + <value>_top</value> + <ref name="string"/> + </choice> + </define> + <define name="valueType"> + <choice> + <value>float</value> + <value>time</value> + <value>date</value> + <value>percentage</value> + <value>currency</value> + <value>boolean</value> + <value>string</value> + </choice> + </define> + <define name="points"> + <data type="string"> + <param name="pattern">-?[0-9]+,-?[0-9]+([ ]+-?[0-9]+,-?[0-9]+)*</param> + </data> + </define> + <define name="pathData"> + <data type="string"/> + </define> + <define name="vector3D"> + <data type="string"> + <param name="pattern">\([ ]*-?([0-9]+(\.[0-9]*)?|\.[0-9]+)([ ]+-?([0-9]+(\.[0-9]*)?|\.[0-9]+)){2}[ ]*\)</param> + </data> + </define> + <define name="namespacedToken"> + <data type="QName"> + <param name="pattern">[^:]+:[^:]+</param> + </data> + </define> + <define name="anyIRI"> + <data type="anyURI"/> + <dc:description>An IRI-reference as defined in [RFC3987]. See ODF 1.2 Part 1 section 18.3.</dc:description> + </define> + <define name="anyAttListOrElements"> + <zeroOrMore> + <attribute> + <anyName/> + <text/> + </attribute> + </zeroOrMore> + <ref name="anyElements"/> + </define> + <define name="anyElements"> + <zeroOrMore> + <element> + <anyName/> + <mixed> + <ref name="anyAttListOrElements"/> + </mixed> + </element> + </zeroOrMore> + </define> +</grammar> diff --git a/schema/odf1.3/OpenDocument-dsig-schema-v1.3.rng b/schema/odf1.3/OpenDocument-dsig-schema-v1.3.rng new file mode 100644 index 000000000000..2694b58dda83 --- /dev/null +++ b/schema/odf1.3/OpenDocument-dsig-schema-v1.3.rng @@ -0,0 +1,77 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Open Document Format for Office Applications (OpenDocument) Version 1.3 + OASIS Standard, in progress + Digital Signatures Relax-NG Schema + Source: https://tools.oasis-open.org/version-control/svn/office/ + Copyright (c) OASIS Open 2002-2011. All Rights Reserved. + + All capitalized terms in the following text have the meanings assigned to them + in the OASIS Intellectual Property Rights Policy (the "OASIS IPR Policy"). The + full Policy may be found at the OASIS website. + + This document and translations of it may be copied and furnished to others, and + derivative works that comment on or otherwise explain it or assist in its + implementation may be prepared, copied, published, and distributed, in whole or + in part, without restriction of any kind, provided that the above copyright + notice and this section are included on all such copies and derivative works. + However, this document itself may not be modified in any way, including by + removing the copyright notice or references to OASIS, except as needed for the + purpose of developing any document or deliverable produced by an OASIS + Technical Committee (in which case the rules applicable to copyrights, as set + forth in the OASIS IPR Policy, must be followed) or as required to translate it + into languages other than English. + + The limited permissions granted above are perpetual and will not be revoked by + OASIS or its successors or assigns. + + This document and the information contained herein is provided on an "AS IS" + basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT + LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT + INFRINGE ANY OWNERSHIP RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR + FITNESS FOR A PARTICULAR PURPOSE. +--> +<rng:grammar xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:dsig="urn:oasis:names:tc:opendocument:xmlns:digitalsignature:1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"> + <rng:start> + <rng:choice> + <rng:ref name="dsig-document-signatures"/> + </rng:choice> + </rng:start> + <rng:define name="ds-signature"> + <rng:element name="ds:Signature"> + <!-- The permitted content of this element is the permitted --> + <!-- content of the Signature element defined by W3C XML --> + <!-- Signature Syntax and Processing (Second Edition). --> + <!-- See OpenDocument v1.3 part 2, section 5.3. --> + <!-- resolved by https://issues.oasis-open.org/browse/OFFICE-3874 --> + <rng:ref name="dsMarkup"/> + </rng:element> + </rng:define> + <rng:define name="dsMarkup"> + <rng:zeroOrMore> + <rng:choice> + <rng:attribute> + <rng:anyName/> + </rng:attribute> + <rng:text/> + <rng:element> + <rng:anyName/> + <rng:ref name="dsMarkup"/> + </rng:element> + </rng:choice> + </rng:zeroOrMore> + </rng:define> + <rng:define name="dsig-document-signatures"> + <rng:element name="dsig:document-signatures"> + <rng:ref name="dsig-document-signatures-attlist"/> + <rng:oneOrMore> + <rng:ref name="ds-signature"/> + </rng:oneOrMore> + </rng:element> + </rng:define> + <rng:define name="dsig-document-signatures-attlist"> + <rng:attribute name="dsig:version"> + <rng:value>1.3</rng:value> + </rng:attribute> + </rng:define> +</rng:grammar> diff --git a/schema/odf1.3/OpenDocument-manifest-schema-v1.3.rng b/schema/odf1.3/OpenDocument-manifest-schema-v1.3.rng new file mode 100644 index 000000000000..f485ffbd019c --- /dev/null +++ b/schema/odf1.3/OpenDocument-manifest-schema-v1.3.rng @@ -0,0 +1,217 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Open Document Format for Office Applications (OpenDocument) Version 1.3 + OASIS Standard in progress + Manifest Relax-NG Schema + Source: https://tools.oasis-open.org/version-control/svn/office/ + Copyright (c) OASIS Open 2002-2011. All Rights Reserved. + + All capitalized terms in the following text have the meanings assigned to them + in the OASIS Intellectual Property Rights Policy (the "OASIS IPR Policy"). The + full Policy may be found at the OASIS website. + + This document and translations of it may be copied and furnished to others, and + derivative works that comment on or otherwise explain it or assist in its + implementation may be prepared, copied, published, and distributed, in whole or + in part, without restriction of any kind, provided that the above copyright + notice and this section are included on all such copies and derivative works. + However, this document itself may not be modified in any way, including by + removing the copyright notice or references to OASIS, except as needed for the + purpose of developing any document or deliverable produced by an OASIS + Technical Committee (in which case the rules applicable to copyrights, as set + forth in the OASIS IPR Policy, must be followed) or as required to translate it + into languages other than English. + + The limited permissions granted above are perpetual and will not be revoked by + OASIS or its successors or assigns. + + This document and the information contained herein is provided on an "AS IS" + basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT + LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT + INFRINGE ANY OWNERSHIP RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR + FITNESS FOR A PARTICULAR PURPOSE. +--> +<rng:grammar xmlns:manifest="urn:oasis:names:tc:opendocument:xmlns:manifest:1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"> + <rng:start> + <rng:choice> + <rng:ref name="manifest"/> + </rng:choice> + </rng:start> + <rng:define name="algorithm"> + <rng:element name="manifest:algorithm"> + <rng:ref name="algorithm-attlist"/> + <rng:ref name="anyElements"/> + </rng:element> + </rng:define> + <rng:define name="algorithm-attlist"> + <rng:interleave> + <rng:attribute name="manifest:algorithm-name"> + <rng:choice> + <rng:value>Blowfish CFB</rng:value> + <rng:ref name="anyURI"/> + </rng:choice> + </rng:attribute> + <rng:attribute name="manifest:initialisation-vector"> + <rng:ref name="base64Binary"/> + </rng:attribute> + </rng:interleave> + </rng:define> + <rng:define name="anyAttListOrElements"> + <rng:zeroOrMore> + <rng:attribute> + <rng:anyName/> + <rng:text/> + </rng:attribute> + </rng:zeroOrMore> + <rng:ref name="anyElements"/> + </rng:define> + <rng:define name="anyElements"> + <rng:zeroOrMore> + <rng:element> + <rng:anyName/> + <rng:mixed> + <rng:ref name="anyAttListOrElements"/> + </rng:mixed> + </rng:element> + </rng:zeroOrMore> + </rng:define> + <rng:define name="anyURI"> + <rng:data type="anyURI"/> + </rng:define> + <rng:define name="base64Binary"> + <rng:data type="base64Binary"/> + </rng:define> + <rng:define name="encryption-data"> + <rng:element name="manifest:encryption-data"> + <rng:ref name="encryption-data-attlist"/> + <rng:ref name="algorithm"/> + <rng:optional> + <rng:ref name="start-key-generation"/> + </rng:optional> + <rng:ref name="key-derivation"/> + </rng:element> + </rng:define> + <rng:define name="encryption-data-attlist"> + <rng:interleave> + <rng:attribute name="manifest:checksum-type"> + <rng:choice> + <rng:value>SHA1/1K</rng:value> + <rng:ref name="anyURI"/> + </rng:choice> + </rng:attribute> + <rng:attribute name="manifest:checksum"> + <rng:ref name="base64Binary"/> + </rng:attribute> + </rng:interleave> + </rng:define> + <rng:define name="file-entry"> + <rng:element name="manifest:file-entry"> + <rng:ref name="file-entry-attlist"/> + <rng:optional> + <rng:ref name="encryption-data"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="file-entry-attlist"> + <rng:interleave> + <rng:attribute name="manifest:full-path"> + <rng:ref name="string"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="manifest:size"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + <rng:attribute name="manifest:media-type"> + <rng:ref name="string"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="manifest:preferred-view-mode"> + <rng:choice> + <rng:value>edit</rng:value> + <rng:value>presentation-slide-show</rng:value> + <rng:value>read-only</rng:value> + <rng:ref name="namespacedToken"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="manifest:version"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="key-derivation"> + <rng:element name="manifest:key-derivation"> + <rng:ref name="key-derivation-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="key-derivation-attlist"> + <rng:interleave> + <rng:attribute name="manifest:key-derivation-name"> + <rng:choice> + <rng:value>PBKDF2</rng:value> + <rng:ref name="anyURI"/> + </rng:choice> + </rng:attribute> + <rng:attribute name="manifest:salt"> + <rng:ref name="base64Binary"/> + </rng:attribute> + <rng:attribute name="manifest:iteration-count"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="manifest:key-size"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="manifest"> + <rng:element name="manifest:manifest"> + <rng:ref name="manifest-attlist"/> + <rng:oneOrMore> + <rng:ref name="file-entry"/> + </rng:oneOrMore> + </rng:element> + </rng:define> + <rng:define name="manifest-attlist"> + <rng:attribute name="manifest:version"> + <rng:value>1.3</rng:value> + </rng:attribute> + </rng:define> + <rng:define name="namespacedToken"> + <rng:data type="QName"> + <rng:param name="pattern">[^:]+:[^:]+</rng:param> + </rng:data> + </rng:define> + <rng:define name="nonNegativeInteger"> + <rng:data type="nonNegativeInteger"/> + </rng:define> + <rng:define name="start-key-generation"> + <rng:element name="manifest:start-key-generation"> + <rng:ref name="start-key-generation-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="start-key-generation-attlist"> + <rng:interleave> + <rng:attribute name="manifest:start-key-generation-name"> + <rng:choice> + <rng:value>SHA1</rng:value> + <rng:ref name="anyURI"/> + </rng:choice> + </rng:attribute> + <rng:optional> + <rng:attribute name="manifest:key-size"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="string"> + <rng:data type="string"/> + </rng:define> +</rng:grammar> diff --git a/schema/odf1.3/OpenDocument-schema-v1.3.rng b/schema/odf1.3/OpenDocument-schema-v1.3.rng new file mode 100644 index 000000000000..76e6184886c7 --- /dev/null +++ b/schema/odf1.3/OpenDocument-schema-v1.3.rng @@ -0,0 +1,18079 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Open Document Format for Office Applications (OpenDocument) Version 1.3 + OASIS Standard, In progress + Relax-NG Schema + Source: https://tools.oasis-open.org/version-control/svn/office/ + Copyright (c) OASIS Open 2002-2015. All Rights Reserved. + + All capitalized terms in the following text have the meanings assigned to them + in the OASIS Intellectual Property Rights Policy (the "OASIS IPR Policy"). The + full Policy may be found at the OASIS website. + + This document and translations of it may be copied and furnished to others, and + derivative works that comment on or otherwise explain it or assist in its + implementation may be prepared, copied, published, and distributed, in whole or + in part, without restriction of any kind, provided that the above copyright + notice and this section are included on all such copies and derivative works. + However, this document itself may not be modified in any way, including by + removing the copyright notice or references to OASIS, except as needed for the + purpose of developing any document or deliverable produced by an OASIS + Technical Committee (in which case the rules applicable to copyrights, as set + forth in the OASIS IPR Policy, must be followed) or as required to translate it + into languages other than English. + + The limited permissions granted above are perpetual and will not be revoked by + OASIS or its successors or assigns. + + This document and the information contained herein is provided on an "AS IS" + basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT + LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT + INFRINGE ANY OWNERSHIP RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR + FITNESS FOR A PARTICULAR PURPOSE. +--> +<rng:grammar xmlns:anim="urn:oasis:names:tc:opendocument:xmlns:animation:1.0" xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0" xmlns:config="urn:oasis:names:tc:opendocument:xmlns:config:1.0" xmlns:db="urn:oasis:names:tc:opendocument:xmlns:database:1.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0" xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0" xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0" xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" xmlns:grddl="http://www.w3.org/2003/g/data-view#" xmlns:math="http://www.w3.org/1998/Math/MathML" xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0" xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:presentation="urn:oasis:names:tc:opendocument:xmlns:presentation:1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0" xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0" xmlns:smil="urn:oasis:names:tc:opendocument:xmlns:smil-compatible:1.0" xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0" xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0" xmlns:xforms="http://www.w3.org/2002/xforms" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:xlink="http://www.w3.org/1999/xlink" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"> + <rng:start> + <rng:choice> + <rng:ref name="office-document"/> + <rng:ref name="office-document-content"/> + <rng:ref name="office-document-styles"/> + <rng:ref name="office-document-meta"/> + <rng:ref name="office-document-settings"/> + </rng:choice> + </rng:start> + <rng:define name="CURIE"> + <rng:data type="string"> + <rng:param name="pattern">(([\i-[:]][\c-[:]]*)?:)?.+</rng:param> + <rng:param name="minLength">1</rng:param> + </rng:data> + </rng:define> + <rng:define name="CURIEs"> + <rng:list> + <rng:oneOrMore> + <rng:ref name="CURIE"/> + </rng:oneOrMore> + </rng:list> + </rng:define> + <rng:define name="ID"> + <rng:data type="ID"/> + </rng:define> + <rng:define name="IDREF"> + <rng:data type="IDREF"/> + </rng:define> + <rng:define name="IDREFS"> + <rng:data type="IDREFS"/> + </rng:define> + <rng:define name="NCName"> + <rng:data type="NCName"/> + </rng:define> + <rng:define name="SafeCURIE"> + <rng:data type="string"> + <rng:param name="pattern">\[(([\i-[:]][\c-[:]]*)?:)?.+\]</rng:param> + <rng:param name="minLength">3</rng:param> + </rng:data> + </rng:define> + <rng:define name="URIorSafeCURIE"> + <rng:choice> + <rng:ref name="anyURI"/> + <rng:ref name="SafeCURIE"/> + </rng:choice> + </rng:define> + <rng:define name="angle"> + <rng:data type="string"/> + </rng:define> + <rng:define name="anim-animate-color-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="anim:color-interpolation"> + <rng:choice> + <rng:value>rgb</rng:value> + <rng:value>hsl</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="anim:color-interpolation-direction"> + <rng:choice> + <rng:value>clockwise</rng:value> + <rng:value>counter-clockwise</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="anim-animate-motion-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="svg:path"> + <rng:ref name="pathData"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:origin"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="smil:calcMode"> + <rng:choice> + <rng:value>discrete</rng:value> + <rng:value>linear</rng:value> + <rng:value>paced</rng:value> + <rng:value>spline</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="anim-animate-transform-attlist"> + <rng:attribute name="svg:type"> + <rng:choice> + <rng:value>translate</rng:value> + <rng:value>scale</rng:value> + <rng:value>rotate</rng:value> + <rng:value>skewX</rng:value> + <rng:value>skewY</rng:value> + </rng:choice> + </rng:attribute> + </rng:define> + <rng:define name="anim-audio-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="xlink:href"> + <rng:ref name="anyIRI"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="anim:audio-level"> + <rng:ref name="double"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="anim-command-attlist"> + <rng:attribute name="anim:command"> + <rng:ref name="string"/> + </rng:attribute> + </rng:define> + <rng:define name="anim-iterate-attlist"> + <rng:interleave> + <rng:ref name="common-anim-target-attlist"/> + <rng:optional> + <rng:attribute name="anim:iterate-type"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="anim:iterate-interval"> + <rng:ref name="duration"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="anim-transition-filter-attlist"> + <rng:interleave> + <rng:attribute name="smil:type"> + <rng:ref name="string"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="smil:subtype"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="smil:direction"> + <rng:choice> + <rng:value>forward</rng:value> + <rng:value>reverse</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="smil:fadeColor"> + <rng:ref name="color"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="smil:mode"> + <rng:choice> + <rng:value>in</rng:value> + <rng:value>out</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="animation-element"> + <rng:choice> + <rng:element name="anim:animate"> + <rng:ref name="common-anim-target-attlist"/> + <rng:ref name="common-anim-named-target-attlist"/> + <rng:ref name="common-anim-values-attlist"/> + <rng:ref name="common-anim-spline-mode-attlist"/> + <rng:ref name="common-spline-anim-value-attlist"/> + <rng:ref name="common-timing-attlist"/> + <rng:ref name="common-anim-add-accum-attlist"/> + </rng:element> + <rng:element name="anim:set"> + <rng:ref name="common-anim-target-attlist"/> + <rng:ref name="common-anim-named-target-attlist"/> + <rng:ref name="common-anim-set-values-attlist"/> + <rng:ref name="common-timing-attlist"/> + <rng:ref name="common-anim-add-accum-attlist"/> + </rng:element> + <rng:element name="anim:animateMotion"> + <rng:ref name="anim-animate-motion-attlist"/> + <rng:ref name="common-anim-target-attlist"/> + <rng:ref name="common-anim-named-target-attlist"/> + <rng:ref name="common-anim-add-accum-attlist"/> + <rng:ref name="common-anim-values-attlist"/> + <rng:ref name="common-timing-attlist"/> + <rng:ref name="common-spline-anim-value-attlist"/> + </rng:element> + <rng:element name="anim:animateColor"> + <rng:ref name="common-anim-target-attlist"/> + <rng:ref name="common-anim-named-target-attlist"/> + <rng:ref name="common-anim-add-accum-attlist"/> + <rng:ref name="common-anim-values-attlist"/> + <rng:ref name="common-anim-spline-mode-attlist"/> + <rng:ref name="common-spline-anim-value-attlist"/> + <rng:ref name="anim-animate-color-attlist"/> + <rng:ref name="common-timing-attlist"/> + </rng:element> + <rng:element name="anim:animateTransform"> + <rng:ref name="common-anim-target-attlist"/> + <rng:ref name="common-anim-named-target-attlist"/> + <rng:ref name="common-anim-add-accum-attlist"/> + <rng:ref name="common-anim-values-attlist"/> + <rng:ref name="anim-animate-transform-attlist"/> + <rng:ref name="common-timing-attlist"/> + </rng:element> + <rng:element name="anim:transitionFilter"> + <rng:ref name="common-anim-target-attlist"/> + <rng:ref name="common-anim-add-accum-attlist"/> + <rng:ref name="common-anim-values-attlist"/> + <rng:ref name="common-anim-spline-mode-attlist"/> + <rng:ref name="anim-transition-filter-attlist"/> + <rng:ref name="common-timing-attlist"/> + </rng:element> + <rng:element name="anim:par"> + <rng:ref name="common-anim-attlist"/> + <rng:ref name="common-timing-attlist"/> + <rng:ref name="common-endsync-timing-attlist"/> + <rng:zeroOrMore> + <rng:ref name="animation-element"/> + </rng:zeroOrMore> + </rng:element> + <rng:element name="anim:seq"> + <rng:ref name="common-anim-attlist"/> + <rng:ref name="common-endsync-timing-attlist"/> + <rng:ref name="common-timing-attlist"/> + <rng:zeroOrMore> + <rng:ref name="animation-element"/> + </rng:zeroOrMore> + </rng:element> + <rng:element name="anim:iterate"> + <rng:ref name="common-anim-attlist"/> + <rng:ref name="anim-iterate-attlist"/> + <rng:ref name="common-timing-attlist"/> + <rng:ref name="common-endsync-timing-attlist"/> + <rng:zeroOrMore> + <rng:ref name="animation-element"/> + </rng:zeroOrMore> + </rng:element> + <rng:element name="anim:audio"> + <rng:ref name="common-anim-attlist"/> + <rng:ref name="anim-audio-attlist"/> + <rng:ref name="common-basic-timing-attlist"/> + </rng:element> + <rng:element name="anim:command"> + <rng:ref name="common-anim-attlist"/> + <rng:ref name="anim-command-attlist"/> + <rng:ref name="common-begin-end-timing-attlist"/> + <rng:ref name="common-anim-target-attlist"/> + <rng:zeroOrMore> + <rng:element name="anim:param"> + <rng:attribute name="anim:name"> + <rng:ref name="string"/> + </rng:attribute> + <rng:attribute name="anim:value"> + <rng:ref name="string"/> + </rng:attribute> + </rng:element> + </rng:zeroOrMore> + </rng:element> + </rng:choice> + </rng:define> + <rng:define name="any-date"> + <rng:choice> + <rng:ref name="number-day"/> + <rng:ref name="number-month"/> + <rng:ref name="number-year"/> + <rng:ref name="number-era"/> + <rng:ref name="number-day-of-week"/> + <rng:ref name="number-week-of-year"/> + <rng:ref name="number-quarter"/> + <rng:ref name="number-hours"/> + <rng:ref name="number-am-pm"/> + <rng:ref name="number-minutes"/> + <rng:ref name="number-seconds"/> + </rng:choice> + </rng:define> + <rng:define name="any-number"> + <rng:choice> + <rng:ref name="number-number"/> + <rng:ref name="number-scientific-number"/> + <rng:ref name="number-fraction"/> + </rng:choice> + </rng:define> + <rng:define name="any-time"> + <rng:choice> + <rng:ref name="number-hours"/> + <rng:ref name="number-am-pm"/> + <rng:ref name="number-minutes"/> + <rng:ref name="number-seconds"/> + </rng:choice> + </rng:define> + <rng:define name="anyAttListOrElements"> + <rng:zeroOrMore> + <rng:attribute> + <rng:anyName/> + <rng:text/> + </rng:attribute> + </rng:zeroOrMore> + <rng:ref name="anyElements"/> + </rng:define> + <rng:define name="anyElements"> + <rng:zeroOrMore> + <rng:element> + <rng:anyName/> + <rng:mixed> + <rng:ref name="anyAttListOrElements"/> + </rng:mixed> + </rng:element> + </rng:zeroOrMore> + </rng:define> + <rng:define name="anyIRI"> + <rng:data type="anyURI"/> + <dc:description>An IRI-reference as defined in [RFC3987]. See ODF 1.3 Part 3 section 18.3.</dc:description> + </rng:define> + <rng:define name="anyURI"> + <rng:data type="anyURI"/> + </rng:define> + <rng:define name="base64Binary"> + <rng:data type="base64Binary"/> + </rng:define> + <rng:define name="boolean"> + <rng:choice> + <rng:value>true</rng:value> + <rng:value>false</rng:value> + </rng:choice> + </rng:define> + <rng:define name="borderWidths"> + <rng:list> + <rng:ref name="positiveLength"/> + <rng:ref name="positiveLength"/> + <rng:ref name="positiveLength"/> + </rng:list> + </rng:define> + <rng:define name="bound-column"> + <rng:optional> + <rng:attribute name="form:bound-column"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="button-type"> + <rng:optional> + <rng:attribute name="form:button-type"> + <rng:ref name="types"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="cellAddress"> + <rng:data type="string"> + <rng:param name="pattern">($?([^\. ']+|'([^']|'')+'))?\.$?[A-Z]+$?[0-9]+</rng:param> + </rng:data> + </rng:define> + <rng:define name="cellRangeAddress"> + <rng:choice> + <rng:data type="string"> + <rng:param name="pattern">($?([^\. ']+|'([^']|'')+'))?\.$?[A-Z]+$?[0-9]+(:($?([^\. ']+|'([^']|'')+'))?\.$?[A-Z]+$?[0-9]+)?</rng:param> + </rng:data> + <rng:data type="string"> + <rng:param name="pattern">($?([^\. ']+|'([^']|'')+'))?\.$?[0-9]+:($?([^\. ']+|'([^']|'')+'))?\.$?[0-9]+</rng:param> + </rng:data> + <rng:data type="string"> + <rng:param name="pattern">($?([^\. ']+|'([^']|'')+'))?\.$?[A-Z]+:($?([^\. ']+|'([^']|'')+'))?\.$?[A-Z]+</rng:param> + </rng:data> + </rng:choice> + </rng:define> + <rng:define name="cellRangeAddressList"> + <rng:data type="string"/> + <dc:description>Value is a space separated list of "cellRangeAddress" patterns</dc:description> + </rng:define> + <rng:define name="change-mark-attr"> + <rng:attribute name="text:change-id"> + <rng:ref name="IDREF"/> + </rng:attribute> + </rng:define> + <rng:define name="change-marks"> + <rng:choice> + <rng:element name="text:change"> + <rng:ref name="change-mark-attr"/> + </rng:element> + <rng:element name="text:change-start"> + <rng:ref name="change-mark-attr"/> + </rng:element> + <rng:element name="text:change-end"> + <rng:ref name="change-mark-attr"/> + </rng:element> + </rng:choice> + </rng:define> + <rng:define name="character"> + <rng:data type="string"> + <rng:param name="length">1</rng:param> + </rng:data> + </rng:define> + <rng:define name="chart-axis"> + <rng:element name="chart:axis"> + <rng:ref name="chart-axis-attlist"/> + <rng:optional> + <rng:ref name="chart-title"/> + </rng:optional> + <rng:optional> + <rng:ref name="chart-categories"/> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="chart-grid"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="chart-axis-attlist"> + <rng:interleave> + <rng:attribute name="chart:dimension"> + <rng:ref name="chart-dimension"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="chart:name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="chart-categories"> + <rng:element name="chart:categories"> + <rng:optional> + <rng:attribute name="table:cell-range-address"> + <rng:ref name="cellRangeAddressList"/> + </rng:attribute> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="chart-chart"> + <rng:element name="chart:chart"> + <rng:ref name="chart-chart-attlist"/> + <rng:optional> + <rng:ref name="chart-title"/> + </rng:optional> + <rng:optional> + <rng:ref name="chart-subtitle"/> + </rng:optional> + <rng:optional> + <rng:ref name="chart-footer"/> + </rng:optional> + <rng:optional> + <rng:ref name="chart-legend"/> + </rng:optional> + <rng:ref name="chart-plot-area"/> + <rng:optional> + <rng:ref name="table-table"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="chart-chart-attlist"> + <rng:interleave> + <rng:attribute name="chart:class"> + <rng:ref name="namespacedToken"/> + </rng:attribute> + <rng:ref name="common-draw-size-attlist"/> + <rng:optional> + <rng:attribute name="chart:column-mapping"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:row-mapping"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:group> + <rng:attribute name="xlink:type"> + <rng:value>simple</rng:value> + </rng:attribute> + <rng:attribute name="xlink:href"> + <rng:ref name="anyIRI"/> + </rng:attribute> + </rng:group> + </rng:optional> + <rng:optional> + <rng:ref name="xml-id"/> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="chart-data-label"> + <rng:element name="chart:data-label"> + <rng:ref name="chart-data-label-attlist"/> + <rng:optional> + <rng:ref name="text-p"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="chart-data-label-attlist"> + <rng:interleave> + <rng:ref name="common-draw-position-attlist"/> + <rng:optional> + <rng:attribute name="chart:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="chart-data-point"> + <rng:element name="chart:data-point"> + <rng:ref name="chart-data-point-attlist"/> + <rng:optional> + <rng:ref name="chart-data-label"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="chart-data-point-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="chart:repeated"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:ref name="xml-id"/> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="chart-dimension"> + <rng:choice> + <rng:value>x</rng:value> + <rng:value>y</rng:value> + <rng:value>z</rng:value> + </rng:choice> + </rng:define> + <rng:define name="chart-domain"> + <rng:element name="chart:domain"> + <rng:optional> + <rng:attribute name="table:cell-range-address"> + <rng:ref name="cellRangeAddressList"/> + </rng:attribute> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="chart-equation"> + <rng:element name="chart:equation"> + <rng:ref name="chart-equation-attlist"/> + <rng:optional> + <rng:ref name="text-p"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="chart-equation-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="chart:automatic-content"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:display-r-square"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:display-equation"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:ref name="common-draw-position-attlist"/> + <rng:optional> + <rng:attribute name="chart:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="chart-error-indicator"> + <rng:element name="chart:error-indicator"> + <rng:ref name="chart-error-indicator-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="chart-error-indicator-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="chart:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:attribute name="chart:dimension"> + <rng:ref name="chart-dimension"/> + </rng:attribute> + </rng:interleave> + </rng:define> + <rng:define name="chart-floor"> + <rng:element name="chart:floor"> + <rng:ref name="chart-floor-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="chart-floor-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="svg:width"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="chart-footer"> + <rng:element name="chart:footer"> + <rng:ref name="chart-title-attlist"/> + <rng:optional> + <rng:ref name="text-p"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="chart-grid"> + <rng:element name="chart:grid"> + <rng:ref name="chart-grid-attlist"/> + </rng:element> + </rng:define> + <rng:define name="chart-grid-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="chart:class"> + <rng:choice> + <rng:value>major</rng:value> + <rng:value>minor</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="chart-legend"> + <rng:element name="chart:legend"> + <rng:ref name="chart-legend-attlist"/> + <rng:optional> + <rng:ref name="text-p"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="chart-legend-attlist"> + <rng:interleave> + <rng:choice> + <rng:group> + <rng:attribute name="chart:legend-position"> + <rng:choice> + <rng:value>start</rng:value> + <rng:value>end</rng:value> + <rng:value>top</rng:value> + <rng:value>bottom</rng:value> + </rng:choice> + </rng:attribute> + <rng:optional> + <rng:attribute name="chart:legend-align"> + <rng:choice> + <rng:value>start</rng:value> + <rng:value>center</rng:value> + <rng:value>end</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:group> + <rng:attribute name="chart:legend-position"> + <rng:choice> + <rng:value>top-start</rng:value> + <rng:value>bottom-start</rng:value> + <rng:value>top-end</rng:value> + <rng:value>bottom-end</rng:value> + </rng:choice> + </rng:attribute> + <rng:empty/> + </rng:choice> + <rng:ref name="common-draw-position-attlist"/> + <rng:choice> + <rng:attribute name="style:legend-expansion"> + <rng:choice> + <rng:value>wide</rng:value> + <rng:value>high</rng:value> + <rng:value>balanced</rng:value> + </rng:choice> + </rng:attribute> + <rng:group> + <rng:attribute name="style:legend-expansion"> + <rng:value>custom</rng:value> + </rng:attribute> + <rng:attribute name="style:legend-expansion-aspect-ratio"> + <rng:ref name="double"/> + <ref name="common-draw-size-attlist"/> + </rng:attribute> + </rng:group> + <rng:empty/> + </rng:choice> + <rng:optional> + <rng:attribute name="chart:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="chart-mean-value"> + <rng:element name="chart:mean-value"> + <rng:ref name="chart-mean-value-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="chart-mean-value-attlist"> + <rng:optional> + <rng:attribute name="chart:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="chart-plot-area"> + <rng:element name="chart:plot-area"> + <rng:ref name="chart-plot-area-attlist"/> + <rng:zeroOrMore> + <rng:ref name="dr3d-light"/> + </rng:zeroOrMore> + <rng:zeroOrMore> + <rng:ref name="chart-axis"/> + </rng:zeroOrMore> + <rng:zeroOrMore> + <rng:ref name="chart-series"/> + </rng:zeroOrMore> + <rng:optional> + <rng:ref name="chart-stock-gain-marker"/> + </rng:optional> + <rng:optional> + <rng:ref name="chart-stock-loss-marker"/> + </rng:optional> + <rng:optional> + <rng:ref name="chart-stock-range-line"/> + </rng:optional> + <rng:optional> + <rng:ref name="chart-wall"/> + </rng:optional> + <rng:optional> + <rng:ref name="chart-floor"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="chart-plot-area-attlist"> + <rng:interleave> + <rng:ref name="common-draw-position-attlist"/> + <rng:ref name="common-draw-size-attlist"/> + <rng:optional> + <rng:attribute name="chart:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:cell-range-address"> + <rng:ref name="cellRangeAddressList"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:data-source-has-labels"> + <rng:choice> + <rng:value>none</rng:value> + <rng:value>row</rng:value> + <rng:value>column</rng:value> + <rng:value>both</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:ref name="dr3d-scene-attlist"/> + <rng:ref name="common-dr3d-transform-attlist"/> + <rng:optional> + <rng:ref name="xml-id"/> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="chart-regression-curve"> + <rng:element name="chart:regression-curve"> + <rng:ref name="chart-regression-curve-attlist"/> + <rng:optional> + <rng:ref name="chart-equation"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="chart-regression-curve-attlist"> + <rng:optional> + <rng:attribute name="chart:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="chart-series"> + <rng:element name="chart:series"> + <rng:ref name="chart-series-attlist"/> + <rng:zeroOrMore> + <rng:ref name="chart-domain"/> + </rng:zeroOrMore> + <rng:optional> + <rng:ref name="chart-mean-value"/> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="chart-regression-curve"/> + </rng:zeroOrMore> + <rng:zeroOrMore> + <rng:ref name="chart-error-indicator"/> + </rng:zeroOrMore> + <rng:zeroOrMore> + <rng:ref name="chart-data-point"/> + </rng:zeroOrMore> + <rng:optional> + <rng:ref name="chart-data-label"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="chart-series-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="chart:values-cell-range-address"> + <rng:ref name="cellRangeAddressList"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:label-cell-address"> + <rng:ref name="cellRangeAddressList"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:class"> + <rng:ref name="namespacedToken"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:attached-axis"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:ref name="xml-id"/> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="chart-stock-gain-marker"> + <rng:element name="chart:stock-gain-marker"> + <rng:ref name="common-stock-marker-attlist"/> + </rng:element> + </rng:define> + <rng:define name="chart-stock-loss-marker"> + <rng:element name="chart:stock-loss-marker"> + <rng:ref name="common-stock-marker-attlist"/> + </rng:element> + </rng:define> + <rng:define name="chart-stock-range-line"> + <rng:element name="chart:stock-range-line"> + <rng:ref name="common-stock-marker-attlist"/> + </rng:element> + </rng:define> + <rng:define name="chart-subtitle"> + <rng:element name="chart:subtitle"> + <rng:ref name="chart-title-attlist"/> + <rng:optional> + <rng:ref name="text-p"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="chart-title"> + <rng:element name="chart:title"> + <rng:ref name="chart-title-attlist"/> + <rng:optional> + <rng:ref name="text-p"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="chart-title-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="table:cell-range"> + <rng:ref name="cellRangeAddressList"/> + </rng:attribute> + </rng:optional> + <rng:ref name="common-draw-position-attlist"/> + <rng:optional> + <rng:attribute name="chart:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="chart-wall"> + <rng:element name="chart:wall"> + <rng:ref name="chart-wall-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="chart-wall-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="svg:width"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="clipShape"> + <rng:data type="string"> + <rng:param name="pattern">rect\([ ]*((-?([0-9]+(\.[0-9]*)?|\.[0-9]+)((cm)|(mm)|(in)|(pt)|(pc)))|(auto))([ ]*,[ ]*((-?([0-9]+(\.[0-9]*)?|\.[0-9]+)((cm)|(mm)|(in)|(pt)|(pc))))|(auto)){3}[ ]*\)</rng:param> + </rng:data> + </rng:define> + <rng:define name="color"> + <rng:data type="string"> + <rng:param name="pattern">#[0-9a-fA-F]{6}</rng:param> + </rng:data> + </rng:define> + <rng:define name="column-controls"> + <rng:choice> + <rng:element name="form:text"> + <rng:ref name="form-text-attlist"/> + <rng:ref name="common-form-control-content"/> + </rng:element> + <rng:element name="form:textarea"> + <rng:ref name="form-textarea-attlist"/> + <rng:ref name="common-form-control-content"/> + <rng:zeroOrMore> + <rng:ref name="text-p"/> + </rng:zeroOrMore> + </rng:element> + <rng:element name="form:formatted-text"> + <rng:ref name="form-formatted-text-attlist"/> + <rng:ref name="common-form-control-content"/> + </rng:element> + <rng:element name="form:number"> + <rng:ref name="form-number-attlist"/> + <rng:ref name="common-numeric-control-attlist"/> + <rng:ref name="common-form-control-content"/> + <rng:ref name="common-linked-cell"/> + <rng:ref name="common-spin-button"/> + <rng:ref name="common-repeat"/> + <rng:ref name="common-delay-for-repeat"/> + </rng:element> + <rng:element name="form:date"> + <rng:ref name="form-date-attlist"/> + <rng:ref name="common-numeric-control-attlist"/> + <rng:ref name="common-form-control-content"/> + <rng:ref name="common-linked-cell"/> + <rng:ref name="common-spin-button"/> + <rng:ref name="common-repeat"/> + <rng:ref name="common-delay-for-repeat"/> + </rng:element> + <rng:element name="form:time"> + <rng:ref name="form-time-attlist"/> + <rng:ref name="common-numeric-control-attlist"/> + <rng:ref name="common-form-control-content"/> + <rng:ref name="common-linked-cell"/> + <rng:ref name="common-spin-button"/> + <rng:ref name="common-repeat"/> + <rng:ref name="common-delay-for-repeat"/> + </rng:element> + <rng:element name="form:combobox"> + <rng:ref name="form-combobox-attlist"/> + <rng:ref name="common-form-control-content"/> + <rng:zeroOrMore> + <rng:ref name="form-item"/> + </rng:zeroOrMore> + </rng:element> + <rng:element name="form:listbox"> + <rng:ref name="form-listbox-attlist"/> + <rng:ref name="common-form-control-content"/> + <rng:zeroOrMore> + <rng:ref name="form-option"/> + </rng:zeroOrMore> + </rng:element> + <rng:element name="form:checkbox"> + <rng:ref name="form-checkbox-attlist"/> + <rng:ref name="common-form-control-content"/> + </rng:element> + </rng:choice> + </rng:define> + <rng:define name="common-anim-add-accum-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="smil:accumulate"> + <rng:choice> + <rng:value>none</rng:value> + <rng:value>sum</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="smil:additive"> + <rng:choice> + <rng:value>replace</rng:value> + <rng:value>sum</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="common-anim-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="presentation:node-type"> + <rng:choice> + <rng:value>default</rng:value> + <rng:value>on-click</rng:value> + <rng:value>with-previous</rng:value> + <rng:value>after-previous</rng:value> + <rng:value>timing-root</rng:value> + <rng:value>main-sequence</rng:value> + <rng:value>interactive-sequence</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:preset-id"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:preset-sub-type"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:preset-class"> + <rng:choice> + <rng:value>custom</rng:value> + <rng:value>entrance</rng:value> + <rng:value>exit</rng:value> + <rng:value>emphasis</rng:value> + <rng:value>motion-path</rng:value> + <rng:value>ole-action</rng:value> + <rng:value>media-call</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:master-element"> + <rng:ref name="IDREF"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:group-id"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:group> + <rng:ref name="xml-id"/> + <rng:optional> + <rng:attribute name="anim:id"> + <rng:ref name="NCName"/> + </rng:attribute> + </rng:optional> + </rng:group> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="common-anim-named-target-attlist"> + <rng:attribute name="smil:attributeName"> + <rng:ref name="string"/> + </rng:attribute> + </rng:define> + <rng:define name="common-anim-set-values-attlist"> + <rng:optional> + <rng:attribute name="smil:to"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-anim-spline-mode-attlist"> + <rng:optional> + <rng:attribute name="smil:calcMode"> + <rng:choice> + <rng:value>discrete</rng:value> + <rng:value>linear</rng:value> + <rng:value>paced</rng:value> + <rng:value>spline</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-anim-target-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="smil:targetElement"> + <rng:ref name="IDREF"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="anim:sub-item"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="common-anim-values-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="smil:values"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="anim:formula"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:ref name="common-anim-set-values-attlist"/> + <rng:optional> + <rng:attribute name="smil:from"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="smil:by"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="common-auto-reorder-attlist"> + <rng:optional> + <rng:attribute name="number:automatic-order"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-background-color-attlist"> + <rng:optional> + <rng:attribute name="fo:background-color"> + <rng:choice> + <rng:value>transparent</rng:value> + <rng:ref name="color"/> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-background-transparency-attlist"> + <rng:optional> + <rng:attribute name="style:background-transparency"> + <rng:ref name="zeroToHundredPercent"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-basic-timing-attlist"> + <rng:ref name="common-begin-end-timing-attlist"/> + <rng:ref name="common-dur-timing-attlist"/> + <rng:ref name="common-repeat-timing-attlist"/> + <rng:ref name="common-restart-timing-attlist"/> + <rng:ref name="common-restart-default-attlist"/> + <rng:ref name="common-fill-timing-attlist"/> + <rng:ref name="common-fill-default-attlist"/> + </rng:define> + <rng:define name="common-begin-end-timing-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="smil:begin"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="smil:end"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="common-border-attlist"> + <rng:optional> + <rng:attribute name="fo:border"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:border-top"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:border-bottom"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:border-left"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:border-right"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-border-line-width-attlist"> + <rng:optional> + <rng:attribute name="style:border-line-width"> + <rng:ref name="borderWidths"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:border-line-width-top"> + <rng:ref name="borderWidths"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:border-line-width-bottom"> + <rng:ref name="borderWidths"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:border-line-width-left"> + <rng:ref name="borderWidths"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:border-line-width-right"> + <rng:ref name="borderWidths"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-break-attlist"> + <rng:optional> + <rng:attribute name="fo:break-before"> + <rng:choice> + <rng:value>auto</rng:value> + <rng:value>column</rng:value> + <rng:value>page</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:break-after"> + <rng:choice> + <rng:value>auto</rng:value> + <rng:value>column</rng:value> + <rng:value>page</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-calendar-attlist"> + <rng:optional> + <rng:attribute name="number:calendar"> + <rng:choice> + <rng:value>gregorian</rng:value> + <rng:value>gengou</rng:value> + <rng:value>ROC</rng:value> + <rng:value>hanja_yoil</rng:value> + <rng:value>hanja</rng:value> + <rng:value>hijri</rng:value> + <rng:value>jewish</rng:value> + <rng:value>buddhist</rng:value> + <rng:ref name="string"/> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-contour-attlist"> + <rng:attribute name="draw:recreate-on-edit"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:define> + <rng:define name="common-control-id-attlist"> + <rng:group> + <rng:ref name="xml-id"/> + <rng:optional> + <rng:attribute name="form:id"> + <rng:ref name="NCName"/> + </rng:attribute> + </rng:optional> + </rng:group> + </rng:define> + <rng:define name="common-convert-empty-attlist"> + <rng:optional> + <rng:attribute name="form:convert-empty-to-null"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-current-value-attlist"> + <rng:optional> + <rng:attribute name="form:current-value"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-data-field-attlist"> + <rng:optional> + <rng:attribute name="form:data-field"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-data-style-attlist"> + <rng:interleave> + <rng:attribute name="style:name"> + <rng:ref name="styleName"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="style:display-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="number:language"> + <rng:ref name="languageCode"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="number:country"> + <rng:ref name="countryCode"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="number:script"> + <rng:ref name="scriptCode"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="number:rfc-language-tag"> + <rng:ref name="language"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="number:title"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:volatile"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="number:transliteration-format"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="number:transliteration-language"> + <rng:ref name="countryCode"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="number:transliteration-country"> + <rng:ref name="countryCode"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="number:transliteration-style"> + <rng:choice> + <rng:value>short</rng:value> + <rng:value>medium</rng:value> + <rng:value>long</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="common-db-default-value"> + <rng:optional> + <rng:ref name="common-value-and-type-attlist"/> + </rng:optional> + </rng:define> + <rng:define name="common-db-object-description"> + <rng:optional> + <rng:attribute name="db:description"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-db-object-name"> + <rng:attribute name="db:name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:define> + <rng:define name="common-db-object-title"> + <rng:optional> + <rng:attribute name="db:title"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-db-table-name-attlist"> + <rng:interleave> + <rng:attribute name="db:name"> + <rng:ref name="string"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="db:catalog-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="db:schema-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="common-db-table-style-name"> + <rng:interleave> + <rng:optional> + <rng:attribute name="db:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="db:default-row-style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="common-dde-connection-decl-attlist"> + <rng:interleave> + <rng:attribute name="office:dde-application"> + <rng:ref name="string"/> + </rng:attribute> + <rng:attribute name="office:dde-topic"> + <rng:ref name="string"/> + </rng:attribute> + <rng:attribute name="office:dde-item"> + <rng:ref name="string"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="office:automatic-update"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="common-decimal-places-attlist"> + <rng:optional> + <rng:attribute name="number:decimal-places"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-delay-for-repeat"> + <rng:optional> + <rng:attribute name="form:delay-for-repeat"> + <rng:ref name="duration"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-disabled-attlist"> + <rng:optional> + <rng:attribute name="form:disabled"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-dr3d-transform-attlist"> + <rng:optional> + <rng:attribute name="dr3d:transform"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-draw-area-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="xlink:type"> + <rng:value>simple</rng:value> + </rng:attribute> + <rng:attribute name="xlink:href"> + <rng:ref name="anyIRI"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="office:target-frame-name"> + <rng:ref name="targetFrameName"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="xlink:show"> + <rng:choice> + <rng:value>new</rng:value> + <rng:value>replace</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:optional> + <rng:optional> + <rng:attribute name="office:name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:nohref"> + <rng:value>nohref</rng:value> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="common-draw-caption-id-attlist"> + <rng:optional> + <rng:attribute name="draw:caption-id"> + <rng:ref name="IDREF"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-draw-circle-ellipse-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="draw:kind"> + <rng:choice> + <rng:value>full</rng:value> + <rng:value>section</rng:value> + <rng:value>cut</rng:value> + <rng:value>arc</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:start-angle"> + <rng:ref name="angle"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:end-angle"> + <rng:ref name="angle"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="common-draw-circle-ellipse-pos-attlist"> + <rng:attribute name="svg:cx"> + <rng:ref name="coordinate"/> + </rng:attribute> + <rng:attribute name="svg:cy"> + <rng:ref name="coordinate"/> + </rng:attribute> + </rng:define> + <rng:define name="common-draw-data-attlist"> + <rng:group> + <rng:attribute name="xlink:type"> + <rng:value>simple</rng:value> + </rng:attribute> + <rng:attribute name="xlink:href"> + <rng:ref name="anyIRI"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="xlink:show"> + <rng:value>embed</rng:value> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="xlink:actuate"> + <rng:value>onLoad</rng:value> + </rng:attribute> + </rng:optional> + </rng:group> + </rng:define> + <rng:define name="common-draw-gradient-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="draw:name"> + <rng:ref name="styleName"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:display-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:attribute name="draw:style"> + <rng:ref name="gradient-style"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="draw:cx"> + <rng:ref name="percent"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:cy"> + <rng:ref name="percent"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:angle"> + <rng:ref name="angle"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:border"> + <rng:ref name="percent"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="common-draw-id-attlist"> + <rng:optional> + <rng:group> + <rng:ref name="xml-id"/> + <rng:optional> + <rng:attribute name="draw:id"> + <rng:ref name="NCName"/> + </rng:attribute> + </rng:optional> + </rng:group> + </rng:optional> + </rng:define> + <rng:define name="common-draw-layer-name-attlist"> + <rng:optional> + <rng:attribute name="draw:layer"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-draw-name-attlist"> + <rng:optional> + <rng:attribute name="draw:name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-draw-path-data-attlist"> + <rng:attribute name="svg:d"> + <rng:ref name="pathData"/> + </rng:attribute> + </rng:define> + <rng:define name="common-draw-points-attlist"> + <rng:attribute name="draw:points"> + <rng:ref name="points"/> + </rng:attribute> + </rng:define> + <rng:define name="common-draw-position-attlist"> + <rng:optional> + <rng:attribute name="svg:x"> + <rng:ref name="coordinate"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:y"> + <rng:ref name="coordinate"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-draw-rel-size-attlist"> + <rng:ref name="common-draw-size-attlist"/> + <rng:optional> + <rng:attribute name="style:rel-width"> + <rng:choice> + <rng:ref name="percent"/> + <rng:value>scale</rng:value> + <rng:value>scale-min</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:rel-height"> + <rng:choice> + <rng:ref name="percent"/> + <rng:value>scale</rng:value> + <rng:value>scale-min</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-draw-shape-with-styles-attlist"> + <rng:ref name="common-draw-z-index-attlist"/> + <rng:ref name="common-draw-id-attlist"/> + <rng:ref name="common-draw-layer-name-attlist"/> + <rng:ref name="common-draw-style-name-attlist"/> + <rng:ref name="common-draw-transform-attlist"/> + <rng:ref name="common-draw-name-attlist"/> + <rng:ref name="common-text-spreadsheet-shape-attlist"/> + </rng:define> + <rng:define name="common-draw-shape-with-text-and-styles-attlist"> + <rng:ref name="common-draw-shape-with-styles-attlist"/> + <rng:ref name="common-draw-text-style-name-attlist"/> + </rng:define> + <rng:define name="common-draw-size-attlist"> + <rng:optional> + <rng:attribute name="svg:width"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:height"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-draw-style-name-attlist"> + <rng:choice> + <rng:group> + <rng:optional> + <rng:attribute name="draw:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:class-names"> + <rng:ref name="styleNameRefs"/> + </rng:attribute> + </rng:optional> + </rng:group> + <rng:group> + <rng:optional> + <rng:attribute name="presentation:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:class-names"> + <rng:ref name="styleNameRefs"/> + </rng:attribute> + </rng:optional> + </rng:group> + </rng:choice> + </rng:define> + <rng:define name="common-draw-text-style-name-attlist"> + <rng:optional> + <rng:attribute name="draw:text-style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-draw-transform-attlist"> + <rng:optional> + <rng:attribute name="draw:transform"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-draw-viewbox-attlist"> + <rng:attribute name="svg:viewBox"> + <rng:list> + <rng:ref name="integer"/> + <rng:ref name="integer"/> + <rng:ref name="integer"/> + <rng:ref name="integer"/> + </rng:list> + </rng:attribute> + </rng:define> + <rng:define name="common-draw-z-index-attlist"> + <rng:optional> + <rng:attribute name="draw:z-index"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-dur-timing-attlist"> + <rng:optional> + <rng:attribute name="smil:dur"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-editable-attlist"> + <rng:optional> + <rng:attribute name="style:editable"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-endsync-timing-attlist"> + <rng:optional> + <rng:attribute name="smil:endsync"> + <rng:choice> + <rng:value>first</rng:value> + <rng:value>last</rng:value> + <rng:value>all</rng:value> + <rng:value>media</rng:value> + <rng:ref name="IDREF"/> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-field-data-style-name-attlist"> + <rng:optional> + <rng:attribute name="style:data-style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-field-database-name"> + <rng:choice> + <rng:optional> + <rng:attribute name="text:database-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:ref name="form-connection-resource"/> + </rng:choice> + </rng:define> + <rng:define name="common-field-database-table"> + <rng:ref name="common-field-database-table-attlist"/> + <rng:ref name="common-field-database-name"/> + </rng:define> + <rng:define name="common-field-database-table-attlist"> + <rng:interleave> + <rng:attribute name="text:table-name"> + <rng:ref name="string"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="text:table-type"> + <rng:choice> + <rng:value>table</rng:value> + <rng:value>query</rng:value> + <rng:value>command</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="common-field-description-attlist"> + <rng:optional> + <rng:attribute name="text:description"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-field-display-value-formula-attlist"> + <rng:optional> + <rng:attribute name="text:display"> + <rng:choice> + <rng:value>value</rng:value> + <rng:value>formula</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-field-display-value-formula-none-attlist"> + <rng:optional> + <rng:attribute name="text:display"> + <rng:choice> + <rng:value>value</rng:value> + <rng:value>formula</rng:value> + <rng:value>none</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-field-display-value-none-attlist"> + <rng:optional> + <rng:attribute name="text:display"> + <rng:choice> + <rng:value>value</rng:value> + <rng:value>none</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-field-fixed-attlist"> + <rng:optional> + <rng:attribute name="text:fixed"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-field-formula-attlist"> + <rng:optional> + <rng:attribute name="text:formula"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-field-name-attlist"> + <rng:attribute name="text:name"> + <rng:ref name="variableName"/> + </rng:attribute> + </rng:define> + <rng:define name="common-field-num-format-attlist"> + <rng:optional> + <rng:ref name="common-num-format-attlist"/> + </rng:optional> + </rng:define> + <rng:define name="common-fill-default-attlist"> + <rng:optional> + <rng:attribute name="smil:fillDefault"> + <rng:choice> + <rng:value>remove</rng:value> + <rng:value>freeze</rng:value> + <rng:value>hold</rng:value> + <rng:value>transition</rng:value> + <rng:value>auto</rng:value> + <rng:value>inherit</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-fill-timing-attlist"> + <rng:optional> + <rng:attribute name="smil:fill"> + <rng:choice> + <rng:value>remove</rng:value> + <rng:value>freeze</rng:value> + <rng:value>hold</rng:value> + <rng:value>auto</rng:value> + <rng:value>default</rng:value> + <rng:value>transition</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-form-control-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="form:name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:control-implementation"> + <rng:ref name="namespacedToken"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="common-form-control-content"> + <rng:optional> + <rng:ref name="form-properties"/> + </rng:optional> + <rng:optional> + <rng:ref name="office-event-listeners"/> + </rng:optional> + </rng:define> + <rng:define name="common-form-relative-image-position-attlist"> + <rng:choice> + <rng:optional> + <rng:attribute name="form:image-position"> + <rng:value>center</rng:value> + </rng:attribute> + </rng:optional> + <rng:group> + <rng:attribute name="form:image-position"> + <rng:choice> + <rng:value>start</rng:value> + <rng:value>end</rng:value> + <rng:value>top</rng:value> + <rng:value>bottom</rng:value> + </rng:choice> + </rng:attribute> + <rng:optional> + <rng:attribute name="form:image-align"> + <rng:choice> + <rng:value>start</rng:value> + <rng:value>center</rng:value> + <rng:value>end</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:group> + </rng:choice> + </rng:define> + <rng:define name="common-form-visual-effect-attlist"> + <rng:optional> + <rng:attribute name="form:visual-effect"> + <rng:choice> + <rng:value>flat</rng:value> + <rng:value>3d</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-format-source-attlist"> + <rng:optional> + <rng:attribute name="number:format-source"> + <rng:choice> + <rng:value>fixed</rng:value> + <rng:value>language</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-horizontal-margin-attlist"> + <rng:optional> + <rng:attribute name="fo:margin-left"> + <rng:choice> + <rng:ref name="length"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:margin-right"> + <rng:choice> + <rng:ref name="length"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-in-content-meta-attlist"> + <rng:attribute name="xhtml:about"> + <rng:ref name="URIorSafeCURIE"/> + </rng:attribute> + <rng:attribute name="xhtml:property"> + <rng:ref name="CURIEs"/> + </rng:attribute> + <rng:ref name="common-meta-literal-attlist"/> + </rng:define> + <rng:define name="common-keep-with-next-attlist"> + <rng:optional> + <rng:attribute name="fo:keep-with-next"> + <rng:choice> + <rng:value>auto</rng:value> + <rng:value>always</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-linked-cell"> + <rng:optional> + <rng:attribute name="form:linked-cell"> + <rng:choice> + <rng:ref name="cellAddress"/> + <rng:ref name="string"/> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-margin-attlist"> + <rng:optional> + <rng:attribute name="fo:margin"> + <rng:choice> + <rng:ref name="nonNegativeLength"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-maxlength-attlist"> + <rng:optional> + <rng:attribute name="form:max-length"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-meta-literal-attlist"> + <rng:optional> + <rng:attribute name="xhtml:datatype"> + <rng:ref name="CURIE"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="xhtml:content"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-num-format-attlist"> + <rng:choice> + <rng:attribute name="style:num-format"> + <rng:choice> + <rng:value>1</rng:value> + <rng:value>i</rng:value> + <rng:value>I</rng:value> + <rng:ref name="string"/> + <rng:empty/> + </rng:choice> + </rng:attribute> + <rng:group> + <rng:attribute name="style:num-format"> + <rng:choice> + <rng:value>a</rng:value> + <rng:value>A</rng:value> + </rng:choice> + </rng:attribute> + <rng:ref name="style-num-letter-sync-attlist"/> + </rng:group> + <rng:empty/> + </rng:choice> + </rng:define> + <rng:define name="common-num-format-prefix-suffix-attlist"> + <rng:optional> + <rng:attribute name="style:num-prefix"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:num-suffix"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-number-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="number:min-integer-digits"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="number:grouping"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="common-numeric-control-attlist"> + <rng:ref name="form-control-attlist"/> + <rng:ref name="common-disabled-attlist"/> + <rng:ref name="common-maxlength-attlist"/> + <rng:ref name="common-printable-attlist"/> + <rng:ref name="common-readonly-attlist"/> + <rng:ref name="common-tab-attlist"/> + <rng:ref name="common-title-attlist"/> + <rng:ref name="common-convert-empty-attlist"/> + <rng:ref name="common-data-field-attlist"/> + </rng:define> + <rng:define name="common-office-annotation-name-attlist"> + <rng:attribute name="office:name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:define> + <rng:define name="common-padding-attlist"> + <rng:optional> + <rng:attribute name="fo:padding"> + <rng:ref name="nonNegativeLength"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:padding-top"> + <rng:ref name="nonNegativeLength"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:padding-bottom"> + <rng:ref name="nonNegativeLength"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:padding-left"> + <rng:ref name="nonNegativeLength"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:padding-right"> + <rng:ref name="nonNegativeLength"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-page-number-attlist"> + <rng:optional> + <rng:attribute name="style:page-number"> + <rng:choice> + <rng:ref name="positiveInteger"/> + <rng:value>auto</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-presentation-effect-attlist"> + <rng:interleave> + <rng:attribute name="draw:shape-id"> + <rng:ref name="IDREF"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="presentation:effect"> + <rng:ref name="presentationEffects"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:direction"> + <rng:ref name="presentationEffectDirections"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:speed"> + <rng:ref name="presentationSpeeds"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:delay"> + <rng:ref name="duration"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:start-scale"> + <rng:ref name="percent"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:path-id"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="common-presentation-header-footer-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="presentation:use-header-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:use-footer-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:use-date-time-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="common-printable-attlist"> + <rng:optional> + <rng:attribute name="form:printable"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-readonly-attlist"> + <rng:optional> + <rng:attribute name="form:readonly"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-ref-format-values"> + <rng:choice> + <rng:value>page</rng:value> + <rng:value>chapter</rng:value> + <rng:value>direction</rng:value> + <rng:value>text</rng:value> + </rng:choice> + </rng:define> + <rng:define name="common-repeat"> + <rng:optional> + <rng:attribute name="form:repeat"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-repeat-timing-attlist"> + <rng:optional> + <rng:attribute name="smil:repeatDur"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="smil:repeatCount"> + <rng:choice> + <rng:ref name="nonNegativeDecimal"/> + <rng:value>indefinite</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-restart-default-attlist"> + <rng:optional> + <rng:attribute name="smil:restartDefault"> + <rng:choice> + <rng:value>never</rng:value> + <rng:value>always</rng:value> + <rng:value>whenNotActive</rng:value> + <rng:value>inherit</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-restart-timing-attlist"> + <rng:optional> + <rng:attribute name="smil:restart"> + <rng:choice> + <rng:value>never</rng:value> + <rng:value>always</rng:value> + <rng:value>whenNotActive</rng:value> + <rng:value>default</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-rotation-angle-attlist"> + <rng:optional> + <rng:attribute name="style:rotation-angle"> + <rng:ref name="angle"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-section-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="text:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:attribute name="text:name"> + <rng:ref name="string"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="text:protected"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:protection-key"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:protection-key-digest-algorithm"> + <rng:ref name="anyIRI"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:ref name="xml-id"/> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="common-shadow-attlist"> + <rng:optional> + <rng:attribute name="style:shadow"> + <rng:ref name="shadowType"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-source-cell-range"> + <rng:optional> + <rng:attribute name="form:source-cell-range"> + <rng:choice> + <rng:ref name="cellRangeAddress"/> + <rng:ref name="string"/> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-spin-button"> + <rng:optional> + <rng:attribute name="form:spin-button"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-spline-anim-value-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="smil:keyTimes"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="smil:keySplines"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="common-stock-marker-attlist"> + <rng:optional> + <rng:attribute name="chart:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-style-direction-attlist"> + <rng:optional> + <rng:attribute name="style:direction"> + <rng:choice> + <rng:value>ltr</rng:value> + <rng:value>ttb</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-style-header-footer-attlist"> + <rng:optional> + <rng:attribute name="style:display"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-svg-font-face-xlink-attlist"> + <rng:attribute name="xlink:type"> + <rng:value>simple</rng:value> + </rng:attribute> + <rng:attribute name="xlink:href"> + <rng:ref name="anyIRI"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="xlink:actuate"> + <rng:value>onRequest</rng:value> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-svg-gradient-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="svg:gradientUnits"> + <rng:value>objectBoundingBox</rng:value> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:gradientTransform"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:spreadMethod"> + <rng:choice> + <rng:value>pad</rng:value> + <rng:value>reflect</rng:value> + <rng:value>repeat</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:attribute name="draw:name"> + <rng:ref name="styleName"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="draw:display-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="common-tab-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="form:tab-index"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:tab-stop"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="common-table-cell-address-attlist"> + <rng:attribute name="table:column"> + <rng:ref name="integer"/> + </rng:attribute> + <rng:attribute name="table:row"> + <rng:ref name="integer"/> + </rng:attribute> + <rng:attribute name="table:table"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:define> + <rng:define name="common-table-cell-range-address-attlist"> + <rng:attribute name="table:start-column"> + <rng:ref name="integer"/> + </rng:attribute> + <rng:attribute name="table:start-row"> + <rng:ref name="integer"/> + </rng:attribute> + <rng:attribute name="table:start-table"> + <rng:ref name="integer"/> + </rng:attribute> + <rng:attribute name="table:end-column"> + <rng:ref name="integer"/> + </rng:attribute> + <rng:attribute name="table:end-row"> + <rng:ref name="integer"/> + </rng:attribute> + <rng:attribute name="table:end-table"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:define> + <rng:define name="common-table-change-attlist"> + <rng:interleave> + <rng:attribute name="table:id"> + <rng:ref name="string"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="table:acceptance-state"> + <rng:choice> + <rng:value>accepted</rng:value> + <rng:value>rejected</rng:value> + <rng:value>pending</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:rejecting-change-id"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="common-table-range-attlist"> + <rng:choice> + <rng:group> + <rng:ref name="common-table-cell-address-attlist"/> + </rng:group> + <rng:group> + <rng:ref name="common-table-cell-range-address-attlist"/> + </rng:group> + </rng:choice> + </rng:define> + <rng:define name="common-table-template-attlist"> + <rng:attribute name="table:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="table:paragraph-style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-text-align"> + <rng:optional> + <rng:attribute name="fo:text-align"> + <rng:choice> + <rng:value>start</rng:value> + <rng:value>end</rng:value> + <rng:value>left</rng:value> + <rng:value>right</rng:value> + <rng:value>center</rng:value> + <rng:value>justify</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-text-anchor-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="text:anchor-type"> + <rng:choice> + <rng:value>page</rng:value> + <rng:value>frame</rng:value> + <rng:value>paragraph</rng:value> + <rng:value>char</rng:value> + <rng:value>as-char</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:anchor-page-number"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="common-text-spreadsheet-shape-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="table:end-cell-address"> + <rng:ref name="cellAddress"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:end-x"> + <rng:ref name="coordinate"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:end-y"> + <rng:ref name="coordinate"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:table-background"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:ref name="common-text-anchor-attlist"/> + </rng:interleave> + </rng:define> + <rng:define name="common-time-manip-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="smil:accelerate"> + <rng:ref name="zeroToOneDecimal"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="smil:decelerate"> + <rng:ref name="zeroToOneDecimal"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="smil:autoReverse"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="common-timing-attlist"> + <rng:ref name="common-basic-timing-attlist"/> + <rng:ref name="common-time-manip-attlist"/> + </rng:define> + <rng:define name="common-title-attlist"> + <rng:optional> + <rng:attribute name="form:title"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-value-and-type-attlist"> + <rng:choice> + <rng:group> + <rng:attribute name="office:value-type"> + <rng:value>float</rng:value> + </rng:attribute> + <rng:attribute name="office:value"> + <rng:ref name="double"/> + </rng:attribute> + </rng:group> + <rng:group> + <rng:attribute name="office:value-type"> + <rng:value>percentage</rng:value> + </rng:attribute> + <rng:attribute name="office:value"> + <rng:ref name="double"/> + </rng:attribute> + </rng:group> + <rng:group> + <rng:attribute name="office:value-type"> + <rng:value>currency</rng:value> + </rng:attribute> + <rng:attribute name="office:value"> + <rng:ref name="double"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="office:currency"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:group> + <rng:group> + <rng:attribute name="office:value-type"> + <rng:value>date</rng:value> + </rng:attribute> + <rng:attribute name="office:date-value"> + <rng:ref name="dateOrDateTime"/> + </rng:attribute> + </rng:group> + <rng:group> + <rng:attribute name="office:value-type"> + <rng:value>time</rng:value> + </rng:attribute> + <rng:attribute name="office:time-value"> + <rng:ref name="duration"/> + </rng:attribute> + </rng:group> + <rng:group> + <rng:attribute name="office:value-type"> + <rng:value>boolean</rng:value> + </rng:attribute> + <rng:attribute name="office:boolean-value"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:group> + <rng:group> + <rng:attribute name="office:value-type"> + <rng:value>string</rng:value> + </rng:attribute> + <rng:optional> + <rng:attribute name="office:string-value"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:group> + </rng:choice> + </rng:define> + <rng:define name="common-value-attlist"> + <rng:optional> + <rng:attribute name="form:value"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-value-type-attlist"> + <rng:attribute name="office:value-type"> + <rng:ref name="valueType"/> + </rng:attribute> + </rng:define> + <rng:define name="common-vertical-margin-attlist"> + <rng:optional> + <rng:attribute name="fo:margin-top"> + <rng:choice> + <rng:ref name="nonNegativeLength"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:margin-bottom"> + <rng:choice> + <rng:ref name="nonNegativeLength"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-vertical-pos-attlist"> + <rng:optional> + <rng:attribute name="style:vertical-pos"> + <rng:choice> + <rng:value>top</rng:value> + <rng:value>middle</rng:value> + <rng:value>bottom</rng:value> + <rng:value>from-top</rng:value> + <rng:value>below</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:y"> + <rng:ref name="coordinate"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-vertical-rel-attlist"> + <rng:optional> + <rng:attribute name="style:vertical-rel"> + <rng:choice> + <rng:value>page</rng:value> + <rng:value>page-content</rng:value> + <rng:value>frame</rng:value> + <rng:value>frame-content</rng:value> + <rng:value>paragraph</rng:value> + <rng:value>paragraph-content</rng:value> + <rng:value>char</rng:value> + <rng:value>line</rng:value> + <rng:value>baseline</rng:value> + <rng:value>text</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="common-writing-mode-attlist"> + <rng:optional> + <rng:attribute name="style:writing-mode"> + <rng:choice> + <rng:value>lr-tb</rng:value> + <rng:value>rl-tb</rng:value> + <rng:value>tb-rl</rng:value> + <rng:value>tb-lr</rng:value> + <rng:value>lr</rng:value> + <rng:value>rl</rng:value> + <rng:value>tb</rng:value> + <rng:value>page</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="config-config-item"> + <rng:element name="config:config-item"> + <rng:ref name="config-config-item-attlist"/> + <rng:text/> + </rng:element> + </rng:define> + <rng:define name="config-config-item-attlist"> + <rng:interleave> + <rng:attribute name="config:name"> + <rng:ref name="string"/> + </rng:attribute> + <rng:attribute name="config:type"> + <rng:choice> + <rng:value>boolean</rng:value> + <rng:value>short</rng:value> + <rng:value>int</rng:value> + <rng:value>long</rng:value> + <rng:value>double</rng:value> + <rng:value>string</rng:value> + <rng:value>datetime</rng:value> + <rng:value>base64Binary</rng:value> + </rng:choice> + </rng:attribute> + </rng:interleave> + </rng:define> + <rng:define name="config-config-item-map-entry"> + <rng:element name="config:config-item-map-entry"> + <rng:ref name="config-config-item-map-entry-attlist"/> + <rng:ref name="config-items"/> + </rng:element> + </rng:define> + <rng:define name="config-config-item-map-entry-attlist"> + <rng:optional> + <rng:attribute name="config:name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="config-config-item-map-indexed"> + <rng:element name="config:config-item-map-indexed"> + <rng:ref name="config-config-item-map-indexed-attlist"/> + <rng:oneOrMore> + <rng:ref name="config-config-item-map-entry"/> + </rng:oneOrMore> + </rng:element> + </rng:define> + <rng:define name="config-config-item-map-indexed-attlist"> + <rng:attribute name="config:name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:define> + <rng:define name="config-config-item-map-named"> + <rng:element name="config:config-item-map-named"> + <rng:ref name="config-config-item-map-named-attlist"/> + <rng:oneOrMore> + <rng:ref name="config-config-item-map-entry"/> + </rng:oneOrMore> + </rng:element> + </rng:define> + <rng:define name="config-config-item-map-named-attlist"> + <rng:attribute name="config:name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:define> + <rng:define name="config-config-item-set"> + <rng:element name="config:config-item-set"> + <rng:ref name="config-config-item-set-attlist"/> + <rng:ref name="config-items"/> + </rng:element> + </rng:define> + <rng:define name="config-config-item-set-attlist"> + <rng:attribute name="config:name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:define> + <rng:define name="config-items"> + <rng:oneOrMore> + <rng:choice> + <rng:ref name="config-config-item"/> + <rng:ref name="config-config-item-set"/> + <rng:ref name="config-config-item-map-named"/> + <rng:ref name="config-config-item-map-indexed"/> + </rng:choice> + </rng:oneOrMore> + </rng:define> + <rng:define name="controls"> + <rng:choice> + <rng:ref name="column-controls"/> + <rng:element name="form:password"> + <rng:ref name="form-password-attlist"/> + <rng:ref name="common-form-control-content"/> + </rng:element> + <rng:element name="form:file"> + <rng:ref name="form-file-attlist"/> + <rng:ref name="common-form-control-content"/> + </rng:element> + <rng:element name="form:fixed-text"> + <rng:ref name="form-fixed-text-attlist"/> + <rng:ref name="common-form-control-content"/> + </rng:element> + <rng:element name="form:button"> + <rng:ref name="form-button-attlist"/> + <rng:ref name="common-form-control-content"/> + </rng:element> + <rng:element name="form:image"> + <rng:ref name="form-image-attlist"/> + <rng:ref name="common-form-control-content"/> + </rng:element> + <rng:element name="form:radio"> + <rng:ref name="form-radio-attlist"/> + <rng:ref name="common-form-control-content"/> + </rng:element> + <rng:element name="form:frame"> + <rng:ref name="form-frame-attlist"/> + <rng:ref name="common-form-control-content"/> + </rng:element> + <rng:element name="form:image-frame"> + <rng:ref name="form-image-frame-attlist"/> + <rng:ref name="common-form-control-content"/> + </rng:element> + <rng:element name="form:hidden"> + <rng:ref name="form-hidden-attlist"/> + <rng:ref name="common-form-control-content"/> + </rng:element> + <rng:element name="form:grid"> + <rng:ref name="form-grid-attlist"/> + <rng:ref name="common-form-control-content"/> + <rng:zeroOrMore> + <rng:ref name="form-column"/> + </rng:zeroOrMore> + </rng:element> + <rng:element name="form:value-range"> + <rng:ref name="form-value-range-attlist"/> + <rng:ref name="common-form-control-content"/> + </rng:element> + <rng:element name="form:generic-control"> + <rng:ref name="form-generic-control-attlist"/> + <rng:ref name="common-form-control-content"/> + </rng:element> + </rng:choice> + </rng:define> + <rng:define name="coordinate"> + <rng:ref name="length"/> + </rng:define> + <rng:define name="countryCode"> + <rng:data type="token"> + <rng:param name="pattern">[A-Za-z0-9]{1,8}</rng:param> + </rng:data> + </rng:define> + <rng:define name="currency-symbol-and-text"> + <rng:ref name="number-currency-symbol"/> + <rng:optional> + <rng:ref name="number-text"/> + </rng:optional> + </rng:define> + <rng:define name="current-selected"> + <rng:optional> + <rng:attribute name="form:current-selected"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="custom-shape-type"> + <rng:choice> + <rng:value>non-primitive</rng:value> + <rng:ref name="string"/> + </rng:choice> + </rng:define> + <rng:define name="date"> + <rng:data type="date"/> + </rng:define> + <rng:define name="dateOrDateTime"> + <rng:choice> + <rng:data type="date"/> + <rng:data type="dateTime"/> + </rng:choice> + </rng:define> + <rng:define name="dateTime"> + <rng:data type="dateTime"/> + </rng:define> + <rng:define name="db-application-connection-settings"> + <rng:element name="db:application-connection-settings"> + <rng:ref name="db-application-connection-settings-attlist"/> + <rng:optional> + <rng:ref name="db-table-filter"/> + </rng:optional> + <rng:optional> + <rng:ref name="db-table-type-filter"/> + </rng:optional> + <rng:optional> + <rng:ref name="db-data-source-settings"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="db-application-connection-settings-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="db:is-table-name-length-limited"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="db:enable-sql92-check"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="db:append-table-alias-name"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="db:ignore-driver-privileges"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="db:boolean-comparison-mode"> + <rng:choice> + <rng:value>equal-integer</rng:value> + <rng:value>is-boolean</rng:value> + <rng:value>equal-boolean</rng:value> + <rng:value>equal-use-only-zero</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="db:use-catalog"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="db:max-row-count"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="db:suppress-version-columns"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="db-apply-command"> + <rng:optional> + <rng:attribute name="db:apply-command"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="db-auto-increment"> + <rng:element name="db:auto-increment"> + <rng:ref name="db-auto-increment-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="db-auto-increment-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="db:additional-column-statement"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="db:row-retrieving-statement"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="db-character-set"> + <rng:element name="db:character-set"> + <rng:ref name="db-character-set-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="db-character-set-attlist"> + <rng:optional> + <rng:attribute name="db:encoding"> + <rng:ref name="textEncoding"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="db-column"> + <rng:element name="db:column"> + <rng:ref name="db-column-attlist"/> + <rng:ref name="common-db-object-name"/> + <rng:ref name="common-db-object-title"/> + <rng:ref name="common-db-object-description"/> + <rng:ref name="common-db-default-value"/> + </rng:element> + </rng:define> + <rng:define name="db-column-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="db:visible"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="db:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="db:default-cell-style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="db-column-definition"> + <rng:element name="db:column-definition"> + <rng:ref name="db-column-definition-attlist"/> + <rng:ref name="common-db-default-value"/> + </rng:element> + </rng:define> + <rng:define name="db-column-definition-attlist"> + <rng:interleave> + <rng:attribute name="db:name"> + <rng:ref name="string"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="db:data-type"> + <rng:ref name="db-data-types"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="db:type-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="db:precision"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="db:scale"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="db:is-nullable"> + <rng:choice> + <rng:value>no-nulls</rng:value> + <rng:value>nullable</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="db:is-empty-allowed"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="db:is-autoincrement"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="db-column-definitions"> + <rng:element name="db:column-definitions"> + <rng:ref name="db-column-definitions-attlist"/> + <rng:oneOrMore> + <rng:ref name="db-column-definition"/> + </rng:oneOrMore> + </rng:element> + </rng:define> + <rng:define name="db-column-definitions-attlist"> + <rng:empty/> + </rng:define> + <rng:define name="db-columns"> + <rng:element name="db:columns"> + <rng:ref name="db-columns-attlist"/> + <rng:oneOrMore> + <rng:ref name="db-column"/> + </rng:oneOrMore> + </rng:element> + </rng:define> + <rng:define name="db-columns-attlist"> + <rng:empty/> + </rng:define> + <rng:define name="db-command"> + <rng:attribute name="db:command"> + <rng:ref name="string"/> + </rng:attribute> + </rng:define> + <rng:define name="db-component"> + <rng:element name="db:component"> + <rng:ref name="db-component-attlist"/> + <rng:ref name="common-db-object-name"/> + <rng:ref name="common-db-object-title"/> + <rng:ref name="common-db-object-description"/> + <rng:optional> + <rng:choice> + <rng:ref name="office-document"/> + <rng:ref name="math-math"/> + </rng:choice> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="db-component-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="xlink:type"> + <rng:value>simple</rng:value> + </rng:attribute> + <rng:attribute name="xlink:href"> + <rng:ref name="anyIRI"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="xlink:show"> + <rng:value>none</rng:value> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="xlink:actuate"> + <rng:value>onRequest</rng:value> + </rng:attribute> + </rng:optional> + </rng:optional> + <rng:optional> + <rng:attribute name="db:as-template"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="db-component-collection"> + <rng:element name="db:component-collection"> + <rng:ref name="db-component-collection-attlist"/> + <rng:ref name="common-db-object-name"/> + <rng:ref name="common-db-object-title"/> + <rng:ref name="common-db-object-description"/> + <rng:zeroOrMore> + <rng:choice> + <rng:ref name="db-component"/> + <rng:ref name="db-component-collection"/> + </rng:choice> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="db-component-collection-attlist"> + <rng:empty/> + </rng:define> + <rng:define name="db-connection-data"> + <rng:element name="db:connection-data"> + <rng:ref name="db-connection-data-attlist"/> + <rng:choice> + <rng:ref name="db-database-description"/> + <rng:ref name="db-connection-resource"/> + </rng:choice> + <rng:optional> + <rng:ref name="db-login"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="db-connection-data-attlist"> + <rng:empty/> + </rng:define> + <rng:define name="db-connection-resource"> + <rng:element name="db:connection-resource"> + <rng:ref name="db-connection-resource-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="db-connection-resource-attlist"> + <rng:attribute name="xlink:type"> + <rng:value>simple</rng:value> + </rng:attribute> + <rng:attribute name="xlink:href"> + <rng:ref name="anyIRI"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="xlink:show"> + <rng:value>none</rng:value> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="xlink:actuate"> + <rng:value>onRequest</rng:value> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="db-data-source"> + <rng:element name="db:data-source"> + <rng:ref name="db-data-source-attlist"/> + <rng:ref name="db-connection-data"/> + <rng:optional> + <rng:ref name="db-driver-settings"/> + </rng:optional> + <rng:optional> + <rng:ref name="db-application-connection-settings"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="db-data-source-attlist"> + <rng:empty/> + </rng:define> + <rng:define name="db-data-source-setting"> + <rng:element name="db:data-source-setting"> + <rng:ref name="db-data-source-setting-attlist"/> + <rng:oneOrMore> + <rng:ref name="db-data-source-setting-value"/> + </rng:oneOrMore> + </rng:element> + </rng:define> + <rng:define name="db-data-source-setting-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="db:data-source-setting-is-list"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:attribute name="db:data-source-setting-name"> + <rng:ref name="string"/> + </rng:attribute> + <rng:attribute name="db:data-source-setting-type"> + <rng:ref name="db-data-source-setting-types"/> + </rng:attribute> + </rng:interleave> + </rng:define> + <rng:define name="db-data-source-setting-types"> + <rng:choice> + <rng:value>boolean</rng:value> + <rng:value>short</rng:value> + <rng:value>int</rng:value> + <rng:value>long</rng:value> + <rng:value>double</rng:value> + <rng:value>string</rng:value> + </rng:choice> + </rng:define> + <rng:define name="db-data-source-setting-value"> + <rng:element name="db:data-source-setting-value"> + <rng:ref name="db-data-source-setting-value-attlist"/> + <rng:ref name="string"/> + </rng:element> + </rng:define> + <rng:define name="db-data-source-setting-value-attlist"> + <rng:empty/> + </rng:define> + <rng:define name="db-data-source-settings"> + <rng:element name="db:data-source-settings"> + <rng:ref name="db-data-source-settings-attlist"/> + <rng:oneOrMore> + <rng:ref name="db-data-source-setting"/> + </rng:oneOrMore> + </rng:element> + </rng:define> + <rng:define name="db-data-source-settings-attlist"> + <rng:empty/> + </rng:define> + <rng:define name="db-data-types"> + <rng:choice> + <rng:value>bit</rng:value> + <rng:value>boolean</rng:value> + <rng:value>tinyint</rng:value> + <rng:value>smallint</rng:value> + <rng:value>integer</rng:value> + <rng:value>bigint</rng:value> + <rng:value>float</rng:value> + <rng:value>real</rng:value> + <rng:value>double</rng:value> + <rng:value>numeric</rng:value> + <rng:value>decimal</rng:value> + <rng:value>char</rng:value> + <rng:value>varchar</rng:value> + <rng:value>longvarchar</rng:value> + <rng:value>date</rng:value> + <rng:value>time</rng:value> + <rng:value>timestmp</rng:value> + <rng:value>binary</rng:value> + <rng:value>varbinary</rng:value> + <rng:value>longvarbinary</rng:value> + <rng:value>sqlnull</rng:value> + <rng:value>other</rng:value> + <rng:value>object</rng:value> + <rng:value>distinct</rng:value> + <rng:value>struct</rng:value> + <rng:value>array</rng:value> + <rng:value>blob</rng:value> + <rng:value>clob</rng:value> + <rng:value>ref</rng:value> + </rng:choice> + </rng:define> + <rng:define name="db-database-description"> + <rng:element name="db:database-description"> + <rng:ref name="db-database-description-attlist"/> + <rng:choice> + <rng:ref name="db-file-based-database"/> + <rng:ref name="db-server-database"/> + </rng:choice> + </rng:element> + </rng:define> + <rng:define name="db-database-description-attlist"> + <rng:empty/> + </rng:define> + <rng:define name="db-delimiter"> + <rng:element name="db:delimiter"> + <rng:ref name="db-delimiter-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="db-delimiter-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="db:field"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="db:string"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="db:decimal"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="db:thousand"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="db-driver-settings"> + <rng:element name="db:driver-settings"> + <rng:ref name="db-driver-settings-attlist"/> + <rng:optional> + <rng:ref name="db-auto-increment"/> + </rng:optional> + <rng:optional> + <rng:ref name="db-delimiter"/> + </rng:optional> + <rng:optional> + <rng:ref name="db-character-set"/> + </rng:optional> + <rng:optional> + <rng:ref name="db-table-settings"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="db-driver-settings-attlist"> + <rng:interleave> + <rng:ref name="db-show-deleted"/> + <rng:optional> + <rng:attribute name="db:system-driver-settings"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="db:base-dn"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:ref name="db-is-first-row-header-line"/> + <rng:optional> + <rng:attribute name="db:parameter-name-substitution"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="db-file-based-database"> + <rng:element name="db:file-based-database"> + <rng:ref name="db-file-based-database-attlist"/> + </rng:element> + </rng:define> + <rng:define name="db-file-based-database-attlist"> + <rng:interleave> + <rng:attribute name="xlink:type"> + <rng:value>simple</rng:value> + </rng:attribute> + <rng:attribute name="xlink:href"> + <rng:ref name="anyIRI"/> + </rng:attribute> + <rng:attribute name="db:media-type"> + <rng:ref name="string"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="db:extension"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="db-filter-statement"> + <rng:element name="db:filter-statement"> + <rng:ref name="db-command"/> + <rng:ref name="db-apply-command"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="db-forms"> + <rng:element name="db:forms"> + <rng:ref name="db-forms-attlist"/> + <rng:zeroOrMore> + <rng:choice> + <rng:ref name="db-component"/> + <rng:ref name="db-component-collection"/> + </rng:choice> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="db-forms-attlist"> + <rng:empty/> + </rng:define> + <rng:define name="db-host-and-port"> + <rng:attribute name="db:hostname"> + <rng:ref name="string"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="db:port"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="db-index"> + <rng:element name="db:index"> + <rng:ref name="db-index-attlist"/> + <rng:oneOrMore> + <rng:ref name="db-index-columns"/> + </rng:oneOrMore> + </rng:element> + </rng:define> + <rng:define name="db-index-attlist"> + <rng:interleave> + <rng:attribute name="db:name"> + <rng:ref name="string"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="db:catalog-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="db:is-unique"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="db:is-clustered"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="db-index-column"> + <rng:element name="db:index-column"> + <rng:ref name="db-index-column-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="db-index-column-attlist"> + <rng:interleave> + <rng:attribute name="db:name"> + <rng:ref name="string"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="db:is-ascending"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="db-index-columns"> + <rng:element name="db:index-columns"> + <rng:oneOrMore> + <rng:ref name="db-index-column"/> + </rng:oneOrMore> + </rng:element> + </rng:define> + <rng:define name="db-indices"> + <rng:element name="db:indices"> + <rng:ref name="db-indices-attlist"/> + <rng:oneOrMore> + <rng:ref name="db-index"/> + </rng:oneOrMore> + </rng:element> + </rng:define> + <rng:define name="db-indices-attlist"> + <rng:empty/> + </rng:define> + <rng:define name="db-is-first-row-header-line"> + <rng:optional> + <rng:attribute name="db:is-first-row-header-line"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="db-key"> + <rng:element name="db:key"> + <rng:ref name="db-key-attlist"/> + <rng:oneOrMore> + <rng:ref name="db-key-columns"/> + </rng:oneOrMore> + </rng:element> + </rng:define> + <rng:define name="db-key-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="db:name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:attribute name="db:type"> + <rng:choice> + <rng:value>primary</rng:value> + <rng:value>unique</rng:value> + <rng:value>foreign</rng:value> + </rng:choice> + </rng:attribute> + <rng:optional> + <rng:attribute name="db:referenced-table-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="db:update-rule"> + <rng:choice> + <rng:value>cascade</rng:value> + <rng:value>restrict</rng:value> + <rng:value>set-null</rng:value> + <rng:value>no-action</rng:value> + <rng:value>set-default</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="db:delete-rule"> + <rng:choice> + <rng:value>cascade</rng:value> + <rng:value>restrict</rng:value> + <rng:value>set-null</rng:value> + <rng:value>no-action</rng:value> + <rng:value>set-default</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="db-key-column"> + <rng:element name="db:key-column"> + <rng:ref name="db-key-column-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="db-key-column-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="db:name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="db:related-column-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="db-key-columns"> + <rng:element name="db:key-columns"> + <rng:ref name="db-key-columns-attlist"/> + <rng:oneOrMore> + <rng:ref name="db-key-column"/> + </rng:oneOrMore> + </rng:element> + </rng:define> + <rng:define name="db-key-columns-attlist"> + <rng:empty/> + </rng:define> + <rng:define name="db-keys"> + <rng:element name="db:keys"> + <rng:ref name="db-keys-attlist"/> + <rng:oneOrMore> + <rng:ref name="db-key"/> + </rng:oneOrMore> + </rng:element> + </rng:define> + <rng:define name="db-keys-attlist"> + <rng:empty/> + </rng:define> + <rng:define name="db-local-socket-name"> + <rng:optional> + <rng:attribute name="db:local-socket"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="db-login"> + <rng:element name="db:login"> + <rng:ref name="db-login-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="db-login-attlist"> + <rng:interleave> + <rng:optional> + <rng:choice> + <rng:attribute name="db:user-name"> + <rng:ref name="string"/> + </rng:attribute> + <rng:attribute name="db:use-system-user"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:choice> + </rng:optional> + <rng:optional> + <rng:attribute name="db:is-password-required"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="db:login-timeout"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="db-order-statement"> + <rng:element name="db:order-statement"> + <rng:ref name="db-command"/> + <rng:ref name="db-apply-command"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="db-queries"> + <rng:element name="db:queries"> + <rng:ref name="db-queries-attlist"/> + <rng:zeroOrMore> + <rng:choice> + <rng:ref name="db-query"/> + <rng:ref name="db-query-collection"/> + </rng:choice> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="db-queries-attlist"> + <rng:empty/> + </rng:define> + <rng:define name="db-query"> + <rng:element name="db:query"> + <rng:ref name="db-query-attlist"/> + <rng:ref name="common-db-object-name"/> + <rng:ref name="common-db-object-title"/> + <rng:ref name="common-db-object-description"/> + <rng:ref name="common-db-table-style-name"/> + <rng:optional> + <rng:ref name="db-order-statement"/> + </rng:optional> + <rng:optional> + <rng:ref name="db-filter-statement"/> + </rng:optional> + <rng:optional> + <rng:ref name="db-columns"/> + </rng:optional> + <rng:optional> + <rng:ref name="db-update-table"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="db-query-attlist"> + <rng:interleave> + <rng:attribute name="db:command"> + <rng:ref name="string"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="db:escape-processing"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="db-query-collection"> + <rng:element name="db:query-collection"> + <rng:ref name="db-query-collection-attlist"/> + <rng:ref name="common-db-object-name"/> + <rng:ref name="common-db-object-title"/> + <rng:ref name="common-db-object-description"/> + <rng:zeroOrMore> + <rng:choice> + <rng:ref name="db-query"/> + <rng:ref name="db-query-collection"/> + </rng:choice> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="db-query-collection-attlist"> + <rng:empty/> + </rng:define> + <rng:define name="db-reports"> + <rng:element name="db:reports"> + <rng:ref name="db-reports-attlist"/> + <rng:zeroOrMore> + <rng:choice> + <rng:ref name="db-component"/> + <rng:ref name="db-component-collection"/> + </rng:choice> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="db-reports-attlist"> + <rng:empty/> + </rng:define> + <rng:define name="db-schema-definition"> + <rng:element name="db:schema-definition"> + <rng:ref name="db-schema-definition-attlist"/> + <rng:ref name="db-table-definitions"/> + </rng:element> + </rng:define> + <rng:define name="db-schema-definition-attlist"> + <rng:empty/> + </rng:define> + <rng:define name="db-server-database"> + <rng:element name="db:server-database"> + <rng:ref name="db-server-database-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="db-server-database-attlist"> + <rng:interleave> + <rng:attribute name="db:type"> + <rng:ref name="namespacedToken"/> + </rng:attribute> + <rng:choice> + <rng:ref name="db-host-and-port"/> + <rng:ref name="db-local-socket-name"/> + </rng:choice> + <rng:optional> + <rng:attribute name="db:database-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="db-show-deleted"> + <rng:optional> + <rng:attribute name="db:show-deleted"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="db-table-definition"> + <rng:element name="db:table-definition"> + <rng:ref name="common-db-table-name-attlist"/> + <rng:ref name="db-table-definition-attlist"/> + <rng:ref name="db-column-definitions"/> + <rng:optional> + <rng:ref name="db-keys"/> + </rng:optional> + <rng:optional> + <rng:ref name="db-indices"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="db-table-definition-attlist"> + <rng:optional> + <rng:attribute name="db:type"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="db-table-definitions"> + <rng:element name="db:table-definitions"> + <rng:ref name="db-table-definitions-attlist"/> + <rng:zeroOrMore> + <rng:ref name="db-table-definition"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="db-table-definitions-attlist"> + <rng:empty/> + </rng:define> + <rng:define name="db-table-exclude-filter"> + <rng:element name="db:table-exclude-filter"> + <rng:ref name="db-table-exclude-filter-attlist"/> + <rng:oneOrMore> + <rng:ref name="db-table-filter-pattern"/> + </rng:oneOrMore> + </rng:element> + </rng:define> + <rng:define name="db-table-exclude-filter-attlist"> + <rng:empty/> + </rng:define> + <rng:define name="db-table-filter"> + <rng:element name="db:table-filter"> + <rng:ref name="db-table-filter-attlist"/> + <rng:optional> + <rng:ref name="db-table-include-filter"/> + </rng:optional> + <rng:optional> + <rng:ref name="db-table-exclude-filter"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="db-table-filter-attlist"> + <rng:empty/> + </rng:define> + <rng:define name="db-table-filter-pattern"> + <rng:element name="db:table-filter-pattern"> + <rng:ref name="db-table-filter-pattern-attlist"/> + <rng:ref name="string"/> + </rng:element> + </rng:define> + <rng:define name="db-table-filter-pattern-attlist"> + <rng:empty/> + </rng:define> + <rng:define name="db-table-include-filter"> + <rng:element name="db:table-include-filter"> + <rng:ref name="db-table-include-filter-attlist"/> + <rng:oneOrMore> + <rng:ref name="db-table-filter-pattern"/> + </rng:oneOrMore> + </rng:element> + </rng:define> + <rng:define name="db-table-include-filter-attlist"> + <rng:empty/> + </rng:define> + <rng:define name="db-table-presentation"> + <rng:element name="db:table-representation"> + <rng:ref name="db-table-presentation-attlist"/> + <rng:ref name="common-db-table-name-attlist"/> + <rng:ref name="common-db-object-title"/> + <rng:ref name="common-db-object-description"/> + <rng:ref name="common-db-table-style-name"/> + <rng:optional> + <rng:ref name="db-order-statement"/> + </rng:optional> + <rng:optional> + <rng:ref name="db-filter-statement"/> + </rng:optional> + <rng:optional> + <rng:ref name="db-columns"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="db-table-presentation-attlist"> + <rng:empty/> + </rng:define> + <rng:define name="db-table-presentations"> + <rng:element name="db:table-representations"> + <rng:ref name="db-table-presentations-attlist"/> + <rng:zeroOrMore> + <rng:ref name="db-table-presentation"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="db-table-presentations-attlist"> + <rng:empty/> + </rng:define> + <rng:define name="db-table-setting"> + <rng:element name="db:table-setting"> + <rng:ref name="db-table-setting-attlist"/> + <rng:optional> + <rng:ref name="db-delimiter"/> + </rng:optional> + <rng:optional> + <rng:ref name="db-character-set"/> + </rng:optional> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="db-table-setting-attlist"> + <rng:ref name="db-is-first-row-header-line"/> + <rng:ref name="db-show-deleted"/> + </rng:define> + <rng:define name="db-table-settings"> + <rng:element name="db:table-settings"> + <rng:zeroOrMore> + <rng:ref name="db-table-setting"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="db-table-type"> + <rng:element name="db:table-type"> + <rng:ref name="db-table-type-attlist"/> + <rng:ref name="string"/> + </rng:element> + </rng:define> + <rng:define name="db-table-type-attlist"> + <rng:empty/> + </rng:define> + <rng:define name="db-table-type-filter"> + <rng:element name="db:table-type-filter"> + <rng:ref name="db-table-type-filter-attlist"/> + <rng:zeroOrMore> + <rng:ref name="db-table-type"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="db-table-type-filter-attlist"> + <rng:empty/> + </rng:define> + <rng:define name="db-update-table"> + <rng:element name="db:update-table"> + <rng:ref name="common-db-table-name-attlist"/> + </rng:element> + </rng:define> + <rng:define name="dc-creator"> + <rng:element name="dc:creator"> + <rng:ref name="string"/> + </rng:element> + </rng:define> + <rng:define name="dc-date"> + <rng:element name="dc:date"> + <rng:ref name="dateTime"/> + </rng:element> + </rng:define> + <rng:define name="distance"> + <rng:ref name="length"/> + </rng:define> + <rng:define name="double"> + <rng:data type="double"/> + </rng:define> + <rng:define name="dr3d-cube"> + <rng:element name="dr3d:cube"> + <rng:ref name="dr3d-cube-attlist"/> + <rng:ref name="common-draw-z-index-attlist"/> + <rng:ref name="common-draw-id-attlist"/> + <rng:ref name="common-draw-layer-name-attlist"/> + <rng:ref name="common-draw-style-name-attlist"/> + <rng:ref name="common-dr3d-transform-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="dr3d-cube-attlist"> + <rng:optional> + <rng:attribute name="dr3d:min-edge"> + <rng:ref name="vector3D"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="dr3d:max-edge"> + <rng:ref name="vector3D"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="dr3d-extrude"> + <rng:element name="dr3d:extrude"> + <rng:ref name="common-draw-path-data-attlist"/> + <rng:ref name="common-draw-viewbox-attlist"/> + <rng:ref name="common-draw-id-attlist"/> + <rng:ref name="common-draw-z-index-attlist"/> + <rng:ref name="common-draw-layer-name-attlist"/> + <rng:ref name="common-draw-style-name-attlist"/> + <rng:ref name="common-dr3d-transform-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="dr3d-light"> + <rng:element name="dr3d:light"> + <rng:ref name="dr3d-light-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="dr3d-light-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="dr3d:diffuse-color"> + <rng:ref name="color"/> + </rng:attribute> + </rng:optional> + <rng:attribute name="dr3d:direction"> + <rng:ref name="vector3D"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="dr3d:enabled"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="dr3d:specular"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="dr3d-rotate"> + <rng:element name="dr3d:rotate"> + <rng:ref name="common-draw-viewbox-attlist"/> + <rng:ref name="common-draw-path-data-attlist"/> + <rng:ref name="common-draw-z-index-attlist"/> + <rng:ref name="common-draw-id-attlist"/> + <rng:ref name="common-draw-layer-name-attlist"/> + <rng:ref name="common-draw-style-name-attlist"/> + <rng:ref name="common-dr3d-transform-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="dr3d-scene"> + <rng:element name="dr3d:scene"> + <rng:ref name="dr3d-scene-attlist"/> + <rng:ref name="common-draw-position-attlist"/> + <rng:ref name="common-draw-size-attlist"/> + <rng:ref name="common-draw-style-name-attlist"/> + <rng:ref name="common-draw-z-index-attlist"/> + <rng:ref name="common-draw-id-attlist"/> + <rng:ref name="common-draw-layer-name-attlist"/> + <rng:ref name="common-text-spreadsheet-shape-attlist"/> + <rng:ref name="common-dr3d-transform-attlist"/> + <rng:ref name="common-draw-caption-id-attlist"/> + <rng:optional> + <rng:ref name="svg-title"/> + </rng:optional> + <rng:optional> + <rng:ref name="svg-desc"/> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="dr3d-light"/> + </rng:zeroOrMore> + <rng:zeroOrMore> + <rng:ref name="shapes3d"/> + </rng:zeroOrMore> + <rng:zeroOrMore> + <rng:ref name="draw-glue-point"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="dr3d-scene-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="dr3d:vrp"> + <rng:ref name="vector3D"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="dr3d:vpn"> + <rng:ref name="vector3D"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="dr3d:vup"> + <rng:ref name="vector3D"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="dr3d:projection"> + <rng:choice> + <rng:value>parallel</rng:value> + <rng:value>perspective</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="dr3d:distance"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="dr3d:focal-length"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="dr3d:shadow-slant"> + <rng:ref name="angle"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="dr3d:shade-mode"> + <rng:choice> + <rng:value>flat</rng:value> + <rng:value>phong</rng:value> + <rng:value>gouraud</rng:value> + <rng:value>draft</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="dr3d:ambient-color"> + <rng:ref name="color"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="dr3d:lighting-mode"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="dr3d-sphere"> + <rng:element name="dr3d:sphere"> + <rng:ref name="dr3d-sphere-attlist"/> + <rng:ref name="common-draw-z-index-attlist"/> + <rng:ref name="common-draw-id-attlist"/> + <rng:ref name="common-draw-layer-name-attlist"/> + <rng:ref name="common-draw-style-name-attlist"/> + <rng:ref name="common-dr3d-transform-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="dr3d-sphere-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="dr3d:center"> + <rng:ref name="vector3D"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="dr3d:size"> + <rng:ref name="vector3D"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="draw-a"> + <rng:element name="draw:a"> + <rng:ref name="draw-a-attlist"/> + <rng:ref name="shape-instance"/> + </rng:element> + </rng:define> + <rng:define name="draw-a-attlist"> + <rng:interleave> + <rng:attribute name="xlink:type"> + <rng:value>simple</rng:value> + </rng:attribute> + <rng:attribute name="xlink:href"> + <rng:ref name="anyIRI"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="xlink:actuate"> + <rng:value>onRequest</rng:value> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="office:target-frame-name"> + <rng:ref name="targetFrameName"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="xlink:show"> + <rng:choice> + <rng:value>new</rng:value> + <rng:value>replace</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="office:name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="office:title"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="office:server-map"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:ref name="xml-id"/> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="draw-applet"> + <rng:element name="draw:applet"> + <rng:ref name="draw-applet-attlist"/> + <rng:optional> + <rng:ref name="common-draw-data-attlist"/> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="draw-param"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="draw-applet-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="draw:code"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:object"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:archive"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:may-script"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:ref name="xml-id"/> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="draw-area-circle"> + <rng:element name="draw:area-circle"> + <rng:ref name="common-draw-area-attlist"/> + <rng:attribute name="svg:cx"> + <rng:ref name="coordinate"/> + </rng:attribute> + <rng:attribute name="svg:cy"> + <rng:ref name="coordinate"/> + </rng:attribute> + <rng:attribute name="svg:r"> + <rng:ref name="length"/> + </rng:attribute> + <rng:optional> + <rng:ref name="svg-title"/> + </rng:optional> + <rng:optional> + <rng:ref name="svg-desc"/> + </rng:optional> + <rng:optional> + <rng:ref name="office-event-listeners"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="draw-area-polygon"> + <rng:element name="draw:area-polygon"> + <rng:ref name="common-draw-area-attlist"/> + <rng:attribute name="svg:x"> + <rng:ref name="coordinate"/> + </rng:attribute> + <rng:attribute name="svg:y"> + <rng:ref name="coordinate"/> + </rng:attribute> + <rng:attribute name="svg:width"> + <rng:ref name="length"/> + </rng:attribute> + <rng:attribute name="svg:height"> + <rng:ref name="length"/> + </rng:attribute> + <rng:ref name="common-draw-viewbox-attlist"/> + <rng:ref name="common-draw-points-attlist"/> + <rng:optional> + <rng:ref name="svg-title"/> + </rng:optional> + <rng:optional> + <rng:ref name="svg-desc"/> + </rng:optional> + <rng:optional> + <rng:ref name="office-event-listeners"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="draw-area-rectangle"> + <rng:element name="draw:area-rectangle"> + <rng:ref name="common-draw-area-attlist"/> + <rng:attribute name="svg:x"> + <rng:ref name="coordinate"/> + </rng:attribute> + <rng:attribute name="svg:y"> + <rng:ref name="coordinate"/> + </rng:attribute> + <rng:attribute name="svg:width"> + <rng:ref name="length"/> + </rng:attribute> + <rng:attribute name="svg:height"> + <rng:ref name="length"/> + </rng:attribute> + <rng:optional> + <rng:ref name="svg-title"/> + </rng:optional> + <rng:optional> + <rng:ref name="svg-desc"/> + </rng:optional> + <rng:optional> + <rng:ref name="office-event-listeners"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="draw-caption"> + <rng:element name="draw:caption"> + <rng:ref name="draw-caption-attlist"/> + <rng:ref name="common-draw-position-attlist"/> + <rng:ref name="common-draw-size-attlist"/> + <rng:ref name="common-draw-shape-with-text-and-styles-attlist"/> + <rng:ref name="common-draw-caption-id-attlist"/> + <rng:optional> + <rng:ref name="svg-title"/> + </rng:optional> + <rng:optional> + <rng:ref name="svg-desc"/> + </rng:optional> + <rng:optional> + <rng:ref name="office-event-listeners"/> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="draw-glue-point"/> + </rng:zeroOrMore> + <rng:ref name="draw-text"/> + </rng:element> + </rng:define> + <rng:define name="draw-caption-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="draw:caption-point-x"> + <rng:ref name="coordinate"/> + </rng:attribute> + <rng:attribute name="draw:caption-point-y"> + <rng:ref name="coordinate"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:corner-radius"> + <rng:ref name="nonNegativeLength"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="draw-circle"> + <rng:element name="draw:circle"> + <rng:choice> + <rng:group> + <rng:ref name="draw-circle-attlist"/> + <rng:ref name="common-draw-circle-ellipse-pos-attlist"/> + </rng:group> + <rng:group> + <rng:ref name="common-draw-position-attlist"/> + <rng:ref name="common-draw-size-attlist"/> + </rng:group> + </rng:choice> + <rng:ref name="common-draw-circle-ellipse-attlist"/> + <rng:ref name="common-draw-shape-with-text-and-styles-attlist"/> + <rng:ref name="common-draw-caption-id-attlist"/> + <rng:optional> + <rng:ref name="svg-title"/> + </rng:optional> + <rng:optional> + <rng:ref name="svg-desc"/> + </rng:optional> + <rng:optional> + <rng:ref name="office-event-listeners"/> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="draw-glue-point"/> + </rng:zeroOrMore> + <rng:ref name="draw-text"/> + </rng:element> + </rng:define> + <rng:define name="draw-circle-attlist"> + <rng:attribute name="svg:r"> + <rng:ref name="length"/> + </rng:attribute> + </rng:define> + <rng:define name="draw-connector"> + <rng:element name="draw:connector"> + <rng:ref name="draw-connector-attlist"/> + <rng:ref name="common-draw-shape-with-text-and-styles-attlist"/> + <rng:ref name="common-draw-caption-id-attlist"/> + <rng:ref name="common-draw-viewbox-attlist"/> + <rng:optional> + <rng:ref name="svg-title"/> + </rng:optional> + <rng:optional> + <rng:ref name="svg-desc"/> + </rng:optional> + <rng:optional> + <rng:ref name="office-event-listeners"/> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="draw-glue-point"/> + </rng:zeroOrMore> + <rng:ref name="draw-text"/> + </rng:element> + </rng:define> + <rng:define name="draw-connector-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="draw:type"> + <rng:choice> + <rng:value>standard</rng:value> + <rng:value>lines</rng:value> + <rng:value>line</rng:value> + <rng:value>curve</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:x1"> + <rng:ref name="coordinate"/> + </rng:attribute> + <rng:attribute name="svg:y1"> + <rng:ref name="coordinate"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:start-shape"> + <rng:ref name="IDREF"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:start-glue-point"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:x2"> + <rng:ref name="coordinate"/> + </rng:attribute> + <rng:attribute name="svg:y2"> + <rng:ref name="coordinate"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:end-shape"> + <rng:ref name="IDREF"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:end-glue-point"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:line-skew"> + <rng:list> + <rng:ref name="length"/> + <rng:optional> + <rng:ref name="length"/> + <rng:optional> + <rng:ref name="length"/> + </rng:optional> + </rng:optional> + </rng:list> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:d"> + <rng:ref name="pathData"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="draw-contour-path"> + <rng:element name="draw:contour-path"> + <rng:ref name="common-contour-attlist"/> + <rng:ref name="common-draw-size-attlist"/> + <rng:ref name="common-draw-viewbox-attlist"/> + <rng:ref name="common-draw-path-data-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="draw-contour-polygon"> + <rng:element name="draw:contour-polygon"> + <rng:ref name="common-contour-attlist"/> + <rng:ref name="common-draw-size-attlist"/> + <rng:ref name="common-draw-viewbox-attlist"/> + <rng:ref name="common-draw-points-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="draw-control"> + <rng:element name="draw:control"> + <rng:ref name="draw-control-attlist"/> + <rng:ref name="common-draw-position-attlist"/> + <rng:ref name="common-draw-size-attlist"/> + <rng:ref name="common-draw-shape-with-text-and-styles-attlist"/> + <rng:ref name="common-draw-caption-id-attlist"/> + <rng:optional> + <rng:ref name="svg-title"/> + </rng:optional> + <rng:optional> + <rng:ref name="svg-desc"/> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="draw-glue-point"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="draw-control-attlist"> + <rng:attribute name="draw:control"> + <rng:ref name="IDREF"/> + </rng:attribute> + </rng:define> + <rng:define name="draw-custom-shape"> + <rng:element name="draw:custom-shape"> + <rng:ref name="draw-custom-shape-attlist"/> + <rng:ref name="common-draw-position-attlist"/> + <rng:ref name="common-draw-size-attlist"/> + <rng:ref name="common-draw-shape-with-text-and-styles-attlist"/> + <rng:ref name="common-draw-caption-id-attlist"/> + <rng:optional> + <rng:ref name="svg-title"/> + </rng:optional> + <rng:optional> + <rng:ref name="svg-desc"/> + </rng:optional> + <rng:optional> + <rng:ref name="office-event-listeners"/> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="draw-glue-point"/> + </rng:zeroOrMore> + <rng:ref name="draw-text"/> + <rng:optional> + <rng:ref name="draw-enhanced-geometry"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="draw-custom-shape-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="draw:engine"> + <rng:ref name="namespacedToken"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:data"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="draw-ellipse"> + <rng:element name="draw:ellipse"> + <rng:choice> + <rng:group> + <rng:ref name="draw-ellipse-attlist"/> + <rng:ref name="common-draw-circle-ellipse-pos-attlist"/> + </rng:group> + <rng:group> + <rng:ref name="common-draw-position-attlist"/> + <rng:ref name="common-draw-size-attlist"/> + </rng:group> + </rng:choice> + <rng:ref name="common-draw-circle-ellipse-attlist"/> + <rng:ref name="common-draw-shape-with-text-and-styles-attlist"/> + <rng:ref name="common-draw-caption-id-attlist"/> + <rng:optional> + <rng:ref name="svg-title"/> + </rng:optional> + <rng:optional> + <rng:ref name="svg-desc"/> + </rng:optional> + <rng:optional> + <rng:ref name="office-event-listeners"/> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="draw-glue-point"/> + </rng:zeroOrMore> + <rng:ref name="draw-text"/> + </rng:element> + </rng:define> + <rng:define name="draw-ellipse-attlist"> + <rng:attribute name="svg:rx"> + <rng:ref name="length"/> + </rng:attribute> + <rng:attribute name="svg:ry"> + <rng:ref name="length"/> + </rng:attribute> + </rng:define> + <rng:define name="draw-enhanced-geometry"> + <rng:element name="draw:enhanced-geometry"> + <rng:ref name="draw-enhanced-geometry-attlist"/> + <rng:zeroOrMore> + <rng:ref name="draw-equation"/> + </rng:zeroOrMore> + <rng:zeroOrMore> + <rng:ref name="draw-handle"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="draw-enhanced-geometry-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="draw:type"> + <rng:ref name="custom-shape-type"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:viewBox"> + <rng:list> + <rng:ref name="integer"/> + <rng:ref name="integer"/> + <rng:ref name="integer"/> + <rng:ref name="integer"/> + </rng:list> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:mirror-vertical"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:mirror-horizontal"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:text-rotate-angle"> + <rng:ref name="angle"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:extrusion-allowed"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:text-path-allowed"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:concentric-gradient-fill-allowed"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:extrusion"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:extrusion-brightness"> + <rng:ref name="zeroToHundredPercent"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:extrusion-depth"> + <rng:list> + <rng:ref name="length"/> + <rng:ref name="double"/> + </rng:list> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:extrusion-diffusion"> + <rng:ref name="percent"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:extrusion-number-of-line-segments"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:extrusion-light-face"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:extrusion-first-light-harsh"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:extrusion-second-light-harsh"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:extrusion-first-light-level"> + <rng:ref name="zeroToHundredPercent"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:extrusion-second-light-level"> + <rng:ref name="zeroToHundredPercent"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:extrusion-first-light-direction"> + <rng:ref name="vector3D"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:extrusion-second-light-direction"> + <rng:ref name="vector3D"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:extrusion-metal"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="dr3d:shade-mode"> + <rng:choice> + <rng:value>flat</rng:value> + <rng:value>phong</rng:value> + <rng:value>gouraud</rng:value> + <rng:value>draft</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:extrusion-rotation-angle"> + <rng:list> + <rng:ref name="angle"/> + <rng:ref name="angle"/> + </rng:list> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:extrusion-rotation-center"> + <rng:ref name="vector3D"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:extrusion-shininess"> + <rng:ref name="zeroToHundredPercent"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:extrusion-skew"> + <rng:list> + <rng:ref name="double"/> + <rng:ref name="angle"/> + </rng:list> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:extrusion-specularity"> + <rng:ref name="zeroToHundredPercent"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="dr3d:projection"> + <rng:choice> + <rng:value>parallel</rng:value> + <rng:value>perspective</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:extrusion-viewpoint"> + <rng:ref name="point3D"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:extrusion-origin"> + <rng:list> + <rng:ref name="extrusionOrigin"/> + <rng:ref name="extrusionOrigin"/> + </rng:list> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:extrusion-color"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:enhanced-path"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:path-stretchpoint-x"> + <rng:ref name="double"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:path-stretchpoint-y"> + <rng:ref name="double"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:text-areas"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:glue-points"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:glue-point-type"> + <rng:choice> + <rng:value>none</rng:value> + <rng:value>segments</rng:value> + <rng:value>rectangle</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:glue-point-leaving-directions"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:text-path"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:text-path-mode"> + <rng:choice> + <rng:value>normal</rng:value> + <rng:value>path</rng:value> + <rng:value>shape</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:text-path-scale"> + <rng:choice> + <rng:value>path</rng:value> + <rng:value>shape</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:text-path-same-letter-heights"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:modifiers"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="draw-equation"> + <rng:element name="draw:equation"> + <rng:ref name="draw-equation-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="draw-equation-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="draw:name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:formula"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="draw-fill-image"> + <rng:element name="draw:fill-image"> + <rng:ref name="draw-fill-image-attlist"/> + <rng:attribute name="xlink:type"> + <rng:value>simple</rng:value> + </rng:attribute> + <rng:attribute name="xlink:href"> + <rng:ref name="anyIRI"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="xlink:show"> + <rng:value>embed</rng:value> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="xlink:actuate"> + <rng:value>onLoad</rng:value> + </rng:attribute> + </rng:optional> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="draw-fill-image-attlist"> + <rng:interleave> + <rng:attribute name="draw:name"> + <rng:ref name="styleName"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="draw:display-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:width"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:height"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="draw-floating-frame"> + <rng:element name="draw:floating-frame"> + <rng:ref name="draw-floating-frame-attlist"/> + <rng:ref name="common-draw-data-attlist"/> + </rng:element> + </rng:define> + <rng:define name="draw-floating-frame-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="draw:frame-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:ref name="xml-id"/> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="draw-frame"> + <rng:element name="draw:frame"> + <rng:ref name="common-draw-shape-with-text-and-styles-attlist"/> + <rng:ref name="common-draw-position-attlist"/> + <rng:ref name="common-draw-rel-size-attlist"/> + <rng:ref name="common-draw-caption-id-attlist"/> + <rng:ref name="presentation-shape-attlist"/> + <rng:ref name="draw-frame-attlist"/> + <rng:zeroOrMore> + <rng:choice> + <rng:ref name="draw-text-box"/> + <rng:ref name="draw-image"/> + <rng:ref name="draw-object"/> + <rng:ref name="draw-object-ole"/> + <rng:ref name="draw-applet"/> + <rng:ref name="draw-floating-frame"/> + <rng:ref name="draw-plugin"/> + <rng:ref name="table-table"/> + </rng:choice> + </rng:zeroOrMore> + <rng:optional> + <rng:ref name="office-event-listeners"/> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="draw-glue-point"/> + </rng:zeroOrMore> + <rng:optional> + <rng:ref name="draw-image-map"/> + </rng:optional> + <rng:optional> + <rng:ref name="svg-title"/> + </rng:optional> + <rng:optional> + <rng:ref name="svg-desc"/> + </rng:optional> + <rng:optional> + <rng:choice> + <rng:ref name="draw-contour-polygon"/> + <rng:ref name="draw-contour-path"/> + </rng:choice> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="draw-frame-attlist"> + <rng:optional> + <rng:attribute name="draw:copy-of"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="draw-g"> + <rng:element name="draw:g"> + <rng:ref name="draw-g-attlist"/> + <rng:ref name="common-draw-z-index-attlist"/> + <rng:ref name="common-draw-name-attlist"/> + <rng:ref name="common-draw-id-attlist"/> + <rng:ref name="common-draw-style-name-attlist"/> + <rng:ref name="common-text-spreadsheet-shape-attlist"/> + <rng:ref name="common-draw-caption-id-attlist"/> + <rng:optional> + <rng:ref name="svg-title"/> + </rng:optional> + <rng:optional> + <rng:ref name="svg-desc"/> + </rng:optional> + <rng:optional> + <rng:ref name="office-event-listeners"/> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="draw-glue-point"/> + </rng:zeroOrMore> + <rng:zeroOrMore> + <rng:ref name="shape"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="draw-g-attlist"> + <rng:optional> + <rng:attribute name="svg:y"> + <rng:ref name="coordinate"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="draw-glue-point"> + <rng:element name="draw:glue-point"> + <rng:ref name="draw-glue-point-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="draw-glue-point-attlist"> + <rng:interleave> + <rng:attribute name="draw:id"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + <rng:attribute name="svg:x"> + <rng:choice> + <rng:ref name="distance"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + <rng:attribute name="svg:y"> + <rng:choice> + <rng:ref name="distance"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + <rng:optional> + <rng:attribute name="draw:align"> + <rng:choice> + <rng:value>top-left</rng:value> + <rng:value>top</rng:value> + <rng:value>top-right</rng:value> + <rng:value>left</rng:value> + <rng:value>center</rng:value> + <rng:value>right</rng:value> + <rng:value>bottom-left</rng:value> + <rng:value>bottom-right</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:attribute name="draw:escape-direction"> + <rng:choice> + <rng:value>auto</rng:value> + <rng:value>left</rng:value> + <rng:value>right</rng:value> + <rng:value>up</rng:value> + <rng:value>down</rng:value> + <rng:value>horizontal</rng:value> + <rng:value>vertical</rng:value> + </rng:choice> + </rng:attribute> + </rng:interleave> + </rng:define> + <rng:define name="draw-gradient"> + <rng:element name="draw:gradient"> + <rng:ref name="common-draw-gradient-attlist"/> + <rng:ref name="draw-gradient-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="draw-gradient-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="draw:start-color"> + <rng:ref name="color"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:end-color"> + <rng:ref name="color"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:start-intensity"> + <rng:ref name="zeroToHundredPercent"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:end-intensity"> + <rng:ref name="zeroToHundredPercent"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="draw-handle"> + <rng:element name="draw:handle"> + <rng:ref name="draw-handle-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="draw-handle-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="draw:handle-mirror-vertical"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:handle-mirror-horizontal"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:handle-switched"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:attribute name="draw:handle-position"> + <rng:ref name="string"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="draw:handle-range-x-minimum"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:handle-range-x-maximum"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:handle-range-y-minimum"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:handle-range-y-maximum"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:handle-polar"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:handle-radius-range-minimum"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:handle-radius-range-maximum"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="draw-hatch"> + <rng:element name="draw:hatch"> + <rng:ref name="draw-hatch-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="draw-hatch-attlist"> + <rng:interleave> + <rng:attribute name="draw:name"> + <rng:ref name="styleName"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="draw:display-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:attribute name="draw:style"> + <rng:choice> + <rng:value>single</rng:value> + <rng:value>double</rng:value> + <rng:value>triple</rng:value> + </rng:choice> + </rng:attribute> + <rng:optional> + <rng:attribute name="draw:color"> + <rng:ref name="color"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:distance"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:rotation"> + <rng:ref name="angle"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="draw-image"> + <rng:element name="draw:image"> + <rng:ref name="draw-image-attlist"/> + <rng:choice> + <rng:ref name="common-draw-data-attlist"/> + <rng:ref name="office-binary-data"/> + </rng:choice> + <rng:ref name="draw-text"/> + </rng:element> + </rng:define> + <rng:define name="draw-image-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="draw:filter-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:ref name="xml-id"/> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="draw-image-map"> + <rng:element name="draw:image-map"> + <rng:zeroOrMore> + <rng:choice> + <rng:ref name="draw-area-rectangle"/> + <rng:ref name="draw-area-circle"/> + <rng:ref name="draw-area-polygon"/> + </rng:choice> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="draw-layer"> + <rng:element name="draw:layer"> + <rng:ref name="draw-layer-attlist"/> + <rng:optional> + <rng:ref name="svg-title"/> + </rng:optional> + <rng:optional> + <rng:ref name="svg-desc"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="draw-layer-attlist"> + <rng:interleave> + <rng:attribute name="draw:name"> + <rng:ref name="string"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="draw:protected"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:display"> + <rng:choice> + <rng:value>always</rng:value> + <rng:value>screen</rng:value> + <rng:value>printer</rng:value> + <rng:value>none</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="draw-layer-set"> + <rng:element name="draw:layer-set"> + <rng:zeroOrMore> + <rng:ref name="draw-layer"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="draw-line"> + <rng:element name="draw:line"> + <rng:ref name="draw-line-attlist"/> + <rng:ref name="common-draw-shape-with-text-and-styles-attlist"/> + <rng:ref name="common-draw-caption-id-attlist"/> + <rng:optional> + <rng:ref name="svg-title"/> + </rng:optional> + <rng:optional> + <rng:ref name="svg-desc"/> + </rng:optional> + <rng:optional> + <rng:ref name="office-event-listeners"/> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="draw-glue-point"/> + </rng:zeroOrMore> + <rng:ref name="draw-text"/> + </rng:element> + </rng:define> + <rng:define name="draw-line-attlist"> + <rng:interleave> + <rng:attribute name="svg:x1"> + <rng:ref name="coordinate"/> + </rng:attribute> + <rng:attribute name="svg:y1"> + <rng:ref name="coordinate"/> + </rng:attribute> + <rng:attribute name="svg:x2"> + <rng:ref name="coordinate"/> + </rng:attribute> + <rng:attribute name="svg:y2"> + <rng:ref name="coordinate"/> + </rng:attribute> + </rng:interleave> + </rng:define> + <rng:define name="draw-marker"> + <rng:element name="draw:marker"> + <rng:ref name="draw-marker-attlist"/> + <rng:ref name="common-draw-viewbox-attlist"/> + <rng:ref name="common-draw-path-data-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="draw-marker-attlist"> + <rng:interleave> + <rng:attribute name="draw:name"> + <rng:ref name="styleName"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="draw:display-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="draw-measure"> + <rng:element name="draw:measure"> + <rng:ref name="draw-measure-attlist"/> + <rng:ref name="common-draw-shape-with-text-and-styles-attlist"/> + <rng:ref name="common-draw-caption-id-attlist"/> + <rng:optional> + <rng:ref name="svg-title"/> + </rng:optional> + <rng:optional> + <rng:ref name="svg-desc"/> + </rng:optional> + <rng:optional> + <rng:ref name="office-event-listeners"/> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="draw-glue-point"/> + </rng:zeroOrMore> + <rng:ref name="draw-text"/> + </rng:element> + </rng:define> + <rng:define name="draw-measure-attlist"> + <rng:interleave> + <rng:attribute name="svg:x1"> + <rng:ref name="coordinate"/> + </rng:attribute> + <rng:attribute name="svg:y1"> + <rng:ref name="coordinate"/> + </rng:attribute> + <rng:attribute name="svg:x2"> + <rng:ref name="coordinate"/> + </rng:attribute> + <rng:attribute name="svg:y2"> + <rng:ref name="coordinate"/> + </rng:attribute> + </rng:interleave> + </rng:define> + <rng:define name="draw-object"> + <rng:element name="draw:object"> + <rng:ref name="draw-object-attlist"/> + <rng:choice> + <rng:ref name="common-draw-data-attlist"/> + <rng:ref name="office-document"/> + <rng:ref name="math-math"/> + </rng:choice> + </rng:element> + </rng:define> + <rng:define name="draw-object-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="draw:notify-on-update-of-ranges"> + <rng:choice> + <rng:ref name="cellRangeAddressList"/> + <rng:ref name="string"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:ref name="xml-id"/> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="draw-object-ole"> + <rng:element name="draw:object-ole"> + <rng:ref name="draw-object-ole-attlist"/> + <rng:choice> + <rng:ref name="common-draw-data-attlist"/> + <rng:ref name="office-binary-data"/> + </rng:choice> + </rng:element> + </rng:define> + <rng:define name="draw-object-ole-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="draw:class-id"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:ref name="xml-id"/> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="draw-opacity"> + <rng:element name="draw:opacity"> + <rng:ref name="common-draw-gradient-attlist"/> + <rng:ref name="draw-opacity-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="draw-opacity-attlist"> + <rng:optional> + <rng:attribute name="draw:start"> + <rng:ref name="zeroToHundredPercent"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:end"> + <rng:ref name="zeroToHundredPercent"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="draw-page"> + <rng:element name="draw:page"> + <rng:ref name="common-presentation-header-footer-attlist"/> + <rng:ref name="draw-page-attlist"/> + <rng:optional> + <rng:ref name="svg-title"/> + </rng:optional> + <rng:optional> + <rng:ref name="svg-desc"/> + </rng:optional> + <rng:optional> + <rng:ref name="draw-layer-set"/> + </rng:optional> + <rng:optional> + <rng:ref name="office-forms"/> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="shape"/> + </rng:zeroOrMore> + <rng:optional> + <rng:choice> + <rng:ref name="presentation-animations"/> + <rng:ref name="animation-element"/> + </rng:choice> + </rng:optional> + <rng:optional> + <rng:ref name="presentation-notes"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="draw-page-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="draw:name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:attribute name="draw:master-page-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="presentation:presentation-page-layout-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:group> + <rng:ref name="xml-id"/> + <rng:optional> + <rng:attribute name="draw:id"> + <rng:ref name="NCName"/> + </rng:attribute> + </rng:optional> + </rng:group> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:nav-order"> + <rng:ref name="IDREFS"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="draw-page-thumbnail"> + <rng:element name="draw:page-thumbnail"> + <rng:ref name="draw-page-thumbnail-attlist"/> + <rng:ref name="common-draw-position-attlist"/> + <rng:ref name="common-draw-size-attlist"/> + <rng:ref name="presentation-shape-attlist"/> + <rng:ref name="common-draw-shape-with-styles-attlist"/> + <rng:ref name="common-draw-caption-id-attlist"/> + <rng:optional> + <rng:ref name="svg-title"/> + </rng:optional> + <rng:optional> + <rng:ref name="svg-desc"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="draw-page-thumbnail-attlist"> + <rng:optional> + <rng:attribute name="draw:page-number"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="draw-param"> + <rng:element name="draw:param"> + <rng:ref name="draw-param-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="draw-param-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="draw:name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:value"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="draw-path"> + <rng:element name="draw:path"> + <rng:ref name="common-draw-path-data-attlist"/> + <rng:ref name="common-draw-position-attlist"/> + <rng:ref name="common-draw-size-attlist"/> + <rng:ref name="common-draw-viewbox-attlist"/> + <rng:ref name="common-draw-shape-with-text-and-styles-attlist"/> + <rng:ref name="common-draw-caption-id-attlist"/> + <rng:optional> + <rng:ref name="svg-title"/> + </rng:optional> + <rng:optional> + <rng:ref name="svg-desc"/> + </rng:optional> + <rng:optional> + <rng:ref name="office-event-listeners"/> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="draw-glue-point"/> + </rng:zeroOrMore> + <rng:ref name="draw-text"/> + </rng:element> + </rng:define> + <rng:define name="draw-plugin"> + <rng:element name="draw:plugin"> + <rng:ref name="draw-plugin-attlist"/> + <rng:ref name="common-draw-data-attlist"/> + <rng:zeroOrMore> + <rng:ref name="draw-param"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="draw-plugin-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="draw:mime-type"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:ref name="xml-id"/> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="draw-polygon"> + <rng:element name="draw:polygon"> + <rng:ref name="common-draw-points-attlist"/> + <rng:ref name="common-draw-position-attlist"/> + <rng:ref name="common-draw-size-attlist"/> + <rng:ref name="common-draw-viewbox-attlist"/> + <rng:ref name="common-draw-shape-with-text-and-styles-attlist"/> + <rng:ref name="common-draw-caption-id-attlist"/> + <rng:optional> + <rng:ref name="svg-title"/> + </rng:optional> + <rng:optional> + <rng:ref name="svg-desc"/> + </rng:optional> + <rng:optional> + <rng:ref name="office-event-listeners"/> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="draw-glue-point"/> + </rng:zeroOrMore> + <rng:ref name="draw-text"/> + </rng:element> + </rng:define> + <rng:define name="draw-polyline"> + <rng:element name="draw:polyline"> + <rng:ref name="common-draw-points-attlist"/> + <rng:ref name="common-draw-position-attlist"/> + <rng:ref name="common-draw-size-attlist"/> + <rng:ref name="common-draw-viewbox-attlist"/> + <rng:ref name="common-draw-shape-with-text-and-styles-attlist"/> + <rng:ref name="common-draw-caption-id-attlist"/> + <rng:optional> + <rng:ref name="svg-title"/> + </rng:optional> + <rng:optional> + <rng:ref name="svg-desc"/> + </rng:optional> + <rng:optional> + <rng:ref name="office-event-listeners"/> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="draw-glue-point"/> + </rng:zeroOrMore> + <rng:ref name="draw-text"/> + </rng:element> + </rng:define> + <rng:define name="draw-rect"> + <rng:element name="draw:rect"> + <rng:ref name="draw-rect-attlist"/> + <rng:ref name="common-draw-position-attlist"/> + <rng:ref name="common-draw-size-attlist"/> + <rng:ref name="common-draw-shape-with-text-and-styles-attlist"/> + <rng:ref name="common-draw-caption-id-attlist"/> + <rng:optional> + <rng:ref name="svg-title"/> + </rng:optional> + <rng:optional> + <rng:ref name="svg-desc"/> + </rng:optional> + <rng:optional> + <rng:ref name="office-event-listeners"/> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="draw-glue-point"/> + </rng:zeroOrMore> + <rng:ref name="draw-text"/> + </rng:element> + </rng:define> + <rng:define name="draw-rect-attlist"> + <rng:choice> + <rng:optional> + <rng:attribute name="draw:corner-radius"> + <rng:ref name="nonNegativeLength"/> + </rng:attribute> + </rng:optional> + <rng:group> + <rng:optional> + <rng:attribute name="svg:rx"> + <rng:ref name="nonNegativeLength"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:ry"> + <rng:ref name="nonNegativeLength"/> + </rng:attribute> + </rng:optional> + </rng:group> + </rng:choice> + </rng:define> + <rng:define name="draw-regular-polygon"> + <rng:element name="draw:regular-polygon"> + <rng:ref name="draw-regular-polygon-attlist"/> + <rng:ref name="common-draw-position-attlist"/> + <rng:ref name="common-draw-size-attlist"/> + <rng:ref name="common-draw-shape-with-text-and-styles-attlist"/> + <rng:ref name="common-draw-caption-id-attlist"/> + <rng:optional> + <rng:ref name="svg-title"/> + </rng:optional> + <rng:optional> + <rng:ref name="svg-desc"/> + </rng:optional> + <rng:optional> + <rng:ref name="office-event-listeners"/> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="draw-glue-point"/> + </rng:zeroOrMore> + <rng:ref name="draw-text"/> + </rng:element> + </rng:define> + <rng:define name="draw-regular-polygon-attlist"> + <rng:interleave> + <rng:choice> + <rng:attribute name="draw:concave"> + <rng:value>false</rng:value> + </rng:attribute> + <rng:group> + <rng:attribute name="draw:concave"> + <rng:value>true</rng:value> + </rng:attribute> + <rng:ref name="draw-regular-polygon-sharpness-attlist"/> + </rng:group> + </rng:choice> + <rng:attribute name="draw:corners"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:interleave> + </rng:define> + <rng:define name="draw-regular-polygon-sharpness-attlist"> + <rng:attribute name="draw:sharpness"> + <rng:ref name="percent"/> + </rng:attribute> + </rng:define> + <rng:define name="draw-stroke-dash"> + <rng:element name="draw:stroke-dash"> + <rng:ref name="draw-stroke-dash-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="draw-stroke-dash-attlist"> + <rng:interleave> + <rng:attribute name="draw:name"> + <rng:ref name="styleName"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="draw:display-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:style"> + <rng:choice> + <rng:value>rect</rng:value> + <rng:value>round</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:dots1"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:dots1-length"> + <rng:choice> + <rng:ref name="length"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:dots2"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:dots2-length"> + <rng:choice> + <rng:ref name="length"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:distance"> + <rng:choice> + <rng:ref name="length"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="draw-text"> + <rng:zeroOrMore> + <rng:choice> + <rng:ref name="text-p"/> + <rng:ref name="text-list"/> + </rng:choice> + </rng:zeroOrMore> + </rng:define> + <rng:define name="draw-text-box"> + <rng:element name="draw:text-box"> + <rng:ref name="draw-text-box-attlist"/> + <rng:zeroOrMore> + <rng:ref name="text-content"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="draw-text-box-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="draw:chain-next-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:corner-radius"> + <rng:ref name="nonNegativeLength"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:min-height"> + <rng:choice> + <rng:ref name="length"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:min-width"> + <rng:choice> + <rng:ref name="length"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:max-height"> + <rng:choice> + <rng:ref name="length"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:max-width"> + <rng:choice> + <rng:ref name="length"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:group> + <rng:ref name="xml-id"/> + <rng:optional> + <rng:attribute name="text:id"> + <rng:ref name="NCName"/> + </rng:attribute> + </rng:optional> + </rng:group> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="dropdown"> + <rng:optional> + <rng:attribute name="form:dropdown"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="duration"> + <rng:data type="duration"/> + </rng:define> + <rng:define name="extrusionOrigin"> + <rng:data type="double"> + <rng:param name="minInclusive">-0.5</rng:param> + <rng:param name="maxInclusive">0.5</rng:param> + </rng:data> + </rng:define> + <rng:define name="fontFamilyGeneric"> + <rng:choice> + <rng:value>roman</rng:value> + <rng:value>swiss</rng:value> + <rng:value>modern</rng:value> + <rng:value>decorative</rng:value> + <rng:value>script</rng:value> + <rng:value>system</rng:value> + </rng:choice> + </rng:define> + <rng:define name="fontPitch"> + <rng:choice> + <rng:value>fixed</rng:value> + <rng:value>variable</rng:value> + </rng:choice> + </rng:define> + <rng:define name="fontStyle"> + <rng:choice> + <rng:value>normal</rng:value> + <rng:value>italic</rng:value> + <rng:value>oblique</rng:value> + </rng:choice> + </rng:define> + <rng:define name="fontVariant"> + <rng:choice> + <rng:value>normal</rng:value> + <rng:value>small-caps</rng:value> + </rng:choice> + </rng:define> + <rng:define name="fontWeight"> + <rng:choice> + <rng:value>normal</rng:value> + <rng:value>bold</rng:value> + <rng:value>100</rng:value> + <rng:value>200</rng:value> + <rng:value>300</rng:value> + <rng:value>400</rng:value> + <rng:value>500</rng:value> + <rng:value>600</rng:value> + <rng:value>700</rng:value> + <rng:value>800</rng:value> + <rng:value>900</rng:value> + </rng:choice> + </rng:define> + <rng:define name="for"> + <rng:optional> + <rng:attribute name="form:for"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="form-button-attlist"> + <rng:interleave> + <rng:ref name="form-control-attlist"/> + <rng:ref name="button-type"/> + <rng:ref name="common-disabled-attlist"/> + <rng:ref name="label"/> + <rng:ref name="image-data"/> + <rng:ref name="common-printable-attlist"/> + <rng:ref name="common-tab-attlist"/> + <rng:ref name="target-frame"/> + <rng:ref name="target-location"/> + <rng:ref name="common-title-attlist"/> + <rng:ref name="common-value-attlist"/> + <rng:ref name="common-form-relative-image-position-attlist"/> + <rng:ref name="common-repeat"/> + <rng:ref name="common-delay-for-repeat"/> + <rng:optional> + <rng:attribute name="form:default-button"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:toggle"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:focus-on-click"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:xforms-submission"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="form-checkbox-attlist"> + <rng:interleave> + <rng:ref name="form-control-attlist"/> + <rng:ref name="common-disabled-attlist"/> + <rng:ref name="label"/> + <rng:ref name="common-printable-attlist"/> + <rng:ref name="common-tab-attlist"/> + <rng:ref name="common-title-attlist"/> + <rng:ref name="common-value-attlist"/> + <rng:ref name="common-data-field-attlist"/> + <rng:ref name="common-form-visual-effect-attlist"/> + <rng:ref name="common-form-relative-image-position-attlist"/> + <rng:ref name="common-linked-cell"/> + <rng:optional> + <rng:attribute name="form:current-state"> + <rng:ref name="states"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:is-tristate"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:state"> + <rng:ref name="states"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="form-column"> + <rng:element name="form:column"> + <rng:ref name="form-column-attlist"/> + <rng:oneOrMore> + <rng:ref name="column-controls"/> + </rng:oneOrMore> + </rng:element> + </rng:define> + <rng:define name="form-column-attlist"> + <rng:ref name="common-form-control-attlist"/> + <rng:ref name="label"/> + <rng:ref name="text-style-name"/> + </rng:define> + <rng:define name="form-combobox-attlist"> + <rng:interleave> + <rng:ref name="form-control-attlist"/> + <rng:ref name="common-current-value-attlist"/> + <rng:ref name="common-disabled-attlist"/> + <rng:ref name="dropdown"/> + <rng:ref name="common-maxlength-attlist"/> + <rng:ref name="common-printable-attlist"/> + <rng:ref name="common-readonly-attlist"/> + <rng:ref name="size"/> + <rng:ref name="common-tab-attlist"/> + <rng:ref name="common-title-attlist"/> + <rng:ref name="common-value-attlist"/> + <rng:ref name="common-convert-empty-attlist"/> + <rng:ref name="common-data-field-attlist"/> + <rng:ref name="list-source"/> + <rng:ref name="list-source-type"/> + <rng:ref name="common-linked-cell"/> + <rng:ref name="common-source-cell-range"/> + <rng:optional> + <rng:attribute name="form:auto-complete"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="form-connection-resource"> + <rng:element name="form:connection-resource"> + <rng:attribute name="xlink:href"> + <rng:ref name="anyIRI"/> + </rng:attribute> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="form-control-attlist"> + <rng:ref name="common-form-control-attlist"/> + <rng:ref name="common-control-id-attlist"/> + <rng:ref name="xforms-bind-attlist"/> + </rng:define> + <rng:define name="form-date-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="form:value"> + <rng:ref name="date"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:current-value"> + <rng:ref name="date"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:min-value"> + <rng:ref name="date"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:max-value"> + <rng:ref name="date"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="form-file-attlist"> + <rng:ref name="form-control-attlist"/> + <rng:ref name="common-current-value-attlist"/> + <rng:ref name="common-disabled-attlist"/> + <rng:ref name="common-maxlength-attlist"/> + <rng:ref name="common-printable-attlist"/> + <rng:ref name="common-readonly-attlist"/> + <rng:ref name="common-tab-attlist"/> + <rng:ref name="common-title-attlist"/> + <rng:ref name="common-value-attlist"/> + <rng:ref name="common-linked-cell"/> + </rng:define> + <rng:define name="form-fixed-text-attlist"> + <rng:interleave> + <rng:ref name="form-control-attlist"/> + <rng:ref name="for"/> + <rng:ref name="common-disabled-attlist"/> + <rng:ref name="label"/> + <rng:ref name="common-printable-attlist"/> + <rng:ref name="common-title-attlist"/> + <rng:optional> + <rng:attribute name="form:multi-line"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="form-form"> + <rng:element name="form:form"> + <rng:ref name="common-form-control-attlist"/> + <rng:ref name="form-form-attlist"/> + <rng:optional> + <rng:ref name="form-properties"/> + </rng:optional> + <rng:optional> + <rng:ref name="office-event-listeners"/> + </rng:optional> + <rng:zeroOrMore> + <rng:choice> + <rng:ref name="controls"/> + <rng:ref name="form-form"/> + </rng:choice> + </rng:zeroOrMore> + <rng:optional> + <rng:ref name="form-connection-resource"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="form-form-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="xlink:type"> + <rng:value>simple</rng:value> + </rng:attribute> + <rng:attribute name="xlink:href"> + <rng:ref name="anyIRI"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="xlink:actuate"> + <rng:value>onRequest</rng:value> + </rng:attribute> + </rng:optional> + </rng:optional> + <rng:optional> + <rng:attribute name="office:target-frame"> + <rng:ref name="targetFrameName"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:method"> + <rng:choice> + <rng:value>get</rng:value> + <rng:value>post</rng:value> + <rng:ref name="string"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:enctype"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:allow-deletes"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:allow-inserts"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:allow-updates"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:apply-filter"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:command-type"> + <rng:choice> + <rng:value>table</rng:value> + <rng:value>query</rng:value> + <rng:value>command</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:command"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:datasource"> + <rng:choice> + <rng:ref name="anyIRI"/> + <rng:ref name="string"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:master-fields"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:detail-fields"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:escape-processing"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:filter"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:ignore-result"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:navigation-mode"> + <rng:ref name="navigation"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:order"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:tab-cycle"> + <rng:ref name="tab-cycles"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="form-formatted-text-attlist"> + <rng:interleave> + <rng:ref name="form-control-attlist"/> + <rng:ref name="common-current-value-attlist"/> + <rng:ref name="common-disabled-attlist"/> + <rng:ref name="common-maxlength-attlist"/> + <rng:ref name="common-printable-attlist"/> + <rng:ref name="common-readonly-attlist"/> + <rng:ref name="common-tab-attlist"/> + <rng:ref name="common-title-attlist"/> + <rng:ref name="common-value-attlist"/> + <rng:ref name="common-convert-empty-attlist"/> + <rng:ref name="common-data-field-attlist"/> + <rng:ref name="common-linked-cell"/> + <rng:ref name="common-spin-button"/> + <rng:ref name="common-repeat"/> + <rng:ref name="common-delay-for-repeat"/> + <rng:optional> + <rng:attribute name="form:max-value"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:min-value"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:validation"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="form-frame-attlist"> + <rng:ref name="form-control-attlist"/> + <rng:ref name="common-disabled-attlist"/> + <rng:ref name="for"/> + <rng:ref name="label"/> + <rng:ref name="common-printable-attlist"/> + <rng:ref name="common-title-attlist"/> + </rng:define> + <rng:define name="form-generic-control-attlist"> + <rng:ref name="form-control-attlist"/> + </rng:define> + <rng:define name="form-grid-attlist"> + <rng:ref name="form-control-attlist"/> + <rng:ref name="common-disabled-attlist"/> + <rng:ref name="common-printable-attlist"/> + <rng:ref name="common-tab-attlist"/> + <rng:ref name="common-title-attlist"/> + </rng:define> + <rng:define name="form-hidden-attlist"> + <rng:ref name="form-control-attlist"/> + <rng:ref name="common-value-attlist"/> + </rng:define> + <rng:define name="form-image-attlist"> + <rng:ref name="form-control-attlist"/> + <rng:ref name="button-type"/> + <rng:ref name="common-disabled-attlist"/> + <rng:ref name="image-data"/> + <rng:ref name="common-printable-attlist"/> + <rng:ref name="common-tab-attlist"/> + <rng:ref name="target-frame"/> + <rng:ref name="target-location"/> + <rng:ref name="common-title-attlist"/> + <rng:ref name="common-value-attlist"/> + </rng:define> + <rng:define name="form-image-frame-attlist"> + <rng:ref name="form-control-attlist"/> + <rng:ref name="common-disabled-attlist"/> + <rng:ref name="image-data"/> + <rng:ref name="common-printable-attlist"/> + <rng:ref name="common-readonly-attlist"/> + <rng:ref name="common-title-attlist"/> + <rng:ref name="common-data-field-attlist"/> + </rng:define> + <rng:define name="form-item"> + <rng:element name="form:item"> + <rng:ref name="form-item-attlist"/> + <rng:text/> + </rng:element> + </rng:define> + <rng:define name="form-item-attlist"> + <rng:ref name="label"/> + </rng:define> + <rng:define name="form-listbox-attlist"> + <rng:interleave> + <rng:ref name="form-control-attlist"/> + <rng:ref name="common-disabled-attlist"/> + <rng:ref name="dropdown"/> + <rng:ref name="common-printable-attlist"/> + <rng:ref name="size"/> + <rng:ref name="common-tab-attlist"/> + <rng:ref name="common-title-attlist"/> + <rng:ref name="bound-column"/> + <rng:ref name="common-data-field-attlist"/> + <rng:ref name="list-source"/> + <rng:ref name="list-source-type"/> + <rng:ref name="common-linked-cell"/> + <rng:ref name="list-linkage-type"/> + <rng:ref name="common-source-cell-range"/> + <rng:optional> + <rng:attribute name="form:multiple"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:xforms-list-source"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="form-number-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="form:value"> + <rng:ref name="double"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:current-value"> + <rng:ref name="double"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:min-value"> + <rng:ref name="double"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:max-value"> + <rng:ref name="double"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="form-option"> + <rng:element name="form:option"> + <rng:ref name="form-option-attlist"/> + <rng:text/> + </rng:element> + </rng:define> + <rng:define name="form-option-attlist"> + <rng:ref name="current-selected"/> + <rng:ref name="selected"/> + <rng:ref name="label"/> + <rng:ref name="common-value-attlist"/> + </rng:define> + <rng:define name="form-password-attlist"> + <rng:interleave> + <rng:ref name="form-control-attlist"/> + <rng:ref name="common-disabled-attlist"/> + <rng:ref name="common-maxlength-attlist"/> + <rng:ref name="common-printable-attlist"/> + <rng:ref name="common-tab-attlist"/> + <rng:ref name="common-title-attlist"/> + <rng:ref name="common-value-attlist"/> + <rng:ref name="common-convert-empty-attlist"/> + <rng:ref name="common-linked-cell"/> + <rng:optional> + <rng:attribute name="form:echo-char"> + <rng:ref name="character"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="form-properties"> + <rng:element name="form:properties"> + <rng:oneOrMore> + <rng:ref name="form-property"/> + </rng:oneOrMore> + </rng:element> + </rng:define> + <rng:define name="form-property"> + <rng:choice> + <rng:element name="form:property"> + <rng:ref name="form-property-name"/> + <rng:ref name="form-property-value-and-type-attlist"/> + </rng:element> + <rng:element name="form:list-property"> + <rng:ref name="form-property-name"/> + <rng:ref name="form-property-type-and-value-list"/> + </rng:element> + </rng:choice> + </rng:define> + <rng:define name="form-property-name"> + <rng:attribute name="form:property-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:define> + <rng:define name="form-property-type-and-value-list"> + <rng:choice> + <rng:group> + <rng:attribute name="office:value-type"> + <rng:value>float</rng:value> + </rng:attribute> + <rng:zeroOrMore> + <rng:element name="form:list-value"> + <rng:attribute name="office:value"> + <rng:ref name="double"/> + </rng:attribute> + </rng:element> + </rng:zeroOrMore> + </rng:group> + <rng:group> + <rng:attribute name="office:value-type"> + <rng:value>percentage</rng:value> + </rng:attribute> + <rng:zeroOrMore> + <rng:element name="form:list-value"> + <rng:attribute name="office:value"> + <rng:ref name="double"/> + </rng:attribute> + </rng:element> + </rng:zeroOrMore> + </rng:group> + <rng:group> + <rng:attribute name="office:value-type"> + <rng:value>currency</rng:value> + </rng:attribute> + <rng:zeroOrMore> + <rng:element name="form:list-value"> + <rng:attribute name="office:value"> + <rng:ref name="double"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="office:currency"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:element> + </rng:zeroOrMore> + </rng:group> + <rng:group> + <rng:attribute name="office:value-type"> + <rng:value>date</rng:value> + </rng:attribute> + <rng:zeroOrMore> + <rng:element name="form:list-value"> + <rng:attribute name="office:date-value"> + <rng:ref name="dateOrDateTime"/> + </rng:attribute> + </rng:element> + </rng:zeroOrMore> + </rng:group> + <rng:group> + <rng:attribute name="office:value-type"> + <rng:value>time</rng:value> + </rng:attribute> + <rng:zeroOrMore> + <rng:element name="form:list-value"> + <rng:attribute name="office:time-value"> + <rng:ref name="duration"/> + </rng:attribute> + </rng:element> + </rng:zeroOrMore> + </rng:group> + <rng:group> + <rng:attribute name="office:value-type"> + <rng:value>boolean</rng:value> + </rng:attribute> + <rng:zeroOrMore> + <rng:element name="form:list-value"> + <rng:attribute name="office:boolean-value"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:element> + </rng:zeroOrMore> + </rng:group> + <rng:group> + <rng:attribute name="office:value-type"> + <rng:value>string</rng:value> + </rng:attribute> + <rng:zeroOrMore> + <rng:element name="form:list-value"> + <rng:attribute name="office:string-value"> + <rng:ref name="string"/> + </rng:attribute> + </rng:element> + </rng:zeroOrMore> + </rng:group> + <rng:attribute name="office:value-type"> + <rng:value>void</rng:value> + </rng:attribute> + </rng:choice> + </rng:define> + <rng:define name="form-property-value-and-type-attlist"> + <rng:choice> + <rng:ref name="common-value-and-type-attlist"/> + <rng:attribute name="office:value-type"> + <rng:value>void</rng:value> + </rng:attribute> + </rng:choice> + </rng:define> + <rng:define name="form-radio-attlist"> + <rng:ref name="form-control-attlist"/> + <rng:ref name="current-selected"/> + <rng:ref name="common-disabled-attlist"/> + <rng:ref name="label"/> + <rng:ref name="common-printable-attlist"/> + <rng:ref name="selected"/> + <rng:ref name="common-tab-attlist"/> + <rng:ref name="common-title-attlist"/> + <rng:ref name="common-value-attlist"/> + <rng:ref name="common-data-field-attlist"/> + <rng:ref name="common-form-visual-effect-attlist"/> + <rng:ref name="common-form-relative-image-position-attlist"/> + <rng:ref name="common-linked-cell"/> + </rng:define> + <rng:define name="form-text-attlist"> + <rng:ref name="form-control-attlist"/> + <rng:ref name="common-current-value-attlist"/> + <rng:ref name="common-disabled-attlist"/> + <rng:ref name="common-maxlength-attlist"/> + <rng:ref name="common-printable-attlist"/> + <rng:ref name="common-readonly-attlist"/> + <rng:ref name="common-tab-attlist"/> + <rng:ref name="common-title-attlist"/> + <rng:ref name="common-value-attlist"/> + <rng:ref name="common-convert-empty-attlist"/> + <rng:ref name="common-data-field-attlist"/> + <rng:ref name="common-linked-cell"/> + </rng:define> + <rng:define name="form-textarea-attlist"> + <rng:ref name="form-control-attlist"/> + <rng:ref name="common-current-value-attlist"/> + <rng:ref name="common-disabled-attlist"/> + <rng:ref name="common-maxlength-attlist"/> + <rng:ref name="common-printable-attlist"/> + <rng:ref name="common-readonly-attlist"/> + <rng:ref name="common-tab-attlist"/> + <rng:ref name="common-title-attlist"/> + <rng:ref name="common-value-attlist"/> + <rng:ref name="common-convert-empty-attlist"/> + <rng:ref name="common-data-field-attlist"/> + <rng:ref name="common-linked-cell"/> + </rng:define> + <rng:define name="form-time-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="form:value"> + <rng:ref name="time"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:current-value"> + <rng:ref name="time"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:min-value"> + <rng:ref name="time"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:max-value"> + <rng:ref name="time"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="form-value-range-attlist"> + <rng:interleave> + <rng:ref name="form-control-attlist"/> + <rng:ref name="common-disabled-attlist"/> + <rng:ref name="common-printable-attlist"/> + <rng:ref name="common-tab-attlist"/> + <rng:ref name="common-title-attlist"/> + <rng:ref name="common-value-attlist"/> + <rng:ref name="common-linked-cell"/> + <rng:ref name="common-repeat"/> + <rng:ref name="common-delay-for-repeat"/> + <rng:optional> + <rng:attribute name="form:max-value"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:min-value"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:step-size"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:page-step-size"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:orientation"> + <rng:choice> + <rng:value>horizontal</rng:value> + <rng:value>vertical</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="gradient-style"> + <rng:choice> + <rng:value>linear</rng:value> + <rng:value>axial</rng:value> + <rng:value>radial</rng:value> + <rng:value>ellipsoid</rng:value> + <rng:value>square</rng:value> + <rng:value>rectangular</rng:value> + </rng:choice> + </rng:define> + <rng:define name="header-footer-content"> + <rng:choice> + <rng:group> + <rng:ref name="text-tracked-changes"/> + <rng:ref name="text-decls"/> + <rng:zeroOrMore> + <rng:choice> + <rng:ref name="text-h"/> + <rng:ref name="text-p"/> + <rng:ref name="text-list"/> + <rng:ref name="table-table"/> + <rng:ref name="text-section"/> + <rng:ref name="text-table-of-content"/> + <rng:ref name="text-illustration-index"/> + <rng:ref name="text-table-index"/> + <rng:ref name="text-object-index"/> + <rng:ref name="text-user-index"/> + <rng:ref name="text-alphabetical-index"/> + <rng:ref name="text-bibliography"/> + <rng:ref name="text-index-title"/> + <rng:ref name="change-marks"/> + </rng:choice> + </rng:zeroOrMore> + </rng:group> + <rng:group> + <rng:optional> + <rng:ref name="style-region-left"/> + </rng:optional> + <rng:optional> + <rng:ref name="style-region-center"/> + </rng:optional> + <rng:optional> + <rng:ref name="style-region-right"/> + </rng:optional> + </rng:group> + </rng:choice> + </rng:define> + <rng:define name="heading-attrs"> + <rng:interleave> + <rng:attribute name="text:outline-level"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="text:restart-numbering"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:start-value"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:is-list-header"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="horiBackPos"> + <rng:choice> + <rng:value>left</rng:value> + <rng:value>center</rng:value> + <rng:value>right</rng:value> + </rng:choice> + </rng:define> + <rng:define name="horizontal-mirror"> + <rng:choice> + <rng:value>horizontal</rng:value> + <rng:value>horizontal-on-odd</rng:value> + <rng:value>horizontal-on-even</rng:value> + </rng:choice> + </rng:define> + <rng:define name="image-data"> + <rng:optional> + <rng:attribute name="form:image-data"> + <rng:ref name="anyIRI"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="index-content-main"> + <rng:choice> + <rng:ref name="text-content"/> + <rng:ref name="text-index-title"/> + </rng:choice> + </rng:define> + <rng:define name="integer"> + <rng:data type="integer"/> + </rng:define> + <rng:define name="label"> + <rng:optional> + <rng:attribute name="form:label"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="labelPositions"> + <rng:choice> + <rng:value>avoid-overlap</rng:value> + <rng:value>center</rng:value> + <rng:value>top</rng:value> + <rng:value>top-right</rng:value> + <rng:value>right</rng:value> + <rng:value>bottom-right</rng:value> + <rng:value>bottom</rng:value> + <rng:value>bottom-left</rng:value> + <rng:value>left</rng:value> + <rng:value>top-left</rng:value> + <rng:value>inside</rng:value> + <rng:value>outside</rng:value> + <rng:value>near-origin</rng:value> + </rng:choice> + </rng:define> + <rng:define name="language"> + <rng:data type="language"/> + </rng:define> + <rng:define name="languageCode"> + <rng:data type="token"> + <rng:param name="pattern">[A-Za-z]{1,8}</rng:param> + </rng:data> + </rng:define> + <rng:define name="length"> + <rng:data type="string"> + <rng:param name="pattern">-?([0-9]+(\.[0-9]*)?|\.[0-9]+)((cm)|(mm)|(in)|(pt)|(pc)|(px))</rng:param> + </rng:data> + </rng:define> + <rng:define name="lineMode"> + <rng:choice> + <rng:value>continuous</rng:value> + <rng:value>skip-white-space</rng:value> + </rng:choice> + </rng:define> + <rng:define name="lineStyle"> + <rng:choice> + <rng:value>none</rng:value> + <rng:value>solid</rng:value> + <rng:value>dotted</rng:value> + <rng:value>dash</rng:value> + <rng:value>long-dash</rng:value> + <rng:value>dot-dash</rng:value> + <rng:value>dot-dot-dash</rng:value> + <rng:value>wave</rng:value> + </rng:choice> + </rng:define> + <rng:define name="lineType"> + <rng:choice> + <rng:value>none</rng:value> + <rng:value>single</rng:value> + <rng:value>double</rng:value> + </rng:choice> + </rng:define> + <rng:define name="lineWidth"> + <rng:choice> + <rng:value>auto</rng:value> + <rng:value>normal</rng:value> + <rng:value>bold</rng:value> + <rng:value>thin</rng:value> + <rng:value>medium</rng:value> + <rng:value>thick</rng:value> + <rng:ref name="positiveInteger"/> + <rng:ref name="percent"/> + <rng:ref name="positiveLength"/> + </rng:choice> + </rng:define> + <rng:define name="list-linkage-type"> + <rng:optional> + <rng:attribute name="form:list-linkage-type"> + <rng:choice> + <rng:value>selection</rng:value> + <rng:value>selection-indices</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="list-source"> + <rng:optional> + <rng:attribute name="form:list-source"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="list-source-type"> + <rng:optional> + <rng:attribute name="form:list-source-type"> + <rng:choice> + <rng:value>table</rng:value> + <rng:value>query</rng:value> + <rng:value>sql</rng:value> + <rng:value>sql-pass-through</rng:value> + <rng:value>value-list</rng:value> + <rng:value>table-fields</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="math-math"> + <rng:element name="math:math"> + <rng:ref name="mathMarkup"/> + </rng:element> + </rng:define> + <rng:define name="mathMarkup"> + <dc:description>To avoid inclusion of the complete MathML schema, anything is allowed within a math:math top-level element</dc:description> + <rng:zeroOrMore> + <rng:choice> + <rng:attribute> + <rng:anyName/> + </rng:attribute> + <rng:text/> + <rng:element> + <rng:anyName/> + <rng:ref name="mathMarkup"/> + </rng:element> + </rng:choice> + </rng:zeroOrMore> + </rng:define> + <rng:define name="meta-date-string"> + <rng:element name="meta:date-string"> + <rng:ref name="string"/> + </rng:element> + </rng:define> + <rng:define name="namespacedToken"> + <rng:data type="QName"> + <rng:param name="pattern">[^:]+:[^:]+</rng:param> + </rng:data> + </rng:define> + <rng:define name="navigation"> + <rng:choice> + <rng:value>none</rng:value> + <rng:value>current</rng:value> + <rng:value>parent</rng:value> + </rng:choice> + </rng:define> + <rng:define name="nonNegativeDecimal"> + <rng:data type="decimal"> + <rng:param name="minInclusive">0.0</rng:param> + </rng:data> + </rng:define> + <rng:define name="nonNegativeInteger"> + <rng:data type="nonNegativeInteger"/> + </rng:define> + <rng:define name="nonNegativeLength"> + <rng:data type="string"> + <rng:param name="pattern">([0-9]+(\.[0-9]*)?|\.[0-9]+)((cm)|(mm)|(in)|(pt)|(pc)|(px))</rng:param> + </rng:data> + </rng:define> + <rng:define name="nonNegativePixelLength"> + <rng:data type="string"> + <rng:param name="pattern">([0-9]+(\.[0-9]*)?|\.[0-9]+)(px)</rng:param> + </rng:data> + </rng:define> + <rng:define name="number-am-pm"> + <rng:element name="number:am-pm"> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="number-and-text"> + <rng:ref name="number-number"/> + <rng:optional> + <rng:ref name="number-text"/> + </rng:optional> + </rng:define> + <rng:define name="number-boolean"> + <rng:element name="number:boolean"> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="number-boolean-style"> + <rng:element name="number:boolean-style"> + <rng:ref name="common-data-style-attlist"/> + <rng:optional> + <rng:ref name="style-text-properties"/> + </rng:optional> + <rng:optional> + <rng:ref name="number-text"/> + </rng:optional> + <rng:optional> + <rng:ref name="number-boolean"/> + <rng:optional> + <rng:ref name="number-text"/> + </rng:optional> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="style-map"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="number-currency-style"> + <rng:element name="number:currency-style"> + <rng:ref name="common-data-style-attlist"/> + <rng:ref name="common-auto-reorder-attlist"/> + <rng:optional> + <rng:ref name="style-text-properties"/> + </rng:optional> + <rng:optional> + <rng:ref name="number-text"/> + </rng:optional> + <rng:optional> + <rng:choice> + <rng:group> + <rng:ref name="number-and-text"/> + <rng:optional> + <rng:ref name="currency-symbol-and-text"/> + </rng:optional> + </rng:group> + <rng:group> + <rng:ref name="currency-symbol-and-text"/> + <rng:optional> + <rng:ref name="number-and-text"/> + </rng:optional> + </rng:group> + </rng:choice> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="style-map"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="number-currency-symbol"> + <rng:element name="number:currency-symbol"> + <rng:ref name="number-currency-symbol-attlist"/> + <rng:text/> + </rng:element> + </rng:define> + <rng:define name="number-currency-symbol-attlist"> + <rng:optional> + <rng:attribute name="number:language"> + <rng:ref name="languageCode"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="number:country"> + <rng:ref name="countryCode"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="number:script"> + <rng:ref name="scriptCode"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="number:rfc-language-tag"> + <rng:ref name="language"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="number-date-style"> + <rng:element name="number:date-style"> + <rng:ref name="common-data-style-attlist"/> + <rng:ref name="common-auto-reorder-attlist"/> + <rng:ref name="common-format-source-attlist"/> + <rng:optional> + <rng:ref name="style-text-properties"/> + </rng:optional> + <rng:optional> + <rng:ref name="number-text"/> + </rng:optional> + <rng:oneOrMore> + <rng:ref name="any-date"/> + <rng:optional> + <rng:ref name="number-text"/> + </rng:optional> + </rng:oneOrMore> + <rng:zeroOrMore> + <rng:ref name="style-map"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="number-day"> + <rng:element name="number:day"> + <rng:ref name="number-day-attlist"/> + <rng:ref name="common-calendar-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="number-day-attlist"> + <rng:optional> + <rng:attribute name="number:style"> + <rng:choice> + <rng:value>short</rng:value> + <rng:value>long</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="number-day-of-week"> + <rng:element name="number:day-of-week"> + <rng:ref name="number-day-of-week-attlist"/> + <rng:ref name="common-calendar-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="number-day-of-week-attlist"> + <rng:optional> + <rng:attribute name="number:style"> + <rng:choice> + <rng:value>short</rng:value> + <rng:value>long</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="number-embedded-text"> + <rng:element name="number:embedded-text"> + <rng:ref name="number-embedded-text-attlist"/> + <rng:text/> + </rng:element> + </rng:define> + <rng:define name="number-embedded-text-attlist"> + <rng:attribute name="number:position"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:define> + <rng:define name="number-era"> + <rng:element name="number:era"> + <rng:ref name="number-era-attlist"/> + <rng:ref name="common-calendar-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="number-era-attlist"> + <rng:optional> + <rng:attribute name="number:style"> + <rng:choice> + <rng:value>short</rng:value> + <rng:value>long</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="number-fraction"> + <rng:element name="number:fraction"> + <rng:ref name="number-fraction-attlist"/> + <rng:ref name="common-number-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="number-fraction-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="number:min-numerator-digits"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="number:min-denominator-digits"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="number:denominator-value"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="number-hours"> + <rng:element name="number:hours"> + <rng:ref name="number-hours-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="number-hours-attlist"> + <rng:optional> + <rng:attribute name="number:style"> + <rng:choice> + <rng:value>short</rng:value> + <rng:value>long</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="number-minutes"> + <rng:element name="number:minutes"> + <rng:ref name="number-minutes-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="number-minutes-attlist"> + <rng:optional> + <rng:attribute name="number:style"> + <rng:choice> + <rng:value>short</rng:value> + <rng:value>long</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="number-month"> + <rng:element name="number:month"> + <rng:ref name="number-month-attlist"/> + <rng:ref name="common-calendar-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="number-month-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="number:textual"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="number:possessive-form"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="number:style"> + <rng:choice> + <rng:value>short</rng:value> + <rng:value>long</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="number-number"> + <rng:element name="number:number"> + <rng:ref name="number-number-attlist"/> + <rng:ref name="common-decimal-places-attlist"/> + <rng:ref name="common-number-attlist"/> + <rng:zeroOrMore> + <rng:ref name="number-embedded-text"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="number-number-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="number:decimal-replacement"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="number:display-factor"> + <rng:ref name="double"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="number-number-style"> + <rng:element name="number:number-style"> + <rng:ref name="common-data-style-attlist"/> + <rng:optional> + <rng:ref name="style-text-properties"/> + </rng:optional> + <rng:optional> + <rng:ref name="number-text"/> + </rng:optional> + <rng:optional> + <rng:ref name="any-number"/> + <rng:optional> + <rng:ref name="number-text"/> + </rng:optional> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="style-map"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="number-percentage-style"> + <rng:element name="number:percentage-style"> + <rng:ref name="common-data-style-attlist"/> + <rng:optional> + <rng:ref name="style-text-properties"/> + </rng:optional> + <rng:optional> + <rng:ref name="number-text"/> + </rng:optional> + <rng:optional> + <rng:ref name="number-and-text"/> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="style-map"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="number-quarter"> + <rng:element name="number:quarter"> + <rng:ref name="number-quarter-attlist"/> + <rng:ref name="common-calendar-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="number-quarter-attlist"> + <rng:optional> + <rng:attribute name="number:style"> + <rng:choice> + <rng:value>short</rng:value> + <rng:value>long</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="number-scientific-number"> + <rng:element name="number:scientific-number"> + <rng:ref name="number-scientific-number-attlist"/> + <rng:ref name="common-decimal-places-attlist"/> + <rng:ref name="common-number-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="number-scientific-number-attlist"> + <rng:optional> + <rng:attribute name="number:min-exponent-digits"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="number-seconds"> + <rng:element name="number:seconds"> + <rng:ref name="number-seconds-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="number-seconds-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="number:style"> + <rng:choice> + <rng:value>short</rng:value> + <rng:value>long</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="number:decimal-places"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="number-text"> + <rng:element name="number:text"> + <rng:text/> + </rng:element> + </rng:define> + <rng:define name="number-text-content"> + <rng:element name="number:text-content"> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="number-text-style"> + <rng:element name="number:text-style"> + <rng:ref name="common-data-style-attlist"/> + <rng:optional> + <rng:ref name="style-text-properties"/> + </rng:optional> + <rng:optional> + <rng:ref name="number-text"/> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="number-text-content"/> + <rng:optional> + <rng:ref name="number-text"/> + </rng:optional> + </rng:zeroOrMore> + <rng:zeroOrMore> + <rng:ref name="style-map"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="number-time-style"> + <rng:element name="number:time-style"> + <rng:ref name="number-time-style-attlist"/> + <rng:ref name="common-data-style-attlist"/> + <rng:ref name="common-format-source-attlist"/> + <rng:optional> + <rng:ref name="style-text-properties"/> + </rng:optional> + <rng:optional> + <rng:ref name="number-text"/> + </rng:optional> + <rng:oneOrMore> + <rng:ref name="any-time"/> + <rng:optional> + <rng:ref name="number-text"/> + </rng:optional> + </rng:oneOrMore> + <rng:zeroOrMore> + <rng:ref name="style-map"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="number-time-style-attlist"> + <rng:optional> + <rng:attribute name="number:truncate-on-overflow"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="number-week-of-year"> + <rng:element name="number:week-of-year"> + <rng:ref name="common-calendar-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="number-year"> + <rng:element name="number:year"> + <rng:ref name="number-year-attlist"/> + <rng:ref name="common-calendar-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="number-year-attlist"> + <rng:optional> + <rng:attribute name="number:style"> + <rng:choice> + <rng:value>short</rng:value> + <rng:value>long</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="office-annotation"> + <rng:element name="office:annotation"> + <rng:ref name="office-annotation-attlist"/> + <rng:ref name="draw-caption-attlist"/> + <rng:ref name="common-draw-position-attlist"/> + <rng:ref name="common-draw-size-attlist"/> + <rng:ref name="common-draw-shape-with-text-and-styles-attlist"/> + <rng:optional> + <rng:ref name="dc-creator"/> + </rng:optional> + <rng:optional> + <rng:ref name="dc-date"/> + </rng:optional> + <rng:optional> + <rng:ref name="meta-date-string"/> + </rng:optional> + <rng:zeroOrMore> + <rng:choice> + <rng:ref name="text-p"/> + <rng:ref name="text-list"/> + </rng:choice> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="office-annotation-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="office:display"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:ref name="common-office-annotation-name-attlist"/> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="office-annotation-end"> + <rng:element name="office:annotation-end"> + <rng:ref name="office-annotation-end-attlist"/> + </rng:element> + </rng:define> + <rng:define name="office-annotation-end-attlist"> + <rng:ref name="common-office-annotation-name-attlist"/> + </rng:define> + <rng:define name="office-automatic-styles"> + <rng:optional> + <rng:element name="office:automatic-styles"> + <rng:interleave> + <rng:ref name="styles"/> + <rng:zeroOrMore> + <rng:ref name="style-page-layout"/> + </rng:zeroOrMore> + </rng:interleave> + </rng:element> + </rng:optional> + </rng:define> + <rng:define name="office-binary-data"> + <rng:element name="office:binary-data"> + <rng:ref name="base64Binary"/> + </rng:element> + </rng:define> + <rng:define name="office-body"> + <rng:element name="office:body"> + <rng:ref name="office-body-content"/> + </rng:element> + </rng:define> + <rng:define name="office-body-content"> + <rng:choice> + <rng:element name="office:text"> + <rng:ref name="office-text-attlist"/> + <rng:ref name="office-text-content-prelude"/> + <rng:ref name="office-text-content-main"/> + <rng:ref name="office-text-content-epilogue"/> + </rng:element> + <rng:element name="office:drawing"> + <rng:ref name="office-drawing-attlist"/> + <rng:ref name="office-drawing-content-prelude"/> + <rng:ref name="office-drawing-content-main"/> + <rng:ref name="office-drawing-content-epilogue"/> + </rng:element> + <rng:element name="office:presentation"> + <rng:ref name="office-presentation-attlist"/> + <rng:ref name="office-presentation-content-prelude"/> + <rng:ref name="office-presentation-content-main"/> + <rng:ref name="office-presentation-content-epilogue"/> + </rng:element> + <rng:element name="office:spreadsheet"> + <rng:ref name="office-spreadsheet-attlist"/> + <rng:ref name="office-spreadsheet-content-prelude"/> + <rng:ref name="office-spreadsheet-content-main"/> + <rng:ref name="office-spreadsheet-content-epilogue"/> + </rng:element> + <rng:element name="office:chart"> + <rng:ref name="office-chart-attlist"/> + <rng:ref name="office-chart-content-prelude"/> + <rng:ref name="office-chart-content-main"/> + <rng:ref name="office-chart-content-epilogue"/> + </rng:element> + <rng:element name="office:image"> + <rng:ref name="office-image-attlist"/> + <rng:ref name="office-image-content-prelude"/> + <rng:ref name="office-image-content-main"/> + <rng:ref name="office-image-content-epilogue"/> + </rng:element> + <rng:ref name="office-database"/> + </rng:choice> + </rng:define> + <rng:define name="office-change-info"> + <rng:element name="office:change-info"> + <rng:ref name="dc-creator"/> + <rng:ref name="dc-date"/> + <rng:zeroOrMore> + <rng:ref name="text-p"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="office-chart-attlist"> + <rng:empty/> + </rng:define> + <rng:define name="office-chart-content-epilogue"> + <rng:ref name="table-functions"/> + </rng:define> + <rng:define name="office-chart-content-main"> + <rng:ref name="chart-chart"/> + </rng:define> + <rng:define name="office-chart-content-prelude"> + <rng:ref name="text-decls"/> + <rng:ref name="table-decls"/> + </rng:define> + <rng:define name="office-database"> + <rng:element name="office:database"> + <rng:ref name="db-data-source"/> + <rng:optional> + <rng:ref name="db-forms"/> + </rng:optional> + <rng:optional> + <rng:ref name="db-reports"/> + </rng:optional> + <rng:optional> + <rng:ref name="db-queries"/> + </rng:optional> + <rng:optional> + <rng:ref name="db-table-presentations"/> + </rng:optional> + <rng:optional> + <rng:ref name="db-schema-definition"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="office-dde-source"> + <rng:element name="office:dde-source"> + <rng:ref name="office-dde-source-attlist"/> + <rng:ref name="common-dde-connection-decl-attlist"/> + </rng:element> + </rng:define> + <rng:define name="office-dde-source-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="office:name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="office:conversion-mode"> + <rng:choice> + <rng:value>into-default-style-data-style</rng:value> + <rng:value>into-english-number</rng:value> + <rng:value>keep-text</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="office-document"> + <rng:element name="office:document"> + <rng:ref name="office-document-attrs"/> + <rng:ref name="office-document-common-attrs"/> + <rng:ref name="office-meta"/> + <rng:ref name="office-settings"/> + <rng:ref name="office-scripts"/> + <rng:ref name="office-font-face-decls"/> + <rng:ref name="office-styles"/> + <rng:ref name="office-automatic-styles"/> + <rng:ref name="office-master-styles"/> + <rng:ref name="office-body"/> + </rng:element> + </rng:define> + <rng:define name="office-document-attrs"> + <rng:attribute name="office:mimetype"> + <rng:ref name="string"/> + </rng:attribute> + </rng:define> + <rng:define name="office-document-common-attrs"> + <rng:interleave> + <rng:attribute name="office:version"> + <rng:value>1.3</rng:value> + </rng:attribute> + <rng:optional> + <rng:attribute name="grddl:transformation"> + <rng:list> + <rng:zeroOrMore> + <rng:ref name="anyIRI"/> + </rng:zeroOrMore> + </rng:list> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="office-document-content"> + <rng:element name="office:document-content"> + <rng:ref name="office-document-common-attrs"/> + <rng:ref name="office-scripts"/> + <rng:ref name="office-font-face-decls"/> + <rng:ref name="office-automatic-styles"/> + <rng:ref name="office-body"/> + </rng:element> + </rng:define> + <rng:define name="office-document-meta"> + <rng:element name="office:document-meta"> + <rng:ref name="office-document-common-attrs"/> + <rng:ref name="office-meta"/> + </rng:element> + </rng:define> + <rng:define name="office-document-settings"> + <rng:element name="office:document-settings"> + <rng:ref name="office-document-common-attrs"/> + <rng:ref name="office-settings"/> + </rng:element> + </rng:define> + <rng:define name="office-document-styles"> + <rng:element name="office:document-styles"> + <rng:ref name="office-document-common-attrs"/> + <rng:ref name="office-font-face-decls"/> + <rng:ref name="office-styles"/> + <rng:ref name="office-automatic-styles"/> + <rng:ref name="office-master-styles"/> + </rng:element> + </rng:define> + <rng:define name="office-drawing-attlist"> + <rng:empty/> + </rng:define> + <rng:define name="office-drawing-content-epilogue"> + <rng:ref name="table-functions"/> + </rng:define> + <rng:define name="office-drawing-content-main"> + <rng:zeroOrMore> + <rng:ref name="draw-page"/> + </rng:zeroOrMore> + </rng:define> + <rng:define name="office-drawing-content-prelude"> + <rng:ref name="text-decls"/> + <rng:ref name="table-decls"/> + </rng:define> + <rng:define name="office-event-listeners"> + <rng:element name="office:event-listeners"> + <rng:zeroOrMore> + <rng:choice> + <rng:ref name="script-event-listener"/> + <rng:ref name="presentation-event-listener"/> + </rng:choice> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="office-font-face-decls"> + <rng:optional> + <rng:element name="office:font-face-decls"> + <rng:zeroOrMore> + <rng:ref name="style-font-face"/> + </rng:zeroOrMore> + </rng:element> + </rng:optional> + </rng:define> + <rng:define name="office-forms"> + <rng:optional> + <rng:element name="office:forms"> + <rng:ref name="office-forms-attlist"/> + <rng:zeroOrMore> + <rng:choice> + <rng:ref name="form-form"/> + <rng:ref name="xforms-model"/> + </rng:choice> + </rng:zeroOrMore> + </rng:element> + </rng:optional> + </rng:define> + <rng:define name="office-forms-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="form:automatic-focus"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="form:apply-design-mode"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="office-image-attlist"> + <rng:empty/> + </rng:define> + <rng:define name="office-image-content-epilogue"> + <rng:empty/> + </rng:define> + <rng:define name="office-image-content-main"> + <rng:ref name="draw-frame"/> + </rng:define> + <rng:define name="office-image-content-prelude"> + <rng:empty/> + </rng:define> + <rng:define name="office-master-styles"> + <rng:optional> + <rng:element name="office:master-styles"> + <rng:interleave> + <rng:zeroOrMore> + <rng:ref name="style-master-page"/> + </rng:zeroOrMore> + <rng:optional> + <rng:ref name="style-handout-master"/> + </rng:optional> + <rng:optional> + <rng:ref name="draw-layer-set"/> + </rng:optional> + </rng:interleave> + </rng:element> + </rng:optional> + </rng:define> + <rng:define name="office-meta"> + <rng:optional> + <rng:element name="office:meta"> + <rng:ref name="office-meta-content-strict"/> + </rng:element> + </rng:optional> + </rng:define> + <rng:define name="office-meta-content-strict"> + <rng:zeroOrMore> + <rng:ref name="office-meta-data"/> + </rng:zeroOrMore> + </rng:define> + <rng:define name="office-meta-data"> + <rng:choice> + <rng:element name="meta:generator"> + <rng:ref name="string"/> + </rng:element> + <rng:element name="dc:title"> + <rng:ref name="string"/> + </rng:element> + <rng:element name="dc:description"> + <rng:ref name="string"/> + </rng:element> + <rng:element name="dc:subject"> + <rng:ref name="string"/> + </rng:element> + <rng:element name="meta:keyword"> + <rng:ref name="string"/> + </rng:element> + <rng:element name="meta:initial-creator"> + <rng:ref name="string"/> + </rng:element> + <rng:ref name="dc-creator"/> + <rng:element name="meta:printed-by"> + <rng:ref name="string"/> + </rng:element> + <rng:element name="meta:creation-date"> + <rng:ref name="dateTime"/> + </rng:element> + <rng:ref name="dc-date"/> + <rng:element name="meta:print-date"> + <rng:ref name="dateTime"/> + </rng:element> + <rng:element name="meta:template"> + <rng:attribute name="xlink:type"> + <rng:value>simple</rng:value> + </rng:attribute> + <rng:attribute name="xlink:href"> + <rng:ref name="anyIRI"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="xlink:actuate"> + <rng:value>onRequest</rng:value> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="xlink:title"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="meta:date"> + <rng:ref name="dateTime"/> + </rng:attribute> + </rng:optional> + </rng:element> + <rng:element name="meta:auto-reload"> + <rng:optional> + <rng:attribute name="xlink:type"> + <rng:value>simple</rng:value> + </rng:attribute> + <rng:attribute name="xlink:href"> + <rng:ref name="anyIRI"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="xlink:show"> + <rng:value>replace</rng:value> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="xlink:actuate"> + <rng:value>onLoad</rng:value> + </rng:attribute> + </rng:optional> + </rng:optional> + <rng:optional> + <rng:attribute name="meta:delay"> + <rng:ref name="duration"/> + </rng:attribute> + </rng:optional> + </rng:element> + <rng:element name="meta:hyperlink-behaviour"> + <rng:optional> + <rng:attribute name="office:target-frame-name"> + <rng:ref name="targetFrameName"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="xlink:show"> + <rng:choice> + <rng:value>new</rng:value> + <rng:value>replace</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:element> + <rng:element name="dc:language"> + <rng:ref name="language"/> + </rng:element> + <rng:element name="meta:editing-cycles"> + <rng:ref name="nonNegativeInteger"/> + </rng:element> + <rng:element name="meta:editing-duration"> + <rng:ref name="duration"/> + </rng:element> + <rng:element name="meta:document-statistic"> + <rng:optional> + <rng:attribute name="meta:page-count"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="meta:table-count"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="meta:draw-count"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="meta:image-count"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="meta:ole-object-count"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="meta:object-count"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="meta:paragraph-count"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="meta:word-count"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="meta:character-count"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="meta:frame-count"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="meta:sentence-count"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="meta:syllable-count"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="meta:non-whitespace-character-count"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="meta:row-count"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="meta:cell-count"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + </rng:element> + <rng:element name="meta:user-defined"> + <rng:attribute name="meta:name"> + <rng:ref name="string"/> + </rng:attribute> + <rng:choice> + <rng:group> + <rng:attribute name="meta:value-type"> + <rng:value>float</rng:value> + </rng:attribute> + <rng:ref name="double"/> + </rng:group> + <rng:group> + <rng:attribute name="meta:value-type"> + <rng:value>date</rng:value> + </rng:attribute> + <rng:ref name="dateOrDateTime"/> + </rng:group> + <rng:group> + <rng:attribute name="meta:value-type"> + <rng:value>time</rng:value> + </rng:attribute> + <rng:ref name="duration"/> + </rng:group> + <rng:group> + <rng:attribute name="meta:value-type"> + <rng:value>boolean</rng:value> + </rng:attribute> + <rng:ref name="boolean"/> + </rng:group> + <rng:group> + <rng:attribute name="meta:value-type"> + <rng:value>string</rng:value> + </rng:attribute> + <rng:ref name="string"/> + </rng:group> + <rng:text/> + </rng:choice> + </rng:element> + </rng:choice> + </rng:define> + <rng:define name="office-presentation-attlist"> + <rng:empty/> + </rng:define> + <rng:define name="office-presentation-content-epilogue"> + <rng:ref name="presentation-settings"/> + <rng:ref name="table-functions"/> + </rng:define> + <rng:define name="office-presentation-content-main"> + <rng:zeroOrMore> + <rng:ref name="draw-page"/> + </rng:zeroOrMore> + </rng:define> + <rng:define name="office-presentation-content-prelude"> + <rng:ref name="text-decls"/> + <rng:ref name="table-decls"/> + <rng:ref name="presentation-decls"/> + </rng:define> + <rng:define name="office-process-content"> + <rng:optional> + <rng:attribute name="office:process-content"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="office-script"> + <rng:element name="office:script"> + <rng:ref name="office-script-attlist"/> + <rng:mixed> + <rng:ref name="anyElements"/> + </rng:mixed> + </rng:element> + </rng:define> + <rng:define name="office-script-attlist"> + <rng:attribute name="script:language"> + <rng:ref name="string"/> + </rng:attribute> + </rng:define> + <rng:define name="office-scripts"> + <rng:optional> + <rng:element name="office:scripts"> + <rng:zeroOrMore> + <rng:ref name="office-script"/> + </rng:zeroOrMore> + <rng:optional> + <rng:ref name="office-event-listeners"/> + </rng:optional> + </rng:element> + </rng:optional> + </rng:define> + <rng:define name="office-settings"> + <rng:optional> + <rng:element name="office:settings"> + <rng:oneOrMore> + <rng:ref name="config-config-item-set"/> + </rng:oneOrMore> + </rng:element> + </rng:optional> + </rng:define> + <rng:define name="office-spreadsheet-attlist"> + <rng:optional> + <rng:attribute name="table:structure-protected"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:protection-key"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:protection-key-digest-algorithm"> + <rng:ref name="anyIRI"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="office-spreadsheet-content-epilogue"> + <rng:ref name="table-functions"/> + </rng:define> + <rng:define name="office-spreadsheet-content-main"> + <rng:zeroOrMore> + <rng:ref name="table-table"/> + </rng:zeroOrMore> + </rng:define> + <rng:define name="office-spreadsheet-content-prelude"> + <rng:optional> + <rng:ref name="table-tracked-changes"/> + </rng:optional> + <rng:ref name="text-decls"/> + <rng:ref name="table-decls"/> + </rng:define> + <rng:define name="office-styles"> + <rng:optional> + <rng:element name="office:styles"> + <rng:interleave> + <rng:ref name="styles"/> + <rng:zeroOrMore> + <rng:ref name="style-default-style"/> + </rng:zeroOrMore> + <rng:optional> + <rng:ref name="style-default-page-layout"/> + </rng:optional> + <rng:optional> + <rng:ref name="text-outline-style"/> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="text-notes-configuration"/> + </rng:zeroOrMore> + <rng:optional> + <rng:ref name="text-bibliography-configuration"/> + </rng:optional> + <rng:optional> + <rng:ref name="text-linenumbering-configuration"/> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="draw-gradient"/> + </rng:zeroOrMore> + <rng:zeroOrMore> + <rng:ref name="svg-linearGradient"/> + </rng:zeroOrMore> + <rng:zeroOrMore> + <rng:ref name="svg-radialGradient"/> + </rng:zeroOrMore> + <rng:zeroOrMore> + <rng:ref name="draw-hatch"/> + </rng:zeroOrMore> + <rng:zeroOrMore> + <rng:ref name="draw-fill-image"/> + </rng:zeroOrMore> + <rng:zeroOrMore> + <rng:ref name="draw-marker"/> + </rng:zeroOrMore> + <rng:zeroOrMore> + <rng:ref name="draw-stroke-dash"/> + </rng:zeroOrMore> + <rng:zeroOrMore> + <rng:ref name="draw-opacity"/> + </rng:zeroOrMore> + <rng:zeroOrMore> + <rng:ref name="style-presentation-page-layout"/> + </rng:zeroOrMore> + <rng:zeroOrMore> + <rng:ref name="table-table-template"/> + </rng:zeroOrMore> + </rng:interleave> + </rng:element> + </rng:optional> + </rng:define> + <rng:define name="office-text-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="text:global"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:use-soft-page-breaks"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="office-text-content-epilogue"> + <rng:ref name="table-functions"/> + </rng:define> + <rng:define name="office-text-content-main"> + <rng:choice> + <rng:zeroOrMore> + <rng:ref name="text-content"/> + </rng:zeroOrMore> + <rng:group> + <rng:ref name="text-page-sequence"/> + <rng:zeroOrMore> + <rng:choice> + <rng:ref name="shape"/> + </rng:choice> + </rng:zeroOrMore> + </rng:group> + </rng:choice> + </rng:define> + <rng:define name="office-text-content-prelude"> + <rng:ref name="office-forms"/> + <rng:ref name="text-tracked-changes"/> + <rng:ref name="text-decls"/> + <rng:ref name="table-decls"/> + </rng:define> + <rng:define name="paragraph-attrs"> + <rng:interleave> + <rng:optional> + <rng:attribute name="text:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:class-names"> + <rng:ref name="styleNameRefs"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:cond-style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:group> + <rng:ref name="xml-id"/> + <rng:optional> + <rng:attribute name="text:id"> + <rng:ref name="NCName"/> + </rng:attribute> + </rng:optional> + </rng:group> + </rng:optional> + <rng:optional> + <rng:ref name="common-in-content-meta-attlist"/> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="paragraph-content"> + <rng:choice> + <rng:text/> + <rng:element name="text:s"> + <rng:optional> + <rng:attribute name="text:c"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + </rng:element> + <rng:element name="text:tab"> + <rng:ref name="text-tab-attr"/> + </rng:element> + <rng:element name="text:line-break"> + <rng:empty/> + </rng:element> + <rng:ref name="text-soft-page-break"/> + <rng:element name="text:span"> + <rng:optional> + <rng:attribute name="text:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:class-names"> + <rng:ref name="styleNameRefs"/> + </rng:attribute> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="paragraph-content-or-hyperlink"/> + </rng:zeroOrMore> + </rng:element> + <rng:element name="text:meta"> + <rng:ref name="text-meta-attlist"/> + <rng:zeroOrMore> + <rng:ref name="paragraph-content-or-hyperlink"/> + </rng:zeroOrMore> + </rng:element> + <rng:choice> + <rng:ref name="text-bookmark"/> + <rng:ref name="text-bookmark-start"/> + <rng:ref name="text-bookmark-end"/> + </rng:choice> + <rng:element name="text:reference-mark"> + <rng:attribute name="text:name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:element> + <rng:choice> + <rng:element name="text:reference-mark-start"> + <rng:attribute name="text:name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:element> + <rng:element name="text:reference-mark-end"> + <rng:attribute name="text:name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:element> + </rng:choice> + <rng:element name="text:note"> + <rng:ref name="text-note-class"/> + <rng:optional> + <rng:attribute name="text:id"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:element name="text:note-citation"> + <rng:optional> + <rng:attribute name="text:label"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:text/> + </rng:element> + <rng:element name="text:note-body"> + <rng:zeroOrMore> + <rng:ref name="text-content"/> + </rng:zeroOrMore> + </rng:element> + </rng:element> + <rng:element name="text:ruby"> + <rng:optional> + <rng:attribute name="text:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:element name="text:ruby-base"> + <rng:zeroOrMore> + <rng:ref name="paragraph-content-or-hyperlink"/> + </rng:zeroOrMore> + </rng:element> + <rng:element name="text:ruby-text"> + <rng:optional> + <rng:attribute name="text:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:text/> + </rng:element> + </rng:element> + <rng:choice> + <rng:ref name="office-annotation"/> + <rng:ref name="office-annotation-end"/> + </rng:choice> + <rng:ref name="change-marks"/> + <rng:ref name="shape"/> + <rng:element name="text:date"> + <rng:ref name="text-date-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="text:time"> + <rng:ref name="text-time-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="text:page-number"> + <rng:ref name="text-page-number-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="text:page-continuation"> + <rng:ref name="text-page-continuation-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="text:sender-firstname"> + <rng:ref name="common-field-fixed-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="text:sender-lastname"> + <rng:ref name="common-field-fixed-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="text:sender-initials"> + <rng:ref name="common-field-fixed-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="text:sender-title"> + <rng:ref name="common-field-fixed-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="text:sender-position"> + <rng:ref name="common-field-fixed-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="text:sender-email"> + <rng:ref name="common-field-fixed-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="text:sender-phone-private"> + <rng:ref name="common-field-fixed-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="text:sender-fax"> + <rng:ref name="common-field-fixed-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="text:sender-company"> + <rng:ref name="common-field-fixed-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="text:sender-phone-work"> + <rng:ref name="common-field-fixed-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="text:sender-street"> + <rng:ref name="common-field-fixed-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="text:sender-city"> + <rng:ref name="common-field-fixed-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="text:sender-postal-code"> + <rng:ref name="common-field-fixed-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="text:sender-country"> + <rng:ref name="common-field-fixed-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="text:sender-state-or-province"> + <rng:ref name="common-field-fixed-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="text:author-name"> + <rng:ref name="common-field-fixed-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="text:author-initials"> + <rng:ref name="common-field-fixed-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="text:chapter"> + <rng:ref name="text-chapter-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="text:file-name"> + <rng:ref name="text-file-name-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="text:template-name"> + <rng:ref name="text-template-name-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="text:sheet-name"> + <rng:text/> + </rng:element> + <rng:element name="text:variable-set"> + <rng:interleave> + <rng:ref name="common-field-name-attlist"/> + <rng:ref name="common-field-formula-attlist"/> + <rng:ref name="common-value-and-type-attlist"/> + <rng:ref name="common-field-display-value-none-attlist"/> + <rng:ref name="common-field-data-style-name-attlist"/> + </rng:interleave> + <rng:text/> + </rng:element> + <rng:element name="text:variable-get"> + <rng:interleave> + <rng:ref name="common-field-name-attlist"/> + <rng:ref name="common-field-display-value-formula-attlist"/> + <rng:ref name="common-field-data-style-name-attlist"/> + </rng:interleave> + <rng:text/> + </rng:element> + <rng:element name="text:variable-input"> + <rng:interleave> + <rng:ref name="common-field-name-attlist"/> + <rng:ref name="common-field-description-attlist"/> + <rng:ref name="common-value-type-attlist"/> + <rng:ref name="common-field-display-value-none-attlist"/> + <rng:ref name="common-field-data-style-name-attlist"/> + </rng:interleave> + <rng:text/> + </rng:element> + <rng:element name="text:user-field-get"> + <rng:interleave> + <rng:ref name="common-field-name-attlist"/> + <rng:ref name="common-field-display-value-formula-none-attlist"/> + <rng:ref name="common-field-data-style-name-attlist"/> + </rng:interleave> + <rng:text/> + </rng:element> + <rng:element name="text:user-field-input"> + <rng:interleave> + <rng:ref name="common-field-name-attlist"/> + <rng:ref name="common-field-description-attlist"/> + <rng:ref name="common-field-data-style-name-attlist"/> + </rng:interleave> + <rng:text/> + </rng:element> + <rng:element name="text:sequence"> + <rng:interleave> + <rng:ref name="common-field-name-attlist"/> + <rng:ref name="common-field-formula-attlist"/> + <rng:ref name="common-field-num-format-attlist"/> + <rng:ref name="text-sequence-ref-name"/> + </rng:interleave> + <rng:text/> + </rng:element> + <rng:element name="text:expression"> + <rng:interleave> + <rng:ref name="common-field-formula-attlist"/> + <rng:optional> + <rng:ref name="common-value-and-type-attlist"/> + </rng:optional> + <rng:ref name="common-field-display-value-formula-attlist"/> + <rng:ref name="common-field-data-style-name-attlist"/> + </rng:interleave> + <rng:text/> + </rng:element> + <rng:element name="text:text-input"> + <rng:ref name="common-field-description-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="text:initial-creator"> + <rng:ref name="common-field-fixed-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="text:creation-date"> + <rng:interleave> + <rng:ref name="common-field-fixed-attlist"/> + <rng:ref name="common-field-data-style-name-attlist"/> + <rng:optional> + <rng:attribute name="text:date-value"> + <rng:ref name="dateOrDateTime"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + <rng:text/> + </rng:element> + <rng:element name="text:creation-time"> + <rng:interleave> + <rng:ref name="common-field-fixed-attlist"/> + <rng:ref name="common-field-data-style-name-attlist"/> + <rng:optional> + <rng:attribute name="text:time-value"> + <rng:ref name="timeOrDateTime"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + <rng:text/> + </rng:element> + <rng:element name="text:description"> + <rng:ref name="common-field-fixed-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="text:user-defined"> + <rng:interleave> + <rng:ref name="common-field-fixed-attlist"/> + <rng:attribute name="text:name"> + <rng:ref name="string"/> + </rng:attribute> + <rng:ref name="common-field-data-style-name-attlist"/> + <rng:optional> + <rng:attribute name="office:value"> + <rng:ref name="double"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="office:date-value"> + <rng:ref name="dateOrDateTime"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="office:time-value"> + <rng:ref name="duration"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="office:boolean-value"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="office:string-value"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + <rng:text/> + </rng:element> + <rng:element name="text:print-time"> + <rng:interleave> + <rng:ref name="common-field-fixed-attlist"/> + <rng:ref name="common-field-data-style-name-attlist"/> + <rng:optional> + <rng:attribute name="text:time-value"> + <rng:ref name="time"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + <rng:text/> + </rng:element> + <rng:element name="text:print-date"> + <rng:interleave> + <rng:ref name="common-field-fixed-attlist"/> + <rng:ref name="common-field-data-style-name-attlist"/> + <rng:optional> + <rng:attribute name="text:date-value"> + <rng:ref name="date"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + <rng:text/> + </rng:element> + <rng:element name="text:printed-by"> + <rng:ref name="common-field-fixed-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="text:title"> + <rng:ref name="common-field-fixed-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="text:subject"> + <rng:ref name="common-field-fixed-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="text:keywords"> + <rng:ref name="common-field-fixed-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="text:editing-cycles"> + <rng:ref name="common-field-fixed-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="text:editing-duration"> + <rng:interleave> + <rng:ref name="common-field-fixed-attlist"/> + <rng:ref name="common-field-data-style-name-attlist"/> + <rng:optional> + <rng:attribute name="text:duration"> + <rng:ref name="duration"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + <rng:text/> + </rng:element> + <rng:element name="text:modification-time"> + <rng:interleave> + <rng:ref name="common-field-fixed-attlist"/> + <rng:ref name="common-field-data-style-name-attlist"/> + <rng:optional> + <rng:attribute name="text:time-value"> + <rng:ref name="time"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + <rng:text/> + </rng:element> + <rng:element name="text:modification-date"> + <rng:interleave> + <rng:ref name="common-field-fixed-attlist"/> + <rng:ref name="common-field-data-style-name-attlist"/> + <rng:optional> + <rng:attribute name="text:date-value"> + <rng:ref name="date"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + <rng:text/> + </rng:element> + <rng:element name="text:creator"> + <rng:ref name="common-field-fixed-attlist"/> + <rng:text/> + </rng:element> + <rng:element> + <rng:choice> + <rng:name>text:page-count</rng:name> + <rng:name>text:paragraph-count</rng:name> + <rng:name>text:word-count</rng:name> + <rng:name>text:character-count</rng:name> + <rng:name>text:table-count</rng:name> + <rng:name>text:image-count</rng:name> + <rng:name>text:object-count</rng:name> + </rng:choice> + <rng:ref name="common-field-num-format-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="text:database-display"> + <rng:ref name="text-database-display-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="text:database-next"> + <rng:ref name="text-database-next-attlist"/> + </rng:element> + <rng:element name="text:database-row-select"> + <rng:ref name="text-database-row-select-attlist"/> + </rng:element> + <rng:element name="text:database-row-number"> + <rng:interleave> + <rng:ref name="common-field-database-table"/> + <rng:ref name="common-field-num-format-attlist"/> + <rng:optional> + <rng:attribute name="text:value"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + <rng:text/> + </rng:element> + <rng:element name="text:database-name"> + <rng:ref name="common-field-database-table"/> + <rng:text/> + </rng:element> + <rng:element name="text:page-variable-set"> + <rng:ref name="text-set-page-variable-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="text:page-variable-get"> + <rng:ref name="text-get-page-variable-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="text:placeholder"> + <rng:ref name="text-placeholder-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="text:conditional-text"> + <rng:ref name="text-conditional-text-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="text:hidden-text"> + <rng:ref name="text-hidden-text-attlist"/> + <rng:text/> + </rng:element> + <rng:element> + <rng:choice> + <rng:name>text:reference-ref</rng:name> + <rng:name>text:bookmark-ref</rng:name> + </rng:choice> + <rng:interleave> + <rng:ref name="text-common-ref-content"/> + <rng:ref name="text-bookmark-ref-content"/> + </rng:interleave> + </rng:element> + <rng:element name="text:note-ref"> + <rng:interleave> + <rng:ref name="text-common-ref-content"/> + <rng:ref name="text-note-ref-content"/> + </rng:interleave> + </rng:element> + <rng:element name="text:sequence-ref"> + <rng:interleave> + <rng:ref name="text-common-ref-content"/> + <rng:ref name="text-sequence-ref-content"/> + </rng:interleave> + </rng:element> + <rng:element name="text:script"> + <rng:interleave> + <rng:choice> + <rng:group> + <rng:attribute name="xlink:type"> + <rng:value>simple</rng:value> + </rng:attribute> + <rng:attribute name="xlink:href"> + <rng:ref name="anyIRI"/> + </rng:attribute> + </rng:group> + <rng:text/> + </rng:choice> + <rng:optional> + <rng:attribute name="script:language"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:element> + <rng:element name="text:execute-macro"> + <rng:optional> + <rng:attribute name="text:name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:ref name="office-event-listeners"/> + </rng:optional> + <rng:text/> + </rng:element> + <rng:element name="text:hidden-paragraph"> + <rng:ref name="text-hidden-paragraph-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="text:dde-connection"> + <rng:attribute name="text:connection-name"> + <rng:ref name="string"/> + </rng:attribute> + <rng:text/> + </rng:element> + <rng:element name="text:measure"> + <rng:attribute name="text:kind"> + <rng:choice> + <rng:value>value</rng:value> + <rng:value>unit</rng:value> + <rng:value>gap</rng:value> + </rng:choice> + </rng:attribute> + <rng:text/> + </rng:element> + <rng:element name="text:table-formula"> + <rng:interleave> + <rng:ref name="common-field-formula-attlist"/> + <rng:ref name="common-field-display-value-formula-attlist"/> + <rng:ref name="common-field-data-style-name-attlist"/> + </rng:interleave> + <rng:text/> + </rng:element> + <rng:element name="text:meta-field"> + <rng:ref name="text-meta-field-attlist"/> + <rng:zeroOrMore> + <rng:ref name="paragraph-content-or-hyperlink"/> + </rng:zeroOrMore> + </rng:element> + <rng:element name="text:toc-mark-start"> + <rng:ref name="text-toc-mark-start-attrs"/> + </rng:element> + <rng:element name="text:toc-mark-end"> + <rng:ref name="text-id"/> + </rng:element> + <rng:element name="text:toc-mark"> + <rng:attribute name="text:string-value"> + <rng:ref name="string"/> + </rng:attribute> + <rng:ref name="text-outline-level"/> + </rng:element> + <rng:element name="text:user-index-mark-start"> + <rng:ref name="text-id"/> + <rng:ref name="text-outline-level"/> + <rng:ref name="text-index-name"/> + </rng:element> + <rng:element name="text:user-index-mark-end"> + <rng:ref name="text-id"/> + </rng:element> + <rng:element name="text:user-index-mark"> + <rng:attribute name="text:string-value"> + <rng:ref name="string"/> + </rng:attribute> + <rng:ref name="text-outline-level"/> + <rng:ref name="text-index-name"/> + </rng:element> + <rng:element name="text:alphabetical-index-mark-start"> + <rng:ref name="text-id"/> + <rng:ref name="text-alphabetical-index-mark-attrs"/> + </rng:element> + <rng:element name="text:alphabetical-index-mark-end"> + <rng:ref name="text-id"/> + </rng:element> + <rng:element name="text:alphabetical-index-mark"> + <rng:attribute name="text:string-value"> + <rng:ref name="string"/> + </rng:attribute> + <rng:ref name="text-alphabetical-index-mark-attrs"/> + </rng:element> + <rng:element name="text:bibliography-mark"> + <rng:attribute name="text:bibliography-type"> + <rng:ref name="text-bibliography-types"/> + </rng:attribute> + <rng:zeroOrMore> + <rng:attribute> + <rng:choice> + <rng:name>text:identifier</rng:name> + <rng:name>text:address</rng:name> + <rng:name>text:annote</rng:name> + <rng:name>text:author</rng:name> + <rng:name>text:booktitle</rng:name> + <rng:name>text:chapter</rng:name> + <rng:name>text:edition</rng:name> + <rng:name>text:editor</rng:name> + <rng:name>text:howpublished</rng:name> + <rng:name>text:institution</rng:name> + <rng:name>text:journal</rng:name> + <rng:name>text:month</rng:name> + <rng:name>text:note</rng:name> + <rng:name>text:number</rng:name> + <rng:name>text:organizations</rng:name> + <rng:name>text:pages</rng:name> + <rng:name>text:publisher</rng:name> + <rng:name>text:school</rng:name> + <rng:name>text:series</rng:name> + <rng:name>text:title</rng:name> + <rng:name>text:report-type</rng:name> + <rng:name>text:volume</rng:name> + <rng:name>text:year</rng:name> + <rng:name>text:url</rng:name> + <rng:name>text:custom1</rng:name> + <rng:name>text:custom2</rng:name> + <rng:name>text:custom3</rng:name> + <rng:name>text:custom4</rng:name> + <rng:name>text:custom5</rng:name> + <rng:name>text:isbn</rng:name> + <rng:name>text:issn</rng:name> + </rng:choice> + <rng:ref name="string"/> + </rng:attribute> + </rng:zeroOrMore> + <rng:text/> + </rng:element> + <rng:element name="presentation:header"> + <rng:empty/> + </rng:element> + <rng:element name="presentation:footer"> + <rng:empty/> + </rng:element> + <rng:element name="presentation:date-time"> + <rng:empty/> + </rng:element> + </rng:choice> + </rng:define> + <rng:define name="paragraph-content-or-hyperlink"> + <rng:choice> + <rng:ref name="paragraph-content"/> + <rng:ref name="text-a"/> + </rng:choice> + </rng:define> + <rng:define name="pathData"> + <rng:data type="string"/> + </rng:define> + <rng:define name="percent"> + <rng:data type="string"> + <rng:param name="pattern">-?([0-9]+(\.[0-9]*)?|\.[0-9]+)%</rng:param> + </rng:data> + </rng:define> + <rng:define name="point3D"> + <rng:data type="string"> + <rng:param name="pattern">\([ ]*-?([0-9]+(\.[0-9]*)?|\.[0-9]+)((cm)|(mm)|(in)|(pt)|(pc))([ ]+-?([0-9]+(\.[0-9]*)?|\.[0-9]+)((cm)|(mm)|(in)|(pt)|(pc))){2}[ ]*\)</rng:param> + </rng:data> + </rng:define> + <rng:define name="points"> + <rng:data type="string"> + <rng:param name="pattern">-?[0-9]+,-?[0-9]+([ ]+-?[0-9]+,-?[0-9]+)*</rng:param> + </rng:data> + </rng:define> + <rng:define name="positiveInteger"> + <rng:data type="positiveInteger"/> + </rng:define> + <rng:define name="positiveLength"> + <rng:data type="string"> + <rng:param name="pattern">([0-9]*[1-9][0-9]*(\.[0-9]*)?|0+\.[0-9]*[1-9][0-9]*|\.[0-9]*[1-9][0-9]*)((cm)|(mm)|(in)|(pt)|(pc)|(px))</rng:param> + </rng:data> + </rng:define> + <rng:define name="presentation-animation-elements"> + <rng:choice> + <rng:ref name="presentation-show-shape"/> + <rng:ref name="presentation-show-text"/> + <rng:ref name="presentation-hide-shape"/> + <rng:ref name="presentation-hide-text"/> + <rng:ref name="presentation-dim"/> + <rng:ref name="presentation-play"/> + </rng:choice> + </rng:define> + <rng:define name="presentation-animation-group"> + <rng:element name="presentation:animation-group"> + <rng:zeroOrMore> + <rng:ref name="presentation-animation-elements"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="presentation-animations"> + <rng:element name="presentation:animations"> + <rng:zeroOrMore> + <rng:choice> + <rng:ref name="presentation-animation-elements"/> + <rng:ref name="presentation-animation-group"/> + </rng:choice> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="presentation-classes"> + <rng:choice> + <rng:value>title</rng:value> + <rng:value>outline</rng:value> + <rng:value>subtitle</rng:value> + <rng:value>text</rng:value> + <rng:value>graphic</rng:value> + <rng:value>object</rng:value> + <rng:value>chart</rng:value> + <rng:value>table</rng:value> + <rng:value>orgchart</rng:value> + <rng:value>page</rng:value> + <rng:value>notes</rng:value> + <rng:value>handout</rng:value> + <rng:value>header</rng:value> + <rng:value>footer</rng:value> + <rng:value>date-time</rng:value> + <rng:value>page-number</rng:value> + </rng:choice> + </rng:define> + <rng:define name="presentation-date-time-decl-attlist"> + <rng:interleave> + <rng:attribute name="presentation:name"> + <rng:ref name="string"/> + </rng:attribute> + <rng:attribute name="presentation:source"> + <rng:choice> + <rng:value>fixed</rng:value> + <rng:value>current-date</rng:value> + </rng:choice> + </rng:attribute> + <rng:optional> + <rng:attribute name="style:data-style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="presentation-decl"> + <rng:choice> + <rng:element name="presentation:header-decl"> + <rng:ref name="presentation-header-decl-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="presentation:footer-decl"> + <rng:ref name="presentation-footer-decl-attlist"/> + <rng:text/> + </rng:element> + <rng:element name="presentation:date-time-decl"> + <rng:ref name="presentation-date-time-decl-attlist"/> + <rng:text/> + </rng:element> + </rng:choice> + </rng:define> + <rng:define name="presentation-decls"> + <rng:zeroOrMore> + <rng:ref name="presentation-decl"/> + </rng:zeroOrMore> + </rng:define> + <rng:define name="presentation-dim"> + <rng:element name="presentation:dim"> + <rng:ref name="presentation-dim-attlist"/> + <rng:optional> + <rng:ref name="presentation-sound"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="presentation-dim-attlist"> + <rng:interleave> + <rng:attribute name="draw:shape-id"> + <rng:ref name="IDREF"/> + </rng:attribute> + <rng:attribute name="draw:color"> + <rng:ref name="color"/> + </rng:attribute> + </rng:interleave> + </rng:define> + <rng:define name="presentation-event-listener"> + <rng:element name="presentation:event-listener"> + <rng:ref name="presentation-event-listener-attlist"/> + <rng:optional> + <rng:ref name="presentation-sound"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="presentation-event-listener-attlist"> + <rng:interleave> + <rng:attribute name="script:event-name"> + <rng:ref name="string"/> + </rng:attribute> + <rng:attribute name="presentation:action"> + <rng:choice> + <rng:value>none</rng:value> + <rng:value>previous-page</rng:value> + <rng:value>next-page</rng:value> + <rng:value>first-page</rng:value> + <rng:value>last-page</rng:value> + <rng:value>hide</rng:value> + <rng:value>stop</rng:value> + <rng:value>execute</rng:value> + <rng:value>show</rng:value> + <rng:value>verb</rng:value> + <rng:value>fade-out</rng:value> + <rng:value>sound</rng:value> + <rng:value>last-visited-page</rng:value> + </rng:choice> + </rng:attribute> + <rng:optional> + <rng:attribute name="presentation:effect"> + <rng:ref name="presentationEffects"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:direction"> + <rng:ref name="presentationEffectDirections"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:speed"> + <rng:ref name="presentationSpeeds"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:start-scale"> + <rng:ref name="percent"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="xlink:type"> + <rng:value>simple</rng:value> + </rng:attribute> + <rng:attribute name="xlink:href"> + <rng:ref name="anyIRI"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="xlink:show"> + <rng:value>embed</rng:value> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="xlink:actuate"> + <rng:value>onRequest</rng:value> + </rng:attribute> + </rng:optional> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:verb"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="presentation-footer-decl-attlist"> + <rng:attribute name="presentation:name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:define> + <rng:define name="presentation-header-decl-attlist"> + <rng:attribute name="presentation:name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:define> + <rng:define name="presentation-hide-shape"> + <rng:element name="presentation:hide-shape"> + <rng:ref name="common-presentation-effect-attlist"/> + <rng:optional> + <rng:ref name="presentation-sound"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="presentation-hide-text"> + <rng:element name="presentation:hide-text"> + <rng:ref name="common-presentation-effect-attlist"/> + <rng:optional> + <rng:ref name="presentation-sound"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="presentation-notes"> + <rng:element name="presentation:notes"> + <rng:ref name="common-presentation-header-footer-attlist"/> + <rng:ref name="presentation-notes-attlist"/> + <rng:ref name="office-forms"/> + <rng:zeroOrMore> + <rng:ref name="shape"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="presentation-notes-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="style:page-layout-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="presentation-placeholder"> + <rng:element name="presentation:placeholder"> + <rng:attribute name="presentation:object"> + <rng:ref name="presentation-classes"/> + </rng:attribute> + <rng:attribute name="svg:x"> + <rng:choice> + <rng:ref name="coordinate"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + <rng:attribute name="svg:y"> + <rng:choice> + <rng:ref name="coordinate"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + <rng:attribute name="svg:width"> + <rng:choice> + <rng:ref name="length"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + <rng:attribute name="svg:height"> + <rng:choice> + <rng:ref name="length"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="presentation-play"> + <rng:element name="presentation:play"> + <rng:ref name="presentation-play-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="presentation-play-attlist"> + <rng:attribute name="draw:shape-id"> + <rng:ref name="IDREF"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="presentation:speed"> + <rng:ref name="presentationSpeeds"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="presentation-settings"> + <rng:optional> + <rng:element name="presentation:settings"> + <rng:ref name="presentation-settings-attlist"/> + <rng:zeroOrMore> + <rng:ref name="presentation-show"/> + </rng:zeroOrMore> + </rng:element> + </rng:optional> + </rng:define> + <rng:define name="presentation-settings-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="presentation:start-page"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:show"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:full-screen"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:endless"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:pause"> + <rng:ref name="duration"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:show-logo"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:force-manual"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:mouse-visible"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:mouse-as-pen"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:start-with-navigator"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:animations"> + <rng:choice> + <rng:value>enabled</rng:value> + <rng:value>disabled</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:transition-on-click"> + <rng:choice> + <rng:value>enabled</rng:value> + <rng:value>disabled</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:stay-on-top"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:show-end-of-presentation-slide"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="presentation-shape-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="presentation:class"> + <rng:ref name="presentation-classes"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:placeholder"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:user-transformed"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="presentation-show"> + <rng:element name="presentation:show"> + <rng:ref name="presentation-show-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="presentation-show-attlist"> + <rng:interleave> + <rng:attribute name="presentation:name"> + <rng:ref name="string"/> + </rng:attribute> + <rng:attribute name="presentation:pages"> + <rng:ref name="string"/> + </rng:attribute> + </rng:interleave> + </rng:define> + <rng:define name="presentation-show-shape"> + <rng:element name="presentation:show-shape"> + <rng:ref name="common-presentation-effect-attlist"/> + <rng:optional> + <rng:ref name="presentation-sound"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="presentation-show-text"> + <rng:element name="presentation:show-text"> + <rng:ref name="common-presentation-effect-attlist"/> + <rng:optional> + <rng:ref name="presentation-sound"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="presentation-sound"> + <rng:element name="presentation:sound"> + <rng:ref name="presentation-sound-attlist"/> + <rng:attribute name="xlink:type"> + <rng:value>simple</rng:value> + </rng:attribute> + <rng:attribute name="xlink:href"> + <rng:ref name="anyIRI"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="xlink:actuate"> + <rng:value>onRequest</rng:value> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="xlink:show"> + <rng:choice> + <rng:value>new</rng:value> + <rng:value>replace</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="presentation-sound-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="presentation:play-full"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:ref name="xml-id"/> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="presentationEffectDirections"> + <rng:choice> + <rng:value>none</rng:value> + <rng:value>from-left</rng:value> + <rng:value>from-top</rng:value> + <rng:value>from-right</rng:value> + <rng:value>from-bottom</rng:value> + <rng:value>from-center</rng:value> + <rng:value>from-upper-left</rng:value> + <rng:value>from-upper-right</rng:value> + <rng:value>from-lower-left</rng:value> + <rng:value>from-lower-right</rng:value> + <rng:value>to-left</rng:value> + <rng:value>to-top</rng:value> + <rng:value>to-right</rng:value> + <rng:value>to-bottom</rng:value> + <rng:value>to-upper-left</rng:value> + <rng:value>to-upper-right</rng:value> + <rng:value>to-lower-right</rng:value> + <rng:value>to-lower-left</rng:value> + <rng:value>path</rng:value> + <rng:value>spiral-inward-left</rng:value> + <rng:value>spiral-inward-right</rng:value> + <rng:value>spiral-outward-left</rng:value> + <rng:value>spiral-outward-right</rng:value> + <rng:value>vertical</rng:value> + <rng:value>horizontal</rng:value> + <rng:value>to-center</rng:value> + <rng:value>clockwise</rng:value> + <rng:value>counter-clockwise</rng:value> + </rng:choice> + </rng:define> + <rng:define name="presentationEffects"> + <rng:choice> + <rng:value>none</rng:value> + <rng:value>fade</rng:value> + <rng:value>move</rng:value> + <rng:value>stripes</rng:value> + <rng:value>open</rng:value> + <rng:value>close</rng:value> + <rng:value>dissolve</rng:value> + <rng:value>wavyline</rng:value> + <rng:value>random</rng:value> + <rng:value>lines</rng:value> + <rng:value>laser</rng:value> + <rng:value>appear</rng:value> + <rng:value>hide</rng:value> + <rng:value>move-short</rng:value> + <rng:value>checkerboard</rng:value> + <rng:value>rotate</rng:value> + <rng:value>stretch</rng:value> + </rng:choice> + </rng:define> + <rng:define name="presentationSpeeds"> + <rng:choice> + <rng:value>slow</rng:value> + <rng:value>medium</rng:value> + <rng:value>fast</rng:value> + </rng:choice> + </rng:define> + <rng:define name="region-content"> + <rng:zeroOrMore> + <rng:ref name="text-p"/> + </rng:zeroOrMore> + </rng:define> + <rng:define name="relativeLength"> + <rng:data type="string"> + <rng:param name="pattern">[0-9]+\*</rng:param> + </rng:data> + </rng:define> + <rng:define name="rowOrCol"> + <rng:choice> + <rng:value>row</rng:value> + <rng:value>column</rng:value> + </rng:choice> + </rng:define> + <rng:define name="script-event-listener"> + <rng:element name="script:event-listener"> + <rng:ref name="script-event-listener-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="script-event-listener-attlist"> + <rng:interleave> + <rng:attribute name="script:event-name"> + <rng:ref name="string"/> + </rng:attribute> + <rng:attribute name="script:language"> + <rng:ref name="string"/> + </rng:attribute> + <rng:choice> + <rng:attribute name="script:macro-name"> + <rng:ref name="string"/> + </rng:attribute> + <rng:group> + <rng:attribute name="xlink:type"> + <rng:value>simple</rng:value> + </rng:attribute> + <rng:attribute name="xlink:href"> + <rng:ref name="anyIRI"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="xlink:actuate"> + <rng:value>onRequest</rng:value> + </rng:attribute> + </rng:optional> + </rng:group> + </rng:choice> + </rng:interleave> + </rng:define> + <rng:define name="scriptCode"> + <rng:data type="token"> + <rng:param name="pattern">[A-Za-z0-9]{1,8}</rng:param> + </rng:data> + </rng:define> + <rng:define name="selected"> + <rng:optional> + <rng:attribute name="form:selected"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="shadowType"> + <rng:choice> + <rng:value>none</rng:value> + <rng:ref name="string"/> + </rng:choice> + </rng:define> + <rng:define name="shape"> + <rng:choice> + <rng:ref name="shape-instance"/> + <rng:ref name="draw-a"/> + </rng:choice> + </rng:define> + <rng:define name="shape-instance"> + <rng:choice> + <rng:ref name="draw-rect"/> + <rng:ref name="draw-line"/> + <rng:ref name="draw-polyline"/> + <rng:ref name="draw-polygon"/> + <rng:ref name="draw-regular-polygon"/> + <rng:ref name="draw-path"/> + <rng:ref name="draw-circle"/> + <rng:ref name="draw-ellipse"/> + <rng:ref name="draw-g"/> + <rng:ref name="draw-page-thumbnail"/> + <rng:ref name="draw-frame"/> + <rng:ref name="draw-measure"/> + <rng:ref name="draw-caption"/> + <rng:ref name="draw-connector"/> + <rng:ref name="draw-control"/> + <rng:ref name="dr3d-scene"/> + <rng:ref name="draw-custom-shape"/> + </rng:choice> + </rng:define> + <rng:define name="shapes3d"> + <rng:choice> + <rng:ref name="dr3d-scene"/> + <rng:ref name="dr3d-extrude"/> + <rng:ref name="dr3d-sphere"/> + <rng:ref name="dr3d-rotate"/> + <rng:ref name="dr3d-cube"/> + </rng:choice> + </rng:define> + <rng:define name="signedZeroToHundredPercent"> + <rng:data type="string"> + <rng:param name="pattern">-?([0-9]?[0-9](\.[0-9]*)?|100(\.0*)?|\.[0-9]+)%</rng:param> + </rng:data> + </rng:define> + <rng:define name="size"> + <rng:optional> + <rng:attribute name="form:size"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="states"> + <rng:choice> + <rng:value>unchecked</rng:value> + <rng:value>checked</rng:value> + <rng:value>unknown</rng:value> + </rng:choice> + </rng:define> + <rng:define name="string"> + <rng:data type="string"/> + </rng:define> + <rng:define name="style-background-image"> + <rng:optional> + <rng:element name="style:background-image"> + <rng:ref name="style-background-image-attlist"/> + <rng:choice> + <rng:ref name="common-draw-data-attlist"/> + <rng:ref name="office-binary-data"/> + <rng:empty/> + </rng:choice> + </rng:element> + </rng:optional> + </rng:define> + <rng:define name="style-background-image-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="style:repeat"> + <rng:choice> + <rng:value>no-repeat</rng:value> + <rng:value>repeat</rng:value> + <rng:value>stretch</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:position"> + <rng:choice> + <rng:value>left</rng:value> + <rng:value>center</rng:value> + <rng:value>right</rng:value> + <rng:value>top</rng:value> + <rng:value>bottom</rng:value> + <rng:list> + <rng:ref name="horiBackPos"/> + <rng:ref name="vertBackPos"/> + </rng:list> + <rng:list> + <rng:ref name="vertBackPos"/> + <rng:ref name="horiBackPos"/> + </rng:list> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:filter-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:opacity"> + <rng:ref name="zeroToHundredPercent"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="style-chart-properties"> + <rng:element name="style:chart-properties"> + <rng:ref name="style-chart-properties-content-strict"/> + </rng:element> + </rng:define> + <rng:define name="style-chart-properties-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="chart:scale-text"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:three-dimensional"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:deep"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:right-angled-axes"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:choice> + <rng:attribute name="chart:symbol-type"> + <rng:value>none</rng:value> + </rng:attribute> + <rng:attribute name="chart:symbol-type"> + <rng:value>automatic</rng:value> + </rng:attribute> + <rng:group> + <rng:attribute name="chart:symbol-type"> + <rng:value>named-symbol</rng:value> + </rng:attribute> + <rng:attribute name="chart:symbol-name"> + <rng:choice> + <rng:value>square</rng:value> + <rng:value>diamond</rng:value> + <rng:value>arrow-down</rng:value> + <rng:value>arrow-up</rng:value> + <rng:value>arrow-right</rng:value> + <rng:value>arrow-left</rng:value> + <rng:value>bow-tie</rng:value> + <rng:value>hourglass</rng:value> + <rng:value>circle</rng:value> + <rng:value>star</rng:value> + <rng:value>x</rng:value> + <rng:value>plus</rng:value> + <rng:value>asterisk</rng:value> + <rng:value>horizontal-bar</rng:value> + <rng:value>vertical-bar</rng:value> + </rng:choice> + </rng:attribute> + </rng:group> + <rng:group> + <rng:attribute name="chart:symbol-type"> + <rng:value>image</rng:value> + </rng:attribute> + <rng:element name="chart:symbol-image"> + <rng:attribute name="xlink:href"> + <rng:ref name="anyIRI"/> + </rng:attribute> + </rng:element> + </rng:group> + <rng:empty/> + </rng:choice> + <rng:optional> + <rng:attribute name="chart:symbol-width"> + <rng:ref name="nonNegativeLength"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:symbol-height"> + <rng:ref name="nonNegativeLength"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:sort-by-x-values"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:vertical"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:connect-bars"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:gap-width"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:overlap"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:group-bars-per-axis"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:japanese-candle-stick"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:interpolation"> + <rng:choice> + <rng:value>none</rng:value> + <rng:value>cubic-spline</rng:value> + <rng:value>b-spline</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:spline-order"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:spline-resolution"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:pie-offset"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:angle-offset"> + <rng:ref name="angle"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:hole-size"> + <rng:ref name="percent"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:lines"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:solid-type"> + <rng:choice> + <rng:value>cuboid</rng:value> + <rng:value>cylinder</rng:value> + <rng:value>cone</rng:value> + <rng:value>pyramid</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:stacked"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:percentage"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:treat-empty-cells"> + <rng:choice> + <rng:value>use-zero</rng:value> + <rng:value>leave-gap</rng:value> + <rng:value>ignore</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:link-data-style-to-source"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:logarithmic"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:maximum"> + <rng:ref name="double"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:minimum"> + <rng:ref name="double"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:origin"> + <rng:ref name="double"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:interval-major"> + <rng:ref name="double"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:interval-minor-divisor"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:tick-marks-major-inner"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:tick-marks-major-outer"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:tick-marks-minor-inner"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:tick-marks-minor-outer"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:reverse-direction"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:display-label"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:text-overlap"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:line-break"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:label-arrangement"> + <rng:choice> + <rng:value>side-by-side</rng:value> + <rng:value>stagger-even</rng:value> + <rng:value>stagger-odd</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:ref name="common-style-direction-attlist"/> + <rng:ref name="common-rotation-angle-attlist"/> + <rng:optional> + <rng:attribute name="chart:data-label-number"> + <rng:choice> + <rng:value>none</rng:value> + <rng:value>value</rng:value> + <rng:value>percentage</rng:value> + <rng:value>value-and-percentage</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:data-label-text"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:data-label-symbol"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:element name="chart:label-separator"> + <rng:ref name="text-p"/> + </rng:element> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:label-position"> + <rng:ref name="labelPositions"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:label-position-negative"> + <rng:ref name="labelPositions"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:visible"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:auto-position"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:auto-size"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:mean-value"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:error-category"> + <rng:choice> + <rng:value>none</rng:value> + <rng:value>variance</rng:value> + <rng:value>standard-deviation</rng:value> + <rng:value>percentage</rng:value> + <rng:value>error-margin</rng:value> + <rng:value>constant</rng:value> + <rng:value>standard-error</rng:value> + <rng:value>cell-range</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:error-percentage"> + <rng:ref name="double"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:error-margin"> + <rng:ref name="double"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:error-lower-limit"> + <rng:ref name="double"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:error-upper-limit"> + <rng:ref name="double"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:error-upper-indicator"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:error-lower-indicator"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:error-lower-range"> + <rng:ref name="cellRangeAddressList"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:error-upper-range"> + <rng:ref name="cellRangeAddressList"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:series-source"> + <rng:choice> + <rng:value>columns</rng:value> + <rng:value>rows</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:regression-type"> + <rng:choice> + <rng:value>none</rng:value> + <rng:value>linear</rng:value> + <rng:value>logarithmic</rng:value> + <rng:value>exponential</rng:value> + <rng:value>power</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:axis-position"> + <rng:choice> + <rng:value>start</rng:value> + <rng:value>end</rng:value> + <rng:ref name="double"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:axis-label-position"> + <rng:choice> + <rng:value>near-axis</rng:value> + <rng:value>near-axis-other-side</rng:value> + <rng:value>outside-start</rng:value> + <rng:value>outside-end</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:tick-mark-position"> + <rng:choice> + <rng:value>at-labels</rng:value> + <rng:value>at-axis</rng:value> + <rng:value>at-labels-and-axis</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="chart:include-hidden-cells"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="style-chart-properties-content-strict"> + <rng:ref name="style-chart-properties-attlist"/> + <rng:ref name="style-chart-properties-elements"/> + </rng:define> + <rng:define name="style-chart-properties-elements"> + <rng:empty/> + </rng:define> + <rng:define name="style-column"> + <rng:element name="style:column"> + <rng:ref name="style-column-attlist"/> + </rng:element> + </rng:define> + <rng:define name="style-column-attlist"> + <rng:interleave> + <rng:attribute name="style:rel-width"> + <rng:ref name="relativeLength"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="fo:start-indent"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:end-indent"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:space-before"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:space-after"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="style-column-sep"> + <rng:element name="style:column-sep"> + <rng:ref name="style-column-sep-attlist"/> + </rng:element> + </rng:define> + <rng:define name="style-column-sep-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="style:style"> + <rng:choice> + <rng:value>none</rng:value> + <rng:value>solid</rng:value> + <rng:value>dotted</rng:value> + <rng:value>dashed</rng:value> + <rng:value>dot-dashed</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:attribute name="style:width"> + <rng:ref name="length"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="style:height"> + <rng:ref name="zeroToHundredPercent"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:vertical-align"> + <rng:choice> + <rng:value>top</rng:value> + <rng:value>middle</rng:value> + <rng:value>bottom</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:color"> + <rng:ref name="color"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="style-columns"> + <rng:optional> + <rng:element name="style:columns"> + <rng:ref name="style-columns-attlist"/> + <rng:optional> + <rng:ref name="style-column-sep"/> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="style-column"/> + </rng:zeroOrMore> + </rng:element> + </rng:optional> + </rng:define> + <rng:define name="style-columns-attlist"> + <rng:interleave> + <rng:attribute name="fo:column-count"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="fo:column-gap"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="style-default-page-layout"> + <rng:element name="style:default-page-layout"> + <rng:ref name="style-page-layout-content"/> + </rng:element> + </rng:define> + <rng:define name="style-default-style"> + <rng:element name="style:default-style"> + <rng:ref name="style-style-content"/> + </rng:element> + </rng:define> + <rng:define name="style-drawing-page-properties"> + <rng:element name="style:drawing-page-properties"> + <rng:ref name="style-drawing-page-properties-content-strict"/> + </rng:element> + </rng:define> + <rng:define name="style-drawing-page-properties-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="presentation:transition-type"> + <rng:choice> + <rng:value>manual</rng:value> + <rng:value>automatic</rng:value> + <rng:value>semi-automatic</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:transition-style"> + <rng:choice> + <rng:value>none</rng:value> + <rng:value>fade-from-left</rng:value> + <rng:value>fade-from-top</rng:value> + <rng:value>fade-from-right</rng:value> + <rng:value>fade-from-bottom</rng:value> + <rng:value>fade-from-upperleft</rng:value> + <rng:value>fade-from-upperright</rng:value> + <rng:value>fade-from-lowerleft</rng:value> + <rng:value>fade-from-lowerright</rng:value> + <rng:value>move-from-left</rng:value> + <rng:value>move-from-top</rng:value> + <rng:value>move-from-right</rng:value> + <rng:value>move-from-bottom</rng:value> + <rng:value>move-from-upperleft</rng:value> + <rng:value>move-from-upperright</rng:value> + <rng:value>move-from-lowerleft</rng:value> + <rng:value>move-from-lowerright</rng:value> + <rng:value>uncover-to-left</rng:value> + <rng:value>uncover-to-top</rng:value> + <rng:value>uncover-to-right</rng:value> + <rng:value>uncover-to-bottom</rng:value> + <rng:value>uncover-to-upperleft</rng:value> + <rng:value>uncover-to-upperright</rng:value> + <rng:value>uncover-to-lowerleft</rng:value> + <rng:value>uncover-to-lowerright</rng:value> + <rng:value>fade-to-center</rng:value> + <rng:value>fade-from-center</rng:value> + <rng:value>vertical-stripes</rng:value> + <rng:value>horizontal-stripes</rng:value> + <rng:value>clockwise</rng:value> + <rng:value>counterclockwise</rng:value> + <rng:value>open-vertical</rng:value> + <rng:value>open-horizontal</rng:value> + <rng:value>close-vertical</rng:value> + <rng:value>close-horizontal</rng:value> + <rng:value>wavyline-from-left</rng:value> + <rng:value>wavyline-from-top</rng:value> + <rng:value>wavyline-from-right</rng:value> + <rng:value>wavyline-from-bottom</rng:value> + <rng:value>spiralin-left</rng:value> + <rng:value>spiralin-right</rng:value> + <rng:value>spiralout-left</rng:value> + <rng:value>spiralout-right</rng:value> + <rng:value>roll-from-top</rng:value> + <rng:value>roll-from-left</rng:value> + <rng:value>roll-from-right</rng:value> + <rng:value>roll-from-bottom</rng:value> + <rng:value>stretch-from-left</rng:value> + <rng:value>stretch-from-top</rng:value> + <rng:value>stretch-from-right</rng:value> + <rng:value>stretch-from-bottom</rng:value> + <rng:value>vertical-lines</rng:value> + <rng:value>horizontal-lines</rng:value> + <rng:value>dissolve</rng:value> + <rng:value>random</rng:value> + <rng:value>vertical-checkerboard</rng:value> + <rng:value>horizontal-checkerboard</rng:value> + <rng:value>interlocking-horizontal-left</rng:value> + <rng:value>interlocking-horizontal-right</rng:value> + <rng:value>interlocking-vertical-top</rng:value> + <rng:value>interlocking-vertical-bottom</rng:value> + <rng:value>fly-away</rng:value> + <rng:value>open</rng:value> + <rng:value>close</rng:value> + <rng:value>melt</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:transition-speed"> + <rng:ref name="presentationSpeeds"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="smil:type"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="smil:subtype"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="smil:direction"> + <rng:choice> + <rng:value>forward</rng:value> + <rng:value>reverse</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="smil:fadeColor"> + <rng:ref name="color"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:duration"> + <rng:ref name="duration"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:visibility"> + <rng:choice> + <rng:value>visible</rng:value> + <rng:value>hidden</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:background-size"> + <rng:choice> + <rng:value>full</rng:value> + <rng:value>border</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:background-objects-visible"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:background-visible"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:display-header"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:display-footer"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:display-page-number"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="presentation:display-date-time"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="style-drawing-page-properties-content-strict"> + <rng:ref name="style-graphic-fill-properties-attlist"/> + <rng:ref name="style-drawing-page-properties-attlist"/> + <rng:ref name="style-drawing-page-properties-elements"/> + </rng:define> + <rng:define name="style-drawing-page-properties-elements"> + <rng:optional> + <rng:ref name="presentation-sound"/> + </rng:optional> + </rng:define> + <rng:define name="style-drop-cap"> + <rng:optional> + <rng:element name="style:drop-cap"> + <rng:ref name="style-drop-cap-attlist"/> + <rng:empty/> + </rng:element> + </rng:optional> + </rng:define> + <rng:define name="style-drop-cap-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="style:length"> + <rng:choice> + <rng:value>word</rng:value> + <rng:ref name="positiveInteger"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:lines"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:distance"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="style-font-face"> + <rng:element name="style:font-face"> + <rng:ref name="style-font-face-attlist"/> + <rng:optional> + <rng:ref name="svg-font-face-src"/> + </rng:optional> + <rng:optional> + <rng:ref name="svg-definition-src"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="style-font-face-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="svg:font-family"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:font-style"> + <rng:ref name="fontStyle"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:font-variant"> + <rng:ref name="fontVariant"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:font-weight"> + <rng:ref name="fontWeight"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:font-stretch"> + <rng:choice> + <rng:value>normal</rng:value> + <rng:value>ultra-condensed</rng:value> + <rng:value>extra-condensed</rng:value> + <rng:value>condensed</rng:value> + <rng:value>semi-condensed</rng:value> + <rng:value>semi-expanded</rng:value> + <rng:value>expanded</rng:value> + <rng:value>extra-expanded</rng:value> + <rng:value>ultra-expanded</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:font-size"> + <rng:ref name="positiveLength"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:unicode-range"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:units-per-em"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:panose-1"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:stemv"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:stemh"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:slope"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:cap-height"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:x-height"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:accent-height"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:ascent"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:descent"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:widths"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:bbox"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:ideographic"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:alphabetic"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:mathematical"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:hanging"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:v-ideographic"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:v-alphabetic"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:v-mathematical"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:v-hanging"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:underline-position"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:underline-thickness"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:strikethrough-position"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:strikethrough-thickness"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:overline-position"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:overline-thickness"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + <rng:attribute name="style:name"> + <rng:ref name="string"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="style:font-adornments"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:font-family-generic"> + <rng:ref name="fontFamilyGeneric"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:font-pitch"> + <rng:ref name="fontPitch"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:font-charset"> + <rng:ref name="textEncoding"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="style-footer"> + <rng:element name="style:footer"> + <rng:ref name="common-style-header-footer-attlist"/> + <rng:ref name="header-footer-content"/> + </rng:element> + </rng:define> + <rng:define name="style-footer-left"> + <rng:element name="style:footer-left"> + <rng:ref name="common-style-header-footer-attlist"/> + <rng:ref name="header-footer-content"/> + </rng:element> + </rng:define> + <rng:define name="style-footer-style"> + <rng:element name="style:footer-style"> + <rng:optional> + <rng:ref name="style-header-footer-properties"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="style-footnote-sep"> + <rng:optional> + <rng:element name="style:footnote-sep"> + <rng:ref name="style-footnote-sep-attlist"/> + <rng:empty/> + </rng:element> + </rng:optional> + </rng:define> + <rng:define name="style-footnote-sep-attlist"> + <rng:optional> + <rng:attribute name="style:width"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:rel-width"> + <rng:ref name="percent"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:color"> + <rng:ref name="color"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:line-style"> + <rng:ref name="lineStyle"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:adjustment"> + <rng:choice> + <rng:value>left</rng:value> + <rng:value>center</rng:value> + <rng:value>right</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:distance-before-sep"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:distance-after-sep"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="style-graphic-fill-properties-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="draw:fill"> + <rng:choice> + <rng:value>none</rng:value> + <rng:value>solid</rng:value> + <rng:value>bitmap</rng:value> + <rng:value>gradient</rng:value> + <rng:value>hatch</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:fill-color"> + <rng:ref name="color"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:secondary-fill-color"> + <rng:ref name="color"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:fill-gradient-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:gradient-step-count"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:fill-hatch-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:fill-hatch-solid"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:fill-image-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:repeat"> + <rng:choice> + <rng:value>no-repeat</rng:value> + <rng:value>repeat</rng:value> + <rng:value>stretch</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:fill-image-width"> + <rng:choice> + <rng:ref name="length"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:fill-image-height"> + <rng:choice> + <rng:ref name="length"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:fill-image-ref-point-x"> + <rng:ref name="percent"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:fill-image-ref-point-y"> + <rng:ref name="percent"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:fill-image-ref-point"> + <rng:choice> + <rng:value>top-left</rng:value> + <rng:value>top</rng:value> + <rng:value>top-right</rng:value> + <rng:value>left</rng:value> + <rng:value>center</rng:value> + <rng:value>right</rng:value> + <rng:value>bottom-left</rng:value> + <rng:value>bottom</rng:value> + <rng:value>bottom-right</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:tile-repeat-offset"> + <rng:list> + <rng:ref name="zeroToHundredPercent"/> + <rng:choice> + <rng:value>horizontal</rng:value> + <rng:value>vertical</rng:value> + </rng:choice> + </rng:list> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:opacity"> + <rng:ref name="zeroToHundredPercent"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:opacity-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:fill-rule"> + <rng:choice> + <rng:value>nonzero</rng:value> + <rng:value>evenodd</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="style-graphic-properties"> + <rng:element name="style:graphic-properties"> + <rng:ref name="style-graphic-properties-content-strict"/> + </rng:element> + </rng:define> + <rng:define name="style-graphic-properties-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="draw:stroke"> + <rng:choice> + <rng:value>none</rng:value> + <rng:value>dash</rng:value> + <rng:value>solid</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:stroke-dash"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:stroke-dash-names"> + <rng:ref name="styleNameRefs"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:stroke-width"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:stroke-color"> + <rng:ref name="color"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:marker-start"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:marker-end"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:marker-start-width"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:marker-end-width"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:marker-start-center"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:marker-end-center"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:stroke-opacity"> + <rng:choice> + <rng:data type="double"> + <rng:param name="minInclusive">0</rng:param> + <rng:param name="maxInclusive">1</rng:param> + </rng:data> + <rng:ref name="zeroToHundredPercent"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:stroke-linejoin"> + <rng:choice> + <rng:value>miter</rng:value> + <rng:value>round</rng:value> + <rng:value>bevel</rng:value> + <rng:value>middle</rng:value> + <rng:value>none</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:stroke-linecap"> + <rng:choice> + <rng:value>butt</rng:value> + <rng:value>square</rng:value> + <rng:value>round</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:symbol-color"> + <rng:ref name="color"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:animation"> + <rng:choice> + <rng:value>none</rng:value> + <rng:value>scroll</rng:value> + <rng:value>alternate</rng:value> + <rng:value>slide</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:animation-direction"> + <rng:choice> + <rng:value>left</rng:value> + <rng:value>right</rng:value> + <rng:value>up</rng:value> + <rng:value>down</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:animation-start-inside"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:animation-stop-inside"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:animation-repeat"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:animation-delay"> + <rng:ref name="duration"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:animation-steps"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:auto-grow-width"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:auto-grow-height"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:fit-to-size"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:fit-to-contour"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:textarea-vertical-align"> + <rng:choice> + <rng:value>top</rng:value> + <rng:value>middle</rng:value> + <rng:value>bottom</rng:value> + <rng:value>justify</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:textarea-horizontal-align"> + <rng:choice> + <rng:value>left</rng:value> + <rng:value>center</rng:value> + <rng:value>right</rng:value> + <rng:value>justify</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:wrap-option"> + <rng:choice> + <rng:value>no-wrap</rng:value> + <rng:value>wrap</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:shrink-to-fit"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:color-mode"> + <rng:choice> + <rng:value>greyscale</rng:value> + <rng:value>mono</rng:value> + <rng:value>watermark</rng:value> + <rng:value>standard</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:color-inversion"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:luminance"> + <rng:ref name="zeroToHundredPercent"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:contrast"> + <rng:ref name="percent"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:gamma"> + <rng:ref name="percent"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:red"> + <rng:ref name="signedZeroToHundredPercent"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:green"> + <rng:ref name="signedZeroToHundredPercent"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:blue"> + <rng:ref name="signedZeroToHundredPercent"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:image-opacity"> + <rng:ref name="zeroToHundredPercent"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:shadow"> + <rng:choice> + <rng:value>visible</rng:value> + <rng:value>hidden</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:shadow-offset-x"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:shadow-offset-y"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:shadow-color"> + <rng:ref name="color"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:shadow-opacity"> + <rng:ref name="zeroToHundredPercent"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:start-line-spacing-horizontal"> + <rng:ref name="distance"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:start-line-spacing-vertical"> + <rng:ref name="distance"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:end-line-spacing-horizontal"> + <rng:ref name="distance"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:end-line-spacing-vertical"> + <rng:ref name="distance"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:line-distance"> + <rng:ref name="distance"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:guide-overhang"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:guide-distance"> + <rng:ref name="distance"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:start-guide"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:end-guide"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:placing"> + <rng:choice> + <rng:value>below</rng:value> + <rng:value>above</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:parallel"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:measure-align"> + <rng:choice> + <rng:value>automatic</rng:value> + <rng:value>left-outside</rng:value> + <rng:value>inside</rng:value> + <rng:value>right-outside</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:measure-vertical-align"> + <rng:choice> + <rng:value>automatic</rng:value> + <rng:value>above</rng:value> + <rng:value>below</rng:value> + <rng:value>center</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:unit"> + <rng:choice> + <rng:value>automatic</rng:value> + <rng:value>mm</rng:value> + <rng:value>cm</rng:value> + <rng:value>m</rng:value> + <rng:value>km</rng:value> + <rng:value>pt</rng:value> + <rng:value>pc</rng:value> + <rng:value>inch</rng:value> + <rng:value>ft</rng:value> + <rng:value>mi</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:show-unit"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:decimal-places"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:caption-type"> + <rng:choice> + <rng:value>straight-line</rng:value> + <rng:value>angled-line</rng:value> + <rng:value>angled-connector-line</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:caption-angle-type"> + <rng:choice> + <rng:value>fixed</rng:value> + <rng:value>free</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:caption-angle"> + <rng:ref name="angle"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:caption-gap"> + <rng:ref name="distance"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:caption-escape-direction"> + <rng:choice> + <rng:value>horizontal</rng:value> + <rng:value>vertical</rng:value> + <rng:value>auto</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:caption-escape"> + <rng:choice> + <rng:ref name="length"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:caption-line-length"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:caption-fit-line-length"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="dr3d:horizontal-segments"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="dr3d:vertical-segments"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="dr3d:edge-rounding"> + <rng:ref name="percent"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="dr3d:edge-rounding-mode"> + <rng:choice> + <rng:value>correct</rng:value> + <rng:value>attractive</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="dr3d:back-scale"> + <rng:ref name="percent"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="dr3d:depth"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="dr3d:backface-culling"> + <rng:choice> + <rng:value>enabled</rng:value> + <rng:value>disabled</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="dr3d:end-angle"> + <rng:ref name="angle"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="dr3d:close-front"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="dr3d:close-back"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="dr3d:lighting-mode"> + <rng:choice> + <rng:value>standard</rng:value> + <rng:value>double-sided</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="dr3d:normals-kind"> + <rng:choice> + <rng:value>object</rng:value> + <rng:value>flat</rng:value> + <rng:value>sphere</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="dr3d:normals-direction"> + <rng:choice> + <rng:value>normal</rng:value> + <rng:value>inverse</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="dr3d:texture-generation-mode-x"> + <rng:choice> + <rng:value>object</rng:value> + <rng:value>parallel</rng:value> + <rng:value>sphere</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="dr3d:texture-generation-mode-y"> + <rng:choice> + <rng:value>object</rng:value> + <rng:value>parallel</rng:value> + <rng:value>sphere</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="dr3d:texture-kind"> + <rng:choice> + <rng:value>luminance</rng:value> + <rng:value>intensity</rng:value> + <rng:value>color</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="dr3d:texture-filter"> + <rng:choice> + <rng:value>enabled</rng:value> + <rng:value>disabled</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="dr3d:texture-mode"> + <rng:choice> + <rng:value>replace</rng:value> + <rng:value>modulate</rng:value> + <rng:value>blend</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="dr3d:ambient-color"> + <rng:ref name="color"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="dr3d:emissive-color"> + <rng:ref name="color"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="dr3d:specular-color"> + <rng:ref name="color"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="dr3d:diffuse-color"> + <rng:ref name="color"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="dr3d:shininess"> + <rng:ref name="percent"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="dr3d:shadow"> + <rng:choice> + <rng:value>visible</rng:value> + <rng:value>hidden</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:ref name="common-draw-rel-size-attlist"/> + <rng:optional> + <rng:attribute name="fo:min-width"> + <rng:choice> + <rng:ref name="length"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:min-height"> + <rng:choice> + <rng:ref name="length"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:max-height"> + <rng:choice> + <rng:ref name="length"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:max-width"> + <rng:choice> + <rng:ref name="length"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:ref name="common-horizontal-margin-attlist"/> + <rng:ref name="common-vertical-margin-attlist"/> + <rng:ref name="common-margin-attlist"/> + <rng:optional> + <rng:attribute name="style:print-content"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:protect"> + <rng:choice> + <rng:value>none</rng:value> + <rng:list> + <rng:oneOrMore> + <rng:choice> + <rng:value>content</rng:value> + <rng:value>position</rng:value> + <rng:value>size</rng:value> + </rng:choice> + </rng:oneOrMore> + </rng:list> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:horizontal-pos"> + <rng:choice> + <rng:value>left</rng:value> + <rng:value>center</rng:value> + <rng:value>right</rng:value> + <rng:value>from-left</rng:value> + <rng:value>inside</rng:value> + <rng:value>outside</rng:value> + <rng:value>from-inside</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:x"> + <rng:ref name="coordinate"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:horizontal-rel"> + <rng:choice> + <rng:value>page</rng:value> + <rng:value>page-content</rng:value> + <rng:value>page-start-margin</rng:value> + <rng:value>page-end-margin</rng:value> + <rng:value>frame</rng:value> + <rng:value>frame-content</rng:value> + <rng:value>frame-start-margin</rng:value> + <rng:value>frame-end-margin</rng:value> + <rng:value>paragraph</rng:value> + <rng:value>paragraph-content</rng:value> + <rng:value>paragraph-start-margin</rng:value> + <rng:value>paragraph-end-margin</rng:value> + <rng:value>char</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:ref name="common-vertical-pos-attlist"/> + <rng:ref name="common-vertical-rel-attlist"/> + <rng:ref name="common-text-anchor-attlist"/> + <rng:ref name="common-border-attlist"/> + <rng:ref name="common-border-line-width-attlist"/> + <rng:ref name="common-padding-attlist"/> + <rng:ref name="common-shadow-attlist"/> + <rng:ref name="common-background-color-attlist"/> + <rng:ref name="common-background-transparency-attlist"/> + <rng:ref name="common-editable-attlist"/> + <rng:optional> + <rng:attribute name="style:wrap"> + <rng:choice> + <rng:value>none</rng:value> + <rng:value>left</rng:value> + <rng:value>right</rng:value> + <rng:value>parallel</rng:value> + <rng:value>dynamic</rng:value> + <rng:value>run-through</rng:value> + <rng:value>biggest</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:wrap-dynamic-threshold"> + <rng:ref name="nonNegativeLength"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:number-wrapped-paragraphs"> + <rng:choice> + <rng:value>no-limit</rng:value> + <rng:ref name="positiveInteger"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:wrap-contour"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:wrap-contour-mode"> + <rng:choice> + <rng:value>full</rng:value> + <rng:value>outside</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:run-through"> + <rng:choice> + <rng:value>foreground</rng:value> + <rng:value>background</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:flow-with-text"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:overflow-behavior"> + <rng:choice> + <rng:value>clip</rng:value> + <rng:value>auto-create-new-frame</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:mirror"> + <rng:choice> + <rng:value>none</rng:value> + <rng:value>vertical</rng:value> + <rng:ref name="horizontal-mirror"/> + <rng:list> + <rng:value>vertical</rng:value> + <rng:ref name="horizontal-mirror"/> + </rng:list> + <rng:list> + <rng:ref name="horizontal-mirror"/> + <rng:value>vertical</rng:value> + </rng:list> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:clip"> + <rng:choice> + <rng:value>auto</rng:value> + <rng:ref name="clipShape"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:wrap-influence-on-position"> + <rng:choice> + <rng:value>iterative</rng:value> + <rng:value>once-concurrent</rng:value> + <rng:value>once-successive</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:ref name="common-writing-mode-attlist"/> + <rng:optional> + <rng:attribute name="draw:frame-display-scrollbar"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:frame-display-border"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:frame-margin-horizontal"> + <rng:ref name="nonNegativePixelLength"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:frame-margin-vertical"> + <rng:ref name="nonNegativePixelLength"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:visible-area-left"> + <rng:ref name="nonNegativeLength"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:visible-area-top"> + <rng:ref name="nonNegativeLength"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:visible-area-width"> + <rng:ref name="positiveLength"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:visible-area-height"> + <rng:ref name="positiveLength"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:draw-aspect"> + <rng:choice> + <rng:value>content</rng:value> + <rng:value>thumbnail</rng:value> + <rng:value>icon</rng:value> + <rng:value>print-view</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="draw:ole-draw-aspect"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="style-graphic-properties-content-strict"> + <rng:ref name="style-graphic-properties-attlist"/> + <rng:ref name="style-graphic-fill-properties-attlist"/> + <rng:ref name="style-graphic-properties-elements"/> + </rng:define> + <rng:define name="style-graphic-properties-elements"> + <rng:interleave> + <rng:optional> + <rng:ref name="text-list-style"/> + </rng:optional> + <rng:ref name="style-background-image"/> + <rng:ref name="style-columns"/> + </rng:interleave> + </rng:define> + <rng:define name="style-handout-master"> + <rng:element name="style:handout-master"> + <rng:ref name="common-presentation-header-footer-attlist"/> + <rng:ref name="style-handout-master-attlist"/> + <rng:zeroOrMore> + <rng:ref name="shape"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="style-handout-master-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="presentation:presentation-page-layout-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:attribute name="style:page-layout-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="draw:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="style-header"> + <rng:element name="style:header"> + <rng:ref name="common-style-header-footer-attlist"/> + <rng:ref name="header-footer-content"/> + </rng:element> + </rng:define> + <rng:define name="style-header-footer-properties"> + <rng:element name="style:header-footer-properties"> + <rng:ref name="style-header-footer-properties-content-strict"/> + </rng:element> + </rng:define> + <rng:define name="style-header-footer-properties-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="svg:height"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:min-height"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + <rng:ref name="common-horizontal-margin-attlist"/> + <rng:ref name="common-vertical-margin-attlist"/> + <rng:ref name="common-margin-attlist"/> + <rng:ref name="common-border-attlist"/> + <rng:ref name="common-border-line-width-attlist"/> + <rng:ref name="common-padding-attlist"/> + <rng:ref name="common-background-color-attlist"/> + <rng:ref name="common-shadow-attlist"/> + <rng:optional> + <rng:attribute name="style:dynamic-spacing"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="style-header-footer-properties-content-strict"> + <rng:ref name="style-header-footer-properties-attlist"/> + <rng:ref name="style-header-footer-properties-elements"/> + </rng:define> + <rng:define name="style-header-footer-properties-elements"> + <rng:ref name="style-background-image"/> + </rng:define> + <rng:define name="style-header-left"> + <rng:element name="style:header-left"> + <rng:ref name="common-style-header-footer-attlist"/> + <rng:ref name="header-footer-content"/> + </rng:element> + </rng:define> + <rng:define name="style-header-style"> + <rng:element name="style:header-style"> + <rng:optional> + <rng:ref name="style-header-footer-properties"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="style-list-level-label-alignment"> + <rng:optional> + <rng:element name="style:list-level-label-alignment"> + <rng:ref name="style-list-level-label-alignment-attlist"/> + <rng:empty/> + </rng:element> + </rng:optional> + </rng:define> + <rng:define name="style-list-level-label-alignment-attlist"> + <rng:interleave> + <rng:attribute name="text:label-followed-by"> + <rng:choice> + <rng:value>listtab</rng:value> + <rng:value>space</rng:value> + <rng:value>nothing</rng:value> + </rng:choice> + </rng:attribute> + <rng:optional> + <rng:attribute name="text:list-tab-stop-position"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:text-indent"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:margin-left"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="style-list-level-properties"> + <rng:element name="style:list-level-properties"> + <rng:ref name="style-list-level-properties-content-strict"/> + </rng:element> + </rng:define> + <rng:define name="style-list-level-properties-attlist"> + <rng:interleave> + <rng:ref name="common-text-align"/> + <rng:optional> + <rng:attribute name="text:space-before"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:min-label-width"> + <rng:ref name="nonNegativeLength"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:min-label-distance"> + <rng:ref name="nonNegativeLength"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:font-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:width"> + <rng:ref name="positiveLength"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:height"> + <rng:ref name="positiveLength"/> + </rng:attribute> + </rng:optional> + <rng:ref name="common-vertical-rel-attlist"/> + <rng:ref name="common-vertical-pos-attlist"/> + <rng:optional> + <rng:attribute name="text:list-level-position-and-space-mode"> + <rng:choice> + <rng:value>label-width-and-position</rng:value> + <rng:value>label-alignment</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="style-list-level-properties-content-strict"> + <rng:ref name="style-list-level-properties-attlist"/> + <rng:ref name="style-list-level-properties-elements"/> + </rng:define> + <rng:define name="style-list-level-properties-elements"> + <rng:ref name="style-list-level-label-alignment"/> + </rng:define> + <rng:define name="style-map"> + <rng:element name="style:map"> + <rng:ref name="style-map-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="style-map-attlist"> + <rng:interleave> + <rng:attribute name="style:condition"> + <rng:ref name="string"/> + </rng:attribute> + <rng:attribute name="style:apply-style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="style:base-cell-address"> + <rng:ref name="cellAddress"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="style-master-page"> + <rng:element name="style:master-page"> + <rng:ref name="style-master-page-attlist"/> + <rng:optional> + <rng:ref name="style-header"/> + <rng:optional> + <rng:ref name="style-header-left"/> + </rng:optional> + </rng:optional> + <rng:optional> + <rng:ref name="style-footer"/> + <rng:optional> + <rng:ref name="style-footer-left"/> + </rng:optional> + </rng:optional> + <rng:optional> + <rng:ref name="draw-layer-set"/> + </rng:optional> + <rng:optional> + <rng:ref name="office-forms"/> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="shape"/> + </rng:zeroOrMore> + <rng:optional> + <rng:ref name="animation-element"/> + </rng:optional> + <rng:optional> + <rng:ref name="presentation-notes"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="style-master-page-attlist"> + <rng:interleave> + <rng:attribute name="style:name"> + <rng:ref name="styleName"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="style:display-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:attribute name="style:page-layout-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="draw:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:next-style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="style-num-letter-sync-attlist"> + <rng:optional> + <rng:attribute name="style:num-letter-sync"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="style-page-layout"> + <rng:element name="style:page-layout"> + <rng:ref name="style-page-layout-attlist"/> + <rng:ref name="style-page-layout-content"/> + </rng:element> + </rng:define> + <rng:define name="style-page-layout-attlist"> + <rng:interleave> + <rng:attribute name="style:name"> + <rng:ref name="styleName"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="style:page-usage"> + <rng:choice> + <rng:value>all</rng:value> + <rng:value>left</rng:value> + <rng:value>right</rng:value> + <rng:value>mirrored</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="style-page-layout-content"> + <rng:optional> + <rng:ref name="style-page-layout-properties"/> + </rng:optional> + <rng:optional> + <rng:ref name="style-header-style"/> + </rng:optional> + <rng:optional> + <rng:ref name="style-footer-style"/> + </rng:optional> + </rng:define> + <rng:define name="style-page-layout-properties"> + <rng:element name="style:page-layout-properties"> + <rng:ref name="style-page-layout-properties-content-strict"/> + </rng:element> + </rng:define> + <rng:define name="style-page-layout-properties-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="fo:page-width"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:page-height"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:ref name="common-num-format-attlist"/> + </rng:optional> + <rng:ref name="common-num-format-prefix-suffix-attlist"/> + <rng:optional> + <rng:attribute name="style:paper-tray-name"> + <rng:choice> + <rng:value>default</rng:value> + <rng:ref name="string"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:print-orientation"> + <rng:choice> + <rng:value>portrait</rng:value> + <rng:value>landscape</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:ref name="common-horizontal-margin-attlist"/> + <rng:ref name="common-vertical-margin-attlist"/> + <rng:ref name="common-margin-attlist"/> + <rng:ref name="common-border-attlist"/> + <rng:ref name="common-border-line-width-attlist"/> + <rng:ref name="common-padding-attlist"/> + <rng:ref name="common-shadow-attlist"/> + <rng:ref name="common-background-color-attlist"/> + <rng:optional> + <rng:attribute name="style:register-truth-ref-style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:print"> + <rng:list> + <rng:zeroOrMore> + <rng:choice> + <rng:value>headers</rng:value> + <rng:value>grid</rng:value> + <rng:value>annotations</rng:value> + <rng:value>objects</rng:value> + <rng:value>charts</rng:value> + <rng:value>drawings</rng:value> + <rng:value>formulas</rng:value> + <rng:value>zero-values</rng:value> + </rng:choice> + </rng:zeroOrMore> + </rng:list> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:print-page-order"> + <rng:choice> + <rng:value>ttb</rng:value> + <rng:value>ltr</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:first-page-number"> + <rng:choice> + <rng:ref name="positiveInteger"/> + <rng:value>continue</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:scale-to"> + <rng:ref name="percent"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:scale-to-pages"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:table-centering"> + <rng:choice> + <rng:value>horizontal</rng:value> + <rng:value>vertical</rng:value> + <rng:value>both</rng:value> + <rng:value>none</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:footnote-max-height"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + <rng:ref name="common-writing-mode-attlist"/> + <rng:optional> + <rng:attribute name="style:layout-grid-mode"> + <rng:choice> + <rng:value>none</rng:value> + <rng:value>line</rng:value> + <rng:value>both</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:layout-grid-standard-mode"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:layout-grid-base-height"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:layout-grid-ruby-height"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:layout-grid-lines"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:layout-grid-base-width"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:layout-grid-color"> + <rng:ref name="color"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:layout-grid-ruby-below"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:layout-grid-print"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:layout-grid-display"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:layout-grid-snap-to"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="style-page-layout-properties-content-strict"> + <rng:ref name="style-page-layout-properties-attlist"/> + <rng:ref name="style-page-layout-properties-elements"/> + </rng:define> + <rng:define name="style-page-layout-properties-elements"> + <rng:interleave> + <rng:ref name="style-background-image"/> + <rng:ref name="style-columns"/> + <rng:ref name="style-footnote-sep"/> + </rng:interleave> + </rng:define> + <rng:define name="style-paragraph-properties"> + <rng:element name="style:paragraph-properties"> + <rng:ref name="style-paragraph-properties-content-strict"/> + </rng:element> + </rng:define> + <rng:define name="style-paragraph-properties-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="fo:line-height"> + <rng:choice> + <rng:value>normal</rng:value> + <rng:ref name="nonNegativeLength"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:line-height-at-least"> + <rng:ref name="nonNegativeLength"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:line-spacing"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:font-independent-line-spacing"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:ref name="common-text-align"/> + <rng:optional> + <rng:attribute name="fo:text-align-last"> + <rng:choice> + <rng:value>start</rng:value> + <rng:value>center</rng:value> + <rng:value>justify</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:justify-single-word"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:keep-together"> + <rng:choice> + <rng:value>auto</rng:value> + <rng:value>always</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:widows"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:orphans"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:tab-stop-distance"> + <rng:ref name="nonNegativeLength"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:hyphenation-keep"> + <rng:choice> + <rng:value>auto</rng:value> + <rng:value>page</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:hyphenation-ladder-count"> + <rng:choice> + <rng:value>no-limit</rng:value> + <rng:ref name="positiveInteger"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:register-true"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:ref name="common-horizontal-margin-attlist"/> + <rng:optional> + <rng:attribute name="fo:text-indent"> + <rng:choice> + <rng:ref name="length"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:auto-text-indent"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:ref name="common-vertical-margin-attlist"/> + <rng:ref name="common-margin-attlist"/> + <rng:ref name="common-break-attlist"/> + <rng:ref name="common-background-color-attlist"/> + <rng:ref name="common-border-attlist"/> + <rng:ref name="common-border-line-width-attlist"/> + <rng:optional> + <rng:attribute name="style:join-border"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:ref name="common-padding-attlist"/> + <rng:ref name="common-shadow-attlist"/> + <rng:ref name="common-keep-with-next-attlist"/> + <rng:optional> + <rng:attribute name="text:number-lines"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:line-number"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:text-autospace"> + <rng:choice> + <rng:value>none</rng:value> + <rng:value>ideograph-alpha</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:punctuation-wrap"> + <rng:choice> + <rng:value>simple</rng:value> + <rng:value>hanging</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:line-break"> + <rng:choice> + <rng:value>normal</rng:value> + <rng:value>strict</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:vertical-align"> + <rng:choice> + <rng:value>top</rng:value> + <rng:value>middle</rng:value> + <rng:value>bottom</rng:value> + <rng:value>auto</rng:value> + <rng:value>baseline</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:ref name="common-writing-mode-attlist"/> + <rng:optional> + <rng:attribute name="style:writing-mode-automatic"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:snap-to-layout-grid"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:ref name="common-page-number-attlist"/> + <rng:ref name="common-background-transparency-attlist"/> + </rng:interleave> + </rng:define> + <rng:define name="style-paragraph-properties-content-strict"> + <rng:ref name="style-paragraph-properties-attlist"/> + <rng:ref name="style-paragraph-properties-elements"/> + </rng:define> + <rng:define name="style-paragraph-properties-elements"> + <rng:interleave> + <rng:ref name="style-tab-stops"/> + <rng:ref name="style-drop-cap"/> + <rng:ref name="style-background-image"/> + </rng:interleave> + </rng:define> + <rng:define name="style-presentation-page-layout"> + <rng:element name="style:presentation-page-layout"> + <rng:attribute name="style:name"> + <rng:ref name="styleName"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="style:display-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="presentation-placeholder"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="style-region-center"> + <rng:element name="style:region-center"> + <rng:ref name="region-content"/> + </rng:element> + </rng:define> + <rng:define name="style-region-left"> + <rng:element name="style:region-left"> + <rng:ref name="region-content"/> + </rng:element> + </rng:define> + <rng:define name="style-region-right"> + <rng:element name="style:region-right"> + <rng:ref name="region-content"/> + </rng:element> + </rng:define> + <rng:define name="style-ruby-properties"> + <rng:element name="style:ruby-properties"> + <rng:ref name="style-ruby-properties-content-strict"/> + </rng:element> + </rng:define> + <rng:define name="style-ruby-properties-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="style:ruby-position"> + <rng:choice> + <rng:value>above</rng:value> + <rng:value>below</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:ruby-align"> + <rng:choice> + <rng:value>left</rng:value> + <rng:value>center</rng:value> + <rng:value>right</rng:value> + <rng:value>distribute-letter</rng:value> + <rng:value>distribute-space</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="style-ruby-properties-content-strict"> + <rng:ref name="style-ruby-properties-attlist"/> + <rng:ref name="style-ruby-properties-elements"/> + </rng:define> + <rng:define name="style-ruby-properties-elements"> + <rng:empty/> + </rng:define> + <rng:define name="style-section-properties"> + <rng:element name="style:section-properties"> + <rng:ref name="style-section-properties-content-strict"/> + </rng:element> + </rng:define> + <rng:define name="style-section-properties-attlist"> + <rng:interleave> + <rng:ref name="common-background-color-attlist"/> + <rng:ref name="common-horizontal-margin-attlist"/> + <rng:optional> + <rng:attribute name="style:protect"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:ref name="common-editable-attlist"/> + <rng:optional> + <rng:attribute name="text:dont-balance-text-columns"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:ref name="common-writing-mode-attlist"/> + </rng:interleave> + </rng:define> + <rng:define name="style-section-properties-content-strict"> + <rng:ref name="style-section-properties-attlist"/> + <rng:ref name="style-section-properties-elements"/> + </rng:define> + <rng:define name="style-section-properties-elements"> + <rng:interleave> + <rng:ref name="style-background-image"/> + <rng:ref name="style-columns"/> + <rng:zeroOrMore> + <rng:ref name="text-notes-configuration"/> + </rng:zeroOrMore> + </rng:interleave> + </rng:define> + <rng:define name="style-style"> + <rng:element name="style:style"> + <rng:ref name="style-style-attlist"/> + <rng:ref name="style-style-content"/> + <rng:zeroOrMore> + <rng:ref name="style-map"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="style-style-attlist"> + <rng:interleave> + <rng:attribute name="style:name"> + <rng:ref name="styleName"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="style:display-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:parent-style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:next-style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:list-level"> + <rng:choice> + <rng:ref name="positiveInteger"/> + <rng:empty/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:list-style-name"> + <rng:choice> + <rng:ref name="styleName"/> + <rng:empty/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:master-page-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:auto-update"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:data-style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:percentage-data-style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:class"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:default-outline-level"> + <rng:choice> + <rng:ref name="positiveInteger"/> + <rng:empty/> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="style-style-content"> + <rng:choice> + <rng:group> + <rng:attribute name="style:family"> + <rng:value>text</rng:value> + </rng:attribute> + <rng:optional> + <rng:ref name="style-text-properties"/> + </rng:optional> + </rng:group> + <rng:group> + <rng:attribute name="style:family"> + <rng:value>paragraph</rng:value> + </rng:attribute> + <rng:optional> + <rng:ref name="style-paragraph-properties"/> + </rng:optional> + <rng:optional> + <rng:ref name="style-text-properties"/> + </rng:optional> + </rng:group> + <rng:group> + <rng:attribute name="style:family"> + <rng:value>section</rng:value> + </rng:attribute> + <rng:optional> + <rng:ref name="style-section-properties"/> + </rng:optional> + </rng:group> + <rng:group> + <rng:attribute name="style:family"> + <rng:value>ruby</rng:value> + </rng:attribute> + <rng:optional> + <rng:ref name="style-ruby-properties"/> + </rng:optional> + </rng:group> + <rng:group> + <rng:attribute name="style:family"> + <rng:value>table</rng:value> + </rng:attribute> + <rng:optional> + <rng:ref name="style-table-properties"/> + </rng:optional> + </rng:group> + <rng:group> + <rng:attribute name="style:family"> + <rng:value>table-column</rng:value> + </rng:attribute> + <rng:optional> + <rng:ref name="style-table-column-properties"/> + </rng:optional> + </rng:group> + <rng:group> + <rng:attribute name="style:family"> + <rng:value>table-row</rng:value> + </rng:attribute> + <rng:optional> + <rng:ref name="style-table-row-properties"/> + </rng:optional> + </rng:group> + <rng:group> + <rng:attribute name="style:family"> + <rng:value>table-cell</rng:value> + </rng:attribute> + <rng:optional> + <rng:ref name="style-table-cell-properties"/> + </rng:optional> + <rng:optional> + <rng:ref name="style-paragraph-properties"/> + </rng:optional> + <rng:optional> + <rng:ref name="style-text-properties"/> + </rng:optional> + </rng:group> + <rng:group> + <rng:attribute name="style:family"> + <rng:choice> + <rng:value>graphic</rng:value> + <rng:value>presentation</rng:value> + </rng:choice> + </rng:attribute> + <rng:optional> + <rng:ref name="style-graphic-properties"/> + </rng:optional> + <rng:optional> + <rng:ref name="style-paragraph-properties"/> + </rng:optional> + <rng:optional> + <rng:ref name="style-text-properties"/> + </rng:optional> + </rng:group> + <rng:group> + <rng:attribute name="style:family"> + <rng:value>drawing-page</rng:value> + </rng:attribute> + <rng:optional> + <rng:ref name="style-drawing-page-properties"/> + </rng:optional> + </rng:group> + <rng:group> + <rng:attribute name="style:family"> + <rng:value>chart</rng:value> + </rng:attribute> + <rng:optional> + <rng:ref name="style-chart-properties"/> + </rng:optional> + <rng:optional> + <rng:ref name="style-graphic-properties"/> + </rng:optional> + <rng:optional> + <rng:ref name="style-paragraph-properties"/> + </rng:optional> + <rng:optional> + <rng:ref name="style-text-properties"/> + </rng:optional> + </rng:group> + </rng:choice> + </rng:define> + <rng:define name="style-tab-stop"> + <rng:element name="style:tab-stop"> + <rng:ref name="style-tab-stop-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="style-tab-stop-attlist"> + <rng:interleave> + <rng:attribute name="style:position"> + <rng:ref name="length"/> + </rng:attribute> + <rng:choice> + <rng:optional> + <rng:attribute name="style:type"> + <rng:choice> + <rng:value>left</rng:value> + <rng:value>center</rng:value> + <rng:value>right</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:group> + <rng:attribute name="style:type"> + <rng:value>char</rng:value> + </rng:attribute> + <rng:ref name="style-tab-stop-char-attlist"/> + </rng:group> + </rng:choice> + <rng:optional> + <rng:attribute name="style:leader-type"> + <rng:ref name="lineType"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:leader-style"> + <rng:ref name="lineStyle"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:leader-width"> + <rng:ref name="lineWidth"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:leader-color"> + <rng:choice> + <rng:value>font-color</rng:value> + <rng:ref name="color"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:leader-text"> + <rng:ref name="character"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:leader-text-style"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="style-tab-stop-char-attlist"> + <rng:attribute name="style:char"> + <rng:ref name="character"/> + </rng:attribute> + </rng:define> + <rng:define name="style-tab-stops"> + <rng:optional> + <rng:element name="style:tab-stops"> + <rng:zeroOrMore> + <rng:ref name="style-tab-stop"/> + </rng:zeroOrMore> + </rng:element> + </rng:optional> + </rng:define> + <rng:define name="style-table-cell-properties"> + <rng:element name="style:table-cell-properties"> + <rng:ref name="style-table-cell-properties-content-strict"/> + </rng:element> + </rng:define> + <rng:define name="style-table-cell-properties-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="style:vertical-align"> + <rng:choice> + <rng:value>top</rng:value> + <rng:value>middle</rng:value> + <rng:value>bottom</rng:value> + <rng:value>automatic</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:text-align-source"> + <rng:choice> + <rng:value>fix</rng:value> + <rng:value>value-type</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:ref name="common-style-direction-attlist"/> + <rng:optional> + <rng:attribute name="style:glyph-orientation-vertical"> + <rng:choice> + <rng:value>auto</rng:value> + <rng:value>0</rng:value> + <rng:value>0deg</rng:value> + <rng:value>0rad</rng:value> + <rng:value>0grad</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:ref name="common-writing-mode-attlist"/> + <rng:ref name="common-shadow-attlist"/> + <rng:ref name="common-background-color-attlist"/> + <rng:ref name="common-border-attlist"/> + <rng:optional> + <rng:attribute name="style:diagonal-tl-br"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:diagonal-tl-br-widths"> + <rng:ref name="borderWidths"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:diagonal-bl-tr"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:diagonal-bl-tr-widths"> + <rng:ref name="borderWidths"/> + </rng:attribute> + </rng:optional> + <rng:ref name="common-border-line-width-attlist"/> + <rng:ref name="common-padding-attlist"/> + <rng:optional> + <rng:attribute name="fo:wrap-option"> + <rng:choice> + <rng:value>no-wrap</rng:value> + <rng:value>wrap</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:ref name="common-rotation-angle-attlist"/> + <rng:optional> + <rng:attribute name="style:rotation-align"> + <rng:choice> + <rng:value>none</rng:value> + <rng:value>bottom</rng:value> + <rng:value>top</rng:value> + <rng:value>center</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:cell-protect"> + <rng:choice> + <rng:value>none</rng:value> + <rng:value>hidden-and-protected</rng:value> + <rng:list> + <rng:oneOrMore> + <rng:choice> + <rng:value>protected</rng:value> + <rng:value>formula-hidden</rng:value> + </rng:choice> + </rng:oneOrMore> + </rng:list> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:print-content"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:decimal-places"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:repeat-content"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:shrink-to-fit"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="style-table-cell-properties-content-strict"> + <rng:ref name="style-table-cell-properties-attlist"/> + <rng:ref name="style-table-cell-properties-elements"/> + </rng:define> + <rng:define name="style-table-cell-properties-elements"> + <rng:ref name="style-background-image"/> + </rng:define> + <rng:define name="style-table-column-properties"> + <rng:element name="style:table-column-properties"> + <rng:ref name="style-table-column-properties-content-strict"/> + </rng:element> + </rng:define> + <rng:define name="style-table-column-properties-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="style:column-width"> + <rng:ref name="positiveLength"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:rel-column-width"> + <rng:ref name="relativeLength"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:use-optimal-column-width"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:ref name="common-break-attlist"/> + </rng:interleave> + </rng:define> + <rng:define name="style-table-column-properties-content-strict"> + <rng:ref name="style-table-column-properties-attlist"/> + <rng:ref name="style-table-column-properties-elements"/> + </rng:define> + <rng:define name="style-table-column-properties-elements"> + <rng:empty/> + </rng:define> + <rng:define name="style-table-properties"> + <rng:element name="style:table-properties"> + <rng:ref name="style-table-properties-content-strict"/> + </rng:element> + </rng:define> + <rng:define name="style-table-properties-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="style:width"> + <rng:ref name="positiveLength"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:rel-width"> + <rng:ref name="percent"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:align"> + <rng:choice> + <rng:value>left</rng:value> + <rng:value>center</rng:value> + <rng:value>right</rng:value> + <rng:value>margins</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:ref name="common-horizontal-margin-attlist"/> + <rng:ref name="common-vertical-margin-attlist"/> + <rng:ref name="common-margin-attlist"/> + <rng:ref name="common-page-number-attlist"/> + <rng:ref name="common-break-attlist"/> + <rng:ref name="common-background-color-attlist"/> + <rng:ref name="common-shadow-attlist"/> + <rng:ref name="common-keep-with-next-attlist"/> + <rng:optional> + <rng:attribute name="style:may-break-between-rows"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:border-model"> + <rng:choice> + <rng:value>collapsing</rng:value> + <rng:value>separating</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:ref name="common-writing-mode-attlist"/> + <rng:optional> + <rng:attribute name="table:display"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="style-table-properties-content-strict"> + <rng:ref name="style-table-properties-attlist"/> + <rng:ref name="style-table-properties-elements"/> + </rng:define> + <rng:define name="style-table-properties-elements"> + <rng:ref name="style-background-image"/> + </rng:define> + <rng:define name="style-table-row-properties"> + <rng:element name="style:table-row-properties"> + <rng:ref name="style-table-row-properties-content-strict"/> + </rng:element> + </rng:define> + <rng:define name="style-table-row-properties-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="style:row-height"> + <rng:ref name="positiveLength"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:min-row-height"> + <rng:ref name="nonNegativeLength"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:use-optimal-row-height"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:ref name="common-background-color-attlist"/> + <rng:ref name="common-break-attlist"/> + <rng:optional> + <rng:attribute name="fo:keep-together"> + <rng:choice> + <rng:value>auto</rng:value> + <rng:value>always</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="style-table-row-properties-content-strict"> + <rng:ref name="style-table-row-properties-attlist"/> + <rng:ref name="style-table-row-properties-elements"/> + </rng:define> + <rng:define name="style-table-row-properties-elements"> + <rng:ref name="style-background-image"/> + </rng:define> + <rng:define name="style-text-properties"> + <rng:element name="style:text-properties"> + <rng:ref name="style-text-properties-content-strict"/> + </rng:element> + </rng:define> + <rng:define name="style-text-properties-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="fo:font-variant"> + <rng:ref name="fontVariant"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:text-transform"> + <rng:choice> + <rng:value>none</rng:value> + <rng:value>lowercase</rng:value> + <rng:value>uppercase</rng:value> + <rng:value>capitalize</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:color"> + <rng:ref name="color"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:use-window-font-color"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:text-outline"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:text-line-through-type"> + <rng:ref name="lineType"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:text-line-through-style"> + <rng:ref name="lineStyle"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:text-line-through-width"> + <rng:ref name="lineWidth"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:text-line-through-color"> + <rng:choice> + <rng:value>font-color</rng:value> + <rng:ref name="color"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:text-line-through-text"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:text-line-through-text-style"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:text-position"> + <rng:list> + <rng:choice> + <rng:ref name="percent"/> + <rng:value>super</rng:value> + <rng:value>sub</rng:value> + </rng:choice> + <rng:optional> + <rng:ref name="percent"/> + </rng:optional> + </rng:list> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:font-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:font-name-asian"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:font-name-complex"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:font-family"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:font-family-asian"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:font-family-complex"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:font-family-generic"> + <rng:ref name="fontFamilyGeneric"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:font-family-generic-asian"> + <rng:ref name="fontFamilyGeneric"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:font-family-generic-complex"> + <rng:ref name="fontFamilyGeneric"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:font-style-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:font-style-name-asian"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:font-style-name-complex"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:font-pitch"> + <rng:ref name="fontPitch"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:font-pitch-asian"> + <rng:ref name="fontPitch"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:font-pitch-complex"> + <rng:ref name="fontPitch"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:font-charset"> + <rng:ref name="textEncoding"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:font-charset-asian"> + <rng:ref name="textEncoding"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:font-charset-complex"> + <rng:ref name="textEncoding"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:font-size"> + <rng:choice> + <rng:ref name="positiveLength"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:font-size-asian"> + <rng:choice> + <rng:ref name="positiveLength"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:font-size-complex"> + <rng:choice> + <rng:ref name="positiveLength"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:font-size-rel"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:font-size-rel-asian"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:font-size-rel-complex"> + <rng:ref name="length"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:script-type"> + <rng:choice> + <rng:value>latin</rng:value> + <rng:value>asian</rng:value> + <rng:value>complex</rng:value> + <rng:value>ignore</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:letter-spacing"> + <rng:choice> + <rng:ref name="length"/> + <rng:value>normal</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:language"> + <rng:ref name="languageCode"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:language-asian"> + <rng:ref name="languageCode"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:language-complex"> + <rng:ref name="languageCode"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:country"> + <rng:ref name="countryCode"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:country-asian"> + <rng:ref name="countryCode"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:country-complex"> + <rng:ref name="countryCode"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:script"> + <rng:ref name="scriptCode"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:script-asian"> + <rng:ref name="scriptCode"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:script-complex"> + <rng:ref name="scriptCode"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:rfc-language-tag"> + <rng:ref name="language"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:rfc-language-tag-asian"> + <rng:ref name="language"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:rfc-language-tag-complex"> + <rng:ref name="language"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:font-style"> + <rng:ref name="fontStyle"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:font-style-asian"> + <rng:ref name="fontStyle"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:font-style-complex"> + <rng:ref name="fontStyle"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:font-relief"> + <rng:choice> + <rng:value>none</rng:value> + <rng:value>embossed</rng:value> + <rng:value>engraved</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:text-shadow"> + <rng:ref name="shadowType"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:text-underline-type"> + <rng:ref name="lineType"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:text-underline-style"> + <rng:ref name="lineStyle"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:text-underline-width"> + <rng:ref name="lineWidth"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:text-underline-color"> + <rng:choice> + <rng:value>font-color</rng:value> + <rng:ref name="color"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:text-overline-type"> + <rng:ref name="lineType"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:text-overline-style"> + <rng:ref name="lineStyle"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:text-overline-width"> + <rng:ref name="lineWidth"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:text-overline-color"> + <rng:choice> + <rng:value>font-color</rng:value> + <rng:ref name="color"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:text-overline-mode"> + <rng:ref name="lineMode"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:font-weight"> + <rng:ref name="fontWeight"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:font-weight-asian"> + <rng:ref name="fontWeight"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:font-weight-complex"> + <rng:ref name="fontWeight"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:text-underline-mode"> + <rng:ref name="lineMode"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:text-line-through-mode"> + <rng:ref name="lineMode"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:letter-kerning"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:text-blinking"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:ref name="common-background-color-attlist"/> + <rng:optional> + <rng:attribute name="style:text-combine"> + <rng:choice> + <rng:value>none</rng:value> + <rng:value>letters</rng:value> + <rng:value>lines</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:text-combine-start-char"> + <rng:ref name="character"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:text-combine-end-char"> + <rng:ref name="character"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:text-emphasize"> + <rng:choice> + <rng:value>none</rng:value> + <rng:list> + <rng:choice> + <rng:value>none</rng:value> + <rng:value>accent</rng:value> + <rng:value>dot</rng:value> + <rng:value>circle</rng:value> + <rng:value>disc</rng:value> + </rng:choice> + <rng:choice> + <rng:value>above</rng:value> + <rng:value>below</rng:value> + </rng:choice> + </rng:list> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:text-scale"> + <rng:ref name="percent"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:text-rotation-angle"> + <rng:ref name="angle"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:text-rotation-scale"> + <rng:choice> + <rng:value>fixed</rng:value> + <rng:value>line-height</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:hyphenate"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:hyphenation-remain-char-count"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:hyphenation-push-char-count"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:optional> + <rng:choice> + <rng:attribute name="text:display"> + <rng:value>true</rng:value> + </rng:attribute> + <rng:attribute name="text:display"> + <rng:value>none</rng:value> + </rng:attribute> + <rng:group> + <rng:attribute name="text:display"> + <rng:value>condition</rng:value> + </rng:attribute> + <rng:attribute name="text:condition"> + <rng:value>none</rng:value> + </rng:attribute> + </rng:group> + <rng:empty/> + </rng:choice> + </rng:interleave> + </rng:define> + <rng:define name="style-text-properties-content-strict"> + <rng:ref name="style-text-properties-attlist"/> + <rng:ref name="style-text-properties-elements"/> + </rng:define> + <rng:define name="style-text-properties-elements"> + <rng:empty/> + </rng:define> + <rng:define name="styleName"> + <rng:data type="NCName"/> + </rng:define> + <rng:define name="styleNameRef"> + <rng:choice> + <rng:data type="NCName"/> + <rng:empty/> + </rng:choice> + </rng:define> + <rng:define name="styleNameRefs"> + <rng:list> + <rng:zeroOrMore> + <rng:data type="NCName"/> + </rng:zeroOrMore> + </rng:list> + </rng:define> + <rng:define name="styles"> + <rng:interleave> + <rng:zeroOrMore> + <rng:ref name="style-style"/> + </rng:zeroOrMore> + <rng:zeroOrMore> + <rng:ref name="text-list-style"/> + </rng:zeroOrMore> + <rng:zeroOrMore> + <rng:ref name="number-number-style"/> + </rng:zeroOrMore> + <rng:zeroOrMore> + <rng:ref name="number-currency-style"/> + </rng:zeroOrMore> + <rng:zeroOrMore> + <rng:ref name="number-percentage-style"/> + </rng:zeroOrMore> + <rng:zeroOrMore> + <rng:ref name="number-date-style"/> + </rng:zeroOrMore> + <rng:zeroOrMore> + <rng:ref name="number-time-style"/> + </rng:zeroOrMore> + <rng:zeroOrMore> + <rng:ref name="number-boolean-style"/> + </rng:zeroOrMore> + <rng:zeroOrMore> + <rng:ref name="number-text-style"/> + </rng:zeroOrMore> + </rng:interleave> + </rng:define> + <rng:define name="svg-definition-src"> + <rng:element name="svg:definition-src"> + <rng:ref name="common-svg-font-face-xlink-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="svg-desc"> + <rng:element name="svg:desc"> + <rng:text/> + </rng:element> + </rng:define> + <rng:define name="svg-font-face-format"> + <rng:element name="svg:font-face-format"> + <rng:optional> + <rng:attribute name="svg:string"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="svg-font-face-name"> + <rng:element name="svg:font-face-name"> + <rng:optional> + <rng:attribute name="svg:name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="svg-font-face-src"> + <rng:element name="svg:font-face-src"> + <rng:oneOrMore> + <rng:choice> + <rng:ref name="svg-font-face-uri"/> + <rng:ref name="svg-font-face-name"/> + </rng:choice> + </rng:oneOrMore> + </rng:element> + </rng:define> + <rng:define name="svg-font-face-uri"> + <rng:element name="svg:font-face-uri"> + <rng:ref name="common-svg-font-face-xlink-attlist"/> + <rng:zeroOrMore> + <rng:ref name="svg-font-face-format"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="svg-linearGradient"> + <rng:element name="svg:linearGradient"> + <rng:ref name="common-svg-gradient-attlist"/> + <rng:optional> + <rng:attribute name="svg:x1"> + <rng:choice> + <rng:ref name="coordinate"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:y1"> + <rng:choice> + <rng:ref name="coordinate"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:x2"> + <rng:choice> + <rng:ref name="coordinate"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:y2"> + <rng:choice> + <rng:ref name="coordinate"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="svg-stop"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="svg-radialGradient"> + <rng:element name="svg:radialGradient"> + <rng:ref name="common-svg-gradient-attlist"/> + <rng:optional> + <rng:attribute name="svg:cx"> + <rng:choice> + <rng:ref name="coordinate"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:cy"> + <rng:choice> + <rng:ref name="coordinate"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:r"> + <rng:choice> + <rng:ref name="coordinate"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:fx"> + <rng:choice> + <rng:ref name="coordinate"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:fy"> + <rng:choice> + <rng:ref name="coordinate"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="svg-stop"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="svg-stop"> + <rng:element name="svg:stop"> + <rng:attribute name="svg:offset"> + <rng:choice> + <rng:ref name="double"/> + <rng:ref name="percent"/> + </rng:choice> + </rng:attribute> + <rng:optional> + <rng:attribute name="svg:stop-color"> + <rng:ref name="color"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="svg:stop-opacity"> + <rng:ref name="double"/> + </rng:attribute> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="svg-title"> + <rng:element name="svg:title"> + <rng:text/> + </rng:element> + </rng:define> + <rng:define name="tab-cycles"> + <rng:choice> + <rng:value>records</rng:value> + <rng:value>current</rng:value> + <rng:value>page</rng:value> + </rng:choice> + </rng:define> + <rng:define name="table-background"> + <rng:element name="table:background"> + <rng:ref name="table-background-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-background-attlist"> + <rng:attribute name="table:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:define> + <rng:define name="table-body"> + <rng:element name="table:body"> + <rng:ref name="common-table-template-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-calculation-setting-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="table:case-sensitive"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:precision-as-shown"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:search-criteria-must-apply-to-whole-cell"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:automatic-find-labels"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:use-regular-expressions"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:use-wildcards"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:null-year"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="table-calculation-settings"> + <rng:element name="table:calculation-settings"> + <rng:ref name="table-calculation-setting-attlist"/> + <rng:optional> + <rng:ref name="table-null-date"/> + </rng:optional> + <rng:optional> + <rng:ref name="table-iteration"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="table-cell-address"> + <rng:element name="table:cell-address"> + <rng:ref name="common-table-cell-address-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-cell-content-change"> + <rng:element name="table:cell-content-change"> + <rng:ref name="common-table-change-attlist"/> + <rng:ref name="table-cell-address"/> + <rng:ref name="office-change-info"/> + <rng:optional> + <rng:ref name="table-dependencies"/> + </rng:optional> + <rng:optional> + <rng:ref name="table-deletions"/> + </rng:optional> + <rng:ref name="table-previous"/> + </rng:element> + </rng:define> + <rng:define name="table-cell-content-deletion"> + <rng:element name="table:cell-content-deletion"> + <rng:optional> + <rng:attribute name="table:id"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:ref name="table-cell-address"/> + </rng:optional> + <rng:optional> + <rng:ref name="table-change-track-table-cell"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="table-cell-range-source"> + <rng:element name="table:cell-range-source"> + <rng:ref name="table-table-cell-range-source-attlist"/> + <rng:ref name="table-linked-source-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-change-deletion"> + <rng:element name="table:change-deletion"> + <rng:optional> + <rng:attribute name="table:id"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-change-track-table-cell"> + <rng:element name="table:change-track-table-cell"> + <rng:ref name="table-change-track-table-cell-attlist"/> + <rng:zeroOrMore> + <rng:ref name="text-p"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="table-change-track-table-cell-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="table:cell-address"> + <rng:ref name="cellAddress"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:matrix-covered"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:formula"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:number-matrix-columns-spanned"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:number-matrix-rows-spanned"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:ref name="common-value-and-type-attlist"/> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="table-columns"> + <rng:choice> + <rng:ref name="table-table-columns"/> + <rng:oneOrMore> + <rng:ref name="table-table-column"/> + </rng:oneOrMore> + </rng:choice> + </rng:define> + <rng:define name="table-columns-and-groups"> + <rng:oneOrMore> + <rng:choice> + <rng:ref name="table-table-column-group"/> + <rng:ref name="table-columns-no-group"/> + </rng:choice> + </rng:oneOrMore> + </rng:define> + <rng:define name="table-columns-no-group"> + <rng:choice> + <rng:group> + <rng:ref name="table-columns"/> + <rng:optional> + <rng:ref name="table-table-header-columns"/> + <rng:optional> + <rng:ref name="table-columns"/> + </rng:optional> + </rng:optional> + </rng:group> + <rng:group> + <rng:ref name="table-table-header-columns"/> + <rng:optional> + <rng:ref name="table-columns"/> + </rng:optional> + </rng:group> + </rng:choice> + </rng:define> + <rng:define name="table-consolidation"> + <rng:element name="table:consolidation"> + <rng:ref name="table-consolidation-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-consolidation-attlist"> + <rng:interleave> + <rng:attribute name="table:function"> + <rng:choice> + <rng:value>average</rng:value> + <rng:value>count</rng:value> + <rng:value>countnums</rng:value> + <rng:value>max</rng:value> + <rng:value>min</rng:value> + <rng:value>product</rng:value> + <rng:value>stdev</rng:value> + <rng:value>stdevp</rng:value> + <rng:value>sum</rng:value> + <rng:value>var</rng:value> + <rng:value>varp</rng:value> + <rng:ref name="string"/> + </rng:choice> + </rng:attribute> + <rng:attribute name="table:source-cell-range-addresses"> + <rng:ref name="cellRangeAddressList"/> + </rng:attribute> + <rng:attribute name="table:target-cell-address"> + <rng:ref name="cellAddress"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="table:use-labels"> + <rng:choice> + <rng:value>none</rng:value> + <rng:value>row</rng:value> + <rng:value>column</rng:value> + <rng:value>both</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:link-to-source-data"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="table-content-validation"> + <rng:element name="table:content-validation"> + <rng:ref name="table-validation-attlist"/> + <rng:optional> + <rng:ref name="table-help-message"/> + </rng:optional> + <rng:optional> + <rng:choice> + <rng:ref name="table-error-message"/> + <rng:group> + <rng:ref name="table-error-macro"/> + <rng:ref name="office-event-listeners"/> + </rng:group> + </rng:choice> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="table-content-validations"> + <rng:element name="table:content-validations"> + <rng:oneOrMore> + <rng:ref name="table-content-validation"/> + </rng:oneOrMore> + </rng:element> + </rng:define> + <rng:define name="table-covered-table-cell"> + <rng:element name="table:covered-table-cell"> + <rng:ref name="table-table-cell-attlist"/> + <rng:ref name="table-table-cell-content"/> + </rng:element> + </rng:define> + <rng:define name="table-cut-offs"> + <rng:element name="table:cut-offs"> + <rng:choice> + <rng:oneOrMore> + <rng:ref name="table-movement-cut-off"/> + </rng:oneOrMore> + <rng:group> + <rng:ref name="table-insertion-cut-off"/> + <rng:zeroOrMore> + <rng:ref name="table-movement-cut-off"/> + </rng:zeroOrMore> + </rng:group> + </rng:choice> + </rng:element> + </rng:define> + <rng:define name="table-data-pilot-display-info"> + <rng:element name="table:data-pilot-display-info"> + <rng:ref name="table-data-pilot-display-info-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-data-pilot-display-info-attlist"> + <rng:interleave> + <rng:attribute name="table:enabled"> + <rng:ref name="boolean"/> + </rng:attribute> + <rng:attribute name="table:data-field"> + <rng:ref name="string"/> + </rng:attribute> + <rng:attribute name="table:member-count"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + <rng:attribute name="table:display-member-mode"> + <rng:choice> + <rng:value>from-top</rng:value> + <rng:value>from-bottom</rng:value> + </rng:choice> + </rng:attribute> + </rng:interleave> + </rng:define> + <rng:define name="table-data-pilot-field"> + <rng:element name="table:data-pilot-field"> + <rng:ref name="table-data-pilot-field-attlist"/> + <rng:optional> + <rng:ref name="table-data-pilot-level"/> + </rng:optional> + <rng:optional> + <rng:ref name="table-data-pilot-field-reference"/> + </rng:optional> + <rng:optional> + <rng:ref name="table-data-pilot-groups"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="table-data-pilot-field-attlist"> + <rng:interleave> + <rng:attribute name="table:source-field-name"> + <rng:ref name="string"/> + </rng:attribute> + <rng:choice> + <rng:attribute name="table:orientation"> + <rng:choice> + <rng:value>row</rng:value> + <rng:value>column</rng:value> + <rng:value>data</rng:value> + <rng:value>hidden</rng:value> + </rng:choice> + </rng:attribute> + <rng:group> + <rng:attribute name="table:orientation"> + <rng:value>page</rng:value> + </rng:attribute> + <rng:attribute name="table:selected-page"> + <rng:ref name="string"/> + </rng:attribute> + </rng:group> + </rng:choice> + <rng:optional> + <rng:attribute name="table:is-data-layout-field"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:function"> + <rng:choice> + <rng:value>auto</rng:value> + <rng:value>average</rng:value> + <rng:value>count</rng:value> + <rng:value>countnums</rng:value> + <rng:value>max</rng:value> + <rng:value>min</rng:value> + <rng:value>product</rng:value> + <rng:value>stdev</rng:value> + <rng:value>stdevp</rng:value> + <rng:value>sum</rng:value> + <rng:value>var</rng:value> + <rng:value>varp</rng:value> + <rng:ref name="string"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:used-hierarchy"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="table-data-pilot-field-reference"> + <rng:element name="table:data-pilot-field-reference"> + <rng:ref name="table-data-pilot-field-reference-attlist"/> + </rng:element> + </rng:define> + <rng:define name="table-data-pilot-field-reference-attlist"> + <rng:interleave> + <rng:attribute name="table:field-name"> + <rng:ref name="string"/> + </rng:attribute> + <rng:choice> + <rng:group> + <rng:attribute name="table:member-type"> + <rng:value>named</rng:value> + </rng:attribute> + <rng:attribute name="table:member-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:group> + <rng:attribute name="table:member-type"> + <rng:choice> + <rng:value>previous</rng:value> + <rng:value>next</rng:value> + </rng:choice> + </rng:attribute> + </rng:choice> + <rng:attribute name="table:type"> + <rng:choice> + <rng:value>none</rng:value> + <rng:value>member-difference</rng:value> + <rng:value>member-percentage</rng:value> + <rng:value>member-percentage-difference</rng:value> + <rng:value>running-total</rng:value> + <rng:value>row-percentage</rng:value> + <rng:value>column-percentage</rng:value> + <rng:value>total-percentage</rng:value> + <rng:value>index</rng:value> + </rng:choice> + </rng:attribute> + </rng:interleave> + </rng:define> + <rng:define name="table-data-pilot-group"> + <rng:element name="table:data-pilot-group"> + <rng:ref name="table-data-pilot-group-attlist"/> + <rng:oneOrMore> + <rng:ref name="table-data-pilot-group-member"/> + </rng:oneOrMore> + </rng:element> + </rng:define> + <rng:define name="table-data-pilot-group-attlist"> + <rng:attribute name="table:name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:define> + <rng:define name="table-data-pilot-group-member"> + <rng:element name="table:data-pilot-group-member"> + <rng:ref name="table-data-pilot-group-member-attlist"/> + </rng:element> + </rng:define> + <rng:define name="table-data-pilot-group-member-attlist"> + <rng:attribute name="table:name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:define> + <rng:define name="table-data-pilot-groups"> + <rng:element name="table:data-pilot-groups"> + <rng:ref name="table-data-pilot-groups-attlist"/> + <rng:oneOrMore> + <rng:ref name="table-data-pilot-group"/> + </rng:oneOrMore> + </rng:element> + </rng:define> + <rng:define name="table-data-pilot-groups-attlist"> + <rng:interleave> + <rng:attribute name="table:source-field-name"> + <rng:ref name="string"/> + </rng:attribute> + <rng:choice> + <rng:attribute name="table:date-start"> + <rng:choice> + <rng:ref name="dateOrDateTime"/> + <rng:value>auto</rng:value> + </rng:choice> + </rng:attribute> + <rng:attribute name="table:start"> + <rng:choice> + <rng:ref name="double"/> + <rng:value>auto</rng:value> + </rng:choice> + </rng:attribute> + </rng:choice> + <rng:choice> + <rng:attribute name="table:date-end"> + <rng:choice> + <rng:ref name="dateOrDateTime"/> + <rng:value>auto</rng:value> + </rng:choice> + </rng:attribute> + <rng:attribute name="table:end"> + <rng:choice> + <rng:ref name="double"/> + <rng:value>auto</rng:value> + </rng:choice> + </rng:attribute> + </rng:choice> + <rng:attribute name="table:step"> + <rng:ref name="double"/> + </rng:attribute> + <rng:attribute name="table:grouped-by"> + <rng:choice> + <rng:value>seconds</rng:value> + <rng:value>minutes</rng:value> + <rng:value>hours</rng:value> + <rng:value>days</rng:value> + <rng:value>months</rng:value> + <rng:value>quarters</rng:value> + <rng:value>years</rng:value> + </rng:choice> + </rng:attribute> + </rng:interleave> + </rng:define> + <rng:define name="table-data-pilot-layout-info"> + <rng:element name="table:data-pilot-layout-info"> + <rng:ref name="table-data-pilot-layout-info-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-data-pilot-layout-info-attlist"> + <rng:interleave> + <rng:attribute name="table:layout-mode"> + <rng:choice> + <rng:value>tabular-layout</rng:value> + <rng:value>outline-subtotals-top</rng:value> + <rng:value>outline-subtotals-bottom</rng:value> + </rng:choice> + </rng:attribute> + <rng:attribute name="table:add-empty-lines"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:interleave> + </rng:define> + <rng:define name="table-data-pilot-level"> + <rng:element name="table:data-pilot-level"> + <rng:ref name="table-data-pilot-level-attlist"/> + <rng:optional> + <rng:ref name="table-data-pilot-subtotals"/> + </rng:optional> + <rng:optional> + <rng:ref name="table-data-pilot-members"/> + </rng:optional> + <rng:optional> + <rng:ref name="table-data-pilot-display-info"/> + </rng:optional> + <rng:optional> + <rng:ref name="table-data-pilot-sort-info"/> + </rng:optional> + <rng:optional> + <rng:ref name="table-data-pilot-layout-info"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="table-data-pilot-level-attlist"> + <rng:optional> + <rng:attribute name="table:show-empty"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="table-data-pilot-member"> + <rng:element name="table:data-pilot-member"> + <rng:ref name="table-data-pilot-member-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-data-pilot-member-attlist"> + <rng:interleave> + <rng:attribute name="table:name"> + <rng:ref name="string"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="table:display"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:show-details"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="table-data-pilot-members"> + <rng:element name="table:data-pilot-members"> + <rng:zeroOrMore> + <rng:ref name="table-data-pilot-member"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="table-data-pilot-sort-info"> + <rng:element name="table:data-pilot-sort-info"> + <rng:ref name="table-data-pilot-sort-info-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-data-pilot-sort-info-attlist"> + <rng:interleave> + <rng:choice> + <rng:group> + <rng:attribute name="table:sort-mode"> + <rng:value>data</rng:value> + </rng:attribute> + <rng:attribute name="table:data-field"> + <rng:ref name="string"/> + </rng:attribute> + </rng:group> + <rng:attribute name="table:sort-mode"> + <rng:choice> + <rng:value>none</rng:value> + <rng:value>manual</rng:value> + <rng:value>name</rng:value> + </rng:choice> + </rng:attribute> + </rng:choice> + <rng:attribute name="table:order"> + <rng:choice> + <rng:value>ascending</rng:value> + <rng:value>descending</rng:value> + </rng:choice> + </rng:attribute> + </rng:interleave> + </rng:define> + <rng:define name="table-data-pilot-subtotal"> + <rng:element name="table:data-pilot-subtotal"> + <rng:ref name="table-data-pilot-subtotal-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-data-pilot-subtotal-attlist"> + <rng:attribute name="table:function"> + <rng:choice> + <rng:value>auto</rng:value> + <rng:value>average</rng:value> + <rng:value>count</rng:value> + <rng:value>countnums</rng:value> + <rng:value>max</rng:value> + <rng:value>min</rng:value> + <rng:value>product</rng:value> + <rng:value>stdev</rng:value> + <rng:value>stdevp</rng:value> + <rng:value>sum</rng:value> + <rng:value>var</rng:value> + <rng:value>varp</rng:value> + <rng:ref name="string"/> + </rng:choice> + </rng:attribute> + </rng:define> + <rng:define name="table-data-pilot-subtotals"> + <rng:element name="table:data-pilot-subtotals"> + <rng:zeroOrMore> + <rng:ref name="table-data-pilot-subtotal"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="table-data-pilot-table"> + <rng:element name="table:data-pilot-table"> + <rng:ref name="table-data-pilot-table-attlist"/> + <rng:optional> + <rng:choice> + <rng:ref name="table-database-source-sql"/> + <rng:ref name="table-database-source-table"/> + <rng:ref name="table-database-source-query"/> + <rng:ref name="table-source-service"/> + <rng:ref name="table-source-cell-range"/> + </rng:choice> + </rng:optional> + <rng:oneOrMore> + <rng:ref name="table-data-pilot-field"/> + </rng:oneOrMore> + </rng:element> + </rng:define> + <rng:define name="table-data-pilot-table-attlist"> + <rng:interleave> + <rng:attribute name="table:name"> + <rng:ref name="string"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="table:application-data"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:grand-total"> + <rng:choice> + <rng:value>none</rng:value> + <rng:value>row</rng:value> + <rng:value>column</rng:value> + <rng:value>both</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:ignore-empty-rows"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:identify-categories"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:attribute name="table:target-range-address"> + <rng:ref name="cellRangeAddress"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="table:buttons"> + <rng:ref name="cellRangeAddressList"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:show-filter-button"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:drill-down-on-double-click"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="table-data-pilot-tables"> + <rng:element name="table:data-pilot-tables"> + <rng:zeroOrMore> + <rng:ref name="table-data-pilot-table"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="table-database-range"> + <rng:element name="table:database-range"> + <rng:ref name="table-database-range-attlist"/> + <rng:optional> + <rng:choice> + <rng:ref name="table-database-source-sql"/> + <rng:ref name="table-database-source-table"/> + <rng:ref name="table-database-source-query"/> + </rng:choice> + </rng:optional> + <rng:optional> + <rng:ref name="table-filter"/> + </rng:optional> + <rng:optional> + <rng:ref name="table-sort"/> + </rng:optional> + <rng:optional> + <rng:ref name="table-subtotal-rules"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="table-database-range-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="table:name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:is-selection"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:on-update-keep-styles"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:on-update-keep-size"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:has-persistent-data"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:orientation"> + <rng:choice> + <rng:value>column</rng:value> + <rng:value>row</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:contains-header"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:display-filter-buttons"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:attribute name="table:target-range-address"> + <rng:ref name="cellRangeAddress"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="table:refresh-delay"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="table-database-ranges"> + <rng:element name="table:database-ranges"> + <rng:zeroOrMore> + <rng:ref name="table-database-range"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="table-database-source-query"> + <rng:element name="table:database-source-table"> + <rng:ref name="table-database-source-table-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-database-source-query-attlist"> + <rng:interleave> + <rng:attribute name="table:database-name"> + <rng:ref name="string"/> + </rng:attribute> + <rng:attribute name="table:query-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:interleave> + </rng:define> + <rng:define name="table-database-source-sql"> + <rng:element name="table:database-source-sql"> + <rng:ref name="table-database-source-sql-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-database-source-sql-attlist"> + <rng:interleave> + <rng:attribute name="table:database-name"> + <rng:ref name="string"/> + </rng:attribute> + <rng:attribute name="table:sql-statement"> + <rng:ref name="string"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="table:parse-sql-statement"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="table-database-source-table"> + <rng:element name="table:database-source-query"> + <rng:ref name="table-database-source-query-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-database-source-table-attlist"> + <rng:interleave> + <rng:attribute name="table:database-name"> + <rng:ref name="string"/> + </rng:attribute> + <rng:attribute name="table:database-table-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:interleave> + </rng:define> + <rng:define name="table-dde-link"> + <rng:element name="table:dde-link"> + <rng:ref name="office-dde-source"/> + <rng:ref name="table-table"/> + </rng:element> + </rng:define> + <rng:define name="table-dde-links"> + <rng:element name="table:dde-links"> + <rng:oneOrMore> + <rng:ref name="table-dde-link"/> + </rng:oneOrMore> + </rng:element> + </rng:define> + <rng:define name="table-decls"> + <rng:optional> + <rng:ref name="table-calculation-settings"/> + </rng:optional> + <rng:optional> + <rng:ref name="table-content-validations"/> + </rng:optional> + <rng:optional> + <rng:ref name="table-label-ranges"/> + </rng:optional> + </rng:define> + <rng:define name="table-deletion"> + <rng:element name="table:deletion"> + <rng:ref name="table-deletion-attlist"/> + <rng:ref name="common-table-change-attlist"/> + <rng:ref name="office-change-info"/> + <rng:optional> + <rng:ref name="table-dependencies"/> + </rng:optional> + <rng:optional> + <rng:ref name="table-deletions"/> + </rng:optional> + <rng:optional> + <rng:ref name="table-cut-offs"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="table-deletion-attlist"> + <rng:interleave> + <rng:attribute name="table:type"> + <rng:choice> + <rng:value>row</rng:value> + <rng:value>column</rng:value> + <rng:value>table</rng:value> + </rng:choice> + </rng:attribute> + <rng:attribute name="table:position"> + <rng:ref name="integer"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="table:table"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:multi-deletion-spanned"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="table-deletions"> + <rng:element name="table:deletions"> + <rng:oneOrMore> + <rng:choice> + <rng:ref name="table-cell-content-deletion"/> + <rng:ref name="table-change-deletion"/> + </rng:choice> + </rng:oneOrMore> + </rng:element> + </rng:define> + <rng:define name="table-dependencies"> + <rng:element name="table:dependencies"> + <rng:oneOrMore> + <rng:ref name="table-dependency"/> + </rng:oneOrMore> + </rng:element> + </rng:define> + <rng:define name="table-dependency"> + <rng:element name="table:dependency"> + <rng:attribute name="table:id"> + <rng:ref name="string"/> + </rng:attribute> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-desc"> + <rng:element name="table:desc"> + <rng:text/> + </rng:element> + </rng:define> + <rng:define name="table-detective"> + <rng:element name="table:detective"> + <rng:zeroOrMore> + <rng:ref name="table-highlighted-range"/> + </rng:zeroOrMore> + <rng:zeroOrMore> + <rng:ref name="table-operation"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="table-error-macro"> + <rng:element name="table:error-macro"> + <rng:optional> + <rng:attribute name="table:execute"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="table-error-message"> + <rng:element name="table:error-message"> + <rng:optional> + <rng:attribute name="table:title"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:display"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:message-type"> + <rng:choice> + <rng:value>stop</rng:value> + <rng:value>warning</rng:value> + <rng:value>information</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="text-p"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="table-even-columns"> + <rng:element name="table:even-columns"> + <rng:ref name="common-table-template-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-even-rows"> + <rng:element name="table:even-rows"> + <rng:ref name="common-table-template-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-filter"> + <rng:element name="table:filter"> + <rng:ref name="table-filter-attlist"/> + <rng:choice> + <rng:ref name="table-filter-condition"/> + <rng:ref name="table-filter-and"/> + <rng:ref name="table-filter-or"/> + </rng:choice> + </rng:element> + </rng:define> + <rng:define name="table-filter-and"> + <rng:element name="table:filter-and"> + <rng:oneOrMore> + <rng:choice> + <rng:ref name="table-filter-or"/> + <rng:ref name="table-filter-condition"/> + </rng:choice> + </rng:oneOrMore> + </rng:element> + </rng:define> + <rng:define name="table-filter-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="table:target-range-address"> + <rng:ref name="cellRangeAddress"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:condition-source"> + <rng:choice> + <rng:value>self</rng:value> + <rng:value>cell-range</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:condition-source-range-address"> + <rng:ref name="cellRangeAddress"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:display-duplicates"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="table-filter-condition"> + <rng:element name="table:filter-condition"> + <rng:ref name="table-filter-condition-attlist"/> + <rng:zeroOrMore> + <rng:ref name="table-filter-set-item"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="table-filter-condition-attlist"> + <rng:interleave> + <rng:attribute name="table:field-number"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + <rng:attribute name="table:value"> + <rng:choice> + <rng:ref name="string"/> + <rng:ref name="double"/> + </rng:choice> + </rng:attribute> + <rng:attribute name="table:operator"> + <rng:ref name="string"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="table:case-sensitive"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:data-type"> + <rng:choice> + <rng:value>text</rng:value> + <rng:value>number</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="table-filter-or"> + <rng:element name="table:filter-or"> + <rng:oneOrMore> + <rng:choice> + <rng:ref name="table-filter-and"/> + <rng:ref name="table-filter-condition"/> + </rng:choice> + </rng:oneOrMore> + </rng:element> + </rng:define> + <rng:define name="table-filter-set-item"> + <rng:element name="table:filter-set-item"> + <rng:attribute name="table:value"> + <rng:ref name="string"/> + </rng:attribute> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-first-column"> + <rng:element name="table:first-column"> + <rng:ref name="common-table-template-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-first-row"> + <rng:element name="table:first-row"> + <rng:ref name="common-table-template-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-functions"> + <rng:optional> + <rng:ref name="table-named-expressions"/> + </rng:optional> + <rng:optional> + <rng:ref name="table-database-ranges"/> + </rng:optional> + <rng:optional> + <rng:ref name="table-data-pilot-tables"/> + </rng:optional> + <rng:optional> + <rng:ref name="table-consolidation"/> + </rng:optional> + <rng:optional> + <rng:ref name="table-dde-links"/> + </rng:optional> + </rng:define> + <rng:define name="table-help-message"> + <rng:element name="table:help-message"> + <rng:optional> + <rng:attribute name="table:title"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:display"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="text-p"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="table-highlighted-range"> + <rng:element name="table:highlighted-range"> + <rng:choice> + <rng:group> + <rng:ref name="table-highlighted-range-attlist"/> + </rng:group> + <rng:group> + <rng:ref name="table-highlighted-range-attlist-invalid"/> + </rng:group> + </rng:choice> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-highlighted-range-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="table:cell-range-address"> + <rng:ref name="cellRangeAddress"/> + </rng:attribute> + </rng:optional> + <rng:attribute name="table:direction"> + <rng:choice> + <rng:value>from-another-table</rng:value> + <rng:value>to-another-table</rng:value> + <rng:value>from-same-table</rng:value> + </rng:choice> + </rng:attribute> + <rng:optional> + <rng:attribute name="table:contains-error"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="table-highlighted-range-attlist-invalid"> + <rng:attribute name="table:marked-invalid"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:define> + <rng:define name="table-insertion"> + <rng:element name="table:insertion"> + <rng:ref name="table-insertion-attlist"/> + <rng:ref name="common-table-change-attlist"/> + <rng:ref name="office-change-info"/> + <rng:optional> + <rng:ref name="table-dependencies"/> + </rng:optional> + <rng:optional> + <rng:ref name="table-deletions"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="table-insertion-attlist"> + <rng:interleave> + <rng:attribute name="table:type"> + <rng:choice> + <rng:value>row</rng:value> + <rng:value>column</rng:value> + <rng:value>table</rng:value> + </rng:choice> + </rng:attribute> + <rng:attribute name="table:position"> + <rng:ref name="integer"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="table:count"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:table"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="table-insertion-cut-off"> + <rng:element name="table:insertion-cut-off"> + <rng:ref name="table-insertion-cut-off-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-insertion-cut-off-attlist"> + <rng:interleave> + <rng:attribute name="table:id"> + <rng:ref name="string"/> + </rng:attribute> + <rng:attribute name="table:position"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:interleave> + </rng:define> + <rng:define name="table-iteration"> + <rng:element name="table:iteration"> + <rng:optional> + <rng:attribute name="table:status"> + <rng:choice> + <rng:value>enable</rng:value> + <rng:value>disable</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:steps"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:maximum-difference"> + <rng:ref name="double"/> + </rng:attribute> + </rng:optional> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-label-range"> + <rng:element name="table:label-range"> + <rng:ref name="table-label-range-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-label-range-attlist"> + <rng:interleave> + <rng:attribute name="table:label-cell-range-address"> + <rng:ref name="cellRangeAddress"/> + </rng:attribute> + <rng:attribute name="table:data-cell-range-address"> + <rng:ref name="cellRangeAddress"/> + </rng:attribute> + <rng:attribute name="table:orientation"> + <rng:choice> + <rng:value>column</rng:value> + <rng:value>row</rng:value> + </rng:choice> + </rng:attribute> + </rng:interleave> + </rng:define> + <rng:define name="table-label-ranges"> + <rng:element name="table:label-ranges"> + <rng:zeroOrMore> + <rng:ref name="table-label-range"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="table-last-column"> + <rng:element name="table:last-column"> + <rng:ref name="common-table-template-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-last-row"> + <rng:element name="table:last-row"> + <rng:ref name="common-table-template-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-linked-source-attlist"> + <rng:interleave> + <rng:attribute name="xlink:type"> + <rng:value>simple</rng:value> + </rng:attribute> + <rng:attribute name="xlink:href"> + <rng:ref name="anyIRI"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="xlink:actuate"> + <rng:value>onRequest</rng:value> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:filter-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:filter-options"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:refresh-delay"> + <rng:ref name="duration"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="table-movement"> + <rng:element name="table:movement"> + <rng:ref name="common-table-change-attlist"/> + <rng:ref name="table-source-range-address"/> + <rng:ref name="table-target-range-address"/> + <rng:ref name="office-change-info"/> + <rng:optional> + <rng:ref name="table-dependencies"/> + </rng:optional> + <rng:optional> + <rng:ref name="table-deletions"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="table-movement-cut-off"> + <rng:element name="table:movement-cut-off"> + <rng:ref name="table-movement-cut-off-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-movement-cut-off-attlist"> + <rng:choice> + <rng:attribute name="table:position"> + <rng:ref name="integer"/> + </rng:attribute> + <rng:group> + <rng:attribute name="table:start-position"> + <rng:ref name="integer"/> + </rng:attribute> + <rng:attribute name="table:end-position"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:group> + </rng:choice> + </rng:define> + <rng:define name="table-named-expression"> + <rng:element name="table:named-expression"> + <rng:ref name="table-named-expression-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-named-expression-attlist"> + <rng:attribute name="table:name"> + <rng:ref name="string"/> + </rng:attribute> + <rng:attribute name="table:expression"> + <rng:ref name="string"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="table:base-cell-address"> + <rng:ref name="cellAddress"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="table-named-expressions"> + <rng:element name="table:named-expressions"> + <rng:zeroOrMore> + <rng:choice> + <rng:ref name="table-named-range"/> + <rng:ref name="table-named-expression"/> + </rng:choice> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="table-named-range"> + <rng:element name="table:named-range"> + <rng:ref name="table-named-range-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-named-range-attlist"> + <rng:attribute name="table:name"> + <rng:ref name="string"/> + </rng:attribute> + <rng:attribute name="table:cell-range-address"> + <rng:ref name="cellRangeAddress"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="table:base-cell-address"> + <rng:ref name="cellAddress"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:range-usable-as"> + <rng:choice> + <rng:value>none</rng:value> + <rng:list> + <rng:oneOrMore> + <rng:choice> + <rng:value>print-range</rng:value> + <rng:value>filter</rng:value> + <rng:value>repeat-row</rng:value> + <rng:value>repeat-column</rng:value> + </rng:choice> + </rng:oneOrMore> + </rng:list> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="table-null-date"> + <rng:element name="table:null-date"> + <rng:optional> + <rng:attribute name="table:value-type"> + <rng:value>date</rng:value> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:date-value"> + <rng:ref name="date"/> + </rng:attribute> + </rng:optional> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-odd-columns"> + <rng:element name="table:odd-columns"> + <rng:ref name="common-table-template-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-odd-rows"> + <rng:element name="table:odd-rows"> + <rng:ref name="common-table-template-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-operation"> + <rng:element name="table:operation"> + <rng:ref name="table-operation-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-operation-attlist"> + <rng:interleave> + <rng:attribute name="table:name"> + <rng:choice> + <rng:value>trace-dependents</rng:value> + <rng:value>remove-dependents</rng:value> + <rng:value>trace-precedents</rng:value> + <rng:value>remove-precedents</rng:value> + <rng:value>trace-errors</rng:value> + </rng:choice> + </rng:attribute> + <rng:attribute name="table:index"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:interleave> + </rng:define> + <rng:define name="table-previous"> + <rng:element name="table:previous"> + <rng:optional> + <rng:attribute name="table:id"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:ref name="table-change-track-table-cell"/> + </rng:element> + </rng:define> + <rng:define name="table-rows"> + <rng:choice> + <rng:ref name="table-table-rows"/> + <rng:oneOrMore> + <rng:optional> + <rng:ref name="text-soft-page-break"/> + </rng:optional> + <rng:ref name="table-table-row"/> + </rng:oneOrMore> + </rng:choice> + </rng:define> + <rng:define name="table-rows-and-groups"> + <rng:oneOrMore> + <rng:choice> + <rng:ref name="table-table-row-group"/> + <rng:ref name="table-rows-no-group"/> + </rng:choice> + </rng:oneOrMore> + </rng:define> + <rng:define name="table-rows-no-group"> + <rng:choice> + <rng:group> + <rng:ref name="table-rows"/> + <rng:optional> + <rng:ref name="table-table-header-rows"/> + <rng:optional> + <rng:ref name="table-rows"/> + </rng:optional> + </rng:optional> + </rng:group> + <rng:group> + <rng:ref name="table-table-header-rows"/> + <rng:optional> + <rng:ref name="table-rows"/> + </rng:optional> + </rng:group> + </rng:choice> + </rng:define> + <rng:define name="table-scenario"> + <rng:element name="table:scenario"> + <rng:ref name="table-scenario-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-scenario-attlist"> + <rng:interleave> + <rng:attribute name="table:scenario-ranges"> + <rng:ref name="cellRangeAddressList"/> + </rng:attribute> + <rng:attribute name="table:is-active"> + <rng:ref name="boolean"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="table:display-border"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:border-color"> + <rng:ref name="color"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:copy-back"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:copy-styles"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:copy-formulas"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:comment"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:protected"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="table-shapes"> + <rng:element name="table:shapes"> + <rng:oneOrMore> + <rng:ref name="shape"/> + </rng:oneOrMore> + </rng:element> + </rng:define> + <rng:define name="table-sort"> + <rng:element name="table:sort"> + <rng:ref name="table-sort-attlist"/> + <rng:oneOrMore> + <rng:ref name="table-sort-by"/> + </rng:oneOrMore> + </rng:element> + </rng:define> + <rng:define name="table-sort-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="table:bind-styles-to-content"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:target-range-address"> + <rng:ref name="cellRangeAddress"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:case-sensitive"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:language"> + <rng:ref name="languageCode"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:country"> + <rng:ref name="countryCode"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:script"> + <rng:ref name="scriptCode"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:rfc-language-tag"> + <rng:ref name="language"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:algorithm"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:embedded-number-behavior"> + <rng:choice> + <rng:value>alpha-numeric</rng:value> + <rng:value>integer</rng:value> + <rng:value>double</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="table-sort-by"> + <rng:element name="table:sort-by"> + <rng:ref name="table-sort-by-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-sort-by-attlist"> + <rng:interleave> + <rng:attribute name="table:field-number"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="table:data-type"> + <rng:choice> + <rng:value>text</rng:value> + <rng:value>number</rng:value> + <rng:value>automatic</rng:value> + <rng:ref name="string"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:order"> + <rng:choice> + <rng:value>ascending</rng:value> + <rng:value>descending</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="table-sort-groups"> + <rng:element name="table:sort-groups"> + <rng:ref name="table-sort-groups-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-sort-groups-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="table:data-type"> + <rng:choice> + <rng:value>text</rng:value> + <rng:value>number</rng:value> + <rng:value>automatic</rng:value> + <rng:ref name="string"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:order"> + <rng:choice> + <rng:value>ascending</rng:value> + <rng:value>descending</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="table-source-cell-range"> + <rng:element name="table:source-cell-range"> + <rng:ref name="table-source-cell-range-attlist"/> + <rng:optional> + <rng:ref name="table-filter"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="table-source-cell-range-attlist"> + <rng:attribute name="table:cell-range-address"> + <rng:ref name="cellRangeAddress"/> + </rng:attribute> + </rng:define> + <rng:define name="table-source-range-address"> + <rng:element name="table:source-range-address"> + <rng:ref name="common-table-range-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-source-service"> + <rng:element name="table:source-service"> + <rng:ref name="table-source-service-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-source-service-attlist"> + <rng:interleave> + <rng:attribute name="table:name"> + <rng:ref name="string"/> + </rng:attribute> + <rng:attribute name="table:source-name"> + <rng:ref name="string"/> + </rng:attribute> + <rng:attribute name="table:object-name"> + <rng:ref name="string"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="table:user-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:password"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="table-subtotal-field"> + <rng:element name="table:subtotal-field"> + <rng:ref name="table-subtotal-field-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-subtotal-field-attlist"> + <rng:interleave> + <rng:attribute name="table:field-number"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + <rng:attribute name="table:function"> + <rng:choice> + <rng:value>average</rng:value> + <rng:value>count</rng:value> + <rng:value>countnums</rng:value> + <rng:value>max</rng:value> + <rng:value>min</rng:value> + <rng:value>product</rng:value> + <rng:value>stdev</rng:value> + <rng:value>stdevp</rng:value> + <rng:value>sum</rng:value> + <rng:value>var</rng:value> + <rng:value>varp</rng:value> + <rng:ref name="string"/> + </rng:choice> + </rng:attribute> + </rng:interleave> + </rng:define> + <rng:define name="table-subtotal-rule"> + <rng:element name="table:subtotal-rule"> + <rng:ref name="table-subtotal-rule-attlist"/> + <rng:zeroOrMore> + <rng:ref name="table-subtotal-field"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="table-subtotal-rule-attlist"> + <rng:attribute name="table:group-by-field-number"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:define> + <rng:define name="table-subtotal-rules"> + <rng:element name="table:subtotal-rules"> + <rng:ref name="table-subtotal-rules-attlist"/> + <rng:optional> + <rng:ref name="table-sort-groups"/> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="table-subtotal-rule"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="table-subtotal-rules-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="table:bind-styles-to-content"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:case-sensitive"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:page-breaks-on-group-change"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="table-table"> + <rng:element name="table:table"> + <rng:ref name="table-table-attlist"/> + <rng:optional> + <rng:ref name="table-title"/> + </rng:optional> + <rng:optional> + <rng:ref name="table-desc"/> + </rng:optional> + <rng:optional> + <rng:ref name="table-table-source"/> + </rng:optional> + <rng:optional> + <rng:ref name="office-dde-source"/> + </rng:optional> + <rng:optional> + <rng:ref name="table-scenario"/> + </rng:optional> + <rng:optional> + <rng:ref name="office-forms"/> + </rng:optional> + <rng:optional> + <rng:ref name="table-shapes"/> + </rng:optional> + <rng:ref name="table-columns-and-groups"/> + <rng:ref name="table-rows-and-groups"/> + <rng:optional> + <rng:ref name="table-named-expressions"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="table-table-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="table:name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:template-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:use-first-row-styles"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:use-last-row-styles"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:use-first-column-styles"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:use-last-column-styles"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:use-banding-rows-styles"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:use-banding-columns-styles"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:protected"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:protection-key"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:protection-key-digest-algorithm"> + <rng:ref name="anyIRI"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:print"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:print-ranges"> + <rng:ref name="cellRangeAddressList"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:ref name="xml-id"/> + </rng:optional> + <rng:optional> + <rng:attribute name="table:is-sub-table"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="table-table-cell"> + <rng:element name="table:table-cell"> + <rng:ref name="table-table-cell-attlist"/> + <rng:ref name="table-table-cell-attlist-extra"/> + <rng:ref name="table-table-cell-content"/> + </rng:element> + </rng:define> + <rng:define name="table-table-cell-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="table:number-columns-repeated"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:content-validation-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:formula"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:ref name="common-value-and-type-attlist"/> + </rng:optional> + <rng:optional> + <rng:attribute name="table:protect"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:protected"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:ref name="xml-id"/> + </rng:optional> + <rng:optional> + <rng:ref name="common-in-content-meta-attlist"/> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="table-table-cell-attlist-extra"> + <rng:interleave> + <rng:optional> + <rng:attribute name="table:number-columns-spanned"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:number-rows-spanned"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:number-matrix-columns-spanned"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:number-matrix-rows-spanned"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="table-table-cell-content"> + <rng:optional> + <rng:ref name="table-cell-range-source"/> + </rng:optional> + <rng:optional> + <rng:ref name="office-annotation"/> + </rng:optional> + <rng:optional> + <rng:ref name="table-detective"/> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="text-content"/> + </rng:zeroOrMore> + </rng:define> + <rng:define name="table-table-cell-range-source-attlist"> + <rng:interleave> + <rng:attribute name="table:name"> + <rng:ref name="string"/> + </rng:attribute> + <rng:attribute name="table:last-column-spanned"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + <rng:attribute name="table:last-row-spanned"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:interleave> + </rng:define> + <rng:define name="table-table-column"> + <rng:element name="table:table-column"> + <rng:ref name="table-table-column-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-table-column-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="table:number-columns-repeated"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:visibility"> + <rng:ref name="table-visibility-value"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:default-cell-style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:ref name="xml-id"/> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="table-table-column-group"> + <rng:element name="table:table-column-group"> + <rng:ref name="table-table-column-group-attlist"/> + <rng:ref name="table-columns-and-groups"/> + </rng:element> + </rng:define> + <rng:define name="table-table-column-group-attlist"> + <rng:optional> + <rng:attribute name="table:display"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="table-table-columns"> + <rng:element name="table:table-columns"> + <rng:oneOrMore> + <rng:ref name="table-table-column"/> + </rng:oneOrMore> + </rng:element> + </rng:define> + <rng:define name="table-table-header-columns"> + <rng:element name="table:table-header-columns"> + <rng:oneOrMore> + <rng:ref name="table-table-column"/> + </rng:oneOrMore> + </rng:element> + </rng:define> + <rng:define name="table-table-header-rows"> + <rng:element name="table:table-header-rows"> + <rng:oneOrMore> + <rng:optional> + <rng:ref name="text-soft-page-break"/> + </rng:optional> + <rng:ref name="table-table-row"/> + </rng:oneOrMore> + </rng:element> + </rng:define> + <rng:define name="table-table-row"> + <rng:element name="table:table-row"> + <rng:ref name="table-table-row-attlist"/> + <rng:oneOrMore> + <rng:choice> + <rng:ref name="table-table-cell"/> + <rng:ref name="table-covered-table-cell"/> + </rng:choice> + </rng:oneOrMore> + </rng:element> + </rng:define> + <rng:define name="table-table-row-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="table:number-rows-repeated"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:default-cell-style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:visibility"> + <rng:ref name="table-visibility-value"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:ref name="xml-id"/> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="table-table-row-group"> + <rng:element name="table:table-row-group"> + <rng:ref name="table-table-row-group-attlist"/> + <rng:ref name="table-rows-and-groups"/> + </rng:element> + </rng:define> + <rng:define name="table-table-row-group-attlist"> + <rng:optional> + <rng:attribute name="table:display"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="table-table-rows"> + <rng:element name="table:table-rows"> + <rng:oneOrMore> + <rng:optional> + <rng:ref name="text-soft-page-break"/> + </rng:optional> + <rng:ref name="table-table-row"/> + </rng:oneOrMore> + </rng:element> + </rng:define> + <rng:define name="table-table-source"> + <rng:element name="table:table-source"> + <rng:ref name="table-table-source-attlist"/> + <rng:ref name="table-linked-source-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-table-source-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="table:mode"> + <rng:choice> + <rng:value>copy-all</rng:value> + <rng:value>copy-results-only</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:table-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="table-table-template"> + <rng:element name="table:table-template"> + <rng:ref name="table-table-template-attlist"/> + <rng:optional> + <rng:ref name="table-first-row"/> + </rng:optional> + <rng:optional> + <rng:ref name="table-last-row"/> + </rng:optional> + <rng:optional> + <rng:ref name="table-first-column"/> + </rng:optional> + <rng:optional> + <rng:ref name="table-last-column"/> + </rng:optional> + <rng:ref name="table-body"/> + <rng:optional> + <rng:ref name="table-even-rows"/> + </rng:optional> + <rng:optional> + <rng:ref name="table-odd-rows"/> + </rng:optional> + <rng:optional> + <rng:ref name="table-even-columns"/> + </rng:optional> + <rng:optional> + <rng:ref name="table-odd-columns"/> + </rng:optional> + <rng:optional> + <rng:ref name="table-background"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="table-table-template-attlist"> + <rng:interleave> + <rng:attribute name="table:name"> + <rng:ref name="string"/> + </rng:attribute> + <rng:attribute name="table:first-row-start-column"> + <rng:ref name="rowOrCol"/> + </rng:attribute> + <rng:attribute name="table:first-row-end-column"> + <rng:ref name="rowOrCol"/> + </rng:attribute> + <rng:attribute name="table:last-row-start-column"> + <rng:ref name="rowOrCol"/> + </rng:attribute> + <rng:attribute name="table:last-row-end-column"> + <rng:ref name="rowOrCol"/> + </rng:attribute> + </rng:interleave> + </rng:define> + <rng:define name="table-target-range-address"> + <rng:element name="table:target-range-address"> + <rng:ref name="common-table-range-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="table-title"> + <rng:element name="table:title"> + <rng:text/> + </rng:element> + </rng:define> + <rng:define name="table-tracked-changes"> + <rng:element name="table:tracked-changes"> + <rng:ref name="table-tracked-changes-attlist"/> + <rng:zeroOrMore> + <rng:choice> + <rng:ref name="table-cell-content-change"/> + <rng:ref name="table-insertion"/> + <rng:ref name="table-deletion"/> + <rng:ref name="table-movement"/> + </rng:choice> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="table-tracked-changes-attlist"> + <rng:optional> + <rng:attribute name="table:track-changes"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="table-validation-attlist"> + <rng:interleave> + <rng:attribute name="table:name"> + <rng:ref name="string"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="table:condition"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:base-cell-address"> + <rng:ref name="cellAddress"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:allow-empty-cell"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="table:display-list"> + <rng:choice> + <rng:value>none</rng:value> + <rng:value>unsorted</rng:value> + <rng:value>sort-ascending</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="table-visibility-value"> + <rng:choice> + <rng:value>visible</rng:value> + <rng:value>collapse</rng:value> + <rng:value>filter</rng:value> + </rng:choice> + </rng:define> + <rng:define name="target-frame"> + <rng:optional> + <rng:attribute name="office:target-frame"> + <rng:ref name="targetFrameName"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="target-location"> + <rng:optional> + <rng:attribute name="xlink:href"> + <rng:ref name="anyIRI"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="targetFrameName"> + <rng:choice> + <rng:value>_self</rng:value> + <rng:value>_blank</rng:value> + <rng:value>_parent</rng:value> + <rng:value>_top</rng:value> + <rng:ref name="string"/> + </rng:choice> + </rng:define> + <rng:define name="text-a"> + <rng:element name="text:a"> + <rng:ref name="text-a-attlist"/> + <rng:optional> + <rng:ref name="office-event-listeners"/> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="paragraph-content"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="text-a-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="office:name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="office:title"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:attribute name="xlink:type"> + <rng:value>simple</rng:value> + </rng:attribute> + <rng:attribute name="xlink:href"> + <rng:ref name="anyIRI"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="xlink:actuate"> + <rng:value>onRequest</rng:value> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="office:target-frame-name"> + <rng:ref name="targetFrameName"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="xlink:show"> + <rng:choice> + <rng:value>new</rng:value> + <rng:value>replace</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:visited-style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="text-alphabetical-index"> + <rng:element name="text:alphabetical-index"> + <rng:ref name="common-section-attlist"/> + <rng:ref name="text-alphabetical-index-source"/> + <rng:ref name="text-index-body"/> + </rng:element> + </rng:define> + <rng:define name="text-alphabetical-index-auto-mark-file"> + <rng:element name="text:alphabetical-index-auto-mark-file"> + <rng:attribute name="xlink:type"> + <rng:value>simple</rng:value> + </rng:attribute> + <rng:attribute name="xlink:href"> + <rng:ref name="anyIRI"/> + </rng:attribute> + </rng:element> + </rng:define> + <rng:define name="text-alphabetical-index-entry-template"> + <rng:element name="text:alphabetical-index-entry-template"> + <rng:ref name="text-alphabetical-index-entry-template-attrs"/> + <rng:zeroOrMore> + <rng:choice> + <rng:ref name="text-index-entry-chapter"/> + <rng:ref name="text-index-entry-page-number"/> + <rng:ref name="text-index-entry-text"/> + <rng:ref name="text-index-entry-span"/> + <rng:ref name="text-index-entry-tab-stop"/> + </rng:choice> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="text-alphabetical-index-entry-template-attrs"> + <rng:interleave> + <rng:attribute name="text:outline-level"> + <rng:choice> + <rng:value>1</rng:value> + <rng:value>2</rng:value> + <rng:value>3</rng:value> + <rng:value>separator</rng:value> + </rng:choice> + </rng:attribute> + <rng:attribute name="text:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:interleave> + </rng:define> + <rng:define name="text-alphabetical-index-mark-attrs"> + <rng:interleave> + <rng:optional> + <rng:attribute name="text:key1"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:key2"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:string-value-phonetic"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:key1-phonetic"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:key2-phonetic"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:main-entry"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="text-alphabetical-index-source"> + <rng:element name="text:alphabetical-index-source"> + <rng:ref name="text-alphabetical-index-source-attrs"/> + <rng:optional> + <rng:ref name="text-index-title-template"/> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="text-alphabetical-index-entry-template"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="text-alphabetical-index-source-attrs"> + <rng:interleave> + <rng:ref name="text-index-scope-attr"/> + <rng:ref name="text-relative-tab-stop-position-attr"/> + <rng:optional> + <rng:attribute name="text:ignore-case"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:main-entry-style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:alphabetical-separators"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:combine-entries"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:combine-entries-with-dash"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:combine-entries-with-pp"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:use-keys-as-entries"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:capitalize-entries"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:comma-separated"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:language"> + <rng:ref name="languageCode"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:country"> + <rng:ref name="countryCode"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:script"> + <rng:ref name="scriptCode"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:rfc-language-tag"> + <rng:ref name="language"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:sort-algorithm"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="text-bibliography"> + <rng:element name="text:bibliography"> + <rng:ref name="common-section-attlist"/> + <rng:ref name="text-bibliography-source"/> + <rng:ref name="text-index-body"/> + </rng:element> + </rng:define> + <rng:define name="text-bibliography-configuration"> + <rng:element name="text:bibliography-configuration"> + <rng:ref name="text-bibliography-configuration-attlist"/> + <rng:zeroOrMore> + <rng:ref name="text-sort-key"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="text-bibliography-configuration-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="text:prefix"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:suffix"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:numbered-entries"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:sort-by-position"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:language"> + <rng:ref name="languageCode"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:country"> + <rng:ref name="countryCode"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="fo:script"> + <rng:ref name="scriptCode"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="style:rfc-language-tag"> + <rng:ref name="language"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:sort-algorithm"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="text-bibliography-entry-template"> + <rng:element name="text:bibliography-entry-template"> + <rng:ref name="text-bibliography-entry-template-attrs"/> + <rng:zeroOrMore> + <rng:choice> + <rng:ref name="text-index-entry-span"/> + <rng:ref name="text-index-entry-tab-stop"/> + <rng:ref name="text-index-entry-bibliography"/> + </rng:choice> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="text-bibliography-entry-template-attrs"> + <rng:interleave> + <rng:attribute name="text:bibliography-type"> + <rng:ref name="text-bibliography-types"/> + </rng:attribute> + <rng:attribute name="text:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:interleave> + </rng:define> + <rng:define name="text-bibliography-source"> + <rng:element name="text:bibliography-source"> + <rng:optional> + <rng:ref name="text-index-title-template"/> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="text-bibliography-entry-template"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="text-bibliography-types"> + <rng:choice> + <rng:value>article</rng:value> + <rng:value>book</rng:value> + <rng:value>booklet</rng:value> + <rng:value>conference</rng:value> + <rng:value>custom1</rng:value> + <rng:value>custom2</rng:value> + <rng:value>custom3</rng:value> + <rng:value>custom4</rng:value> + <rng:value>custom5</rng:value> + <rng:value>email</rng:value> + <rng:value>inbook</rng:value> + <rng:value>incollection</rng:value> + <rng:value>inproceedings</rng:value> + <rng:value>journal</rng:value> + <rng:value>manual</rng:value> + <rng:value>mastersthesis</rng:value> + <rng:value>misc</rng:value> + <rng:value>phdthesis</rng:value> + <rng:value>proceedings</rng:value> + <rng:value>techreport</rng:value> + <rng:value>unpublished</rng:value> + <rng:value>www</rng:value> + </rng:choice> + </rng:define> + <rng:define name="text-bookmark"> + <rng:element name="text:bookmark"> + <rng:ref name="text-bookmark-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="text-bookmark-attlist"> + <rng:interleave> + <rng:attribute name="text:name"> + <rng:ref name="string"/> + </rng:attribute> + <rng:optional> + <rng:ref name="xml-id"/> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="text-bookmark-end"> + <rng:element name="text:bookmark-end"> + <rng:ref name="text-bookmark-end-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="text-bookmark-end-attlist"> + <rng:attribute name="text:name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:define> + <rng:define name="text-bookmark-ref-content"> + <rng:optional> + <rng:attribute name="text:reference-format"> + <rng:choice> + <rng:ref name="common-ref-format-values"/> + <rng:value>number-no-superior</rng:value> + <rng:value>number-all-superior</rng:value> + <rng:value>number</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="text-bookmark-start"> + <rng:element name="text:bookmark-start"> + <rng:ref name="text-bookmark-start-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="text-bookmark-start-attlist"> + <rng:interleave> + <rng:attribute name="text:name"> + <rng:ref name="string"/> + </rng:attribute> + <rng:optional> + <rng:ref name="xml-id"/> + </rng:optional> + <rng:optional> + <rng:ref name="common-in-content-meta-attlist"/> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="text-changed-region"> + <rng:element name="text:changed-region"> + <rng:ref name="text-changed-region-attr"/> + <rng:ref name="text-changed-region-content"/> + </rng:element> + </rng:define> + <rng:define name="text-changed-region-attr"> + <rng:group> + <rng:ref name="xml-id"/> + <rng:optional> + <rng:attribute name="text:id"> + <rng:ref name="NCName"/> + </rng:attribute> + </rng:optional> + </rng:group> + </rng:define> + <rng:define name="text-changed-region-content"> + <rng:choice> + <rng:element name="text:insertion"> + <rng:ref name="office-change-info"/> + </rng:element> + <rng:element name="text:deletion"> + <rng:ref name="office-change-info"/> + <rng:zeroOrMore> + <rng:ref name="text-content"/> + </rng:zeroOrMore> + </rng:element> + <rng:element name="text:format-change"> + <rng:ref name="office-change-info"/> + </rng:element> + </rng:choice> + </rng:define> + <rng:define name="text-chapter-attlist"> + <rng:interleave> + <rng:attribute name="text:display"> + <rng:choice> + <rng:value>name</rng:value> + <rng:value>number</rng:value> + <rng:value>number-and-name</rng:value> + <rng:value>plain-number-and-name</rng:value> + <rng:value>plain-number</rng:value> + </rng:choice> + </rng:attribute> + <rng:attribute name="text:outline-level"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:interleave> + </rng:define> + <rng:define name="text-common-ref-content"> + <rng:interleave> + <rng:text/> + <rng:optional> + <rng:attribute name="text:ref-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="text-conditional-text-attlist"> + <rng:interleave> + <rng:attribute name="text:condition"> + <rng:ref name="string"/> + </rng:attribute> + <rng:attribute name="text:string-value-if-true"> + <rng:ref name="string"/> + </rng:attribute> + <rng:attribute name="text:string-value-if-false"> + <rng:ref name="string"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="text:current-value"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="text-content"> + <rng:choice> + <rng:ref name="text-h"/> + <rng:ref name="text-p"/> + <rng:ref name="text-list"/> + <rng:ref name="text-numbered-paragraph"/> + <rng:ref name="table-table"/> + <rng:ref name="text-section"/> + <rng:ref name="text-soft-page-break"/> + <rng:ref name="text-table-of-content"/> + <rng:ref name="text-illustration-index"/> + <rng:ref name="text-table-index"/> + <rng:ref name="text-object-index"/> + <rng:ref name="text-user-index"/> + <rng:ref name="text-alphabetical-index"/> + <rng:ref name="text-bibliography"/> + <rng:ref name="shape"/> + <rng:ref name="change-marks"/> + </rng:choice> + </rng:define> + <rng:define name="text-database-display-attlist"> + <rng:interleave> + <rng:ref name="common-field-database-table"/> + <rng:ref name="common-field-data-style-name-attlist"/> + <rng:attribute name="text:column-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:interleave> + </rng:define> + <rng:define name="text-database-next-attlist"> + <rng:interleave> + <rng:ref name="common-field-database-table"/> + <rng:optional> + <rng:attribute name="text:condition"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="text-database-row-select-attlist"> + <rng:interleave> + <rng:ref name="common-field-database-table"/> + <rng:optional> + <rng:attribute name="text:condition"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:row-number"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="text-date-attlist"> + <rng:interleave> + <rng:interleave> + <rng:ref name="common-field-fixed-attlist"/> + <rng:ref name="common-field-data-style-name-attlist"/> + </rng:interleave> + <rng:optional> + <rng:attribute name="text:date-value"> + <rng:ref name="dateOrDateTime"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:date-adjust"> + <rng:ref name="duration"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="text-dde-connection-decl"> + <rng:element name="text:dde-connection-decl"> + <rng:ref name="text-dde-connection-decl-attlist"/> + <rng:ref name="common-dde-connection-decl-attlist"/> + </rng:element> + </rng:define> + <rng:define name="text-dde-connection-decl-attlist"> + <rng:attribute name="office:name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:define> + <rng:define name="text-decls"> + <rng:optional> + <rng:element name="text:variable-decls"> + <rng:zeroOrMore> + <rng:ref name="text-variable-decl"/> + </rng:zeroOrMore> + </rng:element> + </rng:optional> + <rng:optional> + <rng:element name="text:sequence-decls"> + <rng:zeroOrMore> + <rng:ref name="text-sequence-decl"/> + </rng:zeroOrMore> + </rng:element> + </rng:optional> + <rng:optional> + <rng:element name="text:user-field-decls"> + <rng:zeroOrMore> + <rng:ref name="text-user-field-decl"/> + </rng:zeroOrMore> + </rng:element> + </rng:optional> + <rng:optional> + <rng:element name="text:dde-connection-decls"> + <rng:zeroOrMore> + <rng:ref name="text-dde-connection-decl"/> + </rng:zeroOrMore> + </rng:element> + </rng:optional> + <rng:optional> + <rng:ref name="text-alphabetical-index-auto-mark-file"/> + </rng:optional> + </rng:define> + <rng:define name="text-file-name-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="text:display"> + <rng:choice> + <rng:value>full</rng:value> + <rng:value>path</rng:value> + <rng:value>name</rng:value> + <rng:value>name-and-extension</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:ref name="common-field-fixed-attlist"/> + </rng:interleave> + </rng:define> + <rng:define name="text-get-page-variable-attlist"> + <rng:ref name="common-field-num-format-attlist"/> + </rng:define> + <rng:define name="text-h"> + <rng:element name="text:h"> + <rng:ref name="heading-attrs"/> + <rng:ref name="paragraph-attrs"/> + <rng:optional> + <rng:ref name="text-number"/> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="paragraph-content-or-hyperlink"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="text-hidden-paragraph-attlist"> + <rng:interleave> + <rng:attribute name="text:condition"> + <rng:ref name="string"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="text:is-hidden"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="text-hidden-text-attlist"> + <rng:interleave> + <rng:attribute name="text:condition"> + <rng:ref name="string"/> + </rng:attribute> + <rng:attribute name="text:string-value"> + <rng:ref name="string"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="text:is-hidden"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="text-id"> + <rng:attribute name="text:id"> + <rng:ref name="string"/> + </rng:attribute> + </rng:define> + <rng:define name="text-illustration-index"> + <rng:element name="text:illustration-index"> + <rng:ref name="common-section-attlist"/> + <rng:ref name="text-illustration-index-source"/> + <rng:ref name="text-index-body"/> + </rng:element> + </rng:define> + <rng:define name="text-illustration-index-entry-content"> + <rng:ref name="text-illustration-index-entry-template-attrs"/> + <rng:zeroOrMore> + <rng:choice> + <rng:ref name="text-index-entry-chapter"/> + <rng:ref name="text-index-entry-page-number"/> + <rng:ref name="text-index-entry-text"/> + <rng:ref name="text-index-entry-span"/> + <rng:ref name="text-index-entry-tab-stop"/> + </rng:choice> + </rng:zeroOrMore> + </rng:define> + <rng:define name="text-illustration-index-entry-template"> + <rng:element name="text:illustration-index-entry-template"> + <rng:ref name="text-illustration-index-entry-content"/> + </rng:element> + </rng:define> + <rng:define name="text-illustration-index-entry-template-attrs"> + <rng:attribute name="text:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:define> + <rng:define name="text-illustration-index-source"> + <rng:element name="text:illustration-index-source"> + <rng:ref name="text-illustration-index-source-attrs"/> + <rng:optional> + <rng:ref name="text-index-title-template"/> + </rng:optional> + <rng:optional> + <rng:ref name="text-illustration-index-entry-template"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="text-illustration-index-source-attrs"> + <rng:interleave> + <rng:ref name="text-index-scope-attr"/> + <rng:ref name="text-relative-tab-stop-position-attr"/> + <rng:optional> + <rng:attribute name="text:use-caption"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:caption-sequence-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:caption-sequence-format"> + <rng:choice> + <rng:value>text</rng:value> + <rng:value>category-and-value</rng:value> + <rng:value>caption</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="text-index-body"> + <rng:element name="text:index-body"> + <rng:zeroOrMore> + <rng:ref name="index-content-main"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="text-index-entry-bibliography"> + <rng:element name="text:index-entry-bibliography"> + <rng:ref name="text-index-entry-bibliography-attrs"/> + </rng:element> + </rng:define> + <rng:define name="text-index-entry-bibliography-attrs"> + <rng:interleave> + <rng:optional> + <rng:attribute name="text:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:attribute name="text:bibliography-data-field"> + <rng:choice> + <rng:value>address</rng:value> + <rng:value>annote</rng:value> + <rng:value>author</rng:value> + <rng:value>bibliography-type</rng:value> + <rng:value>booktitle</rng:value> + <rng:value>chapter</rng:value> + <rng:value>custom1</rng:value> + <rng:value>custom2</rng:value> + <rng:value>custom3</rng:value> + <rng:value>custom4</rng:value> + <rng:value>custom5</rng:value> + <rng:value>edition</rng:value> + <rng:value>editor</rng:value> + <rng:value>howpublished</rng:value> + <rng:value>identifier</rng:value> + <rng:value>institution</rng:value> + <rng:value>isbn</rng:value> + <rng:value>issn</rng:value> + <rng:value>journal</rng:value> + <rng:value>month</rng:value> + <rng:value>note</rng:value> + <rng:value>number</rng:value> + <rng:value>organizations</rng:value> + <rng:value>pages</rng:value> + <rng:value>publisher</rng:value> + <rng:value>report-type</rng:value> + <rng:value>school</rng:value> + <rng:value>series</rng:value> + <rng:value>title</rng:value> + <rng:value>url</rng:value> + <rng:value>volume</rng:value> + <rng:value>year</rng:value> + </rng:choice> + </rng:attribute> + </rng:interleave> + </rng:define> + <rng:define name="text-index-entry-chapter"> + <rng:element name="text:index-entry-chapter"> + <rng:optional> + <rng:attribute name="text:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:ref name="text-index-entry-chapter-attrs"/> + </rng:element> + </rng:define> + <rng:define name="text-index-entry-chapter-attrs"> + <rng:interleave> + <rng:optional> + <rng:attribute name="text:display"> + <rng:choice> + <rng:value>name</rng:value> + <rng:value>number</rng:value> + <rng:value>number-and-name</rng:value> + <rng:value>plain-number</rng:value> + <rng:value>plain-number-and-name</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:outline-level"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="text-index-entry-link-end"> + <rng:element name="text:index-entry-link-end"> + <rng:optional> + <rng:attribute name="text:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="text-index-entry-link-start"> + <rng:element name="text:index-entry-link-start"> + <rng:optional> + <rng:attribute name="text:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="text-index-entry-page-number"> + <rng:element name="text:index-entry-page-number"> + <rng:optional> + <rng:attribute name="text:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="text-index-entry-span"> + <rng:element name="text:index-entry-span"> + <rng:optional> + <rng:attribute name="text:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:text/> + </rng:element> + </rng:define> + <rng:define name="text-index-entry-tab-stop"> + <rng:element name="text:index-entry-tab-stop"> + <rng:optional> + <rng:attribute name="text:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:ref name="text-index-entry-tab-stop-attrs"/> + </rng:element> + </rng:define> + <rng:define name="text-index-entry-tab-stop-attrs"> + <rng:interleave> + <rng:optional> + <rng:attribute name="style:leader-char"> + <rng:ref name="character"/> + </rng:attribute> + </rng:optional> + <rng:choice> + <rng:attribute name="style:type"> + <rng:value>right</rng:value> + </rng:attribute> + <rng:group> + <rng:attribute name="style:type"> + <rng:value>left</rng:value> + </rng:attribute> + <rng:attribute name="style:position"> + <rng:ref name="length"/> + </rng:attribute> + </rng:group> + </rng:choice> + </rng:interleave> + </rng:define> + <rng:define name="text-index-entry-text"> + <rng:element name="text:index-entry-text"> + <rng:optional> + <rng:attribute name="text:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="text-index-name"> + <rng:attribute name="text:index-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:define> + <rng:define name="text-index-scope-attr"> + <rng:optional> + <rng:attribute name="text:index-scope"> + <rng:choice> + <rng:value>document</rng:value> + <rng:value>chapter</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="text-index-source-style"> + <rng:element name="text:index-source-style"> + <rng:attribute name="text:style-name"> + <rng:ref name="styleName"/> + </rng:attribute> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="text-index-source-styles"> + <rng:element name="text:index-source-styles"> + <rng:attribute name="text:outline-level"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + <rng:zeroOrMore> + <rng:ref name="text-index-source-style"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="text-index-title"> + <rng:element name="text:index-title"> + <rng:ref name="common-section-attlist"/> + <rng:zeroOrMore> + <rng:ref name="index-content-main"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="text-index-title-template"> + <rng:element name="text:index-title-template"> + <rng:optional> + <rng:attribute name="text:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:text/> + </rng:element> + </rng:define> + <rng:define name="text-linenumbering-configuration"> + <rng:element name="text:linenumbering-configuration"> + <rng:ref name="text-linenumbering-configuration-attlist"/> + <rng:optional> + <rng:ref name="text-linenumbering-separator"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="text-linenumbering-configuration-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="text:number-lines"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:ref name="common-num-format-attlist"/> + </rng:optional> + <rng:optional> + <rng:attribute name="text:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:increment"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:number-position"> + <rng:choice> + <rng:value>left</rng:value> + <rng:value>right</rng:value> + <rng:value>inner</rng:value> + <rng:value>outer</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:offset"> + <rng:ref name="nonNegativeLength"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:count-empty-lines"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:count-in-text-boxes"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:restart-on-page"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="text-linenumbering-separator"> + <rng:element name="text:linenumbering-separator"> + <rng:optional> + <rng:attribute name="text:increment"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + <rng:text/> + </rng:element> + </rng:define> + <rng:define name="text-list"> + <rng:element name="text:list"> + <rng:ref name="text-list-attr"/> + <rng:optional> + <rng:ref name="text-list-header"/> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="text-list-item"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="text-list-attr"> + <rng:interleave> + <rng:optional> + <rng:attribute name="text:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:continue-numbering"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:continue-list"> + <rng:ref name="IDREF"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:ref name="xml-id"/> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="text-list-header"> + <rng:element name="text:list-header"> + <rng:ref name="text-list-header-attr"/> + <rng:ref name="text-list-item-content"/> + </rng:element> + </rng:define> + <rng:define name="text-list-header-attr"> + <rng:optional> + <rng:ref name="xml-id"/> + </rng:optional> + </rng:define> + <rng:define name="text-list-item"> + <rng:element name="text:list-item"> + <rng:ref name="text-list-item-attr"/> + <rng:ref name="text-list-item-content"/> + </rng:element> + </rng:define> + <rng:define name="text-list-item-attr"> + <rng:interleave> + <rng:optional> + <rng:attribute name="text:start-value"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:style-override"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:ref name="xml-id"/> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="text-list-item-content"> + <rng:optional> + <rng:ref name="text-number"/> + </rng:optional> + <rng:zeroOrMore> + <rng:choice> + <rng:ref name="text-p"/> + <rng:ref name="text-h"/> + <rng:ref name="text-list"/> + <rng:ref name="text-soft-page-break"/> + </rng:choice> + </rng:zeroOrMore> + </rng:define> + <rng:define name="text-list-level-style-attr"> + <rng:attribute name="text:level"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:define> + <rng:define name="text-list-level-style-bullet-attr"> + <rng:interleave> + <rng:optional> + <rng:attribute name="text:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:attribute name="text:bullet-char"> + <rng:ref name="character"/> + </rng:attribute> + <rng:ref name="common-num-format-prefix-suffix-attlist"/> + <rng:optional> + <rng:attribute name="text:bullet-relative-size"> + <rng:ref name="percent"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="text-list-level-style-image-attr"> + <rng:choice> + <rng:ref name="common-draw-data-attlist"/> + <rng:ref name="office-binary-data"/> + </rng:choice> + </rng:define> + <rng:define name="text-list-level-style-number-attr"> + <rng:interleave> + <rng:optional> + <rng:attribute name="text:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:ref name="common-num-format-attlist"/> + <rng:ref name="common-num-format-prefix-suffix-attlist"/> + <rng:optional> + <rng:attribute name="text:display-levels"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:start-value"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="text-list-style"> + <rng:element name="text:list-style"> + <rng:ref name="text-list-style-attr"/> + <rng:zeroOrMore> + <rng:ref name="text-list-style-content"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="text-list-style-attr"> + <rng:interleave> + <rng:attribute name="style:name"> + <rng:ref name="styleName"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="style:display-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:consecutive-numbering"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="text-list-style-content"> + <rng:choice> + <rng:element name="text:list-level-style-number"> + <rng:ref name="text-list-level-style-attr"/> + <rng:ref name="text-list-level-style-number-attr"/> + <rng:optional> + <rng:ref name="style-list-level-properties"/> + </rng:optional> + <rng:optional> + <rng:ref name="style-text-properties"/> + </rng:optional> + </rng:element> + <rng:element name="text:list-level-style-bullet"> + <rng:ref name="text-list-level-style-attr"/> + <rng:ref name="text-list-level-style-bullet-attr"/> + <rng:optional> + <rng:ref name="style-list-level-properties"/> + </rng:optional> + <rng:optional> + <rng:ref name="style-text-properties"/> + </rng:optional> + </rng:element> + <rng:element name="text:list-level-style-image"> + <rng:ref name="text-list-level-style-attr"/> + <rng:ref name="text-list-level-style-image-attr"/> + <rng:optional> + <rng:ref name="style-list-level-properties"/> + </rng:optional> + </rng:element> + </rng:choice> + </rng:define> + <rng:define name="text-meta-attlist"> + <rng:interleave> + <rng:optional> + <rng:ref name="common-in-content-meta-attlist"/> + </rng:optional> + <rng:optional> + <rng:ref name="xml-id"/> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="text-meta-field-attlist"> + <rng:interleave> + <rng:ref name="xml-id"/> + <rng:ref name="common-field-data-style-name-attlist"/> + </rng:interleave> + </rng:define> + <rng:define name="text-note-class"> + <rng:attribute name="text:note-class"> + <rng:choice> + <rng:value>footnote</rng:value> + <rng:value>endnote</rng:value> + </rng:choice> + </rng:attribute> + </rng:define> + <rng:define name="text-note-ref-content"> + <rng:interleave> + <rng:optional> + <rng:attribute name="text:reference-format"> + <rng:choice> + <rng:ref name="common-ref-format-values"/> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:ref name="text-note-class"/> + </rng:interleave> + </rng:define> + <rng:define name="text-notes-configuration"> + <rng:element name="text:notes-configuration"> + <rng:ref name="text-notes-configuration-content"/> + </rng:element> + </rng:define> + <rng:define name="text-notes-configuration-content"> + <rng:interleave> + <rng:ref name="text-note-class"/> + <rng:optional> + <rng:attribute name="text:citation-style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:citation-body-style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:default-style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:master-page-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:start-value"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + <rng:ref name="common-num-format-prefix-suffix-attlist"/> + <rng:optional> + <rng:ref name="common-num-format-attlist"/> + </rng:optional> + <rng:optional> + <rng:attribute name="text:start-numbering-at"> + <rng:choice> + <rng:value>document</rng:value> + <rng:value>chapter</rng:value> + <rng:value>page</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:footnotes-position"> + <rng:choice> + <rng:value>text</rng:value> + <rng:value>page</rng:value> + <rng:value>section</rng:value> + <rng:value>document</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:element name="text:note-continuation-notice-forward"> + <rng:text/> + </rng:element> + </rng:optional> + <rng:optional> + <rng:element name="text:note-continuation-notice-backward"> + <rng:text/> + </rng:element> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="text-number"> + <rng:element name="text:number"> + <rng:ref name="string"/> + </rng:element> + </rng:define> + <rng:define name="text-numbered-paragraph"> + <rng:element name="text:numbered-paragraph"> + <rng:ref name="text-numbered-paragraph-attr"/> + <rng:optional> + <rng:ref name="text-number"/> + </rng:optional> + <rng:choice> + <rng:ref name="text-p"/> + <rng:ref name="text-h"/> + </rng:choice> + </rng:element> + </rng:define> + <rng:define name="text-numbered-paragraph-attr"> + <rng:interleave> + <rng:attribute name="text:list-id"> + <rng:ref name="NCName"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="text:level"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + <rng:attribute name="text:continue-numbering"> + <rng:ref name="boolean"/> + </rng:attribute> + <rng:attribute name="text:start-value"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:ref name="xml-id"/> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="text-object-index"> + <rng:element name="text:object-index"> + <rng:ref name="common-section-attlist"/> + <rng:ref name="text-object-index-source"/> + <rng:ref name="text-index-body"/> + </rng:element> + </rng:define> + <rng:define name="text-object-index-entry-template"> + <rng:element name="text:object-index-entry-template"> + <rng:ref name="text-illustration-index-entry-content"/> + </rng:element> + </rng:define> + <rng:define name="text-object-index-source"> + <rng:element name="text:object-index-source"> + <rng:ref name="text-object-index-source-attrs"/> + <rng:optional> + <rng:ref name="text-index-title-template"/> + </rng:optional> + <rng:optional> + <rng:ref name="text-object-index-entry-template"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="text-object-index-source-attrs"> + <rng:interleave> + <rng:ref name="text-index-scope-attr"/> + <rng:ref name="text-relative-tab-stop-position-attr"/> + <rng:optional> + <rng:attribute name="text:use-spreadsheet-objects"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:use-math-objects"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:use-draw-objects"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:use-chart-objects"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:use-other-objects"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="text-outline-level"> + <rng:optional> + <rng:attribute name="text:outline-level"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="text-outline-level-style"> + <rng:element name="text:outline-level-style"> + <rng:ref name="text-outline-level-style-attlist"/> + <rng:optional> + <rng:ref name="style-list-level-properties"/> + </rng:optional> + <rng:optional> + <rng:ref name="style-text-properties"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="text-outline-level-style-attlist"> + <rng:interleave> + <rng:attribute name="text:level"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="text:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + <rng:ref name="common-num-format-attlist"/> + <rng:ref name="common-num-format-prefix-suffix-attlist"/> + <rng:optional> + <rng:attribute name="text:display-levels"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:start-value"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="text-outline-style"> + <rng:element name="text:outline-style"> + <rng:ref name="text-outline-style-attr"/> + <rng:oneOrMore> + <rng:ref name="text-outline-level-style"/> + </rng:oneOrMore> + </rng:element> + </rng:define> + <rng:define name="text-outline-style-attr"> + <rng:attribute name="style:name"> + <rng:ref name="styleName"/> + </rng:attribute> + </rng:define> + <rng:define name="text-p"> + <rng:element name="text:p"> + <rng:ref name="paragraph-attrs"/> + <rng:zeroOrMore> + <rng:ref name="paragraph-content-or-hyperlink"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="text-page"> + <rng:element name="text:page"> + <rng:ref name="text-page-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="text-page-attlist"> + <rng:attribute name="text:master-page-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:define> + <rng:define name="text-page-continuation-attlist"> + <rng:interleave> + <rng:attribute name="text:select-page"> + <rng:choice> + <rng:value>previous</rng:value> + <rng:value>next</rng:value> + </rng:choice> + </rng:attribute> + <rng:optional> + <rng:attribute name="text:string-value"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="text-page-number-attlist"> + <rng:interleave> + <rng:interleave> + <rng:ref name="common-field-num-format-attlist"/> + <rng:ref name="common-field-fixed-attlist"/> + </rng:interleave> + <rng:optional> + <rng:attribute name="text:page-adjust"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:select-page"> + <rng:choice> + <rng:value>previous</rng:value> + <rng:value>current</rng:value> + <rng:value>next</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="text-page-sequence"> + <rng:element name="text:page-sequence"> + <rng:oneOrMore> + <rng:ref name="text-page"/> + </rng:oneOrMore> + </rng:element> + </rng:define> + <rng:define name="text-placeholder-attlist"> + <rng:interleave> + <rng:attribute name="text:placeholder-type"> + <rng:choice> + <rng:value>text</rng:value> + <rng:value>table</rng:value> + <rng:value>text-box</rng:value> + <rng:value>image</rng:value> + <rng:value>object</rng:value> + </rng:choice> + </rng:attribute> + <rng:ref name="common-field-description-attlist"/> + </rng:interleave> + </rng:define> + <rng:define name="text-relative-tab-stop-position-attr"> + <rng:optional> + <rng:attribute name="text:relative-tab-stop-position"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="text-section"> + <rng:element name="text:section"> + <rng:ref name="text-section-attlist"/> + <rng:choice> + <rng:ref name="text-section-source"/> + <rng:ref name="text-section-source-dde"/> + <rng:empty/> + </rng:choice> + <rng:zeroOrMore> + <rng:ref name="text-content"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="text-section-attlist"> + <rng:interleave> + <rng:ref name="common-section-attlist"/> + <rng:choice> + <rng:attribute name="text:display"> + <rng:choice> + <rng:value>true</rng:value> + <rng:value>none</rng:value> + </rng:choice> + </rng:attribute> + <rng:group> + <rng:attribute name="text:display"> + <rng:value>condition</rng:value> + </rng:attribute> + <rng:attribute name="text:condition"> + <rng:ref name="string"/> + </rng:attribute> + </rng:group> + <rng:empty/> + </rng:choice> + </rng:interleave> + </rng:define> + <rng:define name="text-section-source"> + <rng:element name="text:section-source"> + <rng:ref name="text-section-source-attr"/> + </rng:element> + </rng:define> + <rng:define name="text-section-source-attr"> + <rng:interleave> + <rng:optional> + <rng:attribute name="xlink:type"> + <rng:value>simple</rng:value> + </rng:attribute> + <rng:attribute name="xlink:href"> + <rng:ref name="anyIRI"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="xlink:show"> + <rng:value>embed</rng:value> + </rng:attribute> + </rng:optional> + </rng:optional> + <rng:optional> + <rng:attribute name="text:section-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:filter-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="text-section-source-dde"> + <rng:ref name="office-dde-source"/> + </rng:define> + <rng:define name="text-sequence-decl"> + <rng:element name="text:sequence-decl"> + <rng:ref name="text-sequence-decl-attlist"/> + </rng:element> + </rng:define> + <rng:define name="text-sequence-decl-attlist"> + <rng:interleave> + <rng:ref name="common-field-name-attlist"/> + <rng:attribute name="text:display-outline-level"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + <rng:optional> + <rng:attribute name="text:separation-character"> + <rng:ref name="character"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="text-sequence-ref-content"> + <rng:optional> + <rng:attribute name="text:reference-format"> + <rng:choice> + <rng:ref name="common-ref-format-values"/> + <rng:value>category-and-value</rng:value> + <rng:value>caption</rng:value> + <rng:value>value</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="text-sequence-ref-name"> + <rng:optional> + <rng:attribute name="text:ref-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="text-set-page-variable-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="text:active"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:page-adjust"> + <rng:ref name="integer"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="text-soft-page-break"> + <rng:element name="text:soft-page-break"> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="text-sort-key"> + <rng:element name="text:sort-key"> + <rng:ref name="text-sort-key-attlist"/> + <rng:empty/> + </rng:element> + </rng:define> + <rng:define name="text-sort-key-attlist"> + <rng:attribute name="text:key"> + <rng:choice> + <rng:value>address</rng:value> + <rng:value>annote</rng:value> + <rng:value>author</rng:value> + <rng:value>bibliography-type</rng:value> + <rng:value>booktitle</rng:value> + <rng:value>chapter</rng:value> + <rng:value>custom1</rng:value> + <rng:value>custom2</rng:value> + <rng:value>custom3</rng:value> + <rng:value>custom4</rng:value> + <rng:value>custom5</rng:value> + <rng:value>edition</rng:value> + <rng:value>editor</rng:value> + <rng:value>howpublished</rng:value> + <rng:value>identifier</rng:value> + <rng:value>institution</rng:value> + <rng:value>isbn</rng:value> + <rng:value>issn</rng:value> + <rng:value>journal</rng:value> + <rng:value>month</rng:value> + <rng:value>note</rng:value> + <rng:value>number</rng:value> + <rng:value>organizations</rng:value> + <rng:value>pages</rng:value> + <rng:value>publisher</rng:value> + <rng:value>report-type</rng:value> + <rng:value>school</rng:value> + <rng:value>series</rng:value> + <rng:value>title</rng:value> + <rng:value>url</rng:value> + <rng:value>volume</rng:value> + <rng:value>year</rng:value> + </rng:choice> + </rng:attribute> + <rng:optional> + <rng:attribute name="text:sort-ascending"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="text-style-name"> + <rng:optional> + <rng:attribute name="form:text-style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="text-tab-attr"> + <rng:optional> + <rng:attribute name="text:tab-ref"> + <rng:ref name="nonNegativeInteger"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="text-table-index"> + <rng:element name="text:table-index"> + <rng:ref name="common-section-attlist"/> + <rng:ref name="text-table-index-source"/> + <rng:ref name="text-index-body"/> + </rng:element> + </rng:define> + <rng:define name="text-table-index-entry-template"> + <rng:element name="text:table-index-entry-template"> + <rng:ref name="text-illustration-index-entry-content"/> + </rng:element> + </rng:define> + <rng:define name="text-table-index-source"> + <rng:element name="text:table-index-source"> + <rng:ref name="text-illustration-index-source-attrs"/> + <rng:optional> + <rng:ref name="text-index-title-template"/> + </rng:optional> + <rng:optional> + <rng:ref name="text-table-index-entry-template"/> + </rng:optional> + </rng:element> + </rng:define> + <rng:define name="text-table-of-content"> + <rng:element name="text:table-of-content"> + <rng:ref name="common-section-attlist"/> + <rng:ref name="text-table-of-content-source"/> + <rng:ref name="text-index-body"/> + </rng:element> + </rng:define> + <rng:define name="text-table-of-content-children"> + <rng:choice> + <rng:ref name="text-index-entry-chapter"/> + <rng:ref name="text-index-entry-page-number"/> + <rng:ref name="text-index-entry-text"/> + <rng:ref name="text-index-entry-span"/> + <rng:ref name="text-index-entry-tab-stop"/> + <rng:ref name="text-index-entry-link-start"/> + <rng:ref name="text-index-entry-link-end"/> + </rng:choice> + </rng:define> + <rng:define name="text-table-of-content-entry-template"> + <rng:element name="text:table-of-content-entry-template"> + <rng:ref name="text-table-of-content-entry-template-attlist"/> + <rng:zeroOrMore> + <rng:ref name="text-table-of-content-children"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="text-table-of-content-entry-template-attlist"> + <rng:interleave> + <rng:attribute name="text:outline-level"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + <rng:attribute name="text:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:interleave> + </rng:define> + <rng:define name="text-table-of-content-source"> + <rng:element name="text:table-of-content-source"> + <rng:ref name="text-table-of-content-source-attlist"/> + <rng:optional> + <rng:ref name="text-index-title-template"/> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="text-table-of-content-entry-template"/> + </rng:zeroOrMore> + <rng:zeroOrMore> + <rng:ref name="text-index-source-styles"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="text-table-of-content-source-attlist"> + <rng:interleave> + <rng:optional> + <rng:attribute name="text:outline-level"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:use-outline-level"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:use-index-marks"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:use-index-source-styles"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:index-scope"> + <rng:choice> + <rng:value>document</rng:value> + <rng:value>chapter</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:relative-tab-stop-position"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="text-template-name-attlist"> + <rng:optional> + <rng:attribute name="text:display"> + <rng:choice> + <rng:value>full</rng:value> + <rng:value>path</rng:value> + <rng:value>name</rng:value> + <rng:value>name-and-extension</rng:value> + <rng:value>area</rng:value> + <rng:value>title</rng:value> + </rng:choice> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="text-time-attlist"> + <rng:interleave> + <rng:interleave> + <rng:ref name="common-field-fixed-attlist"/> + <rng:ref name="common-field-data-style-name-attlist"/> + </rng:interleave> + <rng:optional> + <rng:attribute name="text:time-value"> + <rng:ref name="timeOrDateTime"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:time-adjust"> + <rng:ref name="duration"/> + </rng:attribute> + </rng:optional> + </rng:interleave> + </rng:define> + <rng:define name="text-toc-mark-start-attrs"> + <rng:ref name="text-id"/> + <rng:ref name="text-outline-level"/> + </rng:define> + <rng:define name="text-tracked-changes"> + <rng:optional> + <rng:element name="text:tracked-changes"> + <rng:ref name="text-tracked-changes-attr"/> + <rng:zeroOrMore> + <rng:ref name="text-changed-region"/> + </rng:zeroOrMore> + </rng:element> + </rng:optional> + </rng:define> + <rng:define name="text-tracked-changes-attr"> + <rng:optional> + <rng:attribute name="text:track-changes"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="text-user-field-decl"> + <rng:element name="text:user-field-decl"> + <rng:ref name="common-field-name-attlist"/> + <rng:optional> + <rng:ref name="common-field-formula-attlist"/> + </rng:optional> + <rng:ref name="common-value-and-type-attlist"/> + </rng:element> + </rng:define> + <rng:define name="text-user-index"> + <rng:element name="text:user-index"> + <rng:ref name="common-section-attlist"/> + <rng:ref name="text-user-index-source"/> + <rng:ref name="text-index-body"/> + </rng:element> + </rng:define> + <rng:define name="text-user-index-entry-template"> + <rng:element name="text:user-index-entry-template"> + <rng:ref name="text-user-index-entry-template-attrs"/> + <rng:zeroOrMore> + <rng:choice> + <rng:ref name="text-index-entry-chapter"/> + <rng:ref name="text-index-entry-page-number"/> + <rng:ref name="text-index-entry-text"/> + <rng:ref name="text-index-entry-span"/> + <rng:ref name="text-index-entry-tab-stop"/> + </rng:choice> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="text-user-index-entry-template-attrs"> + <rng:interleave> + <rng:attribute name="text:outline-level"> + <rng:ref name="positiveInteger"/> + </rng:attribute> + <rng:attribute name="text:style-name"> + <rng:ref name="styleNameRef"/> + </rng:attribute> + </rng:interleave> + </rng:define> + <rng:define name="text-user-index-source"> + <rng:element name="text:user-index-source"> + <rng:ref name="text-user-index-source-attr"/> + <rng:optional> + <rng:ref name="text-index-title-template"/> + </rng:optional> + <rng:zeroOrMore> + <rng:ref name="text-user-index-entry-template"/> + </rng:zeroOrMore> + <rng:zeroOrMore> + <rng:ref name="text-index-source-styles"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="text-user-index-source-attr"> + <rng:interleave> + <rng:ref name="text-index-scope-attr"/> + <rng:ref name="text-relative-tab-stop-position-attr"/> + <rng:optional> + <rng:attribute name="text:use-index-marks"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:use-index-source-styles"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:use-graphics"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:use-tables"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:use-floating-frames"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:use-objects"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:optional> + <rng:attribute name="text:copy-outline-levels"> + <rng:ref name="boolean"/> + </rng:attribute> + </rng:optional> + <rng:attribute name="text:index-name"> + <rng:ref name="string"/> + </rng:attribute> + </rng:interleave> + </rng:define> + <rng:define name="text-variable-decl"> + <rng:element name="text:variable-decl"> + <rng:ref name="common-field-name-attlist"/> + <rng:ref name="common-value-type-attlist"/> + </rng:element> + </rng:define> + <rng:define name="textEncoding"> + <rng:data type="string"> + <rng:param name="pattern">[A-Za-z][A-Za-z0-9._\-]*</rng:param> + </rng:data> + </rng:define> + <rng:define name="time"> + <rng:data type="time"/> + </rng:define> + <rng:define name="timeOrDateTime"> + <rng:choice> + <rng:data type="time"/> + <rng:data type="dateTime"/> + </rng:choice> + </rng:define> + <rng:define name="types"> + <rng:choice> + <rng:value>submit</rng:value> + <rng:value>reset</rng:value> + <rng:value>push</rng:value> + <rng:value>url</rng:value> + </rng:choice> + </rng:define> + <rng:define name="valueType"> + <rng:choice> + <rng:value>float</rng:value> + <rng:value>time</rng:value> + <rng:value>date</rng:value> + <rng:value>percentage</rng:value> + <rng:value>currency</rng:value> + <rng:value>boolean</rng:value> + <rng:value>string</rng:value> + </rng:choice> + </rng:define> + <rng:define name="variableName"> + <rng:data type="string"/> + </rng:define> + <rng:define name="vector3D"> + <rng:data type="string"> + <rng:param name="pattern">\([ ]*-?([0-9]+(\.[0-9]*)?|\.[0-9]+)([ ]+-?([0-9]+(\.[0-9]*)?|\.[0-9]+)){2}[ ]*\)</rng:param> + </rng:data> + </rng:define> + <rng:define name="vertBackPos"> + <rng:choice> + <rng:value>top</rng:value> + <rng:value>center</rng:value> + <rng:value>bottom</rng:value> + </rng:choice> + </rng:define> + <rng:define name="xforms-bind-attlist"> + <rng:optional> + <rng:attribute name="xforms:bind"> + <rng:ref name="string"/> + </rng:attribute> + </rng:optional> + </rng:define> + <rng:define name="xforms-model"> + <rng:element name="xforms:model"> + <rng:ref name="anyAttListOrElements"/> + </rng:element> + </rng:define> + <rng:define name="xml-id"> + <rng:attribute name="xml:id"> + <rng:ref name="ID"/> + </rng:attribute> + </rng:define> + <rng:define name="zeroToHundredPercent"> + <rng:data type="string"> + <rng:param name="pattern">([0-9]?[0-9](\.[0-9]*)?|100(\.0*)?|\.[0-9]+)%</rng:param> + </rng:data> + </rng:define> + <rng:define name="zeroToOneDecimal"> + <rng:data type="decimal"> + <rng:param name="minInclusive">0</rng:param> + <rng:param name="maxInclusive">1</rng:param> + </rng:data> + </rng:define> +</rng:grammar> diff --git a/schema/odf1.3/OpenDocument-v1.3-metadata.owl b/schema/odf1.3/OpenDocument-v1.3-metadata.owl new file mode 100644 index 000000000000..7fe1d94939b8 --- /dev/null +++ b/schema/odf1.3/OpenDocument-v1.3-metadata.owl @@ -0,0 +1,78 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Open Document Format for Office Applications (OpenDocument) Version 1.3 + OASIS Standard, In progress + OWL Metadata Manifest Description + Source: https://tools.oasis-open.org/version-control/svn/office/ + Copyright (c) OASIS Open 2002-2015. All Rights Reserved. + + All capitalized terms in the following text have the meanings assigned to them + in the OASIS Intellectual Property Rights Policy (the "OASIS IPR Policy"). The + full Policy may be found at the OASIS website. + + This document and translations of it may be copied and furnished to others, and + derivative works that comment on or otherwise explain it or assist in its + implementation may be prepared, copied, published, and distributed, in whole or + in part, without restriction of any kind, provided that the above copyright + notice and this section are included on all such copies and derivative works. + However, this document itself may not be modified in any way, including by + removing the copyright notice or references to OASIS, except as needed for the + purpose of developing any document or deliverable produced by an OASIS + Technical Committee (in which case the rules applicable to copyrights, as set + forth in the OASIS IPR Policy, must be followed) or as required to translate it + into languages other than English. + + The limited permissions granted above are perpetual and will not be revoked by + OASIS or its successors or assigns. + + This document and the information contained herein is provided on an "AS IS" + basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT + LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT + INFRINGE ANY OWNERSHIP RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR + FITNESS FOR A PARTICULAR PURPOSE. +--> +<rdf:RDF xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:odf="http://docs.oasis-open.org/ns/office/1.2/meta/odf#" xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:pkg="http://docs.oasis-open.org/ns/office/1.2/meta/pkg#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/01/rdf-schema#"> + +<owl:Ontology rdf:about="http://docs.oasis-open.org/ns/office/1.2/meta/odf#"> + <owl:imports rdf:resource="http://docs.oasis-open.org/office/v1.2/os/OpenDocument-v1.2-os-package-metadata.owl"/> + <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing"/> + <dc:title xml:lang="en">Open Document Schema Metadata Manifest Ontology</dc:title> + <label xml:lang="en">ODF Schema Metadata Manifest</label> +</owl:Ontology> + +<owl:Class rdf:about="http://docs.oasis-open.org/ns/office/1.2/meta/odf#ContentFile"> + <label xml:lang="en">The OpenDocument Content File</label> + <comment xml:lang="en">The unique content.xml from the root path of the document</comment> + <subClassOf rdf:resource="http://docs.oasis-open.org/ns/office/1.2/meta/pkg#File"/> +</owl:Class> + +<owl:Class rdf:about="http://docs.oasis-open.org/ns/office/1.2/meta/odf#StylesFile"> + <label xml:lang="en">The OpenDocument Styles File</label> + <comment xml:lang="en">The unique styles.xml from the root path of the document</comment> + <subClassOf rdf:resource="http://docs.oasis-open.org/ns/office/1.2/meta/pkg#File"/> +</owl:Class> + +<owl:Class rdf:about="http://docs.oasis-open.org/ns/office/1.2/meta/odf#Element"> + <label xml:lang="en">OpenDocument Package ODF XML Element</label> + <subClassOf rdf:resource="http://docs.oasis-open.org/ns/office/1.2/meta/pkg#Element"/> +</owl:Class> + +<owl:Class rdf:about="urn:oasis:names:tc:opendocument:xmlns:text:1.0meta-field"> + <label xml:lang="en">OpenDocument Meta field Element</label> + <subClassOf rdf:resource="http://docs.oasis-open.org/ns/office/1.2/meta/odf#Element"/> +</owl:Class> + +<owl:DatatypeProperty rdf:about="http://docs.oasis-open.org/ns/office/1.2/meta/odf#prefix"> + <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#FunctionalProperty"/> + <domain rdf:resource="urn:oasis:names:tc:opendocument:xmlns:text:1.0meta-field"/> + <range rdf:resource="http://www.w3.org/2001/XMLSchema-datatypes#string"/> + <label xml:lang="en">has prefix</label> +</owl:DatatypeProperty> + +<owl:DatatypeProperty rdf:about="http://docs.oasis-open.org/ns/office/1.2/meta/odf#suffix"> + <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#FunctionalProperty"/> + <domain rdf:resource="urn:oasis:names:tc:opendocument:xmlns:text:1.0meta-field"/> + <range rdf:resource="http://www.w3.org/2001/XMLSchema-datatypes#string"/> + <label xml:lang="en">has suffix</label> +</owl:DatatypeProperty> +</rdf:RDF> diff --git a/schema/odf1.3/OpenDocument-v1.3-package-metadata.owl b/schema/odf1.3/OpenDocument-v1.3-package-metadata.owl new file mode 100644 index 000000000000..9281dff7752f --- /dev/null +++ b/schema/odf1.3/OpenDocument-v1.3-package-metadata.owl @@ -0,0 +1,75 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Open Document Format for Office Applications (OpenDocument) Version 1.3 + OASIS Standard, In progress + OWL Metadata Manifest Description + Source: https://tools.oasis-open.org/version-control/svn/office/ + Copyright (c) OASIS Open 2002-2015. All Rights Reserved. + + All capitalized terms in the following text have the meanings assigned to them + in the OASIS Intellectual Property Rights Policy (the "OASIS IPR Policy"). The + full Policy may be found at the OASIS website. + + This document and translations of it may be copied and furnished to others, and + derivative works that comment on or otherwise explain it or assist in its + implementation may be prepared, copied, published, and distributed, in whole or + in part, without restriction of any kind, provided that the above copyright + notice and this section are included on all such copies and derivative works. + However, this document itself may not be modified in any way, including by + removing the copyright notice or references to OASIS, except as needed for the + purpose of developing any document or deliverable produced by an OASIS + Technical Committee (in which case the rules applicable to copyrights, as set + forth in the OASIS IPR Policy, must be followed) or as required to translate it + into languages other than English. + + The limited permissions granted above are perpetual and will not be revoked by + OASIS or its successors or assigns. + + This document and the information contained herein is provided on an "AS IS" + basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT + LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT + INFRINGE ANY OWNERSHIP RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR + FITNESS FOR A PARTICULAR PURPOSE. +--> +<rdf:RDF xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:pkg="http://docs.oasis-open.org/ns/office/1.2/meta/pkg#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/01/rdf-schema#"> + +<owl:Ontology rdf:about="http://docs.oasis-open.org/ns/office/1.2/meta/pkg#"> + <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing"/> + <dc:title xml:lang="en">Open Document Package Metadata Manifest Ontology</dc:title> + <label xml:lang="en">ODF Package Metadata Manifest</label> +</owl:Ontology> + +<owl:Class rdf:about="http://docs.oasis-open.org/ns/office/1.2/meta/pkg#Document"> + <label xml:lang="en">OpenDocument Document</label> +</owl:Class> + +<owl:Class rdf:about="http://docs.oasis-open.org/ns/office/1.2/meta/pkg#File"> + <label xml:lang="en"> OpenDocument Document Package File</label> +</owl:Class> + +<owl:ObjectProperty rdf:about="http://docs.oasis-open.org/ns/office/1.2/meta/pkg#hasPart"> + <domain rdf:resource="http://docs.oasis-open.org/ns/office/1.2/meta/pkg#Document"/> + <range rdf:resource="http://docs.oasis-open.org/ns/office/1.2/meta/pkg#File"/> + <label xml:lang="en">contains</label> + <comment xml:lang="en">Related to dcterms:hasPart of the Dublin Core Metadata Initiative</comment> +</owl:ObjectProperty> + +<owl:Class rdf:about="http://docs.oasis-open.org/ns/office/1.2/meta/pkg#MetadataFile"> + <label xml:lang="en">An OpenDocument Metadata File</label> + <comment xml:lang="en">Used for any metadata file in the document</comment> + <subClassOf rdf:resource="http://docs.oasis-open.org/ns/office/1.2/meta/pkg#File"/> +</owl:Class> + +<owl:DatatypeProperty rdf:about="http://docs.oasis-open.org/ns/office/1.2/meta/pkg#mimeType"> + <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#FunctionalProperty"/> + <domain rdf:resource="http://docs.oasis-open.org/ns/office/1.2/meta/pkg#File"/> + <range rdf:resource="http://www.w3.org/2001/XMLSchema-datatypes#string"/> + <label xml:lang="en">the MIME type</label> + <comment xml:lang="en">A string representing the MIME media type of a file (see RFC4288).</comment> +</owl:DatatypeProperty> + +<owl:Class rdf:about="http://docs.oasis-open.org/ns/office/1.2/meta/pkg#Element"> + <label xml:lang="en">OpenDocument Package XML Element</label> +</owl:Class> + +</rdf:RDF> |