# Open Document Format for Office Applications (OpenDocument) Version 1.2
# OASIS Standard, 29 September 2011
# Relax-NG Schema
# Source: http://docs.oasis-open.org/office/v1.2/os/
# Copyright (c) OASIS Open 2002-2011. All Rights Reserved.
# 
# All capitalized terms in the following text have the meanings assigned to them
# in the OASIS Intellectual Property Rights Policy (the "OASIS IPR Policy"). The
# full Policy may be found at the OASIS website.
# 
# This document and translations of it may be copied and furnished to others, and
# derivative works that comment on or otherwise explain it or assist in its
# implementation may be prepared, copied, published, and distributed, in whole or
# in part, without restriction of any kind, provided that the above copyright
# notice and this section are included on all such copies and derivative works.
# However, this document itself may not be modified in any way, including by
# removing the copyright notice or references to OASIS, except as needed for the
# purpose of developing any document or deliverable produced by an OASIS
# Technical Committee (in which case the rules applicable to copyrights, as set
# forth in the OASIS IPR Policy, must be followed) or as required to translate it
# into languages other than English.
# 
# The limited permissions granted above are perpetual and will not be revoked by
# OASIS or its successors or assigns.
# 
# This document and the information contained herein is provided on an "AS IS"
# basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT
# LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT
# INFRINGE ANY OWNERSHIP RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR
# FITNESS FOR A PARTICULAR PURPOSE. 

namespace anim = "urn:oasis:names:tc:opendocument:xmlns:animation:1.0"
namespace chart = "urn:oasis:names:tc:opendocument:xmlns:chart:1.0"
namespace config = "urn:oasis:names:tc:opendocument:xmlns:config:1.0"
namespace db = "urn:oasis:names:tc:opendocument:xmlns:database:1.0"
namespace dc = "http://purl.org/dc/elements/1.1/"
namespace dr3d = "urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0"
namespace draw = "urn:oasis:names:tc:opendocument:xmlns:drawing:1.0"
namespace fo =
  "urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0"
namespace form = "urn:oasis:names:tc:opendocument:xmlns:form:1.0"
namespace grddl = "http://www.w3.org/2003/g/data-view#"
namespace math = "http://www.w3.org/1998/Math/MathML"
namespace meta = "urn:oasis:names:tc:opendocument:xmlns:meta:1.0"
namespace number = "urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0"
namespace office = "urn:oasis:names:tc:opendocument:xmlns:office:1.0"
namespace presentation =
  "urn:oasis:names:tc:opendocument:xmlns:presentation:1.0"
namespace script = "urn:oasis:names:tc:opendocument:xmlns:script:1.0"
namespace smil =
  "urn:oasis:names:tc:opendocument:xmlns:smil-compatible:1.0"
namespace style = "urn:oasis:names:tc:opendocument:xmlns:style:1.0"
namespace svg =
  "urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0"
namespace table = "urn:oasis:names:tc:opendocument:xmlns:table:1.0"
namespace text = "urn:oasis:names:tc:opendocument:xmlns:text:1.0"
namespace xforms = "http://www.w3.org/2002/xforms"
namespace xhtml = "http://www.w3.org/1999/xhtml"
namespace xlink = "http://www.w3.org/1999/xlink"

office-process-content = attribute office:process-content { boolean }?
office-document-attrs = attribute office:mimetype { \string }
office-drawing-attlist = empty
office-drawing-content-prelude = text-decls, table-decls
office-drawing-content-main = draw-page*
office-drawing-content-epilogue = table-functions
office-presentation-attlist = empty
office-presentation-content-prelude =
  text-decls, table-decls, presentation-decls
office-presentation-content-main = draw-page*
office-presentation-content-epilogue =
  presentation-settings, table-functions
office-spreadsheet-content-prelude =
  table-tracked-changes?, text-decls, table-decls
office-spreadsheet-content-main = table-table*
office-spreadsheet-content-epilogue = table-functions
table-functions =
  table-named-expressions?,
  table-database-ranges?,
  table-data-pilot-tables?,
  table-consolidation?,
  table-dde-links?
office-chart-attlist = empty
office-chart-content-prelude = text-decls, table-decls
office-chart-content-main = chart-chart
office-chart-content-epilogue = table-functions
office-image-attlist = empty
office-image-content-prelude = empty
office-image-content-main = draw-frame
office-image-content-epilogue = empty
office-settings = element office:settings { config-config-item-set+ }?
config-config-item-set =
  element config:config-item-set {
    config-config-item-set-attlist, config-items
  }
config-items =
  (config-config-item
   | config-config-item-set
   | config-config-item-map-named
   | config-config-item-map-indexed)+
config-config-item-set-attlist = attribute config:name { \string }
config-config-item =
  element config:config-item { config-config-item-attlist, text }
config-config-item-attlist =
  attribute config:name { \string }
  & attribute config:type {
      "boolean"
      | "short"
      | "int"
      | "long"
      | "double"
      | "string"
      | "datetime"
      | "base64Binary"
    }
config-config-item-map-indexed =
  element config:config-item-map-indexed {
    config-config-item-map-indexed-attlist,
    config-config-item-map-entry+
  }
config-config-item-map-indexed-attlist =
  attribute config:name { \string }
config-config-item-map-entry =
  element config:config-item-map-entry {
    config-config-item-map-entry-attlist, config-items
  }
config-config-item-map-entry-attlist =
  attribute config:name { \string }?
config-config-item-map-named =
  element config:config-item-map-named {
    config-config-item-map-named-attlist, config-config-item-map-entry+
  }
config-config-item-map-named-attlist = attribute config:name { \string }







text-tracked-changes =
  element text:tracked-changes {
    text-tracked-changes-attr, text-changed-region*
  }?
text-tracked-changes-attr = attribute text:track-changes { boolean }?
text-changed-region =
  element text:changed-region {
    text-changed-region-attr, text-changed-region-content
  }
text-changed-region-attr =
  attribute xml:id { ID },
  attribute text:id { NCName }?
text-changed-region-content =
  element text:insertion { office-change-info }
  | element text:deletion { office-change-info, text-content* }
  | element text:format-change { office-change-info }
change-marks =
  element text:change { change-mark-attr }
  | element text:change-start { change-mark-attr }
  | element text:change-end { change-mark-attr }
change-mark-attr = attribute text:change-id { IDREF }
text-tab-attr = attribute text:tab-ref { nonNegativeInteger }?
text-bookmark = element text:bookmark { text-bookmark-attlist, empty }
text-bookmark-start =
  element text:bookmark-start { text-bookmark-start-attlist, empty }
text-bookmark-end =
  element text:bookmark-end { text-bookmark-end-attlist, empty }
text-bookmark-attlist =
  attribute text:name { \string }
  & attribute xml:id { ID }?
text-bookmark-start-attlist =
  attribute text:name { \string }
  & attribute xml:id { ID }?
  & common-in-content-meta-attlist?
text-bookmark-end-attlist = attribute text:name { \string }
text-note-class = attribute text:note-class { "footnote" | "endnote" }
text-date-attlist =
  (common-field-fixed-attlist & common-field-data-style-name-attlist)
  & attribute text:date-value { dateOrDateTime }?
  & attribute text:date-adjust { duration }?
text-time-attlist =
  (common-field-fixed-attlist & common-field-data-style-name-attlist)
  & attribute text:time-value { timeOrDateTime }?
  & attribute text:time-adjust { duration }?
text-page-number-attlist =
  (common-field-num-format-attlist & common-field-fixed-attlist)
  & attribute text:page-adjust { integer }?
  & attribute text:select-page { "previous" | "current" | "next" }?
text-page-continuation-attlist =
  attribute text:select-page { "previous" | "next" }
  & attribute text:string-value { \string }?
text-chapter-attlist =
  attribute text:display {
    "name"
    | "number"
    | "number-and-name"
    | "plain-number-and-name"
    | "plain-number"
  }
  & attribute text:outline-level { nonNegativeInteger }
text-file-name-attlist =
  attribute text:display {
    "full" | "path" | "name" | "name-and-extension"
  }?
  & common-field-fixed-attlist
text-template-name-attlist =
  attribute text:display {
    "full" | "path" | "name" | "name-and-extension" | "area" | "title"
  }?
text-variable-decl =
  element text:variable-decl {
    common-field-name-attlist, common-value-type-attlist
  }
text-user-field-decl =
  element text:user-field-decl {
    common-field-name-attlist,
    common-field-formula-attlist?,
    common-value-and-type-attlist
  }
text-sequence-decl =
  element text:sequence-decl { text-sequence-decl-attlist }
text-sequence-decl-attlist =
  common-field-name-attlist
  & attribute text:display-outline-level { nonNegativeInteger }
  & attribute text:separation-character { character }?
text-sequence-ref-name = attribute text:ref-name { \string }?
common-field-database-table =
  common-field-database-table-attlist, common-field-database-name
common-field-database-name =
  attribute text:database-name { \string }?
  | form-connection-resource
common-field-database-table-attlist =
  attribute text:table-name { \string }
  & attribute text:table-type { "table" | "query" | "command" }?
text-database-display-attlist =
  common-field-database-table
  & common-field-data-style-name-attlist
  & attribute text:column-name { \string }
text-database-next-attlist =
  common-field-database-table
  & attribute text:condition { \string }?
text-database-row-select-attlist =
  common-field-database-table
  & attribute text:condition { \string }?
  & attribute text:row-number { nonNegativeInteger }?
text-set-page-variable-attlist =
  attribute text:active { boolean }?
  & attribute text:page-adjust { integer }?
text-get-page-variable-attlist = common-field-num-format-attlist
text-placeholder-attlist =
  attribute text:placeholder-type {
    "text" | "table" | "text-box" | "image" | "object"
  }
  & common-field-description-attlist
text-conditional-text-attlist =
  attribute text:condition { \string }
  & attribute text:string-value-if-true { \string }
  & attribute text:string-value-if-false { \string }
  & attribute text:current-value { boolean }?
text-hidden-text-attlist =
  attribute text:condition { \string }
  & attribute text:string-value { \string }
  & attribute text:is-hidden { boolean }?
text-common-ref-content =
  text
  & attribute text:ref-name { \string }?
text-bookmark-ref-content =
  attribute text:reference-format {
    common-ref-format-values
    | "number-no-superior"
    | "number-all-superior"
    | "number"
  }?
text-note-ref-content =
  attribute text:reference-format { common-ref-format-values }?
  & text-note-class
text-sequence-ref-content =
  attribute text:reference-format {
    common-ref-format-values
    | "category-and-value"
    | "caption"
    | "value"
  }?
common-ref-format-values = "page" | "chapter" | "direction" | "text"
text-hidden-paragraph-attlist =
  attribute text:condition { \string }
  & attribute text:is-hidden { boolean }?
text-meta-field-attlist = attribute xml:id { ID } & common-field-data-style-name-attlist
common-value-type-attlist = attribute office:value-type { valueType }
common-value-and-type-attlist =
  (attribute office:value-type { "float" },
   attribute office:value { double })
  | (attribute office:value-type { "percentage" },
     attribute office:value { double })
  | (attribute office:value-type { "currency" },
     attribute office:value { double },
     attribute office:currency { \string }?)
  | (attribute office:value-type { "date" },
     attribute office:date-value { dateOrDateTime })
  | (attribute office:value-type { "time" },
     attribute office:time-value { duration })
  | (attribute office:value-type { "boolean" },
     attribute office:boolean-value { boolean })
  | (attribute office:value-type { "string" },
     attribute office:string-value { \string }?)
common-field-fixed-attlist = attribute text:fixed { boolean }?
common-field-name-attlist = attribute text:name { variableName }
common-field-description-attlist =
  attribute text:description { \string }?
common-field-display-value-none-attlist =
  attribute text:display { "value" | "none" }?
common-field-display-value-formula-none-attlist =
  attribute text:display { "value" | "formula" | "none" }?
common-field-display-value-formula-attlist =
  attribute text:display { "value" | "formula" }?
common-field-formula-attlist = attribute text:formula { \string }?
common-field-data-style-name-attlist =
  attribute style:data-style-name { styleNameRef }?
common-field-num-format-attlist = common-num-format-attlist?
text-toc-mark-start-attrs = text-id, text-outline-level
text-outline-level = attribute text:outline-level { positiveInteger }?
text-id = attribute text:id { \string }
text-index-name = attribute text:index-name { \string }
text-alphabetical-index-mark-attrs =
  attribute text:key1 { \string }?
  & attribute text:key2 { \string }?
  & attribute text:string-value-phonetic { \string }?
  & attribute text:key1-phonetic { \string }?
  & attribute text:key2-phonetic { \string }?
  & attribute text:main-entry { boolean }?
text-bibliography-types =
  "article"
  | "book"
  | "booklet"
  | "conference"
  | "custom1"
  | "custom2"
  | "custom3"
  | "custom4"
  | "custom5"
  | "email"
  | "inbook"
  | "incollection"
  | "inproceedings"
  | "journal"
  | "manual"
  | "mastersthesis"
  | "misc"
  | "phdthesis"
  | "proceedings"
  | "techreport"
  | "unpublished"
  | "www"
cellAddress =
  xsd:string {
    pattern = "($?([^\. ']+|'([^']|'')+'))?\.$?[A-Z]+$?[0-9]+"
  }
cellRangeAddress =
  xsd:string {
    pattern =
      "($?([^\. ']+|'([^']|'')+'))?\.$?[A-Z]+$?[0-9]+(:($?([^\. ']+|'([^']|'')+'))?\.$?[A-Z]+$?[0-9]+)?"
  }
  | xsd:string {
      pattern =
        "($?([^\. ']+|'([^']|'')+'))?\.$?[0-9]+:($?([^\. ']+|'([^']|'')+'))?\.$?[0-9]+"
    }
  | xsd:string {
      pattern =
        "($?([^\. ']+|'([^']|'')+'))?\.$?[A-Z]+:($?([^\. ']+|'([^']|'')+'))?\.$?[A-Z]+"
    }
cellRangeAddressList =
  xsd:string
  >> dc:description [
       'Value is a space separated list of "cellRangeAddress" patterns'
     ]
table-table-source =
  element table:table-source {
    table-table-source-attlist, table-linked-source-attlist, empty
  }
table-table-source-attlist =
  attribute table:mode { "copy-all" | "copy-results-only" }?
  & attribute table:table-name { \string }?
table-linked-source-attlist =
  attribute xlink:type { "simple" }
  & attribute xlink:href { anyIRI }
  & attribute xlink:actuate { "onRequest" }?
  & attribute table:filter-name { \string }?
  & attribute table:filter-options { \string }?
  & attribute table:refresh-delay { duration }?
table-scenario =
  element table:scenario { table-scenario-attlist, empty }
table-scenario-attlist =
  attribute table:scenario-ranges { cellRangeAddressList }
  & attribute table:is-active { boolean }
  & attribute table:display-border { boolean }?
  & attribute table:border-color { color }?
  & attribute table:copy-back { boolean }?
  & attribute table:copy-styles { boolean }?
  & attribute table:copy-formulas { boolean }?
  & attribute table:comment { \string }?
  & attribute table:protected { boolean }?
table-shapes = element table:shapes { shape+ }
table-cell-range-source =
  element table:cell-range-source {
    table-table-cell-range-source-attlist,
    table-linked-source-attlist,
    empty
  }
table-table-cell-range-source-attlist =
  attribute table:name { \string }
  & attribute table:last-column-spanned { positiveInteger }
  & attribute table:last-row-spanned { positiveInteger }
table-detective =
  element table:detective { table-highlighted-range*, table-operation* }
table-operation =
  element table:operation { table-operation-attlist, empty }
table-operation-attlist =
  attribute table:name {
    "trace-dependents"
    | "remove-dependents"
    | "trace-precedents"
    | "remove-precedents"
    | "trace-errors"
  }
  & attribute table:index { nonNegativeInteger }
table-highlighted-range =
  element table:highlighted-range {
    (table-highlighted-range-attlist
     | table-highlighted-range-attlist-invalid),
    empty
  }
table-highlighted-range-attlist =
  attribute table:cell-range-address { cellRangeAddress }?
  & attribute table:direction {
      "from-another-table" | "to-another-table" | "from-same-table"
    }
  & attribute table:contains-error { boolean }?
table-highlighted-range-attlist-invalid =
  attribute table:marked-invalid { boolean }
office-spreadsheet-attlist =
  attribute table:structure-protected { boolean }?,
  attribute table:protection-key { \string }?,
  attribute table:protection-key-digest-algorithm { anyIRI }?
table-calculation-settings =
  element table:calculation-settings {
    table-calculation-setting-attlist,
    table-null-date?,
    table-iteration?
  }
table-calculation-setting-attlist =
  attribute table:case-sensitive { boolean }?
  & attribute table:precision-as-shown { boolean }?
  & attribute table:search-criteria-must-apply-to-whole-cell {
      boolean
    }?
  & attribute table:automatic-find-labels { boolean }?
  & attribute table:use-regular-expressions { boolean }?
  & attribute table:use-wildcards { boolean }?
  & attribute table:null-year { positiveInteger }?
table-null-date =
  element table:null-date {
    attribute table:value-type { "date" }?,
    attribute table:date-value { date }?,
    empty
  }
table-iteration =
  element table:iteration {
    attribute table:status { "enable" | "disable" }?,
    attribute table:steps { positiveInteger }?,
    attribute table:maximum-difference { double }?,
    empty
  }
table-content-validations =
  element table:content-validations { table-content-validation+ }
table-content-validation =
  element table:content-validation {
    table-validation-attlist,
    table-help-message?,
    (table-error-message | (table-error-macro, office-event-listeners))?
  }
table-validation-attlist =
  attribute table:name { \string }
  & attribute table:condition { \string }?
  & attribute table:base-cell-address { cellAddress }?
  & attribute table:allow-empty-cell { boolean }?
  & attribute table:display-list {
      "none" | "unsorted" | "sort-ascending"
    }?
table-help-message =
  element table:help-message {
    attribute table:title { \string }?,
    attribute table:display { boolean }?,
    text-p*
  }
table-error-message =
  element table:error-message {
    attribute table:title { \string }?,
    attribute table:display { boolean }?,
    attribute table:message-type {
      "stop" | "warning" | "information"
    }?,
    text-p*
  }
table-error-macro =
  element table:error-macro {
    attribute table:execute { boolean }?
  }
table-label-ranges = element table:label-ranges { table-label-range* }
table-label-range =
  element table:label-range { table-label-range-attlist, empty }
table-label-range-attlist =
  attribute table:label-cell-range-address { cellRangeAddress }
  & attribute table:data-cell-range-address { cellRangeAddress }
  & attribute table:orientation { "column" | "row" }
table-named-expressions =
  element table:named-expressions {
    (table-named-range | table-named-expression)*
  }
table-named-range =
  element table:named-range { table-named-range-attlist, empty }
table-named-range-attlist =
  attribute table:name { \string },
  attribute table:cell-range-address { cellRangeAddress },
  attribute table:base-cell-address { cellAddress }?,
  attribute table:range-usable-as {
    "none"
    | list {
        ("print-range" | "filter" | "repeat-row" | "repeat-column")+
      }
  }?
table-named-expression =
  element table:named-expression {
    table-named-expression-attlist, empty
  }
table-named-expression-attlist =
  attribute table:name { \string },
  attribute table:expression { \string },
  attribute table:base-cell-address { cellAddress }?
table-database-ranges =
  element table:database-ranges { table-database-range* }
table-database-range =
  element table:database-range {
    table-database-range-attlist,
    (table-database-source-sql
     | table-database-source-table
     | table-database-source-query)?,
    table-filter?,
    table-sort?,
    table-subtotal-rules?
  }
table-database-range-attlist =
  attribute table:name { \string }?
  & attribute table:is-selection { boolean }?
  & attribute table:on-update-keep-styles { boolean }?
  & attribute table:on-update-keep-size { boolean }?
  & attribute table:has-persistent-data { boolean }?
  & attribute table:orientation { "column" | "row" }?
  & attribute table:contains-header { boolean }?
  & attribute table:display-filter-buttons { boolean }?
  & attribute table:target-range-address { cellRangeAddress }
  & attribute table:refresh-delay { boolean }?
table-database-source-sql =
  element table:database-source-sql {
    table-database-source-sql-attlist, empty
  }
table-database-source-sql-attlist =
  attribute table:database-name { \string }
  & attribute table:sql-statement { \string }
  & attribute table:parse-sql-statement { boolean }?
table-database-source-query =
  element table:database-source-table {
    table-database-source-table-attlist, empty
  }
