Index: /code/branches/cegui0.8/data/gui/configs/CEGUIConfig.xsd
===================================================================
--- /code/branches/cegui0.8/data/gui/configs/CEGUIConfig.xsd	(revision 11120)
+++ /code/branches/cegui0.8/data/gui/configs/CEGUIConfig.xsd	(revision 11121)
@@ -1,8 +1,88 @@
 <?xml version="1.0"?>
 <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
-
     <xsd:element name="CEGUIConfig" type="CEGUIConfigType"/>
 
-    <xsd:simpleType name="LogLevel">
+    <xsd:complexType name="CEGUIConfigType">
+        <xsd:sequence>
+            <xsd:choice minOccurs="0" maxOccurs="unbounded">
+                <xsd:element name="Logging" type="loggingType" />
+                <xsd:element name="AutoLoad" type="autoLoadType" />
+                <xsd:element name="ResourceDirectory" type="resourceDirectoryType" />
+                <xsd:element name="DefaultResourceGroup" type="defaultResourceGroupType" />
+                <xsd:element name="Scripting" type="scriptingType" />
+                <xsd:element name="DefaultXMLParser" type="defaultObjectType" />
+                <xsd:element name="DefaultImageCodec" type="defaultObjectType" />
+                <xsd:element name="DefaultFont" type="defaultObjectType" />
+                <xsd:element name="DefaultMouseCursor" type="defaultMouseCursorType" />
+                <xsd:element name="DefaultTooltip" type="defaultObjectType" />
+                <xsd:element name="DefaultGUISheet" type="defaultObjectType" />
+            </xsd:choice>
+        </xsd:sequence>
+    </xsd:complexType>
+
+    <xsd:complexType name="loggingType">
+        <xsd:simpleContent>
+            <xsd:extension base="xsd:string">
+                <xsd:attribute name="filename" type="xsd:string" use="optional" default="CEGUI.log" />
+                <xsd:attribute name="level" type="logLevel" use="optional" default="Standard" />
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+
+    <xsd:complexType name="autoLoadType">
+        <xsd:simpleContent>
+            <xsd:extension base="xsd:string">
+                <xsd:attribute name="type" type="resourceType" use="required" />
+                <xsd:attribute name="group" type="xsd:string" use="optional" default="" />
+                <xsd:attribute name="pattern" type="xsd:string" use="optional" default="*" />
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+
+    <xsd:complexType name="resourceDirectoryType">
+        <xsd:simpleContent>
+            <xsd:extension base="xsd:string">
+                <xsd:attribute name="group" type="xsd:string" use="required" />
+                <xsd:attribute name="directory" type="xsd:string" use="required" />
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+
+    <xsd:complexType name="defaultResourceGroupType">
+        <xsd:simpleContent>
+            <xsd:extension base="xsd:string">
+                <xsd:attribute name="type" type="resourceType" use="optional" default="Default" />
+                <xsd:attribute name="group" type="xsd:string" use="required" />
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+
+    <xsd:complexType name="scriptingType">
+        <xsd:simpleContent>
+            <xsd:extension base="xsd:string">
+                <xsd:attribute name="initScript" type="xsd:string" use="optional" default="" />
+                <xsd:attribute name="terminateScript" type="xsd:string" use="optional" default="" />
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+
+    <xsd:complexType name="defaultObjectType">
+        <xsd:simpleContent>
+            <xsd:extension base="xsd:string">
+                <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+
+    <xsd:complexType name="defaultMouseCursorType">
+        <xsd:simpleContent>
+            <xsd:extension base="xsd:string">
+                <xsd:attribute name="imageset" type="xsd:string" use="required" />
+                <xsd:attribute name="image" type="xsd:string" use="required" />
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+
+    <xsd:simpleType name="logLevel">
         <xsd:restriction base="xsd:string">
             <xsd:enumeration value="Errors"/>
@@ -13,16 +93,16 @@
     </xsd:simpleType>
 
-    <xsd:complexType name="CEGUIConfigType">
-        <xsd:attribute name="Logfile" type="xsd:string" use="optional" default=""/>
-        <xsd:attribute name="Scheme" type="xsd:string" use="optional" default=""/>
-        <xsd:attribute name="DefaultFont" type="xsd:string" use="optional" default=""/>
-        <xsd:attribute name="Layout" type="xsd:string" use="optional" default=""/>
-        <xsd:attribute name="InitScript" type="xsd:string" use="optional" default=""/>
-        <xsd:attribute name="TerminateScript" type="xsd:string" use="optional" default=""/>
-        <xsd:attribute name="DefaultResourceGroup" type="xsd:string" use="optional"  default="" />
-        <xsd:attribute name="LoggingLevel" type="LogLevel" use="optional"  default="Standard" />
-    </xsd:complexType>
+    <xsd:simpleType name="resourceType">
+        <xsd:restriction base="xsd:string">
+            <xsd:enumeration value="Imageset"/>
+            <xsd:enumeration value="Font"/>
+            <xsd:enumeration value="Scheme"/>
+            <xsd:enumeration value="LookNFeel"/>
+            <xsd:enumeration value="Layout"/>
+            <xsd:enumeration value="Script"/>
+            <xsd:enumeration value="XMLSchema"/>
+            <xsd:enumeration value="Default"/>
+        </xsd:restriction>
+    </xsd:simpleType>
 
 </xsd:schema>
