| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 | 
							- # Open Document Format for Office Applications (OpenDocument) Version 1.2
 
- # OASIS Standard, 29 September 2011
 
- # Manifest Relax-NG Schema
 
- # Source: http://docs.oasis-open.org/office/v1.2/os/
 
- # Copyright (c) OASIS Open 2002-2011, 2013. 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 manifest =
 
-   "urn:oasis:names:tc:opendocument:xmlns:manifest:1.0"
 
- start = manifest
 
- manifest = element manifest:manifest { manifest-attlist, file-entry+ }
 
- manifest-attlist = attribute manifest:version { "1.2" }
 
- file-entry =
 
-   element manifest:file-entry { file-entry-attlist, encryption-data? }
 
- file-entry-attlist =
 
-   attribute manifest:full-path { \string }
 
-   & attribute manifest:size { nonNegativeInteger }?
 
-   & attribute manifest:media-type { \string }
 
-   & attribute manifest:preferred-view-mode {
 
-       "edit" | "presentation-slide-show" | "read-only" | namespacedToken
 
-     }?
 
-   & attribute manifest:version { \string }?
 
- encryption-data =
 
-   element manifest:encryption-data {
 
-     encryption-data-attlist,
 
-     algorithm,
 
-     start-key-generation?,
 
-     key-derivation
 
-   }
 
- encryption-data-attlist =
 
-   attribute manifest:checksum-type { "SHA1/1K" | anyURI }
 
-   & attribute manifest:checksum { base64Binary }
 
- algorithm =
 
-   element manifest:algorithm { algorithm-attlist, anyElements }
 
- algorithm-attlist =
 
-   attribute manifest:algorithm-name { "Blowfish CFB" | anyURI }
 
-   & attribute manifest:initialisation-vector { base64Binary }
 
- anyAttListOrElements =
 
-   attribute * { text }*,
 
-   anyElements
 
- anyElements =
 
-   element * {
 
-     mixed { anyAttListOrElements }
 
-   }*
 
- key-derivation =
 
-   element manifest:key-derivation { key-derivation-attlist, empty }
 
- key-derivation-attlist =
 
-   attribute manifest:key-derivation-name { "PBKDF2" | anyURI }
 
-   & attribute manifest:salt { base64Binary }
 
-   & attribute manifest:iteration-count { nonNegativeInteger }
 
-   & attribute manifest:key-size { nonNegativeInteger }?
 
- start-key-generation =
 
-   element manifest:start-key-generation {
 
-     start-key-generation-attlist, empty
 
-   }
 
- start-key-generation-attlist =
 
-   attribute manifest:start-key-generation-name { "SHA1" | anyURI }
 
-   & attribute manifest:key-size { nonNegativeInteger }?
 
- base64Binary = xsd:base64Binary
 
- namespacedToken = xsd:QName { pattern = "[^:]+:[^:]+" }
 
- nonNegativeInteger = xsd:nonNegativeInteger
 
- \string = xsd:string
 
- anyURI = xsd:anyURI
 
 
  |