table-database-source-table-attlist =
  attribute table:database-name { \string }
  & attribute table:database-table-name { \string }
table-database-source-table =
  element table:database-source-query {
    table-database-source-query-attlist, empty
  }
table-database-source-query-attlist =
  attribute table:database-name { \string }
  & attribute table:query-name { \string }
table-sort = element table:sort { table-sort-attlist, table-sort-by+ }
table-sort-attlist =
  attribute table:bind-styles-to-content { boolean }?
  & attribute table:target-range-address { cellRangeAddress }?
  & attribute table:case-sensitive { boolean }?
  & attribute table:language { languageCode }?
  & attribute table:country { countryCode }?
  & attribute table:script { scriptCode }?
  & attribute table:rfc-language-tag { language }?
  & attribute table:algorithm { \string }?
  & attribute table:embedded-number-behavior {
      "alpha-numeric" | "integer" | "double"
    }?
table-sort-by = element table:sort-by { table-sort-by-attlist, empty }
table-sort-by-attlist =
  attribute table:field-number { nonNegativeInteger }
  & attribute table:data-type {
      "text" | "number" | "automatic" | \string
    }?
  & attribute table:order { "ascending" | "descending" }?
table-subtotal-rules =
  element table:subtotal-rules {
    table-subtotal-rules-attlist,
    table-sort-groups?,
    table-subtotal-rule*
  }
table-subtotal-rules-attlist =
  attribute table:bind-styles-to-content { boolean }?
  & attribute table:case-sensitive { boolean }?
  & attribute table:page-breaks-on-group-change { boolean }?
table-sort-groups =
  element table:sort-groups { table-sort-groups-attlist, empty }
table-sort-groups-attlist =
  attribute table:data-type {
    "text" | "number" | "automatic" | \string
  }?
  & attribute table:order { "ascending" | "descending" }?
table-subtotal-rule =
  element table:subtotal-rule {
    table-subtotal-rule-attlist, table-subtotal-field*
  }
table-subtotal-rule-attlist =
  attribute table:group-by-field-number { nonNegativeInteger }
table-subtotal-field =
  element table:subtotal-field { table-subtotal-field-attlist, empty }
table-subtotal-field-attlist =
  attribute table:field-number { nonNegativeInteger }
  & attribute table:function {
      "average"
      | "count"
      | "countnums"
      | "max"
      | "min"
      | "product"
      | "stdev"
      | "stdevp"
      | "sum"
      | "var"
      | "varp"
      | \string
    }
table-filter =
  element table:filter {
    table-filter-attlist,
    (table-filter-condition | table-filter-and | table-filter-or)
  }
table-filter-attlist =
  attribute table:target-range-address { cellRangeAddress }?
  & attribute table:condition-source { "self" | "cell-range" }?
  & attribute table:condition-source-range-address { cellRangeAddress }?
  & attribute table:display-duplicates { boolean }?
table-filter-and =
  element table:filter-and {
    (table-filter-or | table-filter-condition)+
  }
table-filter-or =
  element table:filter-or {
    (table-filter-and | table-filter-condition)+
  }
table-filter-condition =
  element table:filter-condition {
    table-filter-condition-attlist, table-filter-set-item*
  }
table-filter-condition-attlist =
  attribute table:field-number { nonNegativeInteger }
  & attribute table:value { \string | double }
  & attribute table:operator { \string }
  & attribute table:case-sensitive { \string }?
  & attribute table:data-type { "text" | "number" }?
table-filter-set-item =
  element table:filter-set-item {
    attribute table:value { \string },
    empty
  }
table-data-pilot-tables =
  element table:data-pilot-tables { table-data-pilot-table* }
table-data-pilot-table =
  element table:data-pilot-table {
    table-data-pilot-table-attlist,
    (table-database-source-sql
     | table-database-source-table
     | table-database-source-query
     | table-source-service
     | table-source-cell-range)?,
    table-data-pilot-field+
  }
table-data-pilot-table-attlist =
  attribute table:name { \string }
  & attribute table:application-data { \string }?
  & attribute table:grand-total { "none" | "row" | "column" | "both" }?
  & attribute table:ignore-empty-rows { boolean }?
  & attribute table:identify-categories { boolean }?
  & attribute table:target-range-address { cellRangeAddress }
  & attribute table:buttons { cellRangeAddressList }?
  & attribute table:show-filter-button { boolean }?
  & attribute table:drill-down-on-double-click { boolean }?
table-source-cell-range =
  element table:source-cell-range {
    table-source-cell-range-attlist, table-filter?
  }
table-source-cell-range-attlist =
  attribute table:cell-range-address { cellRangeAddress }
table-source-service =
  element table:source-service { table-source-service-attlist, empty }
table-source-service-attlist =
  attribute table:name { \string }
  & attribute table:source-name { \string }
  & attribute table:object-name { \string }
  & attribute table:user-name { \string }?
  & attribute table:password { \string }?
table-data-pilot-field =
  element table:data-pilot-field {
    table-data-pilot-field-attlist,
    table-data-pilot-level?,
    table-data-pilot-field-reference?,
    table-data-pilot-groups?
  }
table-data-pilot-field-attlist =
  attribute table:source-field-name { \string }
  & (attribute table:orientation {
       "row" | "column" | "data" | "hidden"
     }
     | (attribute table:orientation { "page" },
        attribute table:selected-page { \string }))
  & attribute table:is-data-layout-field { \string }?
  & attribute table:function {
      "auto"
      | "average"
      | "count"
      | "countnums"
      | "max"
      | "min"
      | "product"
      | "stdev"
      | "stdevp"
      | "sum"
      | "var"
      | "varp"
      | \string
    }?
  & attribute table:used-hierarchy { integer }?
table-data-pilot-level =
  element table:data-pilot-level {
    table-data-pilot-level-attlist,
    table-data-pilot-subtotals?,
    table-data-pilot-members?,
    table-data-pilot-display-info?,
    table-data-pilot-sort-info?,
    table-data-pilot-layout-info?
  }
table-data-pilot-level-attlist = attribute table:show-empty { boolean }?
table-data-pilot-subtotals =
  element table:data-pilot-subtotals { table-data-pilot-subtotal* }
table-data-pilot-subtotal =
  element table:data-pilot-subtotal {
    table-data-pilot-subtotal-attlist, empty
  }
table-data-pilot-subtotal-attlist =
  attribute table:function {
    "auto"
    | "average"
    | "count"
    | "countnums"
    | "max"
    | "min"
    | "product"
    | "stdev"
    | "stdevp"
    | "sum"
    | "var"
    | "varp"
    | \string
  }
table-data-pilot-members =
  element table:data-pilot-members { table-data-pilot-member* }
table-data-pilot-member =
  element table:data-pilot-member {
    table-data-pilot-member-attlist, empty
  }
table-data-pilot-member-attlist =
  attribute table:name { \string }
  & attribute table:display { boolean }?
  & attribute table:show-details { boolean }?
table-data-pilot-display-info =
  element table:data-pilot-display-info {
    table-data-pilot-display-info-attlist, empty
  }
table-data-pilot-display-info-attlist =
  attribute table:enabled { boolean }
  & attribute table:data-field { \string }
  & attribute table:member-count { nonNegativeInteger }
  & attribute table:display-member-mode { "from-top" | "from-bottom" }
table-data-pilot-sort-info =
  element table:data-pilot-sort-info {
    table-data-pilot-sort-info-attlist, empty
  }
table-data-pilot-sort-info-attlist =
  ((attribute table:sort-mode { "data" },
    attribute table:data-field { \string })
   | attribute table:sort-mode { "none" | "manual" | "name" })
  & attribute table:order { "ascending" | "descending" }
table-data-pilot-layout-info =
  element table:data-pilot-layout-info {
    table-data-pilot-layout-info-attlist, empty
  }
table-data-pilot-layout-info-attlist =
  attribute table:layout-mode {
    "tabular-layout"
    | "outline-subtotals-top"
    | "outline-subtotals-bottom"
  }
  & attribute table:add-empty-lines { boolean }
table-data-pilot-field-reference =
  element table:data-pilot-field-reference {
    table-data-pilot-field-reference-attlist
  }
table-data-pilot-field-reference-attlist =
  attribute table:field-name { \string }
  & ((attribute table:member-type { "named" },
      attribute table:member-name { \string })
     | attribute table:member-type { "previous" | "next" })
  & attribute table:type {
      "none"
      | "member-difference"
      | "member-percentage"
      | "member-percentage-difference"
      | "running-total"
      | "row-percentage"
      | "column-percentage"
      | "total-percentage"
      | "index"
    }
table-data-pilot-groups =
  element table:data-pilot-groups {
    table-data-pilot-groups-attlist, table-data-pilot-group+
  }
table-data-pilot-groups-attlist =
  attribute table:source-field-name { \string }
  & (attribute table:date-start { dateOrDateTime | "auto" }
     | attribute table:start { double | "auto" })
  & (attribute table:date-end { dateOrDateTime | "auto" }
     | attribute table:end { double | "auto" })
  & attribute table:step { double }
  & attribute table:grouped-by {
      "seconds"
      | "minutes"
      | "hours"
      | "days"
      | "months"
      | "quarters"
      | "years"
    }
table-data-pilot-group =
  element table:data-pilot-group {
    table-data-pilot-group-attlist, table-data-pilot-group-member+
  }
table-data-pilot-group-attlist = attribute table:name { \string }
table-data-pilot-group-member =
  element table:data-pilot-group-member {
    table-data-pilot-group-member-attlist
  }
table-data-pilot-group-member-attlist = attribute table:name { \string }
table-consolidation =
  element table:consolidation { table-consolidation-attlist, empty }
table-consolidation-attlist =
  attribute table:function {
    "average"
    | "count"
    | "countnums"
    | "max"
    | "min"
    | "product"
    | "stdev"
    | "stdevp"
    | "sum"
    | "var"
    | "varp"
    | \string
  }
  & attribute table:source-cell-range-addresses { cellRangeAddressList }
  & attribute table:target-cell-address { cellAddress }
  & attribute table:use-labels { "none" | "row" | "column" | "both" }?
  & attribute table:link-to-source-data { boolean }?
table-dde-links = element table:dde-links { table-dde-link+ }
table-tracked-changes =
  element table:tracked-changes {
    table-tracked-changes-attlist,
    (table-cell-content-change
     | table-insertion
     | table-deletion
     | table-movement)*
  }
table-tracked-changes-attlist =
  attribute table:track-changes { boolean }?
table-insertion =
  element table:insertion {
    table-insertion-attlist,
    common-table-change-attlist,
    office-change-info,
    table-dependencies?,
    table-deletions?
  }
table-insertion-attlist =
  attribute table:type { "row" | "column" | "table" }
  & attribute table:position { integer }
  & attribute table:count { positiveInteger }?
  & attribute table:table { integer }?
table-dependencies = element table:dependencies { table-dependency+ }
table-dependency =
  element table:dependency {
    attribute table:id { \string },
    empty
  }
table-deletions =
  element table:deletions {
    (table-cell-content-deletion | table-change-deletion)+
  }
table-cell-content-deletion =
  element table:cell-content-deletion {
    attribute table:id { \string }?,
    table-cell-address?,
    table-change-track-table-cell?
  }
table-change-deletion =
  element table:change-deletion {
    attribute table:id { \string }?,
    empty
  }
table-deletion =
  element table:deletion {
    table-deletion-attlist,
    common-table-change-attlist,
    office-change-info,
    table-dependencies?,
    table-deletions?,
    table-cut-offs?
  }
table-deletion-attlist =
  attribute table:type { "row" | "column" | "table" }
  & attribute table:position { integer }
  & attribute table:table { integer }?
  & attribute table:multi-deletion-spanned { integer }?
table-cut-offs =
  element table:cut-offs {
    table-movement-cut-off+
    | (table-insertion-cut-off, table-movement-cut-off*)
  }
table-insertion-cut-off =
  element table:insertion-cut-off {
    table-insertion-cut-off-attlist, empty
  }
table-insertion-cut-off-attlist =
  attribute table:id { \string }
  & attribute table:position { integer }
table-movement-cut-off =
  element table:movement-cut-off {
    table-movement-cut-off-attlist, empty
  }
table-movement-cut-off-attlist =
  attribute table:position { integer }
  | (attribute table:start-position { integer },
     attribute table:end-position { integer })
table-movement =
  element table:movement {
    common-table-change-attlist,
    table-source-range-address,
    table-target-range-address,
    office-change-info,
    table-dependencies?,
    table-deletions?
  }
table-source-range-address =
  element table:source-range-address {
    common-table-range-attlist, empty
  }
table-target-range-address =
  element table:target-range-address {
    common-table-range-attlist, empty
  }
common-table-range-attlist =
  common-table-cell-address-attlist
  | common-table-cell-range-address-attlist
common-table-cell-address-attlist =
  attribute table:column { integer },
  attribute table:row { integer },
  attribute table:table { integer }
common-table-cell-range-address-attlist =
  attribute table:start-column { integer },
  attribute table:start-row { integer },
  attribute table:start-table { integer },
  attribute table:end-column { integer },
  attribute table:end-row { integer },
  attribute table:end-table { integer }
table-change-track-table-cell =
  element table:change-track-table-cell {
    table-change-track-table-cell-attlist, text-p*
  }
table-change-track-table-cell-attlist =
  attribute table:cell-address { cellAddress }?
  & attribute table:matrix-covered { boolean }?
  & attribute table:formula { \string }?
  & attribute table:number-matrix-columns-spanned { positiveInteger }?
  & attribute table:number-matrix-rows-spanned { positiveInteger }?
  & common-value-and-type-attlist?
table-cell-content-change =
  element table:cell-content-change {
    common-table-change-attlist,
    table-cell-address,
    office-change-info,
    table-dependencies?,
    table-deletions?,
    table-previous
  }
table-cell-address =
  element table:cell-address {
    common-table-cell-address-attlist, empty
  }
table-previous =
  element table:previous {
    attribute table:id { \string }?,
    table-change-track-table-cell
  }
common-table-change-attlist =
  attribute table:id { \string }
  & attribute table:acceptance-state {
      "accepted" | "rejected" | "pending"
    }?
  & attribute table:rejecting-change-id { \string }?
style-handout-master =
  element style:handout-master {
    common-presentation-header-footer-attlist,
    style-handout-master-attlist,
    shape*
  }
style-handout-master-attlist =
  attribute presentation:presentation-page-layout-name { styleNameRef }?
  & attribute style:page-layout-name { styleNameRef }
  & attribute draw:style-name { styleNameRef }?
draw-layer-set = element draw:layer-set { draw-layer* }
draw-layer =
  element draw:layer { draw-layer-attlist, svg-title?, svg-desc? }
draw-layer-attlist =
  attribute draw:name { \string }
  & attribute draw:protected { boolean }?
  & attribute draw:display { "always" | "screen" | "printer" | "none" }?
draw-page =
  element draw:page {
    common-presentation-header-footer-attlist,
    draw-page-attlist,
    svg-title?,
    svg-desc?,
    draw-layer-set?,
    office-forms?,
    shape*,
    (presentation-animations | animation-element)?,
    presentation-notes?
  }
draw-page-attlist =
  attribute draw:name { \string }?
  & attribute draw:style-name { styleNameRef }?
  & attribute draw:master-page-name { styleNameRef }
  & attribute presentation:presentation-page-layout-name {
      styleNameRef
    }?
  & (attribute xml:id { ID },
     attribute draw:id { NCName }?)?
  & attribute draw:nav-order { IDREFS }?
common-presentation-header-footer-attlist =
  attribute presentation:use-header-name { \string }?
  & attribute presentation:use-footer-name { \string }?
  & attribute presentation:use-date-time-name { \string }?
shape = shape-instance | draw-a
shape-instance =
  draw-rect
  | draw-line
  | draw-polyline
  | draw-polygon
  | draw-regular-polygon
  | draw-path
  | draw-circle
  | draw-ellipse
  | draw-g
  | draw-page-thumbnail
  | draw-frame
  | draw-measure
  | draw-caption
  | draw-connector
  | draw-control
  | dr3d-scene
  | draw-custom-shape
draw-rect =
  element draw:rect {
    draw-rect-attlist,
    common-draw-position-attlist,
    common-draw-size-attlist,
    common-draw-shape-with-text-and-styles-attlist,
    common-draw-caption-id-attlist,
    svg-title?,
    svg-desc?,
    office-event-listeners?,
    draw-glue-point*,
    draw-text
  }
draw-rect-attlist =
  attribute draw:corner-radius { nonNegativeLength }?
  | (attribute svg:rx { nonNegativeLength }?,
     attribute svg:ry { nonNegativeLength }?)
draw-line =
  element draw:line {
    draw-line-attlist,
    common-draw-shape-with-text-and-styles-attlist,
    common-draw-caption-id-attlist,
    svg-title?,
    svg-desc?,
    office-event-listeners?,
    draw-glue-point*,
    draw-text
  }
draw-line-attlist =
  attribute svg:x1 { coordinate }
  & attribute svg:y1 { coordinate }
  & attribute svg:x2 { coordinate }
  & attribute svg:y2 { coordinate }
draw-polyline =
  element draw:polyline {
    common-draw-points-attlist,
    common-draw-position-attlist,
    common-draw-size-attlist,
    common-draw-viewbox-attlist,
    common-draw-shape-with-text-and-styles-attlist,
    common-draw-caption-id-attlist,
    svg-title?,
    svg-desc?,
    office-event-listeners?,
    draw-glue-point*,
    draw-text
  }
common-draw-points-attlist = attribute draw:points { points }
draw-polygon =
  element draw:polygon {
    common-draw-points-attlist,
    common-draw-position-attlist,
    common-draw-size-attlist,
    common-draw-viewbox-attlist,
    common-draw-shape-with-text-and-styles-attlist,
    common-draw-caption-id-attlist,
    svg-title?,
    svg-desc?,
    office-event-listeners?,
    draw-glue-point*,
    draw-text
  }
draw-regular-polygon =
  element draw:regular-polygon {
    draw-regular-polygon-attlist,
    common-draw-position-attlist,
    common-draw-size-attlist,
    common-draw-shape-with-text-and-styles-attlist,
    common-draw-caption-id-attlist,
    svg-title?,
    svg-desc?,
    office-event-listeners?,
    draw-glue-point*,
    draw-text
  }
draw-regular-polygon-attlist =
  (attribute draw:concave { "false" }
   | (attribute draw:concave { "true" },
      draw-regular-polygon-sharpness-attlist))
  & attribute draw:corners { positiveInteger }
draw-regular-polygon-sharpness-attlist =
  attribute draw:sharpness { percent }
draw-path =
  element draw:path {
    common-draw-path-data-attlist,
    common-draw-position-attlist,
    common-draw-size-attlist,
    common-draw-viewbox-attlist,
    common-draw-shape-with-text-and-styles-attlist,
    common-draw-caption-id-attlist,
    svg-title?,
    svg-desc?,
    office-event-listeners?,
    draw-glue-point*,
    draw-text
  }
common-draw-path-data-attlist = attribute svg:d { pathData }
draw-circle =
  element draw:circle {
    ((draw-circle-attlist, common-draw-circle-ellipse-pos-attlist)
     | (common-draw-position-attlist, common-draw-size-attlist)),
    common-draw-circle-ellipse-attlist,
    common-draw-shape-with-text-and-styles-attlist,
    common-draw-caption-id-attlist,
    svg-title?,
    svg-desc?,
    office-event-listeners?,
    draw-glue-point*,
    draw-text
  }
common-draw-circle-ellipse-pos-attlist =
  attribute svg:cx { coordinate },
  attribute svg:cy { coordinate }
draw-circle-attlist = attribute svg:r { length }
common-draw-circle-ellipse-attlist =
  attribute draw:kind { "full" | "section" | "cut" | "arc" }?
  & attribute draw:start-angle { angle }?
  & attribute draw:end-angle { angle }?
draw-ellipse =
  element draw:ellipse {
    ((draw-ellipse-attlist, common-draw-circle-ellipse-pos-attlist)
     | (common-draw-position-attlist, common-draw-size-attlist)),
    common-draw-circle-ellipse-attlist,
    common-draw-shape-with-text-and-styles-attlist,
    common-draw-caption-id-attlist,
    svg-title?,
    svg-desc?,
    office-event-listeners?,
    draw-glue-point*,
    draw-text
  }
draw-ellipse-attlist =
  attribute svg:rx { length },
  attribute svg:ry { length }
