<!ELEMENT schemalist (schema|enum)* >
-<!ATTLIST schemalist gettext-domain #IMPLIED >
+<!ATTLIST schemalist gettext-domain CDATA #IMPLIED >
-<!ELEMENT schema (key|child)* >
+<!ELEMENT schema (key|child|override)* >
<!ATTLIST schema id CDATA #REQUIRED
path CDATA #IMPLIED
- gettext-domain CDATA #IMPLIED >
+ gettext-domain CDATA #IMPLIED
+ extends CDATA #IMPLIED
+ list-of CDATA #IMPLIED >
-<!-- defines an enumerated type -->
+<!-- enumerated and flags types -->
<!-- each value element maps a nick to a numeric value -->
<!ELEMENT enum (value*) >
<!ATTLIST enum id CDATA #REQUIRED >
+
+<!ELEMENT flags (value*) >
+<!ATTLIST flags id CDATA #REQUIRED >
+
<!ELEMENT value EMPTY >
<!-- nick must be at least 2 characters long -->
<!-- value must be parsable as a 32-bit integer -->
-<!ELEMENT value nick #REQUIRED
- value #REQUIRED >
+<!ATTLIST value nick CDATA #REQUIRED
+ value CDATA #REQUIRED >
-<!ELEMENT key (default|summary?|description?|range?|choices?|aliases?) >
+<!ELEMENT key (default|summary?|description?|range?|choices?|aliases?)* >
<!-- name can only contain lowercase letters, numbers and '-' -->
<!-- type must be a GVariant type string -->
-<!-- enum must be the id of an enum that has been defined earlier -->
-<!-- exactly one of enum or type must be given -->
-<!ATTLIST key name CDATA #REQUIRED
- type CDATA #IMPLIED
- enum CDATA #IMPLIED >
+<!-- enum must be the id of an enum type that has been defined earlier -->
+<!-- flags must be the id of a flags type that has been defined earlier -->
+<!-- exactly one of type, enum or flags must be given -->
+<!ATTLIST key name CDATA #REQUIRED
+ type CDATA #IMPLIED
+ enum CDATA #IMPLIED
+ flags CDATA #IMPLIED >
<!-- the default value is specified a a serialized GVariant,
i.e. you have to include the quotes when specifying a string -->
<!ELEMENT child EMPTY >
<!ATTLIST child name CDATA #REQUIRED
schema CDATA #REQUIRED >
+
+<!ELEMENT override (#PCDATA) >
+<!ATTLIST override name CDATA #REQUIRED
+ l10n CDATA #IMPLIED
+ context CDATA #IMPLIED >