1 <?xml version=
"1.0" encoding=
"UTF-8"?>
2 <!-- edited with XML Spy v4.3 U (http://www.xmlspy.com) by Dirk Grobler (OpenOffice) -->
3 <xs:schema targetNamespace=
"http://openoffice.org/2001/registry" xmlns:
oor=
"http://openoffice.org/2001/registry" xmlns:
xs=
"http://www.w3.org/2001/XMLSchema" elementFormDefault=
"unqualified" attributeFormDefault=
"qualified">
5 <xs:documentation>specifies the document format for OOo configuration component schemata.
</xs:documentation>
7 <xs:attribute name=
"extensible" type=
"xs:boolean" use=
"optional" default=
"false">
9 <xs:documentation>determines, whether a node has an extensible list of attributes or fixed list of attributes.
</xs:documentation>
12 <xs:attribute name=
"localized" type=
"xs:boolean" use=
"optional" default=
"false">
14 <xs:documentation>specifies, whether an attribute has or might have different values for different locales.
</xs:documentation>
17 <xs:attribute name=
"nillable" type=
"xs:boolean" use=
"optional" default=
"true">
19 <xs:documentation>specifies, whether it is permissible to have a 'nil' i.e., missing, node content. The default for 'nillable' is 'true'.
20 If a non-optional (nillable = 'false') has no default value (given in the component schema) it must be
21 explicitly specified for each user.
</xs:documentation>
24 <xs:complexType name=
"prop">
26 <xs:documentation>redefines the property type
27 by adding documentation and type constraint elements.
</xs:documentation>
30 <xs:extension base=
"oor:basic-prop">
32 <xs:element name=
"info" type=
"oor:info" minOccurs=
"0"/>
33 <xs:element name=
"constraints" minOccurs=
"0">
36 <xs:element name=
"enumeration" type=
"oor:constraint" minOccurs=
"0" maxOccurs=
"unbounded"/>
37 <xs:element name=
"length" type=
"oor:constraint" minOccurs=
"0"/>
38 <xs:element name=
"minLength" type=
"oor:constraint" minOccurs=
"0"/>
39 <xs:element name=
"maxLength" type=
"oor:constraint" minOccurs=
"0"/>
40 <xs:element name=
"minInclusive" type=
"oor:constraint" minOccurs=
"0"/>
41 <xs:element name=
"maxInclusive" type=
"oor:constraint" minOccurs=
"0"/>
42 <xs:element name=
"minExclusive" type=
"oor:constraint" minOccurs=
"0"/>
43 <xs:element name=
"maxExclusive" type=
"oor:constraint" minOccurs=
"0"/>
44 <xs:element name=
"whiteSpace" type=
"oor:constraint" minOccurs=
"0"/>
48 <xs:element name=
"value" type=
"oor:value" minOccurs=
"0"/>
50 <xs:attribute ref=
"oor:localized"/>
51 <xs:attribute ref=
"oor:nillable"/>
52 <xs:attribute ref=
"oor:type" use=
"required"/>
56 <xs:complexType name=
"group">
58 <xs:documentation>type definition for group nodes
</xs:documentation>
61 <xs:extension base=
"oor:basic-node">
63 <xs:element name=
"info" type=
"oor:info" minOccurs=
"0"/>
64 <xs:choice minOccurs=
"0" maxOccurs=
"unbounded">
65 <xs:element name=
"prop" type=
"oor:prop" />
66 <xs:element name=
"group" type=
"oor:group"/>
67 <xs:element name=
"set" type=
"oor:set"/>
68 <xs:element name=
"node-ref" type=
"oor:node-ref"/>
71 <xs:attribute ref=
"oor:extensible"/>
75 <xs:complexType name=
"set">
77 <xs:documentation>type definition for set nodes
</xs:documentation>
80 <xs:extension base=
"oor:basic-node">
82 <xs:element name=
"info" type=
"oor:info" minOccurs=
"0"/>
83 <xs:element name=
"item" minOccurs=
"0" maxOccurs=
"unbounded">
85 <xs:attributeGroup ref=
"oor:node-type-info" />
89 <xs:attribute ref=
"oor:extensible"/>
90 <xs:attributeGroup ref=
"oor:node-type-info" />
94 <xs:complexType name=
"node-ref">
96 <xs:documentation>allows to define node references. A node references points to an existing templated definition. This definition will be expanded at runtime.
</xs:documentation>
99 <xs:element name=
"info" type=
"oor:info" minOccurs=
"0"/>
101 <xs:attribute ref=
"oor:name" use=
"required"/>
102 <xs:attributeGroup ref=
"oor:node-type-info" />
104 <xs:complexType name=
"constraint">
106 <xs:documentation>basic type for constraints, which can be applied for property elements.
</xs:documentation>
109 <xs:element name=
"info" type=
"oor:info" minOccurs=
"0"/>
111 <xs:attribute name=
"value" type=
"xs:anySimpleType" use=
"required"/>
113 <xs:complexType name=
"info">
115 <xs:documentation>type for providing human readable information. Can be attached to any kind of component schema element.
</xs:documentation>
118 <xs:element name=
"deprecated" type=
"xs:string" minOccurs=
"0">
120 <xs:documentation>identifies an entry as deprecated. Can be assiciated with an explanation e.g. since when the entry is deprecated.
</xs:documentation>
123 <xs:element name=
"author" type=
"xs:string" minOccurs=
"0" maxOccurs=
"unbounded">
125 <xs:documentation>author(s) of the configuration entry.
</xs:documentation>
128 <xs:element name=
"desc" minOccurs=
"0" maxOccurs=
"unbounded">
131 <xs:documentation>provide a human
132 readable documentation for a schema element.
</xs:documentation>
135 <xs:extension base=
"xs:string">
136 <xs:attribute ref=
"xml:lang"/>
141 <xs:element name=
"label" minOccurs=
"0" maxOccurs=
"unbounded">
144 <xs:documentation>describes a title or label,
145 which can be reused in a console.
</xs:documentation>
148 <xs:extension base=
"xs:string">
149 <xs:attribute ref=
"xml:lang"/>
156 <xs:element name=
"component-schema">
158 <xs:documentation>Root element, which encompasses the schema specification
</xs:documentation>
162 <xs:element name=
"info" type=
"oor:info" minOccurs=
"0"/>
163 <xs:element name=
"import" minOccurs=
"0" maxOccurs=
"unbounded">
165 <xs:attribute ref=
"oor:component" use=
"required"/>
168 <xs:element name=
"uses" minOccurs=
"0" maxOccurs=
"unbounded">
170 <xs:attribute ref=
"oor:component" use=
"required"/>
173 <xs:element name=
"templates" minOccurs=
"0">
176 <xs:choice minOccurs=
"0" maxOccurs=
"unbounded">
177 <xs:element name=
"group" type=
"oor:group">
178 <xs:unique name=
"groupMember">
179 <xs:selector xpath=
"group|set|node-ref|prop"/>
180 <xs:field xpath=
"@oor:name"/>
183 <xs:element name=
"set" type=
"oor:set"/>
187 <xs:unique name=
"templatesMember">
188 <xs:selector xpath=
"oor:group|oor:set"/>
189 <xs:field xpath=
"@oor:name"/>
192 <xs:element name=
"component">
195 <xs:choice minOccurs=
"1" maxOccurs=
"unbounded">
196 <xs:element name=
"prop" type=
"oor:prop"/>
197 <xs:element name=
"node-ref" type=
"oor:node-ref"/>
198 <xs:element name=
"group" type=
"oor:group">
199 <xs:unique name=
"groupMember1">
200 <xs:selector xpath=
"oor:group|oor:set|oor:node-ref|oor:prop"/>
201 <xs:field xpath=
"@oor:name"/>
204 <xs:element name=
"set" type=
"oor:set"/>
208 <xs:unique name=
"schemaMember">
209 <xs:selector xpath=
"oor:group|oor:set|oor:node-ref|oor:prop"/>
210 <xs:field xpath=
"@oor:name"/>
214 <xs:attribute name=
"name" type=
"xs:NMTOKEN" use=
"required"/>
215 <xs:attribute ref=
"oor:package"/>
216 <xs:attribute name=
"version" type=
"xs:string" use=
"optional">
218 <xs:documentation>identifies the version of the component. The version number is build of major.minor.micro
</xs:documentation>
221 <xs:attribute ref=
"xml:lang" use=
"optional"/>