draw-connector =
  element draw:connector {
    draw-connector-attlist,
    common-draw-shape-with-text-and-styles-attlist,
    common-draw-caption-id-attlist,
    common-draw-viewbox-attlist,
    svg-title?,
    svg-desc?,
    office-event-listeners?,
    draw-glue-point*,
    draw-text
  }
draw-connector-attlist =
  attribute draw:type { "standard" | "lines" | "line" | "curve" }?
  & (attribute svg:x1 { coordinate },
     attribute svg:y1 { coordinate })?
  & attribute draw:start-shape { IDREF }?
  & attribute draw:start-glue-point { nonNegativeInteger }?
  & (attribute svg:x2 { coordinate },
     attribute svg:y2 { coordinate })?
  & attribute draw:end-shape { IDREF }?
  & attribute draw:end-glue-point { nonNegativeInteger }?
  & attribute draw:line-skew {
      list { length, (length, length?)? }
    }?
  & attribute svg:d { pathData }?
draw-caption =
  element draw:caption {
    draw-caption-attlist,
    common-draw-position-attlist,
    common-draw-size-attlist,
    common-draw-shape-with-text-and-styles-attlist,
    common-draw-caption-id-attlist,
    svg-title?,
    svg-desc?,
    office-event-listeners?,
    draw-glue-point*,
    draw-text
  }
draw-caption-attlist =
  (attribute draw:caption-point-x { coordinate },
   attribute draw:caption-point-y { coordinate })?
  & attribute draw:corner-radius { nonNegativeLength }?
draw-measure =
  element draw:measure {
    draw-measure-attlist,
    common-draw-shape-with-text-and-styles-attlist,
    common-draw-caption-id-attlist,
    svg-title?,
    svg-desc?,
    office-event-listeners?,
    draw-glue-point*,
    draw-text
  }
draw-measure-attlist =
  attribute svg:x1 { coordinate }
  & attribute svg:y1 { coordinate }
  & attribute svg:x2 { coordinate }
  & attribute svg:y2 { coordinate }
draw-control =
  element draw:control {
    draw-control-attlist,
    common-draw-position-attlist,
    common-draw-size-attlist,
    common-draw-shape-with-text-and-styles-attlist,
    common-draw-caption-id-attlist,
    svg-title?,
    svg-desc?,
    draw-glue-point*
  }
draw-control-attlist = attribute draw:control { IDREF }
draw-page-thumbnail =
  element draw:page-thumbnail {
    draw-page-thumbnail-attlist,
    common-draw-position-attlist,
    common-draw-size-attlist,
    presentation-shape-attlist,
    common-draw-shape-with-styles-attlist,
    common-draw-caption-id-attlist,
    svg-title?,
    svg-desc?
  }
draw-page-thumbnail-attlist =
  attribute draw:page-number { positiveInteger }?
draw-g =
  element draw:g {
    draw-g-attlist,
    common-draw-z-index-attlist,
    common-draw-name-attlist,
    common-draw-id-attlist,
    common-draw-style-name-attlist,
    common-text-spreadsheet-shape-attlist,
    common-draw-caption-id-attlist,
    svg-title?,
    svg-desc?,
    office-event-listeners?,
    draw-glue-point*,
    shape*
  }
draw-g-attlist = attribute svg:y { coordinate }?
common-draw-name-attlist = attribute draw:name { \string }?
common-draw-caption-id-attlist = attribute draw:caption-id { IDREF }?
common-draw-position-attlist =
  attribute svg:x { coordinate }?,
  attribute svg:y { coordinate }?
common-draw-size-attlist =
  attribute svg:width { length }?,
  attribute svg:height { length }?
common-draw-transform-attlist = attribute draw:transform { \string }?
common-draw-viewbox-attlist =
  attribute svg:viewBox {
    list { integer, integer, integer, integer }
  }
common-draw-style-name-attlist =
  (attribute draw:style-name { styleNameRef }?,
   attribute draw:class-names { styleNameRefs }?)
  | (attribute presentation:style-name { styleNameRef }?,
     attribute presentation:class-names { styleNameRefs }?)
common-draw-text-style-name-attlist =
  attribute draw:text-style-name { styleNameRef }?
common-draw-layer-name-attlist = attribute draw:layer { \string }?
common-draw-id-attlist =
  (attribute xml:id { ID },
   attribute draw:id { NCName }?)?
common-draw-z-index-attlist =
  attribute draw:z-index { nonNegativeInteger }?
common-text-spreadsheet-shape-attlist =
  attribute table:end-cell-address { cellAddress }?
  & attribute table:end-x { coordinate }?
  & attribute table:end-y { coordinate }?
  & attribute table:table-background { boolean }?
  & common-text-anchor-attlist
common-text-anchor-attlist =
  attribute text:anchor-type {
    "page" | "frame" | "paragraph" | "char" | "as-char"
  }?
  & attribute text:anchor-page-number { positiveInteger }?
draw-text = (text-p | text-list)*
common-draw-shape-with-styles-attlist =
  common-draw-z-index-attlist,
  common-draw-id-attlist,
  common-draw-layer-name-attlist,
  common-draw-style-name-attlist,
  common-draw-transform-attlist,
  common-draw-name-attlist,
  common-text-spreadsheet-shape-attlist
common-draw-shape-with-text-and-styles-attlist =
  common-draw-shape-with-styles-attlist,
  common-draw-text-style-name-attlist
draw-glue-point =
  element draw:glue-point { draw-glue-point-attlist, empty }
draw-glue-point-attlist =
  attribute draw:id { nonNegativeInteger }
  & attribute svg:x { distance | percent }
  & attribute svg:y { distance | percent }
  & attribute draw:align {
      "top-left"
      | "top"
      | "top-right"
      | "left"
      | "center"
      | "right"
      | "bottom-left"
      | "bottom-right"
    }?
  & attribute draw:escape-direction {
      "auto"
      | "left"
      | "right"
      | "up"
      | "down"
      | "horizontal"
      | "vertical"
    }
svg-title = element svg:title { text }
svg-desc = element svg:desc { text }
draw-frame =
  element draw:frame {
    common-draw-shape-with-text-and-styles-attlist,
    common-draw-position-attlist,
    common-draw-rel-size-attlist,
    common-draw-caption-id-attlist,
    presentation-shape-attlist,
    draw-frame-attlist,
    (draw-text-box
     | draw-image
     | draw-object
     | draw-object-ole
     | draw-applet
     | draw-floating-frame
     | draw-plugin
     | table-table)*,
    office-event-listeners?,
    draw-glue-point*,
    draw-image-map?,
    svg-title?,
    svg-desc?,
    (draw-contour-polygon | draw-contour-path)?
  }
common-draw-rel-size-attlist =
  common-draw-size-attlist,
  attribute style:rel-width { percent | "scale" | "scale-min" }?,
  attribute style:rel-height { percent | "scale" | "scale-min" }?
draw-frame-attlist = attribute draw:copy-of { \string }?
draw-text-box =
  element draw:text-box { draw-text-box-attlist, text-content* }
draw-text-box-attlist =
  attribute draw:chain-next-name { \string }?
  & attribute draw:corner-radius { nonNegativeLength }?
  & attribute fo:min-height { length | percent }?
  & attribute fo:min-width { length | percent }?
  & attribute fo:max-height { length | percent }?
  & attribute fo:max-width { length | percent }?
  & (attribute xml:id { ID },
     attribute text:id { NCName }?)?
draw-image =
  element draw:image {
    draw-image-attlist,
    (common-draw-data-attlist | office-binary-data),
    draw-text
  }
common-draw-data-attlist =
  attribute xlink:type { "simple" },
  attribute xlink:href { anyIRI },
  attribute xlink:show { "embed" }?,
  attribute xlink:actuate { "onLoad" }?
office-binary-data = element office:binary-data { base64Binary }
draw-image-attlist =
  attribute draw:filter-name { \string }?
  & attribute xml:id { ID }?
draw-object =
  element draw:object {
    draw-object-attlist,
    (common-draw-data-attlist | office-document | math-math)
  }
draw-object-ole =
  element draw:object-ole {
    draw-object-ole-attlist,
    (common-draw-data-attlist | office-binary-data)
  }
draw-object-attlist =
  attribute draw:notify-on-update-of-ranges {
    cellRangeAddressList | \string
  }?
  & attribute xml:id { ID }?
draw-object-ole-attlist =
  attribute draw:class-id { \string }?
  & attribute xml:id { ID }?
draw-applet =
  element draw:applet {
    draw-applet-attlist, common-draw-data-attlist?, draw-param*
  }
draw-applet-attlist =
  attribute draw:code { \string }?
  & attribute draw:object { \string }?
  & attribute draw:archive { \string }?
  & attribute draw:may-script { boolean }?
  & attribute xml:id { ID }?
draw-plugin =
  element draw:plugin {
    draw-plugin-attlist, common-draw-data-attlist, draw-param*
  }
draw-plugin-attlist =
  attribute draw:mime-type { \string }?
  & attribute xml:id { ID }?
draw-param = element draw:param { draw-param-attlist, empty }
draw-param-attlist =
  attribute draw:name { \string }?
  & attribute draw:value { \string }?
draw-floating-frame =
  element draw:floating-frame {
    draw-floating-frame-attlist, common-draw-data-attlist
  }
draw-floating-frame-attlist =
  attribute draw:frame-name { \string }?
  & attribute xml:id { ID }?
draw-contour-polygon =
  element draw:contour-polygon {
    common-contour-attlist,
    common-draw-size-attlist,
    common-draw-viewbox-attlist,
    common-draw-points-attlist,
    empty
  }
draw-contour-path =
  element draw:contour-path {
    common-contour-attlist,
    common-draw-size-attlist,
    common-draw-viewbox-attlist,
    common-draw-path-data-attlist,
    empty
  }
common-contour-attlist = attribute draw:recreate-on-edit { boolean }
draw-a = element draw:a { draw-a-attlist, shape-instance }
draw-a-attlist =
  attribute xlink:type { "simple" }
  & attribute xlink:href { anyIRI }
  & attribute xlink:actuate { "onRequest" }?
  & attribute office:target-frame-name { targetFrameName }?
  & attribute xlink:show { "new" | "replace" }?
  & attribute office:name { \string }?
  & attribute office:title { \string }?
  & attribute office:server-map { boolean }?
  & attribute xml:id { ID }?
draw-image-map =
  element draw:image-map {
    (draw-area-rectangle | draw-area-circle | draw-area-polygon)*
  }
draw-area-rectangle =
  element draw:area-rectangle {
    common-draw-area-attlist,
    attribute svg:x { coordinate },
    attribute svg:y { coordinate },
    attribute svg:width { length },
    attribute svg:height { length },
    svg-title?,
    svg-desc?,
    office-event-listeners?
  }
draw-area-circle =
  element draw:area-circle {
    common-draw-area-attlist,
    attribute svg:cx { coordinate },
    attribute svg:cy { coordinate },
    attribute svg:r { length },
    svg-title?,
    svg-desc?,
    office-event-listeners?
  }
draw-area-polygon =
  element draw:area-polygon {
    common-draw-area-attlist,
    attribute svg:x { coordinate },
    attribute svg:y { coordinate },
    attribute svg:width { length },
    attribute svg:height { length },
    common-draw-viewbox-attlist,
    common-draw-points-attlist,
    svg-title?,
    svg-desc?,
    office-event-listeners?
  }
common-draw-area-attlist =
  (attribute xlink:type { "simple" },
   attribute xlink:href { anyIRI },
   attribute office:target-frame-name { targetFrameName }?,
   attribute xlink:show { "new" | "replace" }?)?
  & attribute office:name { \string }?
  & attribute draw:nohref { "nohref" }?
dr3d-scene =
  element dr3d:scene {
    dr3d-scene-attlist,
    common-draw-position-attlist,
    common-draw-size-attlist,
    common-draw-style-name-attlist,
    common-draw-z-index-attlist,
    common-draw-id-attlist,
    common-draw-layer-name-attlist,
    common-text-spreadsheet-shape-attlist,
    common-dr3d-transform-attlist,
    common-draw-caption-id-attlist,
    svg-title?,
    svg-desc?,
    dr3d-light*,
    shapes3d*,
    draw-glue-point*
  }
shapes3d =
  dr3d-scene | dr3d-extrude | dr3d-sphere | dr3d-rotate | dr3d-cube
dr3d-scene-attlist =
  attribute dr3d:vrp { vector3D }?
  & attribute dr3d:vpn { vector3D }?
  & attribute dr3d:vup { vector3D }?
  & attribute dr3d:projection { "parallel" | "perspective" }?
  & attribute dr3d:distance { length }?
  & attribute dr3d:focal-length { length }?
  & attribute dr3d:shadow-slant { angle }?
  & attribute dr3d:shade-mode {
      "flat" | "phong" | "gouraud" | "draft"
    }?
  & attribute dr3d:ambient-color { color }?
  & attribute dr3d:lighting-mode { boolean }?
common-dr3d-transform-attlist = attribute dr3d:transform { \string }?
dr3d-light = element dr3d:light { dr3d-light-attlist, empty }
dr3d-light-attlist =
  attribute dr3d:diffuse-color { color }?
  & attribute dr3d:direction { vector3D }
  & attribute dr3d:enabled { boolean }?
  & attribute dr3d:specular { boolean }?
dr3d-cube =
  element dr3d:cube {
    dr3d-cube-attlist,
    common-draw-z-index-attlist,
    common-draw-id-attlist,
    common-draw-layer-name-attlist,
    common-draw-style-name-attlist,
    common-dr3d-transform-attlist,
    empty
  }
dr3d-cube-attlist =
  attribute dr3d:min-edge { vector3D }?,
  attribute dr3d:max-edge { vector3D }?
dr3d-sphere =
  element dr3d:sphere {
    dr3d-sphere-attlist,
    common-draw-z-index-attlist,
    common-draw-id-attlist,
    common-draw-layer-name-attlist,
    common-draw-style-name-attlist,
    common-dr3d-transform-attlist,
    empty
  }
dr3d-sphere-attlist =
  attribute dr3d:center { vector3D }?
  & attribute dr3d:size { vector3D }?
dr3d-extrude =
  element dr3d:extrude {
    common-draw-path-data-attlist,
    common-draw-viewbox-attlist,
    common-draw-id-attlist,
    common-draw-z-index-attlist,
    common-draw-layer-name-attlist,
    common-draw-style-name-attlist,
    common-dr3d-transform-attlist,
    empty
  }
dr3d-rotate =
  element dr3d:rotate {
    common-draw-viewbox-attlist,
    common-draw-path-data-attlist,
    common-draw-z-index-attlist,
    common-draw-id-attlist,
    common-draw-layer-name-attlist,
    common-draw-style-name-attlist,
    common-dr3d-transform-attlist,
    empty
  }
draw-custom-shape =
  element draw:custom-shape {
    draw-custom-shape-attlist,
    common-draw-position-attlist,
    common-draw-size-attlist,
    common-draw-shape-with-text-and-styles-attlist,
    common-draw-caption-id-attlist,
    svg-title?,
    svg-desc?,
    office-event-listeners?,
    draw-glue-point*,
    draw-text,
    draw-enhanced-geometry?
  }
draw-custom-shape-attlist =
  attribute draw:engine { namespacedToken }?
  & attribute draw:data { \string }?
draw-enhanced-geometry =
  element draw:enhanced-geometry {
    draw-enhanced-geometry-attlist, draw-equation*, draw-handle*
  }
draw-enhanced-geometry-attlist =
  attribute draw:type { custom-shape-type }?
  & attribute svg:viewBox {
      list { integer, integer, integer, integer }
    }?
  & attribute draw:mirror-vertical { boolean }?
  & attribute draw:mirror-horizontal { boolean }?
  & attribute draw:text-rotate-angle { angle }?
  & attribute draw:extrusion-allowed { boolean }?
  & attribute draw:text-path-allowed { boolean }?
  & attribute draw:concentric-gradient-fill-allowed { boolean }?
  & attribute draw:extrusion { boolean }?
  & attribute draw:extrusion-brightness { zeroToHundredPercent }?
  & attribute draw:extrusion-depth {
      list { length, double }
    }?
  & attribute draw:extrusion-diffusion { percent }?
  & attribute draw:extrusion-number-of-line-segments { integer }?
  & attribute draw:extrusion-light-face { boolean }?
  & attribute draw:extrusion-first-light-harsh { boolean }?
  & attribute draw:extrusion-second-light-harsh { boolean }?
  & attribute draw:extrusion-first-light-level { zeroToHundredPercent }?
  & attribute draw:extrusion-second-light-level {
      zeroToHundredPercent
    }?
  & attribute draw:extrusion-first-light-direction { vector3D }?
  & attribute draw:extrusion-second-light-direction { vector3D }?
  & attribute draw:extrusion-metal { boolean }?
  & attribute dr3d:shade-mode {
      "flat" | "phong" | "gouraud" | "draft"
    }?
  & attribute draw:extrusion-rotation-angle {
      list { angle, angle }
    }?
  & attribute draw:extrusion-rotation-center { vector3D }?
  & attribute draw:extrusion-shininess { zeroToHundredPercent }?
  & attribute draw:extrusion-skew {
      list { double, angle }
    }?
  & attribute draw:extrusion-specularity { zeroToHundredPercent }?
  & attribute dr3d:projection { "parallel" | "perspective" }?
  & attribute draw:extrusion-viewpoint { point3D }?
  & attribute draw:extrusion-origin {
      list { extrusionOrigin, extrusionOrigin }
    }?
  & attribute draw:extrusion-color { boolean }?
  & attribute draw:enhanced-path { \string }?
  & attribute draw:path-stretchpoint-x { double }?
  & attribute draw:path-stretchpoint-y { double }?
  & attribute draw:text-areas { \string }?
  & attribute draw:glue-points { \string }?
  & attribute draw:glue-point-type {
      "none" | "segments" | "rectangle"
    }?
  & attribute draw:glue-point-leaving-directions { \string }?
  & attribute draw:text-path { boolean }?
  & attribute draw:text-path-mode { "normal" | "path" | "shape" }?
  & attribute draw:text-path-scale { "path" | "shape" }?
  & attribute draw:text-path-same-letter-heights { boolean }?
  & attribute draw:modifiers { \string }?
custom-shape-type = "non-primitive" | \string
point3D =
  xsd:string {
    pattern =
      "\([ ]*-?([0-9]+(\.[0-9]*)?|\.[0-9]+)((cm)|(mm)|(in)|(pt)|(pc))([ ]+-?([0-9]+(\.[0-9]*)?|\.[0-9]+)((cm)|(mm)|(in)|(pt)|(pc))){2}[ ]*\)"
  }
extrusionOrigin =
  xsd:double { minInclusive = "-0.5" maxInclusive = "0.5" }
draw-equation = element draw:equation { draw-equation-attlist, empty }
draw-equation-attlist =
  attribute draw:name { \string }?
  & attribute draw:formula { \string }?
draw-handle = element draw:handle { draw-handle-attlist, empty }
draw-handle-attlist =
  attribute draw:handle-mirror-vertical { boolean }?
  & attribute draw:handle-mirror-horizontal { boolean }?
  & attribute draw:handle-switched { boolean }?
  & attribute draw:handle-position { \string }
  & attribute draw:handle-range-x-minimum { \string }?
  & attribute draw:handle-range-x-maximum { \string }?
  & attribute draw:handle-range-y-minimum { \string }?
  & attribute draw:handle-range-y-maximum { \string }?
  & attribute draw:handle-polar { \string }?
  & attribute draw:handle-radius-range-minimum { \string }?
  & attribute draw:handle-radius-range-maximum { \string }?
presentation-shape-attlist =
  attribute presentation:class { presentation-classes }?
  & attribute presentation:placeholder { boolean }?
  & attribute presentation:user-transformed { boolean }?
presentation-classes =
  "title"
  | "outline"
  | "subtitle"
  | "text"
  | "graphic"
  | "object"
  | "chart"
  | "table"
  | "orgchart"
  | "page"
  | "notes"
  | "handout"
  | "header"
  | "footer"
  | "date-time"
  | "page-number"
presentation-animations =
  element presentation:animations {
    (presentation-animation-elements | presentation-animation-group)*
  }
presentation-animation-elements =
  presentation-show-shape
  | presentation-show-text
  | presentation-hide-shape
  | presentation-hide-text
  | presentation-dim
  | presentation-play
presentation-sound =
  element presentation:sound {
    presentation-sound-attlist,
    attribute xlink:type { "simple" },
    attribute xlink:href { anyIRI },
    attribute xlink:actuate { "onRequest" }?,
    attribute xlink:show { "new" | "replace" }?,
    empty
  }
presentation-sound-attlist =
  attribute presentation:play-full { boolean }?
  & attribute xml:id { ID }?