-
-
Index: /code/branches/cegui0.8/data/gui/layouts/GUILayout.xsd
===================================================================
--- /code/branches/cegui0.8/data/gui/layouts/GUILayout.xsd	(revision 11120)
+++ /code/branches/cegui0.8/data/gui/layouts/GUILayout.xsd	(revision 11121)
@@ -2,61 +2,70 @@
 <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
 
-    <xsd:element name="GUILayout" type="GUILayoutType"/>
+	<xsd:element name="GUILayout" type="GUILayoutType"/>
+	
+	<xsd:complexType name="GUILayoutType">
+		<xsd:sequence>
+			<xsd:element name="Window" type="WindowType" />
+		</xsd:sequence>
+		<xsd:attribute name="version" type="xsd:nonNegativeInteger" use="optional" default="0" />
+	</xsd:complexType>
+	
+	<xsd:complexType name="WindowType">
+		<xsd:sequence>
+			<xsd:element name="LayoutImport" type="LayoutImportType"  minOccurs="0" maxOccurs="unbounded" />
+			<xsd:element name="Property" type="PropertyType"  minOccurs="0" maxOccurs="unbounded" />
+			<xsd:element name="Event" type="EventType"  minOccurs="0" maxOccurs="unbounded" />
+			<xsd:choice minOccurs="0" maxOccurs="unbounded">
+				<xsd:element name="Window" type="WindowType" />
+				<xsd:element name="AutoWindow" type="AutoWindowType" />
+			</xsd:choice>
+			<xsd:element name="Property" type="PropertyType"  minOccurs="0" maxOccurs="unbounded" />
+			<xsd:element name="UserString" type="UserStringType"  minOccurs="0" maxOccurs="unbounded" />
+		</xsd:sequence>
+		<xsd:attribute name="type" type="xsd:string" use="required"/>
+		<xsd:attribute name="name" type="xsd:string" use="optional" default="" />
+	</xsd:complexType>
 
-    <xsd:complexType name="GUILayoutType">
-        <xsd:sequence>
-            <xsd:element name="Window" type="WindowType" />
-        </xsd:sequence>
-        <xsd:attribute name="Parent" type="xsd:string" use="optional" default=""/>
-    </xsd:complexType>
+	<xsd:complexType name="AutoWindowType">
+		<xsd:sequence>
+			<xsd:element name="LayoutImport" type="LayoutImportType"  minOccurs="0" maxOccurs="unbounded" />
+			<xsd:element name="Property" type="PropertyType"  minOccurs="0" maxOccurs="unbounded" />
+			<xsd:element name="Event" type="EventType"  minOccurs="0" maxOccurs="unbounded" />
+			<xsd:choice minOccurs="0" maxOccurs="unbounded">
+				<xsd:element name="Window" type="WindowType" />
+				<xsd:element name="AutoWindow" type="AutoWindowType" />
+			</xsd:choice>
+			<xsd:element name="Property" type="PropertyType"  minOccurs="0" maxOccurs="unbounded" />
+		</xsd:sequence>
+		<xsd:attribute name="namePath" type="xsd:string" use="required"/>
+	</xsd:complexType>
 
-    <xsd:complexType name="WindowType">
-        <xsd:sequence>
-            <xsd:element name="LayoutImport" type="LayoutImportType"  minOccurs="0" maxOccurs="unbounded" />
-            <xsd:element name="Property" type="PropertyType"  minOccurs="0" maxOccurs="unbounded" />
-            <xsd:element name="Event" type="EventType"  minOccurs="0" maxOccurs="unbounded" />
-            <xsd:choice minOccurs="0" maxOccurs="unbounded">
-                <xsd:element name="Window" type="WindowType" />
-                <xsd:element name="AutoWindow" type="AutoWindowType" />
-            </xsd:choice>
-            <xsd:element name="Property" type="PropertyType"  minOccurs="0" maxOccurs="unbounded" />
-        </xsd:sequence>
-        <xsd:attribute name="Type" type="xsd:string" use="required"/>
-        <xsd:attribute name="Name" type="xsd:string" use="optional" default="" />
-    </xsd:complexType>
+	<xsd:complexType name="PropertyType">
+		<xsd:simpleContent>
+			<xsd:extension base="xsd:string">
+				<xsd:attribute name="name" type="xsd:string" use="required"/>
+				<xsd:attribute name="value" type="xsd:string" use="optional"/>
+			</xsd:extension>
+		</xsd:simpleContent> 
+	</xsd:complexType>
+	
+	<xsd:complexType name="UserStringType">
+		<xsd:simpleContent>
+			<xsd:extension base="xsd:string">
+				<xsd:attribute name="name" type="xsd:string" use="required"/>
+				<xsd:attribute name="value" type="xsd:string" use="optional"/>
+			</xsd:extension>
+		</xsd:simpleContent> 
+	</xsd:complexType>
+	
+	<xsd:complexType name="LayoutImportType">
+		<xsd:attribute name="filename" type="xsd:string" use="required"/>
+		<xsd:attribute name="resourceGroup" type="xsd:string" use="optional"  default="" />
+	</xsd:complexType>
 
