Index: trunk/data/preferences.xsd
===================================================================
--- trunk/data/preferences.xsd	(revision 9813)
+++ trunk/data/preferences.xsd	(revision 9821)
@@ -26,5 +26,5 @@
         <attribute name="key" type="string" use="required" />
     </complexType>
-    
+
     <complexType name="lists">
         <sequence>
@@ -56,3 +56,48 @@
         <attribute name="value" type="string" use="required"/>
     </complexType>
+
+    <!-- cache for default preference values -->
+
+    <element name="preferences-defaults" type="tns:root-def"/>
+
+    <complexType name="root-def">
+        <choice minOccurs="0" maxOccurs="unbounded">
+            <element name="tag" type="tns:tag-def" nillable="true"/>
+            <element name="list" type="tns:list-def" nillable="true"/>
+            <element name="lists" type="tns:lists-def" nillable="true"/>
+            <element name="maps" type="tns:maps-def" nillable="true"/>
+        </choice>
+        <attribute name="version" type="string" />
+    </complexType>
+
+    <complexType name="tag-def">
+        <attribute name="key" type="string" use="required" />
+        <!-- element must be either nil or have the value attribute -->
+        <attribute name="value" type="string" use="optional"/>
+        <attribute name="time" type="decimal" use="required"/>
+    </complexType>
+
+    <complexType name="list-def">
+         <complexContent>
+             <extension base="tns:list">
+                <attribute name="time" type="decimal" use="required"/>
+            </extension>
+         </complexContent>
+    </complexType>
+
+    <complexType name="lists-def">
+         <complexContent>
+             <extension base="tns:lists">
+                <attribute name="time" type="decimal" use="required"/>
+            </extension>
+         </complexContent>
+    </complexType>
+
+    <complexType name="maps-def">
+         <complexContent>
+             <extension base="tns:maps">
+                <attribute name="time" type="decimal" use="required"/>
+            </extension>
+         </complexContent>
+    </complexType>
 </schema>