presentation-show-shape =
  element presentation:show-shape {
    common-presentation-effect-attlist, presentation-sound?
  }
common-presentation-effect-attlist =
  attribute draw:shape-id { IDREF }
  & attribute presentation:effect { presentationEffects }?
  & attribute presentation:direction { presentationEffectDirections }?
  & attribute presentation:speed { presentationSpeeds }?
  & attribute presentation:delay { duration }?
  & attribute presentation:start-scale { percent }?
  & attribute presentation:path-id { \string }?
presentationEffects =
  "none"
  | "fade"
  | "move"
  | "stripes"
  | "open"
  | "close"
  | "dissolve"
  | "wavyline"
  | "random"
  | "lines"
  | "laser"
  | "appear"
  | "hide"
  | "move-short"
  | "checkerboard"
  | "rotate"
  | "stretch"
presentationEffectDirections =
  "none"
  | "from-left"
  | "from-top"
  | "from-right"
  | "from-bottom"
  | "from-center"
  | "from-upper-left"
  | "from-upper-right"
  | "from-lower-left"
  | "from-lower-right"
  | "to-left"
  | "to-top"
  | "to-right"
  | "to-bottom"
  | "to-upper-left"
  | "to-upper-right"
  | "to-lower-right"
  | "to-lower-left"
  | "path"
  | "spiral-inward-left"
  | "spiral-inward-right"
  | "spiral-outward-left"
  | "spiral-outward-right"
  | "vertical"
  | "horizontal"
  | "to-center"
  | "clockwise"
  | "counter-clockwise"
presentationSpeeds = "slow" | "medium" | "fast"
presentation-show-text =
  element presentation:show-text {
    common-presentation-effect-attlist, presentation-sound?
  }
presentation-hide-shape =
  element presentation:hide-shape {
    common-presentation-effect-attlist, presentation-sound?
  }
presentation-hide-text =
  element presentation:hide-text {
    common-presentation-effect-attlist, presentation-sound?
  }
presentation-dim =
  element presentation:dim {
    presentation-dim-attlist, presentation-sound?
  }
presentation-dim-attlist =
  attribute draw:shape-id { IDREF }
  & attribute draw:color { color }
presentation-play =
  element presentation:play { presentation-play-attlist, empty }
presentation-play-attlist =
  attribute draw:shape-id { IDREF },
  attribute presentation:speed { presentationSpeeds }?
presentation-animation-group =
  element presentation:animation-group {
    presentation-animation-elements*
  }
common-anim-attlist =
  attribute presentation:node-type {
    "default"
    | "on-click"
    | "with-previous"
    | "after-previous"
    | "timing-root"
    | "main-sequence"
    | "interactive-sequence"
  }?
  & attribute presentation:preset-id { \string }?
  & attribute presentation:preset-sub-type { \string }?
  & attribute presentation:preset-class {
      "custom"
      | "entrance"
      | "exit"
      | "emphasis"
      | "motion-path"
      | "ole-action"
      | "media-call"
    }?
  & attribute presentation:master-element { IDREF }?
  & attribute presentation:group-id { \string }?
  & (attribute xml:id { ID },
     attribute anim:id { NCName }?)?
presentation-event-listener =
  element presentation:event-listener {
    presentation-event-listener-attlist, presentation-sound?
  }
presentation-event-listener-attlist =
  attribute script:event-name { \string }
  & attribute presentation:action {
      "none"
      | "previous-page"
      | "next-page"
      | "first-page"
      | "last-page"
      | "hide"
      | "stop"
      | "execute"
      | "show"
      | "verb"
      | "fade-out"
      | "sound"
      | "last-visited-page"
    }
  & attribute presentation:effect { presentationEffects }?
  & attribute presentation:direction { presentationEffectDirections }?
  & attribute presentation:speed { presentationSpeeds }?
  & attribute presentation:start-scale { percent }?
  & (attribute xlink:type { "simple" },
     attribute xlink:href { anyIRI },
     attribute xlink:show { "embed" }?,
     attribute xlink:actuate { "onRequest" }?)?
  & attribute presentation:verb { nonNegativeInteger }?
presentation-decls = presentation-decl*
presentation-decl =
  element presentation:header-decl {
    presentation-header-decl-attlist, text
  }
  | element presentation:footer-decl {
      presentation-footer-decl-attlist, text
    }
  | element presentation:date-time-decl {
      presentation-date-time-decl-attlist, text
    }
presentation-header-decl-attlist =
  attribute presentation:name { \string }
presentation-footer-decl-attlist =
  attribute presentation:name { \string }
presentation-date-time-decl-attlist =
  attribute presentation:name { \string }
  & attribute presentation:source { "fixed" | "current-date" }
  & attribute style:data-style-name { styleNameRef }?
presentation-settings =
  element presentation:settings {
    presentation-settings-attlist, presentation-show*
  }?
presentation-settings-attlist =
  attribute presentation:start-page { \string }?
  & attribute presentation:show { \string }?
  & attribute presentation:full-screen { boolean }?
  & attribute presentation:endless { boolean }?
  & attribute presentation:pause { duration }?
  & attribute presentation:show-logo { boolean }?
  & attribute presentation:force-manual { boolean }?
  & attribute presentation:mouse-visible { boolean }?
  & attribute presentation:mouse-as-pen { boolean }?
  & attribute presentation:start-with-navigator { boolean }?
  & attribute presentation:animations { "enabled" | "disabled" }?
  & attribute presentation:transition-on-click {
      "enabled" | "disabled"
    }?
  & attribute presentation:stay-on-top { boolean }?
  & attribute presentation:show-end-of-presentation-slide { boolean }?
presentation-show =
  element presentation:show { presentation-show-attlist, empty }
presentation-show-attlist =
  attribute presentation:name { \string }
  & attribute presentation:pages { \string }
chart-chart =
  element chart:chart {
    chart-chart-attlist,
    chart-title?,
    chart-subtitle?,
    chart-footer?,
    chart-legend?,
    chart-plot-area,
    table-table?
  }
chart-chart-attlist =
  attribute chart:class { namespacedToken }
  & common-draw-size-attlist
  & attribute chart:column-mapping { \string }?
  & attribute chart:row-mapping { \string }?
  & attribute chart:style-name { styleNameRef }?
  & (attribute xlink:type { "simple" },
     attribute xlink:href { anyIRI })?
  & attribute xml:id { ID }?
chart-title = element chart:title { chart-title-attlist, text-p? }
chart-title-attlist =
  attribute table:cell-range { cellRangeAddressList }?
  & common-draw-position-attlist
  & attribute chart:style-name { styleNameRef }?
chart-subtitle = element chart:subtitle { chart-title-attlist, text-p? }
chart-footer = element chart:footer { chart-title-attlist, text-p? }
chart-legend = element chart:legend { chart-legend-attlist, text-p? }
chart-legend-attlist =
  ((attribute chart:legend-position {
      "start" | "end" | "top" | "bottom"
    },
    attribute chart:legend-align { "start" | "center" | "end" }?)
   | attribute chart:legend-position {
       "top-start" | "bottom-start" | "top-end" | "bottom-end"
     }
   | empty)
  & common-draw-position-attlist
  & (attribute style:legend-expansion { "wide" | "high" | "balanced" }
     | (attribute style:legend-expansion { "custom" },
        attribute style:legend-expansion-aspect-ratio { double })
     | empty)
  & attribute chart:style-name { styleNameRef }?
chart-plot-area =
  element chart:plot-area {
    chart-plot-area-attlist,
    dr3d-light*,
    chart-axis*,
    chart-series*,
    chart-stock-gain-marker?,
    chart-stock-loss-marker?,
    chart-stock-range-line?,
    chart-wall?,
    chart-floor?
  }
chart-plot-area-attlist =
  common-draw-position-attlist
  & common-draw-size-attlist
  & attribute chart:style-name { styleNameRef }?
  & attribute table:cell-range-address { cellRangeAddressList }?
  & attribute chart:data-source-has-labels {
      "none" | "row" | "column" | "both"
    }?
  & dr3d-scene-attlist
  & common-dr3d-transform-attlist
  & attribute xml:id { ID }?
chart-wall = element chart:wall { chart-wall-attlist, empty }
chart-wall-attlist =
  attribute svg:width { length }?
  & attribute chart:style-name { styleNameRef }?
chart-floor = element chart:floor { chart-floor-attlist, empty }
chart-floor-attlist =
  attribute svg:width { length }?
  & attribute chart:style-name { styleNameRef }?
chart-axis =
  element chart:axis {
    chart-axis-attlist, chart-title?, chart-categories?, chart-grid*
  }
chart-axis-attlist =
  attribute chart:dimension { chart-dimension }
  & attribute chart:name { \string }?
  & attribute chart:style-name { styleNameRef }?
chart-dimension = "x" | "y" | "z"
chart-categories =
  element chart:categories {
    attribute table:cell-range-address { cellRangeAddressList }?
  }
chart-grid = element chart:grid { chart-grid-attlist }
chart-grid-attlist =
  attribute chart:class { "major" | "minor" }?
  & attribute chart:style-name { styleNameRef }?
chart-series =
  element chart:series {
    chart-series-attlist,
    chart-domain*,
    chart-mean-value?,
    chart-regression-curve*,
    chart-error-indicator*,
    chart-data-point*,
    chart-data-label?
  }
chart-series-attlist =
  attribute chart:values-cell-range-address { cellRangeAddressList }?
  & attribute chart:label-cell-address { cellRangeAddressList }?
  & attribute chart:class { namespacedToken }?
  & attribute chart:attached-axis { \string }?
  & attribute chart:style-name { styleNameRef }?
  & attribute xml:id { ID }?
chart-domain =
  element chart:domain {
    attribute table:cell-range-address { cellRangeAddressList }?
  }
chart-data-point =
  element chart:data-point {
    chart-data-point-attlist, chart-data-label?
  }
chart-data-point-attlist =
  attribute chart:repeated { positiveInteger }?
  & attribute chart:style-name { styleNameRef }?
  & attribute xml:id { ID }?
chart-data-label =
  element chart:data-label { chart-data-label-attlist, text-p? }
chart-data-label-attlist =
  common-draw-position-attlist
  & attribute chart:style-name { styleNameRef }?
chart-mean-value =
  element chart:mean-value { chart-mean-value-attlist, empty }
chart-mean-value-attlist = attribute chart:style-name { styleNameRef }?
chart-error-indicator =
  element chart:error-indicator { chart-error-indicator-attlist, empty }
chart-error-indicator-attlist =
  attribute chart:style-name { styleNameRef }?
  & attribute chart:dimension { chart-dimension }
chart-regression-curve =
  element chart:regression-curve {
    chart-regression-curve-attlist, chart-equation?
  }
chart-regression-curve-attlist =
  attribute chart:style-name { styleNameRef }?
chart-equation =
  element chart:equation { chart-equation-attlist, text-p? }
chart-equation-attlist =
  attribute chart:automatic-content { boolean }?
  & attribute chart:display-r-square { boolean }?
  & attribute chart:display-equation { boolean }?
  & common-draw-position-attlist
  & attribute chart:style-name { styleNameRef }?
chart-stock-gain-marker =
  element chart:stock-gain-marker { common-stock-marker-attlist }
chart-stock-loss-marker =
  element chart:stock-loss-marker { common-stock-marker-attlist }
chart-stock-range-line =
  element chart:stock-range-line { common-stock-marker-attlist }
common-stock-marker-attlist =
  attribute chart:style-name { styleNameRef }?
office-database =
  element office:database {
    db-data-source,
    db-forms?,
    db-reports?,
    db-queries?,
    db-table-presentations?,
    db-schema-definition?
  }
db-data-source =
  element db:data-source {
    db-data-source-attlist,
    db-connection-data,
    db-driver-settings?,
    db-application-connection-settings?
  }
db-data-source-attlist = empty
db-connection-data =
  element db:connection-data {
    db-connection-data-attlist,
    (db-database-description | db-connection-resource),
    db-login?
  }
db-connection-data-attlist = empty
db-database-description =
  element db:database-description {
    db-database-description-attlist,
    (db-file-based-database | db-server-database)
  }
db-database-description-attlist = empty
db-file-based-database =
  element db:file-based-database { db-file-based-database-attlist }
db-file-based-database-attlist =
  attribute xlink:type { "simple" }
  & attribute xlink:href { anyIRI }
  & attribute db:media-type { \string }
  & attribute db:extension { \string }?
db-server-database =
  element db:server-database { db-server-database-attlist, empty }
db-server-database-attlist =
  attribute db:type { namespacedToken }
  & (db-host-and-port | db-local-socket-name)
  & attribute db:database-name { \string }?
db-host-and-port =
  attribute db:hostname { \string },
  attribute db:port { positiveInteger }?
db-local-socket-name = attribute db:local-socket { \string }?
db-connection-resource =
  element db:connection-resource {
    db-connection-resource-attlist, empty
  }
db-connection-resource-attlist =
  attribute xlink:type { "simple" },
  attribute xlink:href { anyIRI },
  attribute xlink:show { "none" }?,
  attribute xlink:actuate { "onRequest" }?
db-login = element db:login { db-login-attlist, empty }
db-login-attlist =
  (attribute db:user-name { \string }
   | attribute db:use-system-user { boolean })?
  & attribute db:is-password-required { boolean }?
  & attribute db:login-timeout { positiveInteger }?
db-driver-settings =
  element db:driver-settings {
    db-driver-settings-attlist,
    db-auto-increment?,
    db-delimiter?,
    db-character-set?,
    db-table-settings?
  }
db-driver-settings-attlist =
  db-show-deleted
  & attribute db:system-driver-settings { \string }?
  & attribute db:base-dn { \string }?
  & db-is-first-row-header-line
  & attribute db:parameter-name-substitution { boolean }?
db-show-deleted = attribute db:show-deleted { boolean }?
db-is-first-row-header-line =
  attribute db:is-first-row-header-line { boolean }?
db-auto-increment =
  element db:auto-increment { db-auto-increment-attlist, empty }
db-auto-increment-attlist =
  attribute db:additional-column-statement { \string }?
  & attribute db:row-retrieving-statement { \string }?
db-delimiter = element db:delimiter { db-delimiter-attlist, empty }
db-delimiter-attlist =
  attribute db:field { \string }?
  & attribute db:string { \string }?
  & attribute db:decimal { \string }?
  & attribute db:thousand { \string }?
db-character-set =
  element db:character-set { db-character-set-attlist, empty }
db-character-set-attlist = attribute db:encoding { textEncoding }?
db-table-settings = element db:table-settings { db-table-setting* }
db-table-setting =
  element db:table-setting {
    db-table-setting-attlist, db-delimiter?, db-character-set?, empty
  }
db-table-setting-attlist = db-is-first-row-header-line, db-show-deleted
db-application-connection-settings =
  element db:application-connection-settings {
    db-application-connection-settings-attlist,
    db-table-filter?,
    db-table-type-filter?,
    db-data-source-settings?
  }
db-application-connection-settings-attlist =
  attribute db:is-table-name-length-limited { boolean }?
  & attribute db:enable-sql92-check { boolean }?
  & attribute db:append-table-alias-name { boolean }?
  & attribute db:ignore-driver-privileges { boolean }?
  & attribute db:boolean-comparison-mode {
      "equal-integer"
      | "is-boolean"
      | "equal-boolean"
      | "equal-use-only-zero"
    }?
  & attribute db:use-catalog { boolean }?
  & attribute db:max-row-count { integer }?
  & attribute db:suppress-version-columns { boolean }?
db-table-filter =
  element db:table-filter {
    db-table-filter-attlist,
    db-table-include-filter?,
    db-table-exclude-filter?
  }
db-table-filter-attlist = empty
db-table-include-filter =
  element db:table-include-filter {
    db-table-include-filter-attlist, db-table-filter-pattern+
  }
db-table-include-filter-attlist = empty
db-table-exclude-filter =
  element db:table-exclude-filter {
    db-table-exclude-filter-attlist, db-table-filter-pattern+
  }
db-table-exclude-filter-attlist = empty
db-table-filter-pattern =
  element db:table-filter-pattern {
    db-table-filter-pattern-attlist, \string
  }
db-table-filter-pattern-attlist = empty
db-table-type-filter =
  element db:table-type-filter {
    db-table-type-filter-attlist, db-table-type*
  }
db-table-type-filter-attlist = empty
db-table-type = element db:table-type { db-table-type-attlist, \string }
db-table-type-attlist = empty
db-data-source-settings =
  element db:data-source-settings {
    db-data-source-settings-attlist, db-data-source-setting+
  }
db-data-source-settings-attlist = empty
db-data-source-setting =
  element db:data-source-setting {
    db-data-source-setting-attlist, db-data-source-setting-value+
  }
db-data-source-setting-attlist =
  attribute db:data-source-setting-is-list { boolean }?
  & attribute db:data-source-setting-name { \string }
  & attribute db:data-source-setting-type {
      db-data-source-setting-types
    }
db-data-source-setting-types =
  "boolean" | "short" | "int" | "long" | "double" | "string"
db-data-source-setting-value =
  element db:data-source-setting-value {
    db-data-source-setting-value-attlist, \string
  }
db-data-source-setting-value-attlist = empty
db-forms =
  element db:forms {
    db-forms-attlist, (db-component | db-component-collection)*
  }
db-forms-attlist = empty
db-reports =
  element db:reports {
    db-reports-attlist, (db-component | db-component-collection)*
  }
db-reports-attlist = empty
db-component-collection =
  element db:component-collection {
    db-component-collection-attlist,
    common-db-object-name,
    common-db-object-title,
    common-db-object-description,
    (db-component | db-component-collection)*
  }
db-component-collection-attlist = empty
db-component =
  element db:component {
    db-component-attlist,
    common-db-object-name,
    common-db-object-title,
    common-db-object-description,
    (office-document | math-math)?
  }
db-component-attlist =
  (attribute xlink:type { "simple" },
   attribute xlink:href { anyIRI },
   attribute xlink:show { "none" }?,
   attribute xlink:actuate { "onRequest" }?)?
  & attribute db:as-template { boolean }?
db-queries =
  element db:queries {
    db-queries-attlist, (db-query | db-query-collection)*
  }
db-queries-attlist = empty
db-query-collection =
  element db:query-collection {
    db-query-collection-attlist,
    common-db-object-name,
    common-db-object-title,
    common-db-object-description,
    (db-query | db-query-collection)*
  }
db-query-collection-attlist = empty
db-query =
  element db:query {
    db-query-attlist,
    common-db-object-name,
    common-db-object-title,
    common-db-object-description,
    common-db-table-style-name,
    db-order-statement?,
    db-filter-statement?,
    db-columns?,
    db-update-table?
  }
db-query-attlist =
  attribute db:command { \string }
  & attribute db:escape-processing { boolean }?
db-order-statement =
  element db:order-statement { db-command, db-apply-command, empty }
db-filter-statement =
  element db:filter-statement { db-command, db-apply-command, empty }
db-update-table =
  element db:update-table { common-db-table-name-attlist }
db-table-presentations =
  element db:table-representations {
    db-table-presentations-attlist, db-table-presentation*
  }
db-table-presentations-attlist = empty
db-table-presentation =
  element db:table-representation {
    db-table-presentation-attlist,
    common-db-table-name-attlist,
    common-db-object-title,
    common-db-object-description,
    common-db-table-style-name,
    db-order-statement?,
    db-filter-statement?,
    db-columns?
  }
db-table-presentation-attlist = empty
db-columns = element db:columns { db-columns-attlist, db-column+ }
db-columns-attlist = empty
db-column =
  element db:column {
    db-column-attlist,
    common-db-object-name,
    common-db-object-title,
    common-db-object-description,
    common-db-default-value
  }
db-column-attlist =
  attribute db:visible { boolean }?
  & attribute db:style-name { styleNameRef }?
  & attribute db:default-cell-style-name { styleNameRef }?
db-command = attribute db:command { \string }
db-apply-command = attribute db:apply-command { boolean }?
common-db-table-name-attlist =
  attribute db:name { \string }
  & attribute db:catalog-name { \string }?
  & attribute db:schema-name { \string }?
common-db-object-name = attribute db:name { \string }
common-db-object-title = attribute db:title { \string }?
common-db-object-description = attribute db:description { \string }?
common-db-table-style-name =
  attribute db:style-name { styleNameRef }?
  & attribute db:default-row-style-name { styleNameRef }?
common-db-default-value = common-value-and-type-attlist?
db-schema-definition =
  element db:schema-definition {
    db-schema-definition-attlist, db-table-definitions
  }