-    <xsd:complexType name="AutoWindowType">
-        <xsd:sequence>
-            <xsd:element name="LayoutImport" type="LayoutImportType"  minOccurs="0" maxOccurs="unbounded" />
-            <xsd:element name="Property" type="PropertyType"  minOccurs="0" maxOccurs="unbounded" />
-            <xsd:element name="Event" type="EventType"  minOccurs="0" maxOccurs="unbounded" />
-            <xsd:choice minOccurs="0" maxOccurs="unbounded">
-                <xsd:element name="Window" type="WindowType" />
-                <xsd:element name="AutoWindow" type="AutoWindowType" />
-            </xsd:choice>
-            <xsd:element name="Property" type="PropertyType"  minOccurs="0" maxOccurs="unbounded" />
-        </xsd:sequence>
-        <xsd:attribute name="NameSuffix" type="xsd:string" use="required"/>
-    </xsd:complexType>
-
-    <xsd:complexType name="PropertyType">
-        <xsd:simpleContent>
-            <xsd:extension base="xsd:string">
-                <xsd:attribute name="Name" type="xsd:string" use="required"/>
-                <xsd:attribute name="Value" type="xsd:string" use="optional"/>
-            </xsd:extension>
-        </xsd:simpleContent>
-    </xsd:complexType>
-
-    <xsd:complexType name="LayoutImportType">
-        <xsd:attribute name="Filename" type="xsd:string" use="required"/>
-        <xsd:attribute name="Prefix" type="xsd:string" use="optional" default="" />
-        <xsd:attribute name="ResourceGroup" type="xsd:string" use="optional"  default="" />
-    </xsd:complexType>
-
-    <xsd:complexType name="EventType">
-        <xsd:attribute name="Name" type="xsd:string" use="required"/>
-        <xsd:attribute name="Function" type="xsd:string" use="required"/>
-    </xsd:complexType>
+	<xsd:complexType name="EventType">
+		<xsd:attribute name="name" type="xsd:string" use="required"/>
+		<xsd:attribute name="function" type="xsd:string" use="required"/>
+	</xsd:complexType>
 
 </xsd:schema>
Index: /code/branches/cegui0.8/data/gui/schemes/GUIScheme.xsd
===================================================================
--- /code/branches/cegui0.8/data/gui/schemes/GUIScheme.xsd	(revision 11120)
+++ /code/branches/cegui0.8/data/gui/schemes/GUIScheme.xsd	(revision 11121)
@@ -1,54 +1,56 @@
 <?xml version="1.0" ?>
 <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
-    <xsd:element name="GUIScheme" type="SchemeType" />
-    <xsd:complexType name="SchemeType">
+	<xsd:element name="GUIScheme" type="SchemeType" />
+	<xsd:complexType name="SchemeType">
         <xsd:choice minOccurs="0" maxOccurs="unbounded">
-            <xsd:element name="Imageset" type="NamedDataType" />
+			<xsd:element name="Imageset" type="NamedDataType" />
             <xsd:element name="ImagesetFromImage" type="NamedDataType" />
-            <xsd:element name="Font" type="NamedDataType" />
+			<xsd:element name="Font" type="NamedDataType" />
             <xsd:element name="LookNFeel" type="FileDataType" />
-            <xsd:element name="WindowSet" type="WindowSetType" />
-            <xsd:element name="WindowRendererSet" type="WindowRendererSetType" />
-            <xsd:element name="WindowAlias" type="WindowAliasType" />
+			<xsd:element name="WindowSet" type="WindowSetType" />
+			<xsd:element name="WindowRendererSet" type="WindowRendererSetType" />
+			<xsd:element name="WindowAlias" type="WindowAliasType" />
             <xsd:element name="FalagardMapping" type="FalagardMapType" />
