1<?xml version="1.0" encoding="UTF-8"?>
2<!--***********************************************************
3 *
4 * Licensed to the Apache Software Foundation (ASF) under one
5 * or more contributor license agreements.  See the NOTICE file
6 * distributed with this work for additional information
7 * regarding copyright ownership.  The ASF licenses this file
8 * to you under the Apache License, Version 2.0 (the
9 * "License"); you may not use this file except in compliance
10 * with the License.  You may obtain a copy of the License at
11 *
12 *   http://www.apache.org/licenses/LICENSE-2.0
13 *
14 * Unless required by applicable law or agreed to in writing,
15 * software distributed under the License is distributed on an
16 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
17 * KIND, either express or implied.  See the License for the
18 * specific language governing permissions and limitations
19 * under the License.
20 *
21 ***********************************************************-->
22
23
24
25<!ELEMENT oor:component-data ((node | prop)*)>
26<!ATTLIST oor:component-data
27    oor:package CDATA #REQUIRED
28    oor:name CDATA #REQUIRED
29    oor:op (modify | replace | fuse | remove) #IMPLIED
30    oor:finalized (false | true) #IMPLIED
31    xmlns:oor CDATA #FIXED "http://openoffice.org/2001/registry"
32    xmlns:xs CDATA #FIXED "http://www.w3.org/2001/XMLSchema"
33    xmlns:xsi CDATA #FIXED "http://www.w3.org/2001/XMLSchema-instance"
34    xmlns:install CDATA #FIXED "http://openoffice.org/2004/installation">
35
36<!ELEMENT node ((node | prop)*)>
37<!ATTLIST node
38    oor:name CDATA #REQUIRED
39    oor:op (modify | replace | fuse | remove) #IMPLIED
40    oor:finalized (true | false) #IMPLIED
41    oor:mandatory (true | false) #IMPLIED
42    oor:node-type CDATA #IMPLIED
43    oor:component CDATA #IMPLIED
44    install:module CDATA #IMPLIED>
45
46<!ELEMENT prop (value*)>
47<!ATTLIST prop
48    oor:name CDATA #REQUIRED
49    oor:op (modify | replace | fuse | remove) #IMPLIED
50    oor:finalized (true | false) #IMPLIED
51    oor:type
52        (oor:any | xs:boolean | xs:short | xs:int | xs:long | xs:double |
53         xs:string | xs:hexBinary | oor:boolean-list | oor:short-list |
54         oor:int-list | oor:long-list | oor:double-list | oor:string-list |
55         oor:hexBinary-list)
56        #IMPLIED
57    install:module CDATA #IMPLIED>
58
59<!ELEMENT value (#PCDATA | it | unicode)*>
60    <!-- EMPTY  if oor:op="remove", xsi:nil="true", or oor:external is used
61         #PCDATA  if the property type is a non-list type other than xs:string
62         (#PCDATA | unicode)*  if the property type is xs:string
63         #PCDATA  or  it*  if the property type is a list type other than
64             oor:string-list
65         (#PCDATA | unicode)*  or  it*  if the property type is
66             oor:string-list -->
67<!ATTLIST value
68    xml:lang CDATA #IMPLIED
69    oor:op (fuse | remove) #IMPLIED
70    xsi:nil (true | false) #IMPLIED
71    oor:type
72        (xs:boolean | xs:short | xs:int | xs:long | xs:double | xs:string |
73         xs:hexBinary | oor:boolean-list | oor:short-list | oor:int-list |
74         oor:long-list | oor:double-list | oor:string-list | oor:hexBinary-list)
75        #IMPLIED
76    oor:separator CDATA #IMPLIED
77    oor:external CDATA #IMPLIED
78    install:module CDATA #IMPLIED>
79    <!-- xml:lang  must only be used for localized properties; defaults to the
80             empty string
81         oor:op  defaults to "fuse"; "remove" must only be used for localized
82             properties
83         xsi:nil  defaults to "false"; "true" must only be used for nillable
84             properties
85         oor:type  is relevant for localized properties of type oor:any with
86             different value types for different locales
87         oor:separator  must only be used if the property type is a list type
88             and the element content is #PCDATA or (#PCDATA | unicode)* (and not
89             EMPTY or it*)
90         oor:external  must only be used for non-localized properties and must
91             not be used together with xsi:nil="true" -->
92
93<!ELEMENT it (#PCDATA | unicode)*>
94    <!-- #PCDATA  if the property type is a list type other than
95             oor:string-list
96         (#PCDATA | unicode)*  if the property type is oor:string-list -->
97<!ATTLIST it>
98
99<!ELEMENT unicode EMPTY>
100<!ATTLIST unicode
101    oor:scalar NMTOKEN #REQUIRED>
102        <!-- must syntactically match xs:integer and have a value in {0, ..., 8,
103             11, 12, 14, ..., 31, 65534, 65535} -->
104
105<!-- oor:items is an alternative root element to oor:component-data (in plain
106     .xcu files only; not when nested in an .xcd file), used for the user-layer
107     registrymodifications.xcu: -->
108
109<!ELEMENT oor:items (item*)>
110<!ATTLIST oor:items>
111
112<!ELEMENT item ((node | prop | value)*)>
113<!ATTLIST item
114    oor:path CDATA #REQUIRED>
115        <!-- the absolute path representation of a localized property or a group
116             or set node -->
117