db-schema-definition-attlist = empty
db-table-definitions =
  element db:table-definitions {
    db-table-definitions-attlist, db-table-definition*
  }
db-table-definitions-attlist = empty
db-table-definition =
  element db:table-definition {
    common-db-table-name-attlist,
    db-table-definition-attlist,
    db-column-definitions,
    db-keys?,
    db-indices?
  }
db-table-definition-attlist = attribute db:type { \string }?
db-column-definitions =
  element db:column-definitions {
    db-column-definitions-attlist, db-column-definition+
  }
db-column-definitions-attlist = empty
db-column-definition =
  element db:column-definition {
    db-column-definition-attlist, common-db-default-value
  }
db-column-definition-attlist =
  attribute db:name { \string }
  & attribute db:data-type { db-data-types }?
  & attribute db:type-name { \string }?
  & attribute db:precision { positiveInteger }?
  & attribute db:scale { positiveInteger }?
  & attribute db:is-nullable { "no-nulls" | "nullable" }?
  & attribute db:is-empty-allowed { boolean }?
  & attribute db:is-autoincrement { boolean }?
db-data-types =
  "bit"
  | "boolean"
  | "tinyint"
  | "smallint"
  | "integer"
  | "bigint"
  | "float"
  | "real"
  | "double"
  | "numeric"
  | "decimal"
  | "char"
  | "varchar"
  | "longvarchar"
  | "date"
  | "time"
  | "timestmp"
  | "binary"
  | "varbinary"
  | "longvarbinary"
  | "sqlnull"
  | "other"
  | "object"
  | "distinct"
  | "struct"
  | "array"
  | "blob"
  | "clob"
  | "ref"
db-keys = element db:keys { db-keys-attlist, db-key+ }
db-keys-attlist = empty
db-key = element db:key { db-key-attlist, db-key-columns+ }
db-key-attlist =
  attribute db:name { \string }?
  & attribute db:type { "primary" | "unique" | "foreign" }
  & attribute db:referenced-table-name { \string }?
  & attribute db:update-rule {
      "cascade" | "restrict" | "set-null" | "no-action" | "set-default"
    }?
  & attribute db:delete-rule {
      "cascade" | "restrict" | "set-null" | "no-action" | "set-default"
    }?
db-key-columns =
  element db:key-columns { db-key-columns-attlist, db-key-column+ }
db-key-columns-attlist = empty
db-key-column = element db:key-column { db-key-column-attlist, empty }
db-key-column-attlist =
  attribute db:name { \string }?
  & attribute db:related-column-name { \string }?
db-indices = element db:indices { db-indices-attlist, db-index+ }
db-indices-attlist = empty
db-index = element db:index { db-index-attlist, db-index-columns+ }
db-index-attlist =
  attribute db:name { \string }
  & attribute db:catalog-name { \string }?
  & attribute db:is-unique { boolean }?
  & attribute db:is-clustered { boolean }?
db-index-columns = element db:index-columns { db-index-column+ }
db-index-column =
  element db:index-column { db-index-column-attlist, empty }
db-index-column-attlist =
  attribute db:name { \string }
  & attribute db:is-ascending { boolean }?
office-forms =
  element office:forms {
    office-forms-attlist, (form-form | xforms-model)*
  }?
office-forms-attlist =
  attribute form:automatic-focus { boolean }?
  & attribute form:apply-design-mode { boolean }?
form-form =
  element form:form {
    common-form-control-attlist,
    form-form-attlist,
    form-properties?,
    office-event-listeners?,
    (controls | form-form)*,
    form-connection-resource?
  }
form-form-attlist =
  (attribute xlink:type { "simple" },
   attribute xlink:href { anyIRI },
   attribute xlink:actuate { "onRequest" }?)?
  & attribute office:target-frame { targetFrameName }?
  & attribute form:method { "get" | "post" | \string }?
  & attribute form:enctype { \string }?
  & attribute form:allow-deletes { boolean }?
  & attribute form:allow-inserts { boolean }?
  & attribute form:allow-updates { boolean }?
  & attribute form:apply-filter { boolean }?
  & attribute form:command-type { "table" | "query" | "command" }?
  & attribute form:command { \string }?
  & attribute form:datasource { anyIRI | \string }?
  & attribute form:master-fields { \string }?
  & attribute form:detail-fields { \string }?
  & attribute form:escape-processing { boolean }?
  & attribute form:filter { \string }?
  & attribute form:ignore-result { boolean }?
  & attribute form:navigation-mode { navigation }?
  & attribute form:order { \string }?
  & attribute form:tab-cycle { tab-cycles }?
navigation = "none" | "current" | "parent"
tab-cycles = "records" | "current" | "page"
form-connection-resource =
  element form:connection-resource {
    attribute xlink:href { anyIRI },
    empty
  }
xforms-model = element xforms:model { anyAttListOrElements }
column-controls =
  element form:text { form-text-attlist, common-form-control-content }
  | element form:textarea {
      form-textarea-attlist, common-form-control-content, text-p*
    }
  | element form:formatted-text {
      form-formatted-text-attlist, common-form-control-content
    }
  | element form:number {
      form-number-attlist,
      common-numeric-control-attlist,
      common-form-control-content,
      common-linked-cell,
      common-spin-button,
      common-repeat,
      common-delay-for-repeat
    }
  | element form:date {
      form-date-attlist,
      common-numeric-control-attlist,
      common-form-control-content,
      common-linked-cell,
      common-spin-button,
      common-repeat,
      common-delay-for-repeat
    }
  | element form:time {
      form-time-attlist,
      common-numeric-control-attlist,
      common-form-control-content,
      common-linked-cell,
      common-spin-button,
      common-repeat,
      common-delay-for-repeat
    }
  | element form:combobox {
      form-combobox-attlist, common-form-control-content, form-item*
    }
  | element form:listbox {
      form-listbox-attlist, common-form-control-content, form-option*
    }
  | element form:checkbox {
      form-checkbox-attlist, common-form-control-content
    }
controls =
  column-controls
  | element form:password {
      form-password-attlist, common-form-control-content
    }
  | element form:file { form-file-attlist, common-form-control-content }
  | element form:fixed-text {
      form-fixed-text-attlist, common-form-control-content
    }
  | element form:button {
      form-button-attlist, common-form-control-content
    }
  | element form:image {
      form-image-attlist, common-form-control-content
    }
  | element form:radio {
      form-radio-attlist, common-form-control-content
    }
  | element form:frame {
      form-frame-attlist, common-form-control-content
    }
  | element form:image-frame {
      form-image-frame-attlist, common-form-control-content
    }
  | element form:hidden {
      form-hidden-attlist, common-form-control-content
    }
  | element form:grid {
      form-grid-attlist, common-form-control-content, form-column*
    }
  | element form:value-range {
      form-value-range-attlist, common-form-control-content
    }
  | element form:generic-control {
      form-generic-control-attlist, common-form-control-content
    }
form-text-attlist =
  form-control-attlist,
  common-current-value-attlist,
  common-disabled-attlist,
  common-maxlength-attlist,
  common-printable-attlist,
  common-readonly-attlist,
  common-tab-attlist,
  common-title-attlist,
  common-value-attlist,
  common-convert-empty-attlist,
  common-data-field-attlist,
  common-linked-cell
form-control-attlist =
  common-form-control-attlist,
  common-control-id-attlist,
  xforms-bind-attlist
common-form-control-content = form-properties?, office-event-listeners?
form-textarea-attlist =
  form-control-attlist,
  common-current-value-attlist,
  common-disabled-attlist,
  common-maxlength-attlist,
  common-printable-attlist,
  common-readonly-attlist,
  common-tab-attlist,
  common-title-attlist,
  common-value-attlist,
  common-convert-empty-attlist,
  common-data-field-attlist,
  common-linked-cell
form-password-attlist =
  form-control-attlist
  & common-disabled-attlist
  & common-maxlength-attlist
  & common-printable-attlist
  & common-tab-attlist
  & common-title-attlist
  & common-value-attlist
  & common-convert-empty-attlist
  & common-linked-cell
  & attribute form:echo-char { character }?
form-file-attlist =
  form-control-attlist,
  common-current-value-attlist,
  common-disabled-attlist,
  common-maxlength-attlist,
  common-printable-attlist,
  common-readonly-attlist,
  common-tab-attlist,
  common-title-attlist,
  common-value-attlist,
  common-linked-cell
form-formatted-text-attlist =
  form-control-attlist
  & common-current-value-attlist
  & common-disabled-attlist
  & common-maxlength-attlist
  & common-printable-attlist
  & common-readonly-attlist
  & common-tab-attlist
  & common-title-attlist
  & common-value-attlist
  & common-convert-empty-attlist
  & common-data-field-attlist
  & common-linked-cell
  & common-spin-button
  & common-repeat
  & common-delay-for-repeat
  & attribute form:max-value { \string }?
  & attribute form:min-value { \string }?
  & attribute form:validation { boolean }?
common-numeric-control-attlist =
  form-control-attlist,
  common-disabled-attlist,
  common-maxlength-attlist,
  common-printable-attlist,
  common-readonly-attlist,
  common-tab-attlist,
  common-title-attlist,
  common-convert-empty-attlist,
  common-data-field-attlist
form-number-attlist =
  attribute form:value { double }?
  & attribute form:current-value { double }?
  & attribute form:min-value { double }?
  & attribute form:max-value { double }?
form-date-attlist =
  attribute form:value { date }?
  & attribute form:current-value { date }?
  & attribute form:min-value { date }?
  & attribute form:max-value { date }?
form-time-attlist =
  attribute form:value { time }?
  & attribute form:current-value { time }?
  & attribute form:min-value { time }?
  & attribute form:max-value { time }?
form-fixed-text-attlist =
  form-control-attlist
  & for
  & common-disabled-attlist
  & label
  & common-printable-attlist
  & common-title-attlist
  & attribute form:multi-line { boolean }?
form-combobox-attlist =
  form-control-attlist
  & common-current-value-attlist
  & common-disabled-attlist
  & dropdown
  & common-maxlength-attlist
  & common-printable-attlist
  & common-readonly-attlist
  & size
  & common-tab-attlist
  & common-title-attlist
  & common-value-attlist
  & common-convert-empty-attlist
  & common-data-field-attlist
  & list-source
  & list-source-type
  & common-linked-cell
  & common-source-cell-range
  & attribute form:auto-complete { boolean }?
form-item = element form:item { form-item-attlist, text }
form-item-attlist = label
form-listbox-attlist =
  form-control-attlist
  & common-disabled-attlist
  & dropdown
  & common-printable-attlist
  & size
  & common-tab-attlist
  & common-title-attlist
  & bound-column
  & common-data-field-attlist
  & list-source
  & list-source-type
  & common-linked-cell
  & list-linkage-type
  & common-source-cell-range
  & attribute form:multiple { boolean }?
  & attribute form:xforms-list-source { \string }?
list-linkage-type =
  attribute form:list-linkage-type {
    "selection" | "selection-indices"
  }?
form-option = element form:option { form-option-attlist, text }
form-option-attlist =
  current-selected, selected, label, common-value-attlist
form-button-attlist =
  form-control-attlist
  & button-type
  & common-disabled-attlist
  & label
  & image-data
  & common-printable-attlist
  & common-tab-attlist
  & target-frame
  & target-location
  & common-title-attlist
  & common-value-attlist
  & common-form-relative-image-position-attlist
  & common-repeat
  & common-delay-for-repeat
  & attribute form:default-button { boolean }?
  & attribute form:toggle { boolean }?
  & attribute form:focus-on-click { boolean }?
  & attribute form:xforms-submission { \string }?
form-image-attlist =
  form-control-attlist,
  button-type,
  common-disabled-attlist,
  image-data,
  common-printable-attlist,
  common-tab-attlist,
  target-frame,
  target-location,
  common-title-attlist,
  common-value-attlist
form-checkbox-attlist =
  form-control-attlist
  & common-disabled-attlist
  & label
  & common-printable-attlist
  & common-tab-attlist
  & common-title-attlist
  & common-value-attlist
  & common-data-field-attlist
  & common-form-visual-effect-attlist
  & common-form-relative-image-position-attlist
  & common-linked-cell
  & attribute form:current-state { states }?
  & attribute form:is-tristate { boolean }?
  & attribute form:state { states }?
states = "unchecked" | "checked" | "unknown"
form-radio-attlist =
  form-control-attlist,
  current-selected,
  common-disabled-attlist,
  label,
  common-printable-attlist,
  selected,
  common-tab-attlist,
  common-title-attlist,
  common-value-attlist,
  common-data-field-attlist,
  common-form-visual-effect-attlist,
  common-form-relative-image-position-attlist,
  common-linked-cell
form-frame-attlist =
  form-control-attlist,
  common-disabled-attlist,
  for,
  label,
  common-printable-attlist,
  common-title-attlist
form-image-frame-attlist =
  form-control-attlist,
  common-disabled-attlist,
  image-data,
  common-printable-attlist,
  common-readonly-attlist,
  common-title-attlist,
  common-data-field-attlist
form-hidden-attlist = form-control-attlist, common-value-attlist
form-grid-attlist =
  form-control-attlist,
  common-disabled-attlist,
  common-printable-attlist,
  common-tab-attlist,
  common-title-attlist
form-column =
  element form:column { form-column-attlist, column-controls+ }
form-column-attlist =
  common-form-control-attlist, label, text-style-name
text-style-name = attribute form:text-style-name { styleNameRef }?
form-value-range-attlist =
  form-control-attlist
  & common-disabled-attlist
  & common-printable-attlist
  & common-tab-attlist
  & common-title-attlist
  & common-value-attlist
  & common-linked-cell
  & common-repeat
  & common-delay-for-repeat
  & attribute form:max-value { integer }?
  & attribute form:min-value { integer }?
  & attribute form:step-size { positiveInteger }?
  & attribute form:page-step-size { positiveInteger }?
  & attribute form:orientation { "horizontal" | "vertical" }?
form-generic-control-attlist = form-control-attlist
common-form-control-attlist =
  attribute form:name { \string }?
  & attribute form:control-implementation { namespacedToken }?
xforms-bind-attlist = attribute xforms:bind { \string }?
types = "submit" | "reset" | "push" | "url"
button-type = attribute form:button-type { types }?
common-control-id-attlist =
  attribute xml:id { ID },
  attribute form:id { NCName }?
current-selected = attribute form:current-selected { boolean }?
common-value-attlist = attribute form:value { \string }?
common-current-value-attlist = attribute form:current-value { \string }?
common-disabled-attlist = attribute form:disabled { boolean }?
dropdown = attribute form:dropdown { boolean }?
for = attribute form:for { \string }?
image-data = attribute form:image-data { anyIRI }?
label = attribute form:label { \string }?
common-maxlength-attlist =
  attribute form:max-length { nonNegativeInteger }?
common-printable-attlist = attribute form:printable { boolean }?
common-readonly-attlist = attribute form:readonly { boolean }?
selected = attribute form:selected { boolean }?
size = attribute form:size { nonNegativeInteger }?
common-tab-attlist =
  attribute form:tab-index { nonNegativeInteger }?
  & attribute form:tab-stop { boolean }?
target-frame = attribute office:target-frame { targetFrameName }?
target-location = attribute xlink:href { anyIRI }?
common-title-attlist = attribute form:title { \string }?
common-form-visual-effect-attlist =
  attribute form:visual-effect { "flat" | "3d" }?
common-form-relative-image-position-attlist =
  attribute form:image-position { "center" }?
  | (attribute form:image-position {
       "start" | "end" | "top" | "bottom"
     },
     attribute form:image-align { "start" | "center" | "end" }?)
bound-column = attribute form:bound-column { \string }?
common-convert-empty-attlist =
  attribute form:convert-empty-to-null { boolean }?
common-data-field-attlist = attribute form:data-field { \string }?
list-source = attribute form:list-source { \string }?
list-source-type =
  attribute form:list-source-type {
    "table"
    | "query"
    | "sql"
    | "sql-pass-through"
    | "value-list"
    | "table-fields"
  }?
common-linked-cell =
  attribute form:linked-cell { cellAddress | \string }?
common-source-cell-range =
  attribute form:source-cell-range { cellRangeAddress | \string }?
common-spin-button = attribute form:spin-button { boolean }?
common-repeat = attribute form:repeat { boolean }?
common-delay-for-repeat = attribute form:delay-for-repeat { duration }?
form-properties = element form:properties { form-property+ }
form-property =
  element form:property {
    form-property-name, form-property-value-and-type-attlist
  }
  | element form:list-property {
      form-property-name, form-property-type-and-value-list
    }
form-property-name = attribute form:property-name { \string }
form-property-value-and-type-attlist =
  common-value-and-type-attlist
  | attribute office:value-type { "void" }
form-property-type-and-value-list =
  (attribute office:value-type { "float" },
   element form:list-value {
     attribute office:value { double }
   }*)
  | (attribute office:value-type { "percentage" },
     element form:list-value {
       attribute office:value { double }
     }*)
  | (attribute office:value-type { "currency" },
     element form:list-value {
       attribute office:value { double },
       attribute office:currency { \string }?
     }*)
  | (attribute office:value-type { "date" },
     element form:list-value {
       attribute office:date-value { dateOrDateTime }
     }*)
  | (attribute office:value-type { "time" },
     element form:list-value {
       attribute office:time-value { duration }
     }*)
  | (attribute office:value-type { "boolean" },
     element form:list-value {
       attribute office:boolean-value { boolean }
     }*)
  | (attribute office:value-type { "string" },
     element form:list-value {
       attribute office:string-value { \string }
     }*)
  | attribute office:value-type { "void" }
office-annotation =
  element office:annotation {
    office-annotation-attlist,
    draw-caption-attlist,
    common-draw-position-attlist,
    common-draw-size-attlist,
    common-draw-shape-with-text-and-styles-attlist,
    element dc:creator { \string }?,
    element dc:date { dateTime }?,
    meta-date-string?,
    (text-p | text-list)*
  }
office-annotation-end =
  element office:annotation-end { office-annotation-end-attlist }
office-annotation-attlist =
  attribute office:display { boolean }?
  & common-office-annotation-name-attlist?
office-annotation-end-attlist = common-office-annotation-name-attlist
common-office-annotation-name-attlist =
  attribute office:name { \string }
meta-date-string = element meta:date-string { \string }
common-num-format-prefix-suffix-attlist =
  attribute style:num-prefix { \string }?,
  attribute style:num-suffix { \string }?
common-num-format-attlist =
  attribute style:num-format { "1" | "i" | "I" | \string | empty }
  | (attribute style:num-format { "a" | "A" },
     style-num-letter-sync-attlist)
  | empty
style-num-letter-sync-attlist =
  attribute style:num-letter-sync { boolean }?
office-change-info =
  element office:change-info {
    element dc:creator { \string },
    element dc:date { dateTime },
    text-p*
  }
office-event-listeners =
  element office:event-listeners {
    (script-event-listener | presentation-event-listener)*
  }
script-event-listener =
  element script:event-listener { script-event-listener-attlist, empty }
script-event-listener-attlist =
  attribute script:event-name { \string }
  & attribute script:language { \string }
  & (attribute script:macro-name { \string }
     | (attribute xlink:type { "simple" },
        attribute xlink:href { anyIRI },
        attribute xlink:actuate { "onRequest" }?))
math-math = element math:math { mathMarkup }
[
  dc:description [
    "To avoid inclusion of the complete MathML schema, anything is allowed within a math:math top-level element"
  ]
]
mathMarkup =
  (attribute * { text }
   | text
   | element * { mathMarkup })*
text-dde-connection-decl =
  element text:dde-connection-decl {
    text-dde-connection-decl-attlist, common-dde-connection-decl-attlist
  }
text-dde-connection-decl-attlist = attribute office:name { \string }
common-dde-connection-decl-attlist =
  attribute office:dde-application { \string }
  & attribute office:dde-topic { \string }
  & attribute office:dde-item { \string }
  & attribute office:automatic-update { boolean }?
table-dde-link =
  element table:dde-link { office-dde-source, table-table }
office-dde-source =
  element office:dde-source {
    office-dde-source-attlist, common-dde-connection-decl-attlist
  }
office-dde-source-attlist =
  attribute office:name { \string }?
  & attribute office:conversion-mode {
      "into-default-style-data-style"
      | "into-english-number"
      | "keep-text"
    }?
