Version 6.4.0.3, tag libreoffice-6.4.0.3
[LibreOffice.git] / schema / odf1.1 / OpenDocument-manifest-schema-v1.1.rng
blob4082d4ba95d67d9102b9b932ac88fe3283b44193
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3 OASIS OpenDocument v1.1
4 OASIS Standard, 1 Feb 2007
5 Relax-NG Manifest Schema
7 $Id$
9 © 2002-2007 OASIS Open
10 © 1999-2007 Sun Microsystems, Inc.
11 -->
13 <grammar
14 xmlns="http://relaxng.org/ns/structure/1.0"
16 datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"
18 xmlns:manifest="urn:oasis:names:tc:opendocument:xmlns:manifest:1.0">
19 <define name="manifest">
20 <element name="manifest:manifest">
21 <oneOrMore>
22 <ref name="file-entry"/>
23 </oneOrMore>
24 </element>
25 </define>
27 <start>
28 <choice>
29 <ref name="manifest"/>
30 </choice>
31 </start>
32 <define name="file-entry">
33 <element name="manifest:file-entry">
34 <ref name="file-entry-attlist"/>
35 <optional>
36 <ref name="encryption-data"/>
37 </optional>
38 </element>
39 </define>
40 <define name="file-entry-attlist" combine="interleave">
41 <attribute name="manifest:full-path">
42 <data type="string"/>
43 </attribute>
44 </define>
45 <define name="file-entry-attlist" combine="interleave">
46 <optional>
47 <attribute name="manifest:size">
48 <data type="nonNegativeInteger"/>
49 </attribute>
50 </optional>
51 </define>
52 <define name="file-entry-attlist" combine="interleave">
53 <attribute name="manifest:media-type">
54 <data type="string"/>
55 </attribute>
56 </define>
57 <define name="encryption-data">
58 <element name="manifest:encryption-data">
59 <ref name="encryption-data-attlist"/>
60 <ref name="algorithm"/>
61 <ref name="key-derivation"/>
62 </element>
63 </define>
64 <define name="encryption-data-attlist" combine="interleave">
65 <attribute name="manifest:checksum-type">
66 <data type="string"/>
67 </attribute>
68 </define>
69 <define name="encryption-data-attlist" combine="interleave">
70 <attribute name="manifest:checksum">
71 <data type="base64Binary"/>
72 </attribute>
73 </define>
74 <define name="algorithm">
75 <element name="manifest:algorithm">
76 <ref name="algorithm-attlist"/>
77 <empty/>
78 </element>
79 </define>
80 <define name="algorithm-attlist" combine="interleave">
81 <attribute name="manifest:algorithm-name">
82 <data type="string"/>
83 </attribute>
84 </define>
85 <define name="algorithm-attlist" combine="interleave">
86 <attribute name="manifest:initialisation-vector">
87 <data type="base64Binary"/>
88 </attribute>
89 </define>
90 <define name="key-derivation">
91 <element name="manifest:key-derivation">
92 <ref name="key-derivation-attlist"/>
93 <empty/>
94 </element>
95 </define>
96 <define name="key-derivation-attlist" combine="interleave">
97 <attribute name="manifest:key-derivation-name">
98 <data type="string"/>
99 </attribute>
100 </define>
101 <define name="key-derivation-attlist" combine="interleave">
102 <attribute name="manifest:salt">
103 <data type="base64Binary"/>
104 </attribute>
105 </define>
106 <define name="key-derivation-attlist" combine="interleave">
107 <attribute name="manifest:iteration-count">
108 <data type="nonNegativeInteger"/>
109 </attribute>
110 </define>
111 </grammar>