89 lines
3.7 KiB
Plaintext
89 lines
3.7 KiB
Plaintext
# 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
|