animation-element =
  element anim:animate {
    common-anim-target-attlist,
    common-anim-named-target-attlist,
    common-anim-values-attlist,
    common-anim-spline-mode-attlist,
    common-spline-anim-value-attlist,
    common-timing-attlist,
    common-anim-add-accum-attlist
  }
  | element anim:set {
      common-anim-target-attlist,
      common-anim-named-target-attlist,
      common-anim-set-values-attlist,
      common-timing-attlist,
      common-anim-add-accum-attlist
    }
  | element anim:animateMotion {
      anim-animate-motion-attlist,
      common-anim-target-attlist,
      common-anim-named-target-attlist,
      common-anim-add-accum-attlist,
      common-anim-values-attlist,
      common-timing-attlist,
      common-spline-anim-value-attlist
    }
  | element anim:animateColor {
      common-anim-target-attlist,
      common-anim-named-target-attlist,
      common-anim-add-accum-attlist,
      common-anim-values-attlist,
      common-anim-spline-mode-attlist,
      common-spline-anim-value-attlist,
      anim-animate-color-attlist,
      common-timing-attlist
    }
  | element anim:animateTransform {
      common-anim-target-attlist,
      common-anim-named-target-attlist,
      common-anim-add-accum-attlist,
      common-anim-values-attlist,
      anim-animate-transform-attlist,
      common-timing-attlist
    }
  | element anim:transitionFilter {
      common-anim-target-attlist,
      common-anim-add-accum-attlist,
      common-anim-values-attlist,
      common-anim-spline-mode-attlist,
      anim-transition-filter-attlist,
      common-timing-attlist
    }
  | element anim:par {
      common-anim-attlist,
      common-timing-attlist,
      common-endsync-timing-attlist,
      animation-element*
    }
  | element anim:seq {
      common-anim-attlist,
      common-endsync-timing-attlist,
      common-timing-attlist,
      animation-element*
    }
  | element anim:iterate {
      common-anim-attlist,
      anim-iterate-attlist,
      common-timing-attlist,
      common-endsync-timing-attlist,
      animation-element*
    }
  | element anim:audio {
      common-anim-attlist,
      anim-audio-attlist,
      common-basic-timing-attlist
    }
  | element anim:command {
      common-anim-attlist,
      anim-command-attlist,
      common-begin-end-timing-attlist,
      common-anim-target-attlist,
      element anim:param {
        attribute anim:name { \string },
        attribute anim:value { \string }
      }*
    }
anim-animate-motion-attlist =
  attribute svg:path { pathData }?
  & attribute svg:origin { \string }?
  & attribute smil:calcMode {
      "discrete" | "linear" | "paced" | "spline"
    }?
anim-animate-color-attlist =
  attribute anim:color-interpolation { "rgb" | "hsl" }?
  & attribute anim:color-interpolation-direction {
      "clockwise" | "counter-clockwise"
    }?
anim-animate-transform-attlist =
  attribute svg:type {
    "translate" | "scale" | "rotate" | "skewX" | "skewY"
  }
anim-transition-filter-attlist =
  attribute smil:type { \string }
  & attribute smil:subtype { \string }?
  & attribute smil:direction { "forward" | "reverse" }?
  & attribute smil:fadeColor { color }?
  & attribute smil:mode { "in" | "out" }?
common-anim-target-attlist =
  attribute smil:targetElement { IDREF }?
  & attribute anim:sub-item { \string }?
common-anim-named-target-attlist =
  attribute smil:attributeName { \string }
common-anim-values-attlist =
  attribute smil:values { \string }?
  & attribute anim:formula { \string }?
  & common-anim-set-values-attlist
  & attribute smil:from { \string }?
  & attribute smil:by { \string }?
common-anim-spline-mode-attlist =
  attribute smil:calcMode {
    "discrete" | "linear" | "paced" | "spline"
  }?
common-spline-anim-value-attlist =
  attribute smil:keyTimes { \string }?
  & attribute smil:keySplines { \string }?
common-anim-add-accum-attlist =
  attribute smil:accumulate { "none" | "sum" }?
  & attribute smil:additive { "replace" | "sum" }?
common-anim-set-values-attlist = attribute smil:to { \string }?
common-begin-end-timing-attlist =
  attribute smil:begin { \string }?
  & attribute smil:end { \string }?
common-dur-timing-attlist = attribute smil:dur { \string }?
common-endsync-timing-attlist =
  attribute smil:endsync { "first" | "last" | "all" | "media" | IDREF }?
common-repeat-timing-attlist =
  attribute smil:repeatDur { \string }?,
  attribute smil:repeatCount { nonNegativeDecimal | "indefinite" }?
nonNegativeDecimal = xsd:decimal { minInclusive = "0.0" }
common-fill-timing-attlist =
  attribute smil:fill {
    "remove" | "freeze" | "hold" | "auto" | "default" | "transition"
  }?
common-fill-default-attlist =
  attribute smil:fillDefault {
    "remove" | "freeze" | "hold" | "transition" | "auto" | "inherit"
  }?
common-restart-timing-attlist =
  attribute smil:restart {
    "never" | "always" | "whenNotActive" | "default"
  }?
common-restart-default-attlist =
  attribute smil:restartDefault {
    "never" | "always" | "whenNotActive" | "inherit"
  }?
common-time-manip-attlist =
  attribute smil:accelerate { zeroToOneDecimal }?
  & attribute smil:decelerate { zeroToOneDecimal }?
  & attribute smil:autoReverse { boolean }?
zeroToOneDecimal = xsd:decimal { minInclusive = "0" maxInclusive = "1" }
common-basic-timing-attlist =
  common-begin-end-timing-attlist,
  common-dur-timing-attlist,
  common-repeat-timing-attlist,
  common-restart-timing-attlist,
  common-restart-default-attlist,
  common-fill-timing-attlist,
  common-fill-default-attlist
common-timing-attlist =
  common-basic-timing-attlist, common-time-manip-attlist
anim-iterate-attlist =
  common-anim-target-attlist
  & attribute anim:iterate-type { \string }?
  & attribute anim:iterate-interval { duration }?
anim-audio-attlist =
  attribute xlink:href { anyIRI }?
  & attribute anim:audio-level { double }?
anim-command-attlist = attribute anim:command { \string }
style-map = element style:map { style-map-attlist, empty }
style-map-attlist =
  attribute style:condition { \string }
  & attribute style:apply-style-name { styleNameRef }
  & attribute style:base-cell-address { cellAddress }?
style-default-style =
  element style:default-style { style-style-content }
style-page-layout =
  element style:page-layout {
    style-page-layout-attlist, style-page-layout-content
  }
style-page-layout-content =
  style-page-layout-properties?,
  style-header-style?,
  style-footer-style?
style-page-layout-attlist =
  attribute style:name { styleName }
  & attribute style:page-usage {
      "all" | "left" | "right" | "mirrored"
    }?
style-header-style =
  element style:header-style { style-header-footer-properties? }
style-footer-style =
  element style:footer-style { style-header-footer-properties? }
style-default-page-layout =
  element style:default-page-layout { style-page-layout-content }
style-master-page =
  element style:master-page {
    style-master-page-attlist,
    (style-header, style-header-left?)?,
    (style-footer, style-footer-left?)?,
    draw-layer-set?,
    office-forms?,
    shape*,
    animation-element?,
    presentation-notes?
  }
style-master-page-attlist =
  attribute style:name { styleName }
  & attribute style:display-name { \string }?
  & attribute style:page-layout-name { styleNameRef }
  & attribute draw:style-name { styleNameRef }?
  & attribute style:next-style-name { styleNameRef }?
style-header =
  element style:header {
    common-style-header-footer-attlist, header-footer-content
  }
style-footer =
  element style:footer {
    common-style-header-footer-attlist, header-footer-content
  }
style-header-left =
  element style:header-left {
    common-style-header-footer-attlist, header-footer-content
  }
style-footer-left =
  element style:footer-left {
    common-style-header-footer-attlist, header-footer-content
  }
header-footer-content =
  (text-tracked-changes,
   text-decls,
   (text-h
    | text-p
    | text-list
    | table-table
    | text-section
    | text-table-of-content
    | text-illustration-index
    | text-table-index
    | text-object-index
    | text-user-index
    | text-alphabetical-index
    | text-bibliography
    | text-index-title
    | change-marks)*)
  | (style-region-left?, style-region-center?, style-region-right?)
common-style-header-footer-attlist =
  attribute style:display { boolean }?
style-region-left = element style:region-left { region-content }
style-region-center = element style:region-center { region-content }
style-region-right = element style:region-right { region-content }
region-content = text-p*
presentation-notes =
  element presentation:notes {
    common-presentation-header-footer-attlist,
    presentation-notes-attlist,
    office-forms,
    shape*
  }
presentation-notes-attlist =
  attribute style:page-layout-name { styleNameRef }?
  & attribute draw:style-name { styleNameRef }?
style-font-face =
  element style:font-face {
    style-font-face-attlist, svg-font-face-src?, svg-definition-src?
  }
style-font-face-attlist =
  attribute svg:font-family { \string }?
  & attribute svg:font-style { "normal" | "italic" | "oblique" }?
  & attribute svg:font-variant { "normal" | "small-caps" }?
  & attribute svg:font-weight { fontWeight }?
  & attribute svg:font-stretch {
      "normal"
      | "ultra-condensed"
      | "extra-condensed"
      | "condensed"
      | "semi-condensed"
      | "semi-expanded"
      | "expanded"
      | "extra-expanded"
      | "ultra-expanded"
    }?
  & attribute svg:font-size { positiveLength }?
  & attribute svg:unicode-range { \string }?
  & attribute svg:units-per-em { integer }?
  & attribute svg:panose-1 { \string }?
  & attribute svg:stemv { integer }?
  & attribute svg:stemh { integer }?
  & attribute svg:slope { integer }?
  & attribute svg:cap-height { integer }?
  & attribute svg:x-height { integer }?
  & attribute svg:accent-height { integer }?
  & attribute svg:ascent { integer }?
  & attribute svg:descent { integer }?
  & attribute svg:widths { \string }?
  & attribute svg:bbox { \string }?
  & attribute svg:ideographic { integer }?
  & attribute svg:alphabetic { integer }?
  & attribute svg:mathematical { integer }?
  & attribute svg:hanging { integer }?
  & attribute svg:v-ideographic { integer }?
  & attribute svg:v-alphabetic { integer }?
  & attribute svg:v-mathematical { integer }?
  & attribute svg:v-hanging { integer }?
  & attribute svg:underline-position { integer }?
  & attribute svg:underline-thickness { integer }?
  & attribute svg:strikethrough-position { integer }?
  & attribute svg:strikethrough-thickness { integer }?
  & attribute svg:overline-position { integer }?
  & attribute svg:overline-thickness { integer }?
  & attribute style:name { \string }
  & attribute style:font-adornments { \string }?
  & attribute style:font-family-generic { "roman" | "swiss" | "modern" | "decorative" | "script" | "system" }?
  & attribute style:font-pitch { "fixed" | "variable" }?
  & attribute style:font-charset { textEncoding }?
svg-font-face-src =
  element svg:font-face-src {
    (svg-font-face-uri | svg-font-face-name)+
  }
svg-font-face-uri =
  element svg:font-face-uri {
    common-svg-font-face-xlink-attlist, svg-font-face-format*
  }
svg-font-face-format =
  element svg:font-face-format {
    attribute svg:string { \string }?,
    empty
  }
svg-font-face-name =
  element svg:font-face-name {
    attribute svg:name { \string }?,
    empty
  }
svg-definition-src =
  element svg:definition-src {
    common-svg-font-face-xlink-attlist, empty
  }
common-svg-font-face-xlink-attlist =
  attribute xlink:type { "simple" },
  attribute xlink:href { anyIRI },
  attribute xlink:actuate { "onRequest" }?
number-number-style =
  element number:number-style {
    common-data-style-attlist,
    style-text-properties?,
    number-text?,
    (any-number, number-text?)?,
    style-map*
  }
any-number = number-number | number-scientific-number | number-fraction
number-number =
  element number:number {
    number-number-attlist,
    common-decimal-places-attlist,
    common-number-attlist,
    number-embedded-text*
  }
number-number-attlist =
  attribute number:decimal-replacement { \string }?
  & attribute number:display-factor { double }?
number-embedded-text =
  element number:embedded-text { number-embedded-text-attlist, text }
number-embedded-text-attlist = attribute number:position { integer }
number-scientific-number =
  element number:scientific-number {
    number-scientific-number-attlist,
    common-decimal-places-attlist,
    common-number-attlist,
    empty
  }
number-scientific-number-attlist =
  attribute number:min-exponent-digits { integer }?
number-fraction =
  element number:fraction {
    number-fraction-attlist, common-number-attlist, empty
  }
number-fraction-attlist =
  attribute number:min-numerator-digits { integer }?
  & attribute number:min-denominator-digits { integer }?
  & attribute number:denominator-value { integer }?
number-currency-style =
  element number:currency-style {
    common-data-style-attlist,
    common-auto-reorder-attlist,
    style-text-properties?,
    number-text?,
    ((number-and-text, currency-symbol-and-text?)
     | (currency-symbol-and-text, number-and-text?))?,
    style-map*
  }
currency-symbol-and-text = number-currency-symbol, number-text?
number-and-text = number-number, number-text?
number-currency-symbol =
  element number:currency-symbol {
    number-currency-symbol-attlist, text
  }
number-currency-symbol-attlist =
  attribute number:language { languageCode }?,
  attribute number:country { countryCode }?,
  attribute number:script { scriptCode }?,
  attribute number:rfc-language-tag { language }?
number-percentage-style =
  element number:percentage-style {
    common-data-style-attlist,
    style-text-properties?,
    number-text?,
    number-and-text?,
    style-map*
  }
number-date-style =
  element number:date-style {
    common-data-style-attlist,
    common-auto-reorder-attlist,
    common-format-source-attlist,
    style-text-properties?,
    number-text?,
    (any-date, number-text?)+,
    style-map*
  }
any-date =
  number-day
  | number-month
  | number-year
  | number-era
  | number-day-of-week
  | number-week-of-year
  | number-quarter
  | number-hours
  | number-am-pm
  | number-minutes
  | number-seconds
number-day =
  element number:day {
    number-day-attlist, common-calendar-attlist, empty
  }
number-day-attlist = attribute number:style { "short" | "long" }?
number-month =
  element number:month {
    number-month-attlist, common-calendar-attlist, empty
  }
number-month-attlist =
  attribute number:textual { boolean }?
  & attribute number:possessive-form { boolean }?
  & attribute number:style { "short" | "long" }?
number-year =
  element number:year {
    number-year-attlist, common-calendar-attlist, empty
  }
number-year-attlist = attribute number:style { "short" | "long" }?
number-era =
  element number:era {
    number-era-attlist, common-calendar-attlist, empty
  }
number-era-attlist = attribute number:style { "short" | "long" }?
number-day-of-week =
  element number:day-of-week {
    number-day-of-week-attlist, common-calendar-attlist, empty
  }
number-day-of-week-attlist =
  attribute number:style { "short" | "long" }?
number-week-of-year =
  element number:week-of-year { common-calendar-attlist, empty }
number-quarter =
  element number:quarter {
    number-quarter-attlist, common-calendar-attlist, empty
  }
number-quarter-attlist = attribute number:style { "short" | "long" }?
number-time-style =
  element number:time-style {
    number-time-style-attlist,
    common-data-style-attlist,
    common-format-source-attlist,
    style-text-properties?,
    number-text?,
    (any-time, number-text?)+,
    style-map*
  }
any-time = number-hours | number-am-pm | number-minutes | number-seconds
number-time-style-attlist =
  attribute number:truncate-on-overflow { boolean }?
number-hours = element number:hours { number-hours-attlist, empty }
number-hours-attlist = attribute number:style { "short" | "long" }?
number-minutes =
  element number:minutes { number-minutes-attlist, empty }
number-minutes-attlist = attribute number:style { "short" | "long" }?
number-seconds =
  element number:seconds { number-seconds-attlist, empty }
number-seconds-attlist =
  attribute number:style { "short" | "long" }?
  & attribute number:decimal-places { integer }?
number-am-pm = element number:am-pm { empty }
number-boolean-style =
  element number:boolean-style {
    common-data-style-attlist,
    style-text-properties?,
    number-text?,
    (number-boolean, number-text?)?,
    style-map*
  }
number-boolean = element number:boolean { empty }
number-text-style =
  element number:text-style {
    common-data-style-attlist,
    style-text-properties?,
    number-text?,
    (number-text-content, number-text?)*,
    style-map*
  }
number-text = element number:text { text }
number-text-content = element number:text-content { empty }
common-data-style-attlist =
  attribute style:name { styleName }
  & attribute style:display-name { \string }?
  & attribute number:language { languageCode }?
  & attribute number:country { countryCode }?
  & attribute number:script { scriptCode }?
  & attribute number:rfc-language-tag { language }?
  & attribute number:title { \string }?
  & attribute style:volatile { boolean }?
  & attribute number:transliteration-format { \string }?
  & attribute number:transliteration-language { countryCode }?
  & attribute number:transliteration-country { countryCode }?
  & attribute number:transliteration-style {
      "short" | "medium" | "long"
    }?
common-auto-reorder-attlist =
  attribute number:automatic-order { boolean }?
common-format-source-attlist =
  attribute number:format-source { "fixed" | "language" }?
common-decimal-places-attlist =
  attribute number:decimal-places { integer }?
common-number-attlist =
  attribute number:min-integer-digits { integer }?
  & attribute number:grouping { boolean }?
common-calendar-attlist =
  attribute number:calendar {
    "gregorian"
    | "gengou"
    | "ROC"
    | "hanja_yoil"
    | "hanja"
    | "hijri"
    | "jewish"
    | "buddhist"
    | \string
  }?
text-linenumbering-configuration =
  element text:linenumbering-configuration {
    text-linenumbering-configuration-attlist,
    text-linenumbering-separator?
  }
text-linenumbering-configuration-attlist =
  attribute text:number-lines { boolean }?
  & common-num-format-attlist?
  & attribute text:style-name { styleNameRef }?
  & attribute text:increment { nonNegativeInteger }?
  & attribute text:number-position {
      "left" | "right" | "inner" | "outer"
    }?
  & attribute text:offset { nonNegativeLength }?
  & attribute text:count-empty-lines { boolean }?
  & attribute text:count-in-text-boxes { boolean }?
  & attribute text:restart-on-page { boolean }?
text-linenumbering-separator =
  element text:linenumbering-separator {
    attribute text:increment { nonNegativeInteger }?,
    text
  }
text-notes-configuration =
  element text:notes-configuration { text-notes-configuration-content }
text-notes-configuration-content =
  text-note-class
  & attribute text:citation-style-name { styleNameRef }?
  & attribute text:citation-body-style-name { styleNameRef }?
  & attribute text:default-style-name { styleNameRef }?
  & attribute text:master-page-name { styleNameRef }?
  & attribute text:start-value { nonNegativeInteger }?
  & common-num-format-prefix-suffix-attlist
  & common-num-format-attlist?
  & attribute text:start-numbering-at {
      "document" | "chapter" | "page"
    }?
  & attribute text:footnotes-position {
      "text" | "page" | "section" | "document"
    }?
  & element text:note-continuation-notice-forward { text }?
  & element text:note-continuation-notice-backward { text }?
text-bibliography-configuration =
  element text:bibliography-configuration {
    text-bibliography-configuration-attlist, text-sort-key*
  }
text-bibliography-configuration-attlist =
  attribute text:prefix { \string }?
  & attribute text:suffix { \string }?
  & attribute text:numbered-entries { boolean }?
  & attribute text:sort-by-position { boolean }?
  & attribute fo:language { languageCode }?
  & attribute fo:country { countryCode }?
  & attribute fo:script { scriptCode }?
  & attribute style:rfc-language-tag { language }?
  & attribute text:sort-algorithm { \string }?
text-sort-key = element text:sort-key { text-sort-key-attlist, empty }
text-sort-key-attlist =
  attribute text:key {
    "address"
    | "annote"
    | "author"
    | "bibliography-type"
    | "booktitle"
    | "chapter"
    | "custom1"
    | "custom2"
    | "custom3"
    | "custom4"
    | "custom5"
    | "edition"
    | "editor"
    | "howpublished"
    | "identifier"
    | "institution"
    | "isbn"
    | "issn"
    | "journal"
    | "month"
    | "note"
    | "number"
    | "organizations"
    | "pages"
    | "publisher"
    | "report-type"
    | "school"
    | "series"
    | "title"
    | "url"
    | "volume"
    | "year"
  },
  attribute text:sort-ascending { boolean }?
text-list-style =
  element text:list-style {
    text-list-style-attr, text-list-style-content*
  }
text-list-style-attr =
  attribute style:name { styleName }
  & attribute style:display-name { \string }?
  & attribute text:consecutive-numbering { boolean }?
