diff options
author | sb <sb@openoffice.org> | 2009-10-12 13:55:27 +0200 |
---|---|---|
committer | sb <sb@openoffice.org> | 2009-10-12 13:55:27 +0200 |
commit | 37a5c460aa383b0501f0dbd76bc9f3e0ab04527c (patch) | |
tree | 80b855c9e0d55c9b481034f37265db1c6ba0f3f7 | |
parent | e35b10e4067b1c390b6a88b758bbee60aab5df43 (diff) |
#i101955# updated DTDs, removed unused XSDs; cleanup
-rw-r--r-- | configmgr2/source/services.cxx | 27 | ||||
-rw-r--r-- | configmgr2/source/xcsparser.cxx | 2 | ||||
-rw-r--r-- | officecfg/registry/component-schema.dtd | 153 | ||||
-rw-r--r-- | officecfg/registry/component-schema.xsd | 224 | ||||
-rw-r--r-- | officecfg/registry/component-types.xsd | 135 | ||||
-rw-r--r-- | officecfg/registry/component-update.dtd | 138 | ||||
-rw-r--r-- | officecfg/registry/component-update.xsd | 113 |
7 files changed, 196 insertions, 596 deletions
diff --git a/configmgr2/source/services.cxx b/configmgr2/source/services.cxx index 5bc934412e5a..d25d84290d41 100644 --- a/configmgr2/source/services.cxx +++ b/configmgr2/source/services.cxx @@ -114,30 +114,3 @@ extern "C" SAL_DLLPUBLIC_EXPORT sal_Bool SAL_CALL component_writeInfo( } return true; } - -/*TODO: -com.sun.star.configuration.AdministrationProvider -com.sun.star.configuration.ConfigurationRegistry -com.sun.star.configuration.backend.Backend -com.sun.star.configuration.backend.Backend -com.sun.star.configuration.backend.Backend -com.sun.star.configuration.backend.BackendAdapter -com.sun.star.configuration.backend.CopyImporter -com.sun.star.configuration.backend.DefaultBackend -com.sun.star.configuration.backend.LayerUpdateMerger -com.sun.star.configuration.backend.LocalHierarchyBrowser -com.sun.star.configuration.backend.LocalHierarchyBrowser -com.sun.star.configuration.backend.LocalMultiStratum -com.sun.star.configuration.backend.LocalSchemaSupplier -com.sun.star.configuration.backend.LocalSingleBackend -com.sun.star.configuration.backend.LocalSingleStratum -com.sun.star.configuration.backend.LocalSingleStratum -com.sun.star.configuration.backend.LocalSingleStratum -com.sun.star.configuration.backend.LocalSingleStratum -com.sun.star.configuration.backend.MergeImporter -com.sun.star.configuration.backend.OnlineBackend -com.sun.star.configuration.backend.xml.LayerParser -com.sun.star.configuration.backend.xml.LayerWriter -com.sun.star.configuration.backend.xml.SchemaParser -com.sun.star.configuration.bootstrap.BootstrapContext -*/ diff --git a/configmgr2/source/xcsparser.cxx b/configmgr2/source/xcsparser.cxx index aa280e7a4891..898853061993 100644 --- a/configmgr2/source/xcsparser.cxx +++ b/configmgr2/source/xcsparser.cxx @@ -386,7 +386,7 @@ void XcsParser::handleProp(XmlReader & reader) { } else if (attrNs == XmlReader::NAMESPACE_OOR && attrLn.equals(RTL_CONSTASCII_STRINGPARAM("type"))) { - attrType = reader.getAttributeValue(false); + attrType = reader.getAttributeValue(true); } else if (attrNs == XmlReader::NAMESPACE_OOR && attrLn.equals(RTL_CONSTASCII_STRINGPARAM("localized"))) { diff --git a/officecfg/registry/component-schema.dtd b/officecfg/registry/component-schema.dtd index f2891d244e93..950e4f5088d3 100644 --- a/officecfg/registry/component-schema.dtd +++ b/officecfg/registry/component-schema.dtd @@ -1,127 +1,154 @@ <?xml version="1.0" encoding="UTF-8"?> +<!--********************************************************************** +* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +* +* Copyright 2009 by Sun Microsystems, Inc. +* +* OpenOffice.org - a multi-platform office productivity suite +* +* $RCSfile: code,v $ +* +* $Revision: 1.4 $ +* +* This file is part of OpenOffice.org. +* +* OpenOffice.org is free software: you can redistribute it and/or modify +* it under the terms of the GNU Lesser General Public License version 3 +* only, as published by the Free Software Foundation. +* +* OpenOffice.org is distributed in the hope that it will be useful, +* but WITHOUT ANY WARRANTY; without even the implied warranty of +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +* GNU Lesser General Public License version 3 for more details +* (a copy is included in the LICENSE file that accompanied this code). +* +* You should have received a copy of the GNU Lesser General Public License +* version 3 along with OpenOffice.org. If not, see +* <http://www.openoffice.org/license.html> +* for a copy of the LGPLv3 License. +**********************************************************************--> + <!ELEMENT oor:component-schema (info?, import*, uses*, templates?, component)> <!ATTLIST oor:component-schema - oor:name NMTOKEN #REQUIRED - oor:package NMTOKEN #REQUIRED + oor:package CDATA #REQUIRED + oor:name CDATA #REQUIRED oor:version NMTOKEN #IMPLIED xml:lang CDATA #IMPLIED xmlns:oor CDATA #FIXED "http://openoffice.org/2001/registry" - xmlns:xs CDATA #FIXED "http://www.w3.org/2001/XMLSchema" - xmlns:xsi CDATA #FIXED "http://www.w3.org/2001/XMLSchema-instance" -> + xmlns:xs CDATA #FIXED "http://www.w3.org/2001/XMLSchema"> <!ELEMENT import EMPTY> <!ATTLIST import - oor:component CDATA #REQUIRED -> + oor:component CDATA #REQUIRED> <!ELEMENT uses EMPTY> <!ATTLIST uses - oor:component CDATA #REQUIRED -> + oor:component CDATA #REQUIRED> -<!ELEMENT templates (info?, (group | set)*)> -<!ELEMENT component (info?, (prop | node-ref | group | set)*)> +<!ELEMENT templates (info?, (set | group)*)> +<!ATTLIST templates> <!ELEMENT info (deprecated?, author*, desc*, label*)> +<!ATTLIST info> <!ELEMENT deprecated (#PCDATA)> +<!ATTLIST deprecated> <!ELEMENT author (#PCDATA)> +<!ATTLIST author> <!ELEMENT desc (#PCDATA)> <!ATTLIST desc - xml:lang CDATA #IMPLIED -> + xml:lang CDATA #IMPLIED> <!ELEMENT label (#PCDATA)> <!ATTLIST label - xml:lang CDATA #IMPLIED -> + xml:lang CDATA #IMPLIED> -<!ELEMENT group (info?, (prop | node-ref | group | set)*)> -<!ATTLIST group - oor:name CDATA #REQUIRED - oor:extensible (true | false) #IMPLIED -> +<!ELEMENT component (info?, (set | group | prop | node-ref)*)> +<!ATTLIST component> <!ELEMENT set (info?, item*)> <!ATTLIST set oor:name CDATA #REQUIRED - oor:node-type NMTOKEN #REQUIRED - oor:component CDATA #IMPLIED -> + oor:node-type CDATA #REQUIRED + oor:component CDATA #IMPLIED> -<!ELEMENT node-ref (info?)> -<!ATTLIST node-ref +<!ELEMENT item EMPTY> +<!ATTLIST item + oor:node-type CDATA #REQUIRED + oor:component CDATA #IMPLIED> + +<!ELEMENT group (info?, (set | group | prop | node-ref)*)> +<!ATTLIST group oor:name CDATA #REQUIRED - oor:node-type NMTOKEN #REQUIRED - oor:component CDATA #IMPLIED -> + oor:extensible (false | true) #IMPLIED> <!ELEMENT prop (info?, constraints?, value?)> <!ATTLIST prop oor:name CDATA #REQUIRED - oor:type (xs:boolean | xs:short | xs:int | xs:long | xs:double | xs:string | xs:hexBinary | oor:any | oor:boolean-list | oor:short-list | oor:int-list | oor:long-list | oor:double-list | oor:string-list | oor:hexBinary-list) #REQUIRED - oor:localized (true | false) #IMPLIED - oor:nillable (true | false) #IMPLIED -> - -<!ELEMENT item EMPTY> -<!ATTLIST item - oor:node-type NMTOKEN #REQUIRED - oor:component CDATA #IMPLIED -> - -<!ELEMENT value (#PCDATA)> -<!ATTLIST value - oor:separator CDATA #IMPLIED -> - -<!ELEMENT constraints (enumeration*, length?, minLength?, maxLength?, minInclusive?, maxInclusive?, minExclusive?, maxExclusive?, whiteSpace?)> + oor:localized (false | true) #IMPLIED + oor:type + (oor:any | xs:boolean | xs:short | xs:int | xs:long | xs:double | + xs:string | xs:hexBinary | oor:boolean-list | oor:short-list | + oor:int-list | oor:long-list | oor:double-list | oor:string-list | + oor:hexBinary-list) + #REQUIRED + oor:nillable (false | true) #IMPLIED> + +<!ELEMENT constraints + (enumeration*, length?, minLength?, maxLength?, minInclusive?, + maxInclusive?, minExclusive?, maxExclusive?, whiteSpace?)> <!ELEMENT enumeration (info?)> <!ATTLIST enumeration - oor:value CDATA #REQUIRED -> + oor:value CDATA #REQUIRED> <!ELEMENT length (info?)> <!ATTLIST length - oor:value CDATA #REQUIRED -> + oor:value CDATA #REQUIRED> <!ELEMENT minLength (info?)> <!ATTLIST minLength - oor:value CDATA #REQUIRED -> + oor:value CDATA #REQUIRED> <!ELEMENT maxLength (info?)> <!ATTLIST maxLength - oor:value CDATA #REQUIRED -> + oor:value CDATA #REQUIRED> <!ELEMENT minInclusive (info?)> <!ATTLIST minInclusive - oor:value CDATA #REQUIRED -> + oor:value CDATA #REQUIRED> <!ELEMENT maxInclusive (info?)> <!ATTLIST maxInclusive - oor:value CDATA #REQUIRED -> + oor:value CDATA #REQUIRED> <!ELEMENT minExclusive (info?)> <!ATTLIST minExclusive - oor:value CDATA #REQUIRED -> + oor:value CDATA #REQUIRED> <!ELEMENT maxExclusive (info?)> <!ATTLIST maxExclusive - oor:value CDATA #REQUIRED -> + oor:value CDATA #REQUIRED> <!ELEMENT whiteSpace (info?)> <!ATTLIST whiteSpace - oor:value CDATA #REQUIRED -> + oor:value CDATA #REQUIRED> + +<!ELEMENT value (#PCDATA | it | unicode)*> +<!ATTLIST value + oor:separator CDATA #IMPLIED> +<!ELEMENT it (#PCDATA | unicode)*> +<!ATTLIST it> + +<!ELEMENT unicode EMPTY> +<!ATTLIST unicode + oor:scalar NMTOKEN #REQUIRED> + +<!ELEMENT node-ref (info?)> +<!ATTLIST node-ref + oor:name CDATA #REQUIRED + oor:node-type CDATA #REQUIRED + oor:component CDATA #IMPLIED> diff --git a/officecfg/registry/component-schema.xsd b/officecfg/registry/component-schema.xsd deleted file mode 100644 index cc3c18a16c3d..000000000000 --- a/officecfg/registry/component-schema.xsd +++ /dev/null @@ -1,224 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- edited with XML Spy v4.3 U (http://www.xmlspy.com) by Dirk Grobler (OpenOffice) --> -<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"> - <xs:annotation> - <xs:documentation>specifies the document format for OOo configuration component schemata.</xs:documentation> - </xs:annotation> - <xs:attribute name="extensible" type="xs:boolean" use="optional" default="false"> - <xs:annotation> - <xs:documentation>determines, whether a node has an extensible list of attributes or fixed list of attributes.</xs:documentation> - </xs:annotation> -</xs:attribute> -<xs:attribute name="localized" type="xs:boolean" use="optional" default="false"> - <xs:annotation> - <xs:documentation>specifies, whether an attribute has or might have different values for different locales. </xs:documentation> - </xs:annotation> -</xs:attribute> - <xs:attribute name="nillable" type="xs:boolean" use="optional" default="true"> - <xs:annotation> - <xs:documentation>specifies, whether it is permissible to have a 'nil' i.e., missing, node content. The default for 'nillable' is 'true'. -If a non-optional (nillable = 'false') has no default value (given in the component schema) it must be -explicitly specified for each user.</xs:documentation> - </xs:annotation> -</xs:attribute> - <xs:complexType name="prop"> - <xs:annotation> - <xs:documentation>redefines the property type - by adding documentation and type constraint elements.</xs:documentation> - </xs:annotation> - <xs:complexContent> - <xs:extension base="oor:basic-prop"> - <xs:sequence> - <xs:element name="info" type="oor:info" minOccurs="0"/> - <xs:element name="constraints" minOccurs="0"> - <xs:complexType> - <xs:sequence> - <xs:element name="enumeration" type="oor:constraint" minOccurs="0" maxOccurs="unbounded"/> - <xs:element name="length" type="oor:constraint" minOccurs="0"/> - <xs:element name="minLength" type="oor:constraint" minOccurs="0"/> - <xs:element name="maxLength" type="oor:constraint" minOccurs="0"/> - <xs:element name="minInclusive" type="oor:constraint" minOccurs="0"/> - <xs:element name="maxInclusive" type="oor:constraint" minOccurs="0"/> - <xs:element name="minExclusive" type="oor:constraint" minOccurs="0"/> - <xs:element name="maxExclusive" type="oor:constraint" minOccurs="0"/> - <xs:element name="whiteSpace" type="oor:constraint" minOccurs="0"/> - </xs:sequence> - </xs:complexType> - </xs:element> - <xs:element name="value" type="oor:value" minOccurs="0"/> - </xs:sequence> - <xs:attribute ref="oor:localized"/> - <xs:attribute ref="oor:nillable"/> - <xs:attribute ref="oor:type" use="required"/> - </xs:extension> - </xs:complexContent> - </xs:complexType> - <xs:complexType name="group"> - <xs:annotation> - <xs:documentation>type definition for group nodes</xs:documentation> - </xs:annotation> - <xs:complexContent> - <xs:extension base="oor:basic-node"> - <xs:sequence> - <xs:element name="info" type="oor:info" minOccurs="0"/> - <xs:choice minOccurs="0" maxOccurs="unbounded"> - <xs:element name="prop" type="oor:prop" /> - <xs:element name="group" type="oor:group"/> - <xs:element name="set" type="oor:set"/> - <xs:element name="node-ref" type="oor:node-ref"/> - </xs:choice> - </xs:sequence> - <xs:attribute ref="oor:extensible"/> - </xs:extension> - </xs:complexContent> - </xs:complexType> - <xs:complexType name="set"> - <xs:annotation> - <xs:documentation>type definition for set nodes</xs:documentation> - </xs:annotation> - <xs:complexContent> - <xs:extension base="oor:basic-node"> - <xs:sequence> - <xs:element name="info" type="oor:info" minOccurs="0"/> - <xs:element name="item" minOccurs="0" maxOccurs="unbounded"> - <xs:complexType> - <xs:attributeGroup ref="oor:node-type-info" /> - </xs:complexType> - </xs:element> - </xs:sequence> - <xs:attribute ref="oor:extensible"/> - <xs:attributeGroup ref="oor:node-type-info" /> - </xs:extension> - </xs:complexContent> - </xs:complexType> - <xs:complexType name="node-ref"> - <xs:annotation> - <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> - </xs:annotation> - <xs:sequence> - <xs:element name="info" type="oor:info" minOccurs="0"/> - </xs:sequence> - <xs:attribute ref="oor:name" use="required"/> - <xs:attributeGroup ref="oor:node-type-info" /> - </xs:complexType> - <xs:complexType name="constraint"> - <xs:annotation> - <xs:documentation>basic type for constraints, which can be applied for property elements.</xs:documentation> - </xs:annotation> - <xs:sequence> - <xs:element name="info" type="oor:info" minOccurs="0"/> - </xs:sequence> - <xs:attribute name="value" type="xs:anySimpleType" use="required"/> - </xs:complexType> - <xs:complexType name="info"> - <xs:annotation> - <xs:documentation>type for providing human readable information. Can be attached to any kind of component schema element.</xs:documentation> - </xs:annotation> - <xs:sequence> - <xs:element name="deprecated" type="xs:string" minOccurs="0"> - <xs:annotation> - <xs:documentation>identifies an entry as deprecated. Can be assiciated with an explanation e.g. since when the entry is deprecated.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="author" type="xs:string" minOccurs="0" maxOccurs="unbounded"> - <xs:annotation> - <xs:documentation>author(s) of the configuration entry.</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="desc" minOccurs="0" maxOccurs="unbounded"> - <xs:complexType> - <xs:annotation> - <xs:documentation>provide a human - readable documentation for a schema element.</xs:documentation> - </xs:annotation> - <xs:simpleContent> - <xs:extension base="xs:string"> - <xs:attribute ref="xml:lang"/> - </xs:extension> - </xs:simpleContent> - </xs:complexType> - </xs:element> - <xs:element name="label" minOccurs="0" maxOccurs="unbounded"> - <xs:complexType> - <xs:annotation> - <xs:documentation>describes a title or label, - which can be reused in a console.</xs:documentation> - </xs:annotation> - <xs:simpleContent> - <xs:extension base="xs:string"> - <xs:attribute ref="xml:lang"/> - </xs:extension> - </xs:simpleContent> - </xs:complexType> - </xs:element> - </xs:sequence> - </xs:complexType> - <xs:element name="component-schema"> - <xs:annotation> - <xs:documentation>Root element, which encompasses the schema specification</xs:documentation> - </xs:annotation> - <xs:complexType> - <xs:sequence> - <xs:element name="info" type="oor:info" minOccurs="0"/> - <xs:element name="import" minOccurs="0" maxOccurs="unbounded"> - <xs:complexType> - <xs:attribute ref="oor:component" use="required"/> - </xs:complexType> - </xs:element> - <xs:element name="uses" minOccurs="0" maxOccurs="unbounded"> - <xs:complexType> - <xs:attribute ref="oor:component" use="required"/> - </xs:complexType> - </xs:element> - <xs:element name="templates" minOccurs="0"> - <xs:complexType> - <xs:sequence> - <xs:choice minOccurs="0" maxOccurs="unbounded"> - <xs:element name="group" type="oor:group"> - <xs:unique name="groupMember"> - <xs:selector xpath="group|set|node-ref|prop"/> - <xs:field xpath="@oor:name"/> - </xs:unique> - </xs:element> - <xs:element name="set" type="oor:set"/> - </xs:choice> - </xs:sequence> - </xs:complexType> - <xs:unique name="templatesMember"> - <xs:selector xpath="oor:group|oor:set"/> - <xs:field xpath="@oor:name"/> - </xs:unique> - </xs:element> - <xs:element name="component"> - <xs:complexType> - <xs:sequence> - <xs:choice minOccurs="1" maxOccurs="unbounded"> - <xs:element name="prop" type="oor:prop"/> - <xs:element name="node-ref" type="oor:node-ref"/> - <xs:element name="group" type="oor:group"> - <xs:unique name="groupMember1"> - <xs:selector xpath="oor:group|oor:set|oor:node-ref|oor:prop"/> - <xs:field xpath="@oor:name"/> - </xs:unique> - </xs:element> - <xs:element name="set" type="oor:set"/> - </xs:choice> - </xs:sequence> - </xs:complexType> - <xs:unique name="schemaMember"> - <xs:selector xpath="oor:group|oor:set|oor:node-ref|oor:prop"/> - <xs:field xpath="@oor:name"/> - </xs:unique> - </xs:element> - </xs:sequence> - <xs:attribute name="name" type="xs:NMTOKEN" use="required"/> - <xs:attribute ref="oor:package"/> - <xs:attribute name="version" type="xs:string" use="optional"> - <xs:annotation> - <xs:documentation>identifies the version of the component. The version number is build of major.minor.micro</xs:documentation> - </xs:annotation> - </xs:attribute> - <xs:attribute ref="xml:lang" use="optional"/> - </xs:complexType> - </xs:element> -</xs:schema> diff --git a/officecfg/registry/component-types.xsd b/officecfg/registry/component-types.xsd deleted file mode 100644 index 9b2f2371ce2f..000000000000 --- a/officecfg/registry/component-types.xsd +++ /dev/null @@ -1,135 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<xs:schema targetNamespace="http://openoffice.org/2001/registry" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:oor="http://openoffice.org/2001/registry" elementFormDefault="unqualified" attributeFormDefault="qualified"> - <xs:annotation> - <xs:documentation>provides a list of standard attribute and element definitions, reused in most parts of the different OOR document types</xs:documentation> - </xs:annotation> - <xs:import namespace="http://www.w3.org/XML/1998/namespace" - schemaLocation="http://www.w3.org/2001/xml.xsd"/> - <!--List of attributes known in OOR--> - <xs:attribute name="name" type="xs:string" use="required"> - <xs:annotation> - <xs:documentation>identifies a node or an attribute within a tree, must be unique for all siblings.</xs:documentation> - </xs:annotation> - </xs:attribute> - <xs:attribute name="package" type="xs:NMTOKEN" use="required"> - <xs:annotation> - <xs:documentation>contains the name of the package. - Package names are composed similar to java packages. - Packages are used to structure component configuration data. - An example of a package is 'org.openoffice', - where 'org' and 'openoffice' each define a package.</xs:documentation> - </xs:annotation> - </xs:attribute> - <xs:attribute name="node-type" type="xs:NMTOKEN"> - <xs:annotation> - <xs:documentation>identifies the template to use for the set or a node reference. </xs:documentation> - </xs:annotation> - </xs:attribute> - <xs:attribute name="component" type="xs:string" use="optional"> - <xs:annotation> - <xs:documentation>specifies the component, which contains a template definition</xs:documentation> - </xs:annotation> - </xs:attribute> - <xs:attribute name="separator" type="xs:string" default=" "> - <xs:annotation> - <xs:documentation>specifies a separator for list types. The default - is a blank, which is sufficient for most basic types like xs:int or - xs:boolean. Only in certain cases, when using a sting or a binary - list, the separator might differ. For example, a list of string values like build of the items 'europe' and 'south america' needs a different separator, as the usage of the default separator would result in a list of three items.</xs:documentation> - </xs:annotation> - </xs:attribute> - <xs:attribute name="type" use="optional"> - <xs:annotation> - <xs:documentation>specifies the list of known basic types and their list equivalents. Is only allowed for properties.</xs:documentation> - </xs:annotation> - <xs:simpleType> - <xs:restriction base="xs:string"> - <xs:enumeration value="xs:boolean"/> - <xs:enumeration value="xs:short"/> - <xs:enumeration value="xs:int"/> - <xs:enumeration value="xs:long"/> - <xs:enumeration value="xs:double"/> - <xs:enumeration value="xs:string"/> - <xs:enumeration value="xs:hexBinary"/> - <xs:enumeration value="oor:any"/> - <xs:enumeration value="oor:boolean-list"/> - <xs:enumeration value="oor:short-list"/> - <xs:enumeration value="oor:int-list"/> - <xs:enumeration value="oor:long-list"/> - <xs:enumeration value="oor:double-list"/> - <xs:enumeration value="oor:string-list"/> - <xs:enumeration value="oor:hexBinary-list"/> - </xs:restriction> - </xs:simpleType> - </xs:attribute> - <xs:attributeGroup name="node-info"> - <xs:annotation> - <xs:documentation>encompasses common attributes for nodes.</xs:documentation> - </xs:annotation> - <xs:attribute ref="oor:name" use="required"/> - </xs:attributeGroup> - <xs:attributeGroup name="node-type-info"> - <xs:annotation> - <xs:documentation>encompasses attributes for referencing a node-type.</xs:documentation> - </xs:annotation> - <xs:attribute ref="oor:node-type" use="required"/> - <xs:attribute ref="oor:component" use="optional"/> - </xs:attributeGroup> - <xs:attributeGroup name="prop-info"> - <xs:annotation> - <xs:documentation>encompasses common attributes for properties.</xs:documentation> - </xs:annotation> - <xs:attribute ref="oor:name" use="required"/> - </xs:attributeGroup> - <!--List of list data types supported by OOR--> - <xs:simpleType name="boolean-list"> - <xs:list itemType="xs:boolean"/> - </xs:simpleType> - <xs:simpleType name="short-list"> - <xs:list itemType="xs:short"/> - </xs:simpleType> - <xs:simpleType name="int-list"> - <xs:list itemType="xs:int"/> - </xs:simpleType> - <xs:simpleType name="long-list"> - <xs:list itemType="xs:long"/> - </xs:simpleType> - <xs:simpleType name="double-list"> - <xs:list itemType="xs:double"/> - </xs:simpleType> - <xs:simpleType name="string-list"> - <xs:restriction base="xs:string"/> - </xs:simpleType> - <xs:simpleType name="hexBinary-list"> - <xs:restriction base="xs:string"/> - </xs:simpleType> - <!--List of basic type definitions for all schema and instance elements known by OOR--> - <xs:complexType name="basic-node"> - <xs:annotation> - <xs:documentation>base class for all kinds of nodes (set | group)</xs:documentation> - </xs:annotation> - <xs:attributeGroup ref="oor:node-info"/> - </xs:complexType> - <xs:complexType name="basic-prop"> - <xs:annotation> - <xs:documentation>type definition for node properties</xs:documentation> - </xs:annotation> - <xs:attributeGroup ref="oor:prop-info"/> - </xs:complexType> - <xs:complexType name="value"> - <xs:annotation> - <xs:documentation>type definition for value nodes.</xs:documentation> - </xs:annotation> - <xs:simpleContent> - <xs:extension base="oor:anyValue"> - <xs:attribute ref="oor:separator" use="optional"/> - </xs:extension> - </xs:simpleContent> - </xs:complexType> - <xs:simpleType name="anyValue"> - <xs:annotation> - <xs:documentation>defines the list of possible basic data-types for properties.</xs:documentation> - </xs:annotation> - <xs:union memberTypes="xs:boolean xs:short xs:int xs:long xs:double xs:string xs:hexBinary oor:boolean-list oor:short-list oor:int-list oor:long-list oor:double-list oor:string-list oor:hexBinary-list"/> - </xs:simpleType> -</xs:schema> diff --git a/officecfg/registry/component-update.dtd b/officecfg/registry/component-update.dtd index 10c4632a91de..1781f06f11fa 100644 --- a/officecfg/registry/component-update.dtd +++ b/officecfg/registry/component-update.dtd @@ -1,41 +1,113 @@ <?xml version="1.0" encoding="UTF-8"?> +<!--********************************************************************** +* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +* +* Copyright 2009 by Sun Microsystems, Inc. +* +* OpenOffice.org - a multi-platform office productivity suite +* +* $RCSfile: code,v $ +* +* $Revision: 1.4 $ +* +* This file is part of OpenOffice.org. +* +* OpenOffice.org is free software: you can redistribute it and/or modify +* it under the terms of the GNU Lesser General Public License version 3 +* only, as published by the Free Software Foundation. +* +* OpenOffice.org is distributed in the hope that it will be useful, +* but WITHOUT ANY WARRANTY; without even the implied warranty of +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +* GNU Lesser General Public License version 3 for more details +* (a copy is included in the LICENSE file that accompanied this code). +* +* You should have received a copy of the GNU Lesser General Public License +* version 3 along with OpenOffice.org. If not, see +* <http://www.openoffice.org/license.html> +* for a copy of the LGPLv3 License. +**********************************************************************--> -<!ELEMENT oor:component-data ((prop|node)*)> +<!ELEMENT oor:component-data ((node | prop)*)> <!ATTLIST oor:component-data - oor:name NMTOKEN #REQUIRED - oor:package NMTOKEN #REQUIRED - oor:finalized (true | false) #IMPLIED - oor:op (modify | replace | fuse | remove | reset) #IMPLIED - xmlns:oor CDATA #FIXED "http://openoffice.org/2001/registry" - xmlns:install CDATA #FIXED "http://openoffice.org/2004/installation" - xmlns:xs CDATA #FIXED "http://www.w3.org/2001/XMLSchema" - xmlns:xsi CDATA #FIXED "http://www.w3.org/2001/XMLSchema-instance" -> - -<!ELEMENT node ((prop|node)*)> + oor:package CDATA #REQUIRED + oor:name CDATA #REQUIRED + oor:op (modify | replace | fuse | remove) #IMPLIED + oor:finalized (false | true) #IMPLIED + xmlns:oor CDATA #FIXED "http://openoffice.org/2001/registry" + xmlns:xs CDATA #FIXED "http://www.w3.org/2001/XMLSchema" + xmlns:xsi CDATA #FIXED "http://www.w3.org/2001/XMLSchema-instance" + xmlns:install CDATA #FIXED "http://openoffice.org/2004/installation"> + +<!ELEMENT node ((node | prop)*)> <!ATTLIST node - oor:name CDATA #REQUIRED - oor:component CDATA #IMPLIED - oor:finalized (true | false) #IMPLIED - oor:mandatory (true | false) #IMPLIED - oor:op (modify | replace | fuse | remove | reset) #IMPLIED - oor:node-type NMTOKEN #IMPLIED - install:module NMTOKEN #IMPLIED -> + oor:name CDATA #REQUIRED + oor:op (modify | replace | fuse | remove) #IMPLIED + oor:finalized (true | false) #IMPLIED + oor:mandatory (true | false) #IMPLIED + oor:node-type CDATA #IMPLIED + oor:component CDATA #IMPLIED + install:module CDATA #IMPLIED> <!ELEMENT prop (value*)> <!ATTLIST prop - oor:name CDATA #REQUIRED - oor:op (modify | replace | fuse | remove | reset) #IMPLIED - oor:finalized CDATA #IMPLIED - oor:type (xs:boolean | xs:short | xs:int | xs:long | xs:double | xs:string | xs:hexBinary | oor:boolean-list | oor:short-list | oor:int-list | oor:long-list | oor:double-list | oor:string-list | oor:hexBinary-list) #IMPLIED - install:module NMTOKEN #IMPLIED -> - -<!ELEMENT value (#PCDATA)> + oor:name CDATA #REQUIRED + oor:op (modify | replace | fuse | remove) #IMPLIED + oor:finalized (true | false) #IMPLIED + oor:type + (xs:boolean | xs:short | xs:int | xs:long | xs:double | xs:string | + xs:hexBinary | oor:boolean-list | oor:short-list | oor:int-list | + oor:long-list | oor:double-list | oor:string-list | oor:hexBinary-list) + #IMPLIED + install:module CDATA #IMPLIED> + +<!ELEMENT value (#PCDATA | it | unicode)*> + <!-- EMPTY if oor:op="remove", xsi:nil="true", or oor:external is used + #PCDATA if the property type is a non-list type other than xs:string + (#PCDATA | unicode)* if the property type is xs:string + #PCDATA or it* if the property type is a list type other than + oor:string-list + (#PCDATA | unicode)* or it* if the property type is + oor:string-list --> <!ATTLIST value - xsi:nil (true | false) #IMPLIED - oor:separator CDATA #IMPLIED - xml:lang CDATA #IMPLIED - install:module NMTOKEN #IMPLIED -> + xml:lang CDATA #IMPLIED + oor:op (modify | remove) #IMPLIED + xsi:nil (true | false) #IMPLIED + oor:separator CDATA #IMPLIED + oor:external CDATA #IMPLIED + install:module CDATA #IMPLIED> + <!-- xml:lang must only be used for localized properties; defaults to the + empty string + oor:op defaults to "modify"; "remove" must only be used for localized + properties + xsi:nil defaults to "false"; "true" must only be used for nillable + properties + oor:separator must only be used if the property type is a list type + and the element content is #PCDATA or (#PCDATA | unicode)* (and not + EMPTY or it*) + oor:external must only be used for non-localized properties and must + not be used together with xsi:nil="true" --> + +<!ELEMENT it (#PCDATA | unicode)*> + <!-- #PCDATA if the property type is a list type other than + oor:string-list + (#PCDATA | unicode)* if the property type is oor:string-list --> +<!ATTLIST it> + +<!ELEMENT unicode EMPTY> +<!ATTLIST unicode + oor:scalar NMTOKEN #REQUIRED> + <!-- must syntactically match xs:integer and have a value in {0, ..., 8, + 11, 12, 14, ..., 31, 65534, 65535} --> + +<!-- oor:items is an alternative root element to oor:component-data (in plain + .xcu files only; not when nested in an .xcd file), used for the user-layer + registrymodifications.xcu: --> + +<!ELEMENT oor:items (item*)> +<!ATTLIST oor:items> + +<!ELEMENT item ((prop | node)*)> +<!ATTLIST item + oor:path CDATA #REQUIRED> + <!-- the absolute path representation of a set or group node --> diff --git a/officecfg/registry/component-update.xsd b/officecfg/registry/component-update.xsd deleted file mode 100644 index 5e0d0994739d..000000000000 --- a/officecfg/registry/component-update.xsd +++ /dev/null @@ -1,113 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<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"> - <xs:annotation> - <xs:documentation>defines the document format for configuration update documents. - Updates are increments to default documents like a component schema and contain - additional information for merging and access control</xs:documentation> - </xs:annotation> - <xs:redefine schemaLocation="component-types.xsd"> - <xs:complexType name="value"> - <xs:annotation> - <xs:documentation>adds the xml:lang attribute for localized information. Only the update format is allowed to contain localized data.</xs:documentation> - </xs:annotation> - <xs:simpleContent> - <xs:extension base="oor:value"> - <xs:attribute ref="xml:lang"/> - </xs:extension> - </xs:simpleContent> - </xs:complexType> - </xs:redefine> - <xs:complexType name="node"> - <xs:annotation> - <xs:documentation>Identifies a node in the schema by it's name and position within the hierarchy. Overrides or adds information from the base layer. A node can be of type set or group.</xs:documentation> - </xs:annotation> - <xs:complexContent> - <xs:extension base="oor:basic-node"> - <xs:choice minOccurs="0" maxOccurs="unbounded"> - <xs:element name="node" type="oor:node"/> - <xs:element name="prop" type="oor:prop"> - <xs:unique name="uniqueLang"> - <xs:selector xpath="oor:value"/> - <xs:field xpath="@xml:lang"/> - </xs:unique> - </xs:element> - </xs:choice> - <xs:attributeGroup ref="oor:update-info"/> - <xs:attribute ref="oor:mandatory"/> - <xs:attributeGroup ref="oor:node-type-info" use="optional"/> - </xs:extension> - </xs:complexContent> - </xs:complexType> - <xs:complexType name="prop"> - <xs:annotation> - <xs:documentation>adds operational info to a property, should only be applied for dynamic properties. Dynamic properties are not available in the component schema and are added or removed during runtime.</xs:documentation> - </xs:annotation> - <xs:complexContent> - <xs:extension base="oor:basic-prop"> - <xs:sequence minOccurs="0" maxOccurs="unbounded"> - <xs:element name="value" type="oor:value" nillable="true"/> - </xs:sequence> - <xs:attributeGroup ref="oor:update-info"/> - <xs:attribute ref="oor:type" use="optional"/> - </xs:extension> - </xs:complexContent> - </xs:complexType> - <xs:attributeGroup name="update-info"> - <xs:attribute ref="oor:finalized"/> - <xs:attribute ref="oor:readonly"/> - <xs:attribute ref="oor:op"/> - </xs:attributeGroup> - <xs:attribute name="op" use="optional" default="modify"> - <xs:annotation> - <xs:documentation>defines a list of possible operations, which are applied during merging of node fragments.</xs:documentation> - </xs:annotation> - <xs:simpleType> - <xs:restriction base="xs:string"> - <xs:enumeration value="modify"/> - <xs:enumeration value="replace"/> - <xs:enumeration value="fuse"/> - <xs:enumeration value="remove"/> - <xs:enumeration value="reset"/> - </xs:restriction> - </xs:simpleType> - </xs:attribute> - <xs:attribute name="finalized" type="xs:boolean" use="optional" default="false"> - <xs:annotation> - <xs:documentation>indicates that the content of a node and its descendant nodes are not allowed to be overwritten.</xs:documentation> - </xs:annotation> - </xs:attribute> - <xs:attribute name="mandatory" type="xs:boolean" default="false"> - <xs:annotation> - <xs:documentation>specifies that a node MUST be present and can not be removed or replaced by a node during the merging process. </xs:documentation> - </xs:annotation> - </xs:attribute> - <xs:attribute name="readonly" type="xs:boolean" use="optional" default="false"> - <xs:annotation> - <xs:documentation>determines, whether a node and its descendants are readonly or not. This is a computed attribute and can not be set by an application.</xs:documentation> - </xs:annotation> - </xs:attribute> - <xs:element name="component-data"> - <xs:annotation> - <xs:documentation>root element of the update document.</xs:documentation> - </xs:annotation> - <xs:complexType> - <xs:extension base="oor:basic-node"> - <xs:choice minOccurs="0" maxOccurs="unbounded"> - <xs:element name="node" type="oor:node"/> - <xs:element name="prop" type="oor:prop"> - <xs:unique name="uniqueLang"> - <xs:selector xpath="oor:value"/> - <xs:field xpath="@xml:lang"/> - </xs:unique> - </xs:element> - </xs:choice> - <xs:attributeGroup ref="oor:update-info"/> - <xs:attribute ref="oor:package"/> - </xs:extension> - </xs:complexType> - <xs:unique name="member"> - <xs:selector xpath="oor:node|oor:prop"/> - <xs:field xpath="@oor:name"/> - </xs:unique> - </xs:element> -</xs:schema> |