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 /schema/odf1.0 | |
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
Diffstat (limited to 'schema/odf1.0')
-rw-r--r-- | schema/odf1.0/OpenDocument-manifest-schema-v1.0-os.rng | 111 | ||||
-rw-r--r-- | schema/odf1.0/OpenDocument-schema-v1.0-os.rng | 17666 | ||||
-rw-r--r-- | schema/odf1.0/OpenDocument-strict-schema-v1.0-os.rng | 61 |
3 files changed, 17838 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> |