text-list-style-content =
  element text:list-level-style-number {
    text-list-level-style-attr,
    text-list-level-style-number-attr,
    style-list-level-properties?,
    style-text-properties?
  }
  | element text:list-level-style-bullet {
      text-list-level-style-attr,
      text-list-level-style-bullet-attr,
      style-list-level-properties?,
      style-text-properties?
    }
  | element text:list-level-style-image {
      text-list-level-style-attr,
      text-list-level-style-image-attr,
      style-list-level-properties?
    }
text-list-level-style-number-attr =
  attribute text:style-name { styleNameRef }?
  & common-num-format-attlist
  & common-num-format-prefix-suffix-attlist
  & attribute text:display-levels { positiveInteger }?
  & attribute text:start-value { positiveInteger }?
text-list-level-style-bullet-attr =
  attribute text:style-name { styleNameRef }?
  & attribute text:bullet-char { character }
  & common-num-format-prefix-suffix-attlist
  & attribute text:bullet-relative-size { percent }?
text-list-level-style-image-attr =
  common-draw-data-attlist | office-binary-data
text-list-level-style-attr = attribute text:level { positiveInteger }
text-outline-style =
  element text:outline-style {
    text-outline-style-attr, text-outline-level-style+
  }
text-outline-style-attr = attribute style:name { styleName }
text-outline-level-style =
  element text:outline-level-style {
    text-outline-level-style-attlist,
    style-list-level-properties?,
    style-text-properties?
  }
text-outline-level-style-attlist =
  attribute text:level { positiveInteger }
  & attribute text:style-name { styleNameRef }?
  & common-num-format-attlist
  & common-num-format-prefix-suffix-attlist
  & attribute text:display-levels { positiveInteger }?
  & attribute text:start-value { positiveInteger }?
style-graphic-properties =
  element style:graphic-properties {
    style-graphic-properties-content-strict
  }
style-graphic-properties-content-strict =
  style-graphic-properties-attlist,
  style-graphic-fill-properties-attlist,
  style-graphic-properties-elements
style-drawing-page-properties =
  element style:drawing-page-properties {
    style-drawing-page-properties-content-strict
  }
style-drawing-page-properties-content-strict =
  style-graphic-fill-properties-attlist,
  style-drawing-page-properties-attlist,
  style-drawing-page-properties-elements
draw-gradient =
  element draw:gradient {
    common-draw-gradient-attlist, draw-gradient-attlist, empty
  }
common-draw-gradient-attlist =
  attribute draw:name { styleName }?
  & attribute draw:display-name { \string }?
  & attribute draw:style { gradient-style }
  & attribute draw:cx { percent }?
  & attribute draw:cy { percent }?
  & attribute draw:angle { angle }?
  & attribute draw:border { percent }?
gradient-style =
  "linear" | "axial" | "radial" | "ellipsoid" | "square" | "rectangular"
draw-gradient-attlist =
  attribute draw:start-color { color }?
  & attribute draw:end-color { color }?
  & attribute draw:start-intensity { zeroToHundredPercent }?
  & attribute draw:end-intensity { zeroToHundredPercent }?
svg-linearGradient =
  element svg:linearGradient {
    common-svg-gradient-attlist,
    attribute svg:x1 { coordinate | percent }?,
    attribute svg:y1 { coordinate | percent }?,
    attribute svg:x2 { coordinate | percent }?,
    attribute svg:y2 { coordinate | percent }?,
    svg-stop*
  }
svg-radialGradient =
  element svg:radialGradient {
    common-svg-gradient-attlist,
    attribute svg:cx { coordinate | percent }?,
    attribute svg:cy { coordinate | percent }?,
    attribute svg:r { coordinate | percent }?,
    attribute svg:fx { coordinate | percent }?,
    attribute svg:fy { coordinate | percent }?,
    svg-stop*
  }
svg-stop =
  element svg:stop {
    attribute svg:offset { double | percent },
    attribute svg:stop-color { color }?,
    attribute svg:stop-opacity { double }?
  }
common-svg-gradient-attlist =
  attribute svg:gradientUnits { "objectBoundingBox" }?
  & attribute svg:gradientTransform { \string }?
  & attribute svg:spreadMethod { "pad" | "reflect" | "repeat" }?
  & attribute draw:name { styleName }
  & attribute draw:display-name { \string }?
draw-hatch = element draw:hatch { draw-hatch-attlist, empty }
draw-hatch-attlist =
  attribute draw:name { styleName }
  & attribute draw:display-name { \string }?
  & attribute draw:style { "single" | "double" | "triple" }
  & attribute draw:color { color }?
  & attribute draw:distance { length }?
  & attribute draw:rotation { angle }?
draw-fill-image =
  element draw:fill-image {
    draw-fill-image-attlist,
    attribute xlink:type { "simple" },
    attribute xlink:href { anyIRI },
    attribute xlink:show { "embed" }?,
    attribute xlink:actuate { "onLoad" }?,
    empty
  }
draw-fill-image-attlist =
  attribute draw:name { styleName }
  & attribute draw:display-name { \string }?
  & attribute svg:width { length }?
  & attribute svg:height { length }?
draw-opacity =
  element draw:opacity {
    common-draw-gradient-attlist, draw-opacity-attlist, empty
  }
draw-opacity-attlist =
  attribute draw:start { zeroToHundredPercent }?,
  attribute draw:end { zeroToHundredPercent }?
draw-marker =
  element draw:marker {
    draw-marker-attlist,
    common-draw-viewbox-attlist,
    common-draw-path-data-attlist,
    empty
  }
draw-marker-attlist =
  attribute draw:name { styleName }
  & attribute draw:display-name { \string }?
draw-stroke-dash =
  element draw:stroke-dash { draw-stroke-dash-attlist, empty }
draw-stroke-dash-attlist =
  attribute draw:name { styleName }
  & attribute draw:display-name { \string }?
  & attribute draw:style { "rect" | "round" }?
  & attribute draw:dots1 { integer }?
  & attribute draw:dots1-length { length | percent }?
  & attribute draw:dots2 { integer }?
  & attribute draw:dots2-length { length | percent }?
  & attribute draw:distance { length | percent }?
style-presentation-page-layout =
  element style:presentation-page-layout {
    attribute style:name { styleName },
    attribute style:display-name { \string }?,
    presentation-placeholder*
  }
presentation-placeholder =
  element presentation:placeholder {
    attribute presentation:object { presentation-classes },
    attribute svg:x { coordinate | percent },
    attribute svg:y { coordinate | percent },
    attribute svg:width { length | percent },
    attribute svg:height { length | percent },
    empty
  }
style-page-layout-properties =
  element style:page-layout-properties {
    style-page-layout-properties-content-strict
  }
style-page-layout-properties-content-strict =
  style-page-layout-properties-attlist,
  style-page-layout-properties-elements
style-page-layout-properties-attlist =
  attribute fo:page-width { length }?
  & attribute fo:page-height { length }?
  & common-num-format-attlist?
  & common-num-format-prefix-suffix-attlist
  & attribute style:paper-tray-name { "default" | \string }?
  & attribute style:print-orientation { "portrait" | "landscape" }?
  & common-horizontal-margin-attlist
  & common-vertical-margin-attlist
  & common-margin-attlist
  & common-border-attlist
  & common-border-line-width-attlist
  & common-padding-attlist
  & common-shadow-attlist
  & common-background-color-attlist
  & attribute style:register-truth-ref-style-name { styleNameRef }?
  & attribute style:print {
      list {
        ("headers"
         | "grid"
         | "annotations"
         | "objects"
         | "charts"
         | "drawings"
         | "formulas"
         | "zero-values")*
      }
    }?
  & attribute style:print-page-order { "ttb" | "ltr" }?
  & attribute style:first-page-number { positiveInteger | "continue" }?
  & attribute style:scale-to { percent }?
  & attribute style:scale-to-pages { positiveInteger }?
  & attribute style:table-centering {
      "horizontal" | "vertical" | "both" | "none"
    }?
  & attribute style:footnote-max-height { length }?
  & common-writing-mode-attlist
  & attribute style:layout-grid-mode { "none" | "line" | "both" }?
  & attribute style:layout-grid-standard-mode { boolean }?
  & attribute style:layout-grid-base-height { length }?
  & attribute style:layout-grid-ruby-height { length }?
  & attribute style:layout-grid-lines { positiveInteger }?
  & attribute style:layout-grid-base-width { length }?
  & attribute style:layout-grid-color { color }?
  & attribute style:layout-grid-ruby-below { boolean }?
  & attribute style:layout-grid-print { boolean }?
  & attribute style:layout-grid-display { boolean }?
  & attribute style:layout-grid-snap-to { boolean }?
style-page-layout-properties-elements =
  style-background-image & style-columns & style-footnote-sep
style-footnote-sep =
  element style:footnote-sep { style-footnote-sep-attlist, empty }?
style-footnote-sep-attlist =
  attribute style:width { length }?,
  attribute style:rel-width { percent }?,
  attribute style:color { color }?,
  attribute style:line-style { lineStyle }?,
  attribute style:adjustment { "left" | "center" | "right" }?,
  attribute style:distance-before-sep { length }?,
  attribute style:distance-after-sep { length }?
style-header-footer-properties =
  element style:header-footer-properties {
    style-header-footer-properties-content-strict
  }
style-header-footer-properties-content-strict =
  style-header-footer-properties-attlist,
  style-header-footer-properties-elements
style-header-footer-properties-attlist =
  attribute svg:height { length }?
  & attribute fo:min-height { length }?
  & common-horizontal-margin-attlist
  & common-vertical-margin-attlist
  & common-margin-attlist
  & common-border-attlist
  & common-border-line-width-attlist
  & common-padding-attlist
  & common-background-color-attlist
  & common-shadow-attlist
  & attribute style:dynamic-spacing { boolean }?
style-header-footer-properties-elements = style-background-image





textEncoding = xsd:string { pattern = "[A-Za-z][A-Za-z0-9._\-]*" }
lineStyle =
  "none"
  | "solid"
  | "dotted"
  | "dash"
  | "long-dash"
  | "dot-dash"
  | "dot-dot-dash"
  | "wave"
lineWidth =
  "auto"
  | "normal"
  | "bold"
  | "thin"
  | "medium"
  | "thick"
  | positiveInteger
  | percent
  | positiveLength
fontWeight =
  "normal"
  | "bold"
  | "100"
  | "200"
  | "300"
  | "400"
  | "500"
  | "600"
  | "700"
  | "800"
  | "900"

common-text-align =
  attribute fo:text-align {
    "start" | "end" | "left" | "right" | "center" | "justify"
  }?
style-tab-stops = element style:tab-stops { style-tab-stop* }?
style-tab-stop =
  element style:tab-stop { style-tab-stop-attlist, empty }
style-tab-stop-attlist =
  attribute style:position { length }
  & (attribute style:type { "left" | "center" | "right" }?
     | (attribute style:type { "char" },
        style-tab-stop-char-attlist))
  & attribute style:leader-type { "none" | "single" | "double" }?
  & attribute style:leader-style { lineStyle }?
  & attribute style:leader-width { lineWidth }?
  & attribute style:leader-color { "font-color" | color }?
  & attribute style:leader-text { character }?
  & attribute style:leader-text-style { styleNameRef }?
style-tab-stop-char-attlist = attribute style:char { character }
style-drop-cap =
  element style:drop-cap { style-drop-cap-attlist, empty }?
style-drop-cap-attlist =
  attribute style:length { "word" | positiveInteger }?
  & attribute style:lines { positiveInteger }?
  & attribute style:distance { length }?
  & attribute style:style-name { styleNameRef }?
common-horizontal-margin-attlist =
  attribute fo:margin-left { length | percent }?,
  attribute fo:margin-right { length | percent }?
common-vertical-margin-attlist =
  attribute fo:margin-top { nonNegativeLength | percent }?,
  attribute fo:margin-bottom { nonNegativeLength | percent }?
common-margin-attlist =
  attribute fo:margin { nonNegativeLength | percent }?
common-break-attlist =
  attribute fo:break-before { "auto" | "column" | "page" }?,
  attribute fo:break-after { "auto" | "column" | "page" }?
common-background-color-attlist =
  attribute fo:background-color { "transparent" | color }?
style-background-image =
  element style:background-image {
    style-background-image-attlist,
    (common-draw-data-attlist | office-binary-data | empty)
  }?
style-background-image-attlist =
  attribute style:repeat { "no-repeat" | "repeat" | "stretch" }?
  & attribute style:position {
      "left"
      | "center"
      | "right"
      | "top"
      | "bottom"
      | list { horiBackPos, vertBackPos }
      | list { vertBackPos, horiBackPos }
    }?
  & attribute style:filter-name { \string }?
  & attribute draw:opacity { zeroToHundredPercent }?
horiBackPos = "left" | "center" | "right"
vertBackPos = "top" | "center" | "bottom"
common-border-attlist =
  attribute fo:border { \string }?,
  attribute fo:border-top { \string }?,
  attribute fo:border-bottom { \string }?,
  attribute fo:border-left { \string }?,
  attribute fo:border-right { \string }?
common-border-line-width-attlist =
  attribute style:border-line-width { borderWidths }?,
  attribute style:border-line-width-top { borderWidths }?,
  attribute style:border-line-width-bottom { borderWidths }?,
  attribute style:border-line-width-left { borderWidths }?,
  attribute style:border-line-width-right { borderWidths }?
borderWidths = list { positiveLength, positiveLength, positiveLength }
common-padding-attlist =
  attribute fo:padding { nonNegativeLength }?,
  attribute fo:padding-top { nonNegativeLength }?,
  attribute fo:padding-bottom { nonNegativeLength }?,
  attribute fo:padding-left { nonNegativeLength }?,
  attribute fo:padding-right { nonNegativeLength }?
common-shadow-attlist = attribute style:shadow { "none" | \string }?
common-keep-with-next-attlist =
  attribute fo:keep-with-next { "auto" | "always" }?
common-writing-mode-attlist =
  attribute style:writing-mode {
    "lr-tb" | "rl-tb" | "tb-rl" | "tb-lr" | "lr" | "rl" | "tb" | "page"
  }?
common-page-number-attlist =
  attribute style:page-number { positiveInteger | "auto" }?
common-background-transparency-attlist =
  attribute style:background-transparency { zeroToHundredPercent }?
style-ruby-properties =
  element style:ruby-properties { style-ruby-properties-content-strict }
style-ruby-properties-content-strict =
  style-ruby-properties-attlist, style-ruby-properties-elements
style-ruby-properties-elements = empty
style-ruby-properties-attlist =
  attribute style:ruby-position { "above" | "below" }?
  & attribute style:ruby-align {
      "left"
      | "center"
      | "right"
      | "distribute-letter"
      | "distribute-space"
    }?
style-section-properties =
  element style:section-properties {
    style-section-properties-content-strict
  }
style-section-properties-content-strict =
  style-section-properties-attlist, style-section-properties-elements
style-section-properties-attlist =
  common-background-color-attlist
  & common-horizontal-margin-attlist
  & attribute style:protect { boolean }?
  & common-editable-attlist
  & attribute text:dont-balance-text-columns { boolean }?
  & common-writing-mode-attlist
style-section-properties-elements =
  style-background-image & style-columns & text-notes-configuration*
style-columns =
  element style:columns {
    style-columns-attlist, style-column-sep?, style-column*
  }?
style-columns-attlist =
  attribute fo:column-count { positiveInteger }
  & attribute fo:column-gap { length }?
style-column = element style:column { style-column-attlist }
style-column-attlist =
  attribute style:rel-width { relativeLength }
  & attribute fo:start-indent { length }?
  & attribute fo:end-indent { length }?
  & attribute fo:space-before { length }?
  & attribute fo:space-after { length }?
style-column-sep = element style:column-sep { style-column-sep-attlist }
style-column-sep-attlist =
  attribute style:style {
    "none" | "solid" | "dotted" | "dashed" | "dot-dashed"
  }?
  & attribute style:width { length }
  & attribute style:height { zeroToHundredPercent }?
  & attribute style:vertical-align { "top" | "middle" | "bottom" }?
  & attribute style:color { color }?
common-style-direction-attlist =
  attribute style:direction { "ltr" | "ttb" }?
style-table-cell-properties-elements = style-background-image
common-rotation-angle-attlist =
  attribute style:rotation-angle { angle }?
style-list-level-properties =
  element style:list-level-properties {
    style-list-level-properties-content-strict
  }
style-list-level-properties-content-strict =
  style-list-level-properties-attlist,
  style-list-level-properties-elements
style-list-level-properties-attlist =
  common-text-align
  & attribute text:space-before { length }?
  & attribute text:min-label-width { nonNegativeLength }?
  & attribute text:min-label-distance { nonNegativeLength }?
  & attribute style:font-name { \string }?
  & attribute fo:width { positiveLength }?
  & attribute fo:height { positiveLength }?
  & common-vertical-rel-attlist
  & common-vertical-pos-attlist
  & attribute text:list-level-position-and-space-mode {
      "label-width-and-position" | "label-alignment"
    }?
style-list-level-properties-elements = style-list-level-label-alignment
style-list-level-label-alignment =
  element style:list-level-label-alignment {
    style-list-level-label-alignment-attlist, empty
  }?
style-list-level-label-alignment-attlist =
  attribute text:label-followed-by { "listtab" | "space" | "nothing" }
  & attribute text:list-tab-stop-position { length }?
  & attribute fo:text-indent { length }?
  & attribute fo:margin-left { length }?