-        </xsd:choice>
-        <xsd:attribute name="Name" type="xsd:string" use="required" />
+		</xsd:choice>
+		<xsd:attribute name="name" type="xsd:string" use="required" />
+		<xsd:attribute name="version" type="xsd:nonNegativeInteger" use="optional" default="0" />
+	</xsd:complexType>
+	<xsd:complexType name="WindowSetType">
+		<xsd:sequence>
+            <xsd:element name="WindowFactory" type="WindowFactoryType" minOccurs="0" maxOccurs="unbounded" />
+		</xsd:sequence>
+		<xsd:attribute name="filename" type="xsd:string" use="required" />
+	</xsd:complexType>
+	<xsd:complexType name="WindowRendererSetType">
+		<xsd:sequence>
+            <xsd:element name="WindowRendererFactory" type="WindowRendererFactoryType" minOccurs="0" maxOccurs="unbounded" />
+		</xsd:sequence>
+		<xsd:attribute name="filename" type="xsd:string" use="required" />
+	</xsd:complexType>
+    <xsd:complexType name="FileDataType">
+        <xsd:attribute name="filename" type="xsd:string" use="required" />
+        <xsd:attribute name="resourceGroup" type="xsd:string" use="optional"  default="" />
     </xsd:complexType>
-    <xsd:complexType name="WindowSetType">
-        <xsd:sequence>
-            <xsd:element name="WindowFactory" type="WindowFactoryType" minOccurs="0" maxOccurs="unbounded" />
-        </xsd:sequence>
-        <xsd:attribute name="Filename" type="xsd:string" use="required" />
-    </xsd:complexType>
-    <xsd:complexType name="WindowRendererSetType">
-        <xsd:sequence>
-            <xsd:element name="WindowRendererFactory" type="WindowRendererFactoryType" minOccurs="0" maxOccurs="unbounded" />
-        </xsd:sequence>
-        <xsd:attribute name="Filename" type="xsd:string" use="required" />
-    </xsd:complexType>
-    <xsd:complexType name="FileDataType">
-        <xsd:attribute name="Filename" type="xsd:string" use="required" />
-        <xsd:attribute name="ResourceGroup" type="xsd:string" use="optional"  default="" />
-    </xsd:complexType>
-    <xsd:complexType name="NamedDataType">
-        <xsd:attribute name="Name" type="xsd:string" use="required" />
-        <xsd:attribute name="Filename" type="xsd:string" use="required" />
-        <xsd:attribute name="ResourceGroup" type="xsd:string" use="optional"  default="" />
-    </xsd:complexType>
-    <xsd:complexType name="WindowFactoryType">
-        <xsd:attribute name="Name" type="xsd:string" use="required" />
-    </xsd:complexType>
-    <xsd:complexType name="WindowRendererFactoryType">
-        <xsd:attribute name="Name" type="xsd:string" use="required" />
-    </xsd:complexType>
-    <xsd:complexType name="WindowAliasType">
-        <xsd:attribute name="Alias" type="xsd:string" use="required" />
-        <xsd:attribute name="Target" type="xsd:string" use="required" />
-    </xsd:complexType>
+	<xsd:complexType name="NamedDataType">
+		<xsd:attribute name="name" type="xsd:string" use="optional" default="" />
+		<xsd:attribute name="filename" type="xsd:string" use="required" />
+		<xsd:attribute name="resourceGroup" type="xsd:string" use="optional"  default="" />
+	</xsd:complexType>
+	<xsd:complexType name="WindowFactoryType">
+		<xsd:attribute name="name" type="xsd:string" use="required" />
+	</xsd:complexType>
+	<xsd:complexType name="WindowRendererFactoryType">
+		<xsd:attribute name="name" type="xsd:string" use="required" />
+	</xsd:complexType>
+	<xsd:complexType name="WindowAliasType">
+		<xsd:attribute name="alias" type="xsd:string" use="required" />
+		<xsd:attribute name="target" type="xsd:string" use="required" />
+	</xsd:complexType>
     <xsd:complexType name="FalagardMapType">
-        <xsd:attribute name="WindowType" type="xsd:string" use="required" />
-        <xsd:attribute name="TargetType" type="xsd:string" use="required" />
-        <xsd:attribute name="Renderer" type="xsd:string" use="required" />
-        <xsd:attribute name="LookNFeel" type="xsd:string" use="required" />
+        <xsd:attribute name="windowType" type="xsd:string" use="required" />
+        <xsd:attribute name="targetType" type="xsd:string" use="required" />
+		<xsd:attribute name="renderer" type="xsd:string" use="required" />
+        <xsd:attribute name="lookNFeel" type="xsd:string" use="required" />
+        <xsd:attribute name="renderEffect" type="xsd:string" use="optional" default="" />
     </xsd:complexType>
 </xsd:schema>