style-graphic-properties-attlist =
  attribute draw:stroke { "none" | "dash" | "solid" }?
  & attribute draw:stroke-dash { styleNameRef }?
  & attribute draw:stroke-dash-names { styleNameRefs }?
  & attribute svg:stroke-width { length }?
  & attribute svg:stroke-color { color }?
  & attribute draw:marker-start { styleNameRef }?
  & attribute draw:marker-end { styleNameRef }?
  & attribute draw:marker-start-width { length }?
  & attribute draw:marker-end-width { length }?
  & attribute draw:marker-start-center { boolean }?
  & attribute draw:marker-end-center { boolean }?
  & attribute svg:stroke-opacity {
      xsd:double { minInclusive = "0" maxInclusive = "1" }
      | zeroToHundredPercent
    }?
  & attribute draw:stroke-linejoin {
      "miter" | "round" | "bevel" | "middle" | "none"
    }?
  & attribute svg:stroke-linecap { "butt" | "square" | "round" }?
  & attribute draw:symbol-color { color }?
  & attribute text:animation {
      "none" | "scroll" | "alternate" | "slide"
    }?
  & attribute text:animation-direction {
      "left" | "right" | "up" | "down"
    }?
  & attribute text:animation-start-inside { boolean }?
  & attribute text:animation-stop-inside { boolean }?
  & attribute text:animation-repeat { nonNegativeInteger }?
  & attribute text:animation-delay { duration }?
  & attribute text:animation-steps { length }?
  & attribute draw:auto-grow-width { boolean }?
  & attribute draw:auto-grow-height { boolean }?
  & attribute draw:fit-to-size { boolean }?
  & attribute draw:fit-to-contour { boolean }?
  & attribute draw:textarea-vertical-align {
      "top" | "middle" | "bottom" | "justify"
    }?
  & attribute draw:textarea-horizontal-align {
      "left" | "center" | "right" | "justify"
    }?
  & attribute fo:wrap-option { "no-wrap" | "wrap" }?
  & attribute style:shrink-to-fit { boolean }?
  & attribute draw:color-mode {
      "greyscale" | "mono" | "watermark" | "standard"
    }?
  & attribute draw:color-inversion { boolean }?
  & attribute draw:luminance { zeroToHundredPercent }?
  & attribute draw:contrast { percent }?
  & attribute draw:gamma { percent }?
  & attribute draw:red { signedZeroToHundredPercent }?
  & attribute draw:green { signedZeroToHundredPercent }?
  & attribute draw:blue { signedZeroToHundredPercent }?
  & attribute draw:image-opacity { zeroToHundredPercent }?
  & attribute draw:shadow { "visible" | "hidden" }?
  & attribute draw:shadow-offset-x { length }?
  & attribute draw:shadow-offset-y { length }?
  & attribute draw:shadow-color { color }?
  & attribute draw:shadow-opacity { zeroToHundredPercent }?
  & attribute draw:start-line-spacing-horizontal { distance }?
  & attribute draw:start-line-spacing-vertical { distance }?
  & attribute draw:end-line-spacing-horizontal { distance }?
  & attribute draw:end-line-spacing-vertical { distance }?
  & attribute draw:line-distance { distance }?
  & attribute draw:guide-overhang { length }?
  & attribute draw:guide-distance { distance }?
  & attribute draw:start-guide { length }?
  & attribute draw:end-guide { length }?
  & attribute draw:placing { "below" | "above" }?
  & attribute draw:parallel { boolean }?
  & attribute draw:measure-align {
      "automatic" | "left-outside" | "inside" | "right-outside"
    }?
  & attribute draw:measure-vertical-align {
      "automatic" | "above" | "below" | "center"
    }?
  & attribute draw:unit {
      "automatic"
      | "mm"
      | "cm"
      | "m"
      | "km"
      | "pt"
      | "pc"
      | "inch"
      | "ft"
      | "mi"
    }?
  & attribute draw:show-unit { boolean }?
  & attribute draw:decimal-places { nonNegativeInteger }?
  & attribute draw:caption-type {
      "straight-line" | "angled-line" | "angled-connector-line"
    }?
  & attribute draw:caption-angle-type { "fixed" | "free" }?
  & attribute draw:caption-angle { angle }?
  & attribute draw:caption-gap { distance }?
  & attribute draw:caption-escape-direction {
      "horizontal" | "vertical" | "auto"
    }?
  & attribute draw:caption-escape { length | percent }?
  & attribute draw:caption-line-length { length }?
  & attribute draw:caption-fit-line-length { boolean }?
  & attribute dr3d:horizontal-segments { nonNegativeInteger }?
  & attribute dr3d:vertical-segments { nonNegativeInteger }?
  & attribute dr3d:edge-rounding { percent }?
  & attribute dr3d:edge-rounding-mode { "correct" | "attractive" }?
  & attribute dr3d:back-scale { percent }?
  & attribute dr3d:depth { length }?
  & attribute dr3d:backface-culling { "enabled" | "disabled" }?
  & attribute dr3d:end-angle { angle }?
  & attribute dr3d:close-front { boolean }?
  & attribute dr3d:close-back { boolean }?
  & attribute dr3d:lighting-mode { "standard" | "double-sided" }?
  & attribute dr3d:normals-kind { "object" | "flat" | "sphere" }?
  & attribute dr3d:normals-direction { "normal" | "inverse" }?
  & attribute dr3d:texture-generation-mode-x {
      "object" | "parallel" | "sphere"
    }?
  & attribute dr3d:texture-generation-mode-y {
      "object" | "parallel" | "sphere"
    }?
  & attribute dr3d:texture-kind { "luminance" | "intensity" | "color" }?
  & attribute dr3d:texture-filter { "enabled" | "disabled" }?
  & attribute dr3d:texture-mode { "replace" | "modulate" | "blend" }?
  & attribute dr3d:ambient-color { color }?
  & attribute dr3d:emissive-color { color }?
  & attribute dr3d:specular-color { color }?
  & attribute dr3d:diffuse-color { color }?
  & attribute dr3d:shininess { percent }?
  & attribute dr3d:shadow { "visible" | "hidden" }?
  & common-draw-rel-size-attlist
  & attribute fo:min-width { length | percent }?
  & attribute fo:min-height { length | percent }?
  & attribute fo:max-height { length | percent }?
  & attribute fo:max-width { length | percent }?
  & common-horizontal-margin-attlist
  & common-vertical-margin-attlist
  & common-margin-attlist
  & attribute style:print-content { boolean }?
  & attribute style:protect {
      "none"
      | list { ("content" | "position" | "size")+ }
    }?
  & attribute style:horizontal-pos {
      "left"
      | "center"
      | "right"
      | "from-left"
      | "inside"
      | "outside"
      | "from-inside"
    }?
  & attribute svg:x { coordinate }?
  & attribute style:horizontal-rel {
      "page"
      | "page-content"
      | "page-start-margin"
      | "page-end-margin"
      | "frame"
      | "frame-content"
      | "frame-start-margin"
      | "frame-end-margin"
      | "paragraph"
      | "paragraph-content"
      | "paragraph-start-margin"
      | "paragraph-end-margin"
      | "char"
    }?
  & common-vertical-pos-attlist
  & common-vertical-rel-attlist
  & common-text-anchor-attlist
  & common-border-attlist
  & common-border-line-width-attlist
  & common-padding-attlist
  & common-shadow-attlist
  & common-background-color-attlist
  & common-background-transparency-attlist
  & common-editable-attlist
  & attribute style:wrap {
      "none"
      | "left"
      | "right"
      | "parallel"
      | "dynamic"
      | "run-through"
      | "biggest"
    }?
  & attribute style:wrap-dynamic-threshold { nonNegativeLength }?
  & attribute style:number-wrapped-paragraphs {
      "no-limit" | positiveInteger
    }?
  & attribute style:wrap-contour { boolean }?
  & attribute style:wrap-contour-mode { "full" | "outside" }?
  & attribute style:run-through { "foreground" | "background" }?
  & attribute style:flow-with-text { boolean }?
  & attribute style:overflow-behavior {
      "clip" | "auto-create-new-frame"
    }?
  & attribute style:mirror {
      "none"
      | "vertical"
      | horizontal-mirror
      | list { "vertical", horizontal-mirror }
      | list { horizontal-mirror, "vertical" }
    }?
  & attribute fo:clip { "auto" | clipShape }?
  & attribute draw:wrap-influence-on-position {
      "iterative" | "once-concurrent" | "once-successive"
    }?
  & common-writing-mode-attlist
  & attribute draw:frame-display-scrollbar { boolean }?
  & attribute draw:frame-display-border { boolean }?
  & attribute draw:frame-margin-horizontal { nonNegativePixelLength }?
  & attribute draw:frame-margin-vertical { nonNegativePixelLength }?
  & attribute draw:visible-area-left { nonNegativeLength }?
  & attribute draw:visible-area-top { nonNegativeLength }?
  & attribute draw:visible-area-width { positiveLength }?
  & attribute draw:visible-area-height { positiveLength }?
  & attribute draw:draw-aspect {
      "content" | "thumbnail" | "icon" | "print-view"
    }?
  & attribute draw:ole-draw-aspect { nonNegativeInteger }?
style-graphic-fill-properties-attlist =
  attribute draw:fill {
    "none" | "solid" | "bitmap" | "gradient" | "hatch"
  }?
  & attribute draw:fill-color { color }?
  & attribute draw:secondary-fill-color { color }?
  & attribute draw:fill-gradient-name { styleNameRef }?
  & attribute draw:gradient-step-count { nonNegativeInteger }?
  & attribute draw:fill-hatch-name { styleNameRef }?
  & attribute draw:fill-hatch-solid { boolean }?
  & attribute draw:fill-image-name { styleNameRef }?
  & attribute style:repeat { "no-repeat" | "repeat" | "stretch" }?
  & attribute draw:fill-image-width { length | percent }?
  & attribute draw:fill-image-height { length | percent }?
  & attribute draw:fill-image-ref-point-x { percent }?
  & attribute draw:fill-image-ref-point-y { percent }?
  & attribute draw:fill-image-ref-point {
      "top-left"
      | "top"
      | "top-right"
      | "left"
      | "center"
      | "right"
      | "bottom-left"
      | "bottom"
      | "bottom-right"
    }?
  & attribute draw:tile-repeat-offset {
      list { zeroToHundredPercent, ("horizontal" | "vertical") }
    }?
  & attribute draw:opacity { zeroToHundredPercent }?
  & attribute draw:opacity-name { styleNameRef }?
  & attribute svg:fill-rule { "nonzero" | "evenodd" }?
style-graphic-properties-elements =
  text-list-style? & style-background-image & style-columns
common-vertical-pos-attlist =
  attribute style:vertical-pos {
    "top" | "middle" | "bottom" | "from-top" | "below"
  }?,
  attribute svg:y { coordinate }?
common-vertical-rel-attlist =
  attribute style:vertical-rel {
    "page"
    | "page-content"
    | "frame"
    | "frame-content"
    | "paragraph"
    | "paragraph-content"
    | "char"
    | "line"
    | "baseline"
    | "text"
  }?
common-editable-attlist = attribute style:editable { boolean }?
horizontal-mirror =
  "horizontal" | "horizontal-on-odd" | "horizontal-on-even"
clipShape =
  xsd:string {
    pattern =
      "rect\([ ]*((-?([0-9]+(\.[0-9]*)?|\.[0-9]+)((cm)|(mm)|(in)|(pt)|(pc)))|(auto))([ ]*,[ ]*((-?([0-9]+(\.[0-9]*)?|\.[0-9]+)((cm)|(mm)|(in)|(pt)|(pc))))|(auto)){3}[ ]*\)"
  }
nonNegativePixelLength =
  xsd:string { pattern = "([0-9]+(\.[0-9]*)?|\.[0-9]+)(px)" }
style-chart-properties =
  element style:chart-properties {
    style-chart-properties-content-strict
  }
style-chart-properties-content-strict =
  style-chart-properties-attlist, style-chart-properties-elements
style-chart-properties-elements = empty
style-chart-properties-attlist =
  attribute chart:scale-text { boolean }?
  & attribute chart:three-dimensional { boolean }?
  & attribute chart:deep { boolean }?
  & attribute chart:right-angled-axes { boolean }?
  & (attribute chart:symbol-type { "none" }
     | attribute chart:symbol-type { "automatic" }
     | (attribute chart:symbol-type { "named-symbol" },
        attribute chart:symbol-name {
          "square"
          | "diamond"
          | "arrow-down"
          | "arrow-up"
          | "arrow-right"
          | "arrow-left"
          | "bow-tie"
          | "hourglass"
          | "circle"
          | "star"
          | "x"
          | "plus"
          | "asterisk"
          | "horizontal-bar"
          | "vertical-bar"
        })
     | (attribute chart:symbol-type { "image" },
        element chart:symbol-image {
          attribute xlink:href { anyIRI }
        })
     | empty)
  & attribute chart:symbol-width { nonNegativeLength }?
  & attribute chart:symbol-height { nonNegativeLength }?
  & attribute chart:sort-by-x-values { boolean }?
  & attribute chart:vertical { boolean }?
  & attribute chart:connect-bars { boolean }?
  & attribute chart:gap-width { integer }?
  & attribute chart:overlap { integer }?
  & attribute chart:group-bars-per-axis { boolean }?
  & attribute chart:japanese-candle-stick { boolean }?
  & attribute chart:interpolation {
      "none" | "cubic-spline" | "b-spline"
    }?
  & attribute chart:spline-order { positiveInteger }?
  & attribute chart:spline-resolution { positiveInteger }?
  & attribute chart:pie-offset { nonNegativeInteger }?
  & attribute chart:angle-offset { angle }?
  & attribute chart:hole-size { percent }?
  & attribute chart:lines { boolean }?
  & attribute chart:solid-type {
      "cuboid" | "cylinder" | "cone" | "pyramid"
    }?
  & attribute chart:stacked { boolean }?
  & attribute chart:percentage { boolean }?
  & attribute chart:treat-empty-cells {
      "use-zero" | "leave-gap" | "ignore"
    }?
  & attribute chart:link-data-style-to-source { boolean }?
  & attribute chart:logarithmic { boolean }?
  & attribute chart:maximum { double }?
  & attribute chart:minimum { double }?
  & attribute chart:origin { double }?
  & attribute chart:interval-major { double }?
  & attribute chart:interval-minor-divisor { positiveInteger }?
  & attribute chart:tick-marks-major-inner { boolean }?
  & attribute chart:tick-marks-major-outer { boolean }?
  & attribute chart:tick-marks-minor-inner { boolean }?
  & attribute chart:tick-marks-minor-outer { boolean }?
  & attribute chart:reverse-direction { boolean }?
  & attribute chart:display-label { boolean }?
  & attribute chart:text-overlap { boolean }?
  & attribute text:line-break { boolean }?
  & attribute chart:label-arrangement {
      "side-by-side" | "stagger-even" | "stagger-odd"
    }?
  & common-style-direction-attlist
  & common-rotation-angle-attlist
  & attribute chart:data-label-number {
      "none" | "value" | "percentage" | "value-and-percentage"
    }?
  & attribute chart:data-label-text { boolean }?
  & attribute chart:data-label-symbol { boolean }?
  & element chart:label-separator { text-p }?
  & attribute chart:label-position { labelPositions }?
  & attribute chart:label-position-negative { labelPositions }?
  & attribute chart:visible { boolean }?
  & attribute chart:auto-position { boolean }?
  & attribute chart:auto-size { boolean }?
  & attribute chart:mean-value { boolean }?
  & attribute chart:error-category {
      "none"
      | "variance"
      | "standard-deviation"
      | "percentage"
      | "error-margin"
      | "constant"
      | "standard-error"
      | "cell-range"
    }?
  & attribute chart:error-percentage { double }?
  & attribute chart:error-margin { double }?
  & attribute chart:error-lower-limit { double }?
  & attribute chart:error-upper-limit { double }?
  & attribute chart:error-upper-indicator { boolean }?
  & attribute chart:error-lower-indicator { boolean }?
  & attribute chart:error-lower-range { cellRangeAddressList }?
  & attribute chart:error-upper-range { cellRangeAddressList }?
  & attribute chart:series-source { "columns" | "rows" }?
  & attribute chart:regression-type {
      "none" | "linear" | "logarithmic" | "exponential" | "power"
    }?
  & attribute chart:axis-position { "start" | "end" | double }?
  & attribute chart:axis-label-position {
      "near-axis"
      | "near-axis-other-side"
      | "outside-start"
      | "outside-end"
    }?
  & attribute chart:tick-mark-position {
      "at-labels" | "at-axis" | "at-labels-and-axis"
    }?
  & attribute chart:include-hidden-cells { boolean }?
labelPositions =
  "avoid-overlap"
  | "center"
  | "top"
  | "top-right"
  | "right"
  | "bottom-right"
  | "bottom"
  | "bottom-left"
  | "left"
  | "top-left"
  | "inside"
  | "outside"
  | "near-origin"
style-drawing-page-properties-attlist =
  attribute presentation:transition-type {
    "manual" | "automatic" | "semi-automatic"
  }?
  & attribute presentation:transition-style {
      "none"
      | "fade-from-left"
      | "fade-from-top"
      | "fade-from-right"
      | "fade-from-bottom"
      | "fade-from-upperleft"
      | "fade-from-upperright"
      | "fade-from-lowerleft"
      | "fade-from-lowerright"
      | "move-from-left"
      | "move-from-top"
      | "move-from-right"
      | "move-from-bottom"
      | "move-from-upperleft"
      | "move-from-upperright"
      | "move-from-lowerleft"
      | "move-from-lowerright"
      | "uncover-to-left"
      | "uncover-to-top"
      | "uncover-to-right"
      | "uncover-to-bottom"
      | "uncover-to-upperleft"
      | "uncover-to-upperright"
      | "uncover-to-lowerleft"
      | "uncover-to-lowerright"
      | "fade-to-center"
      | "fade-from-center"
      | "vertical-stripes"
      | "horizontal-stripes"
      | "clockwise"
      | "counterclockwise"
      | "open-vertical"
      | "open-horizontal"
      | "close-vertical"
      | "close-horizontal"
      | "wavyline-from-left"
      | "wavyline-from-top"
      | "wavyline-from-right"
      | "wavyline-from-bottom"
      | "spiralin-left"
      | "spiralin-right"
      | "spiralout-left"
      | "spiralout-right"
      | "roll-from-top"
      | "roll-from-left"
      | "roll-from-right"
      | "roll-from-bottom"
      | "stretch-from-left"
      | "stretch-from-top"
      | "stretch-from-right"
      | "stretch-from-bottom"
      | "vertical-lines"
      | "horizontal-lines"
      | "dissolve"
      | "random"
      | "vertical-checkerboard"
      | "horizontal-checkerboard"
      | "interlocking-horizontal-left"
      | "interlocking-horizontal-right"
      | "interlocking-vertical-top"
      | "interlocking-vertical-bottom"
      | "fly-away"
      | "open"
      | "close"
      | "melt"
    }?
  & attribute presentation:transition-speed { presentationSpeeds }?
  & attribute smil:type { \string }?
  & attribute smil:subtype { \string }?
  & attribute smil:direction { "forward" | "reverse" }?
  & attribute smil:fadeColor { color }?
  & attribute presentation:duration { duration }?
  & attribute presentation:visibility { "visible" | "hidden" }?
  & attribute draw:background-size { "full" | "border" }?
  & attribute presentation:background-objects-visible { boolean }?
  & attribute presentation:background-visible { boolean }?
  & attribute presentation:display-header { boolean }?
  & attribute presentation:display-footer { boolean }?
  & attribute presentation:display-page-number { boolean }?
  & attribute presentation:display-date-time { boolean }?
style-drawing-page-properties-elements = presentation-sound?
\string = xsd:string
date = xsd:date
time = xsd:time
dateTime = xsd:dateTime
duration = xsd:duration
integer = xsd:integer
nonNegativeInteger = xsd:nonNegativeInteger
positiveInteger = xsd:positiveInteger
double = xsd:double
anyURI = xsd:anyURI
base64Binary = xsd:base64Binary
ID = xsd:ID
IDREF = xsd:IDREF
IDREFS = xsd:IDREFS
NCName = xsd:NCName
boolean = "true" | "false"
dateOrDateTime = xsd:date | xsd:dateTime
timeOrDateTime = xsd:time | xsd:dateTime
language = xsd:language
countryCode = xsd:token { pattern = "[A-Za-z0-9]{1,8}" }
languageCode = xsd:token { pattern = "[A-Za-z]{1,8}" }
scriptCode = xsd:token { pattern = "[A-Za-z0-9]{1,8}" }
character = xsd:string { length = "1" }
length =
  xsd:string {
    pattern =
      "-?([0-9]+(\.[0-9]*)?|\.[0-9]+)((cm)|(mm)|(in)|(pt)|(pc)|(px))"
  }
nonNegativeLength =
  xsd:string {
    pattern =
      "([0-9]+(\.[0-9]*)?|\.[0-9]+)((cm)|(mm)|(in)|(pt)|(pc)|(px))"
  }
positiveLength =
  xsd:string {
    pattern =
      "([0-9]*[1-9][0-9]*(\.[0-9]*)?|0+\.[0-9]*[1-9][0-9]*|\.[0-9]*[1-9][0-9]*)((cm)|(mm)|(in)|(pt)|(pc)|(px))"
  }
percent = xsd:string { pattern = "-?([0-9]+(\.[0-9]*)?|\.[0-9]+)%" }
zeroToHundredPercent =
  xsd:string {
    pattern = "([0-9]?[0-9](\.[0-9]*)?|100(\.0*)?|\.[0-9]+)%"
  }
signedZeroToHundredPercent =
  xsd:string {
    pattern = "-?([0-9]?[0-9](\.[0-9]*)?|100(\.0*)?|\.[0-9]+)%"
  }
relativeLength = xsd:string { pattern = "[0-9]+\*" }
coordinate = length
distance = length
color = xsd:string { pattern = "#[0-9a-fA-F]{6}" }
angle = xsd:string
CURIE =
  xsd:string { pattern = "(([\i-[:]][\c-[:]]*)?:)?.+" minLength = "1" }
CURIEs = list { CURIE+ }
SafeCURIE =
  xsd:string {
    pattern = "\[(([\i-[:]][\c-[:]]*)?:)?.+\]"
    minLength = "3"
  }
URIorSafeCURIE = anyURI | SafeCURIE
styleName = xsd:NCName
styleNameRef = xsd:NCName | empty
styleNameRefs = list { xsd:NCName* }
variableName = xsd:string
targetFrameName = "_self" | "_blank" | "_parent" | "_top" | \string
valueType =
  "float"
  | "time"
  | "date"
  | "percentage"
  | "currency"
  | "boolean"
  | "string"
points =
  xsd:string { pattern = "-?[0-9]+,-?[0-9]+([ ]+-?[0-9]+,-?[0-9]+)*" }
pathData = xsd:string
vector3D =
  xsd:string {
    pattern =
      "\([ ]*-?([0-9]+(\.[0-9]*)?|\.[0-9]+)([ ]+-?([0-9]+(\.[0-9]*)?|\.[0-9]+)){2}[ ]*\)"
  }
namespacedToken = xsd:QName { pattern = "[^:]+:[^:]+" }
anyIRI =
  xsd:anyURI
  >> dc:description [
       "An IRI-reference as defined in [RFC3987]. See ODF 1.2 Part 1 section 18.3."
     ]
anyAttListOrElements =
  attribute * { text }*,
  anyElements
anyElements =
  element * {
    mixed { anyAttListOrElements }
  }*
