diff --git a/SDT/schema4.0/docs/SDT_UML.uxf b/SDT/schema4.0/docs/SDT_UML.uxf
index 0900afc744e8704888d7a1fbdeeb8615fa9ef2f3..e4ad21952306f53a6097db4a91faecd0b5171dbd 100644
--- a/SDT/schema4.0/docs/SDT_UML.uxf
+++ b/SDT/schema4.0/docs/SDT_UML.uxf
@@ -381,7 +381,7 @@ fontsize=12</panel_attributes>
       <x>72</x>
       <y>192</y>
       <w>184</w>
-      <h>128</h>
+      <h>144</h>
     </coordinates>
     <panel_attributes>Domain
 --
@@ -390,6 +390,7 @@ fontsize=12</panel_attributes>
 /- Doc : Doc/
 /* Imports/
 /* DataTypes : DataType/
+/* SubDevices : SubDevice/
 /* ModuleClasses : ModuleClass/
 /* DeviceClasses : DeviceClass/
 /* ProductClasses : ProductClass/
@@ -415,7 +416,7 @@ fontsize=12</panel_attributes>
       <x>336</x>
       <y>440</y>
       <w>176</w>
-      <h>120</h>
+      <h>128</h>
     </coordinates>
     <panel_attributes>SubDevice
 --
@@ -424,6 +425,7 @@ fontsize=12</panel_attributes>
 /@ minOccurs : text = "1"/
 /@ maxOccurs : text = "1"/
 /- Doc : Doc/
+/- Extend : Extend/
 /* Properties : Property/
 /* ModuleClasses : ModuleClass/
 fg=blue</panel_attributes>
@@ -1009,14 +1011,14 @@ fg=blue</panel_attributes>
     <id>Relation</id>
     <coordinates>
       <x>248</x>
-      <y>304</y>
+      <y>288</y>
       <w>104</w>
-      <h>56</h>
+      <h>72</h>
     </coordinates>
     <panel_attributes>lt=&lt;.
 m1=0..n
 fontsize=12</panel_attributes>
-    <additional_attributes>110.0;40.0;60.0;40.0;60.0;10.0;10.0;10.0</additional_attributes>
+    <additional_attributes>110.0;60.0;60.0;60.0;60.0;10.0;10.0;10.0</additional_attributes>
   </element>
   <element>
     <id>Relation</id>
@@ -1046,4 +1048,17 @@ bg=gray
 lw=0.1</panel_attributes>
     <additional_attributes/>
   </element>
+  <element>
+    <id>Relation</id>
+    <coordinates>
+      <x>248</x>
+      <y>304</y>
+      <w>104</w>
+      <h>168</h>
+    </coordinates>
+    <panel_attributes>lt=&lt;.
+m1=0..n
+fontsize=12</panel_attributes>
+    <additional_attributes>110.0;180.0;50.0;180.0;50.0;10.0;10.0;10.0</additional_attributes>
+  </element>
 </diagram>
diff --git a/SDT/schema4.0/docs/images/Domain.png b/SDT/schema4.0/docs/images/Domain.png
index afcbcde446a7b70da3efa2928ac7644b3b3a3f23..b91f91268c0924e622941514c68b3bcef2a528ad 100644
Binary files a/SDT/schema4.0/docs/images/Domain.png and b/SDT/schema4.0/docs/images/Domain.png differ
diff --git a/SDT/schema4.0/docs/images/SDT_UML_Basic_Elements.png b/SDT/schema4.0/docs/images/SDT_UML_Basic_Elements.png
index a740368c3ee9a099a579d3328106a3af3ee1585e..7309c2dfbbf0410d77759353279510caf6cd5614 100644
Binary files a/SDT/schema4.0/docs/images/SDT_UML_Basic_Elements.png and b/SDT/schema4.0/docs/images/SDT_UML_Basic_Elements.png differ
diff --git a/SDT/schema4.0/docs/images/SubDevice.png b/SDT/schema4.0/docs/images/SubDevice.png
index 64a96571eba1c451d3b4e14e1f5be697ffc82cbb..4f01a1d618169e27956c1fd2028c55ee690b9e5d 100644
Binary files a/SDT/schema4.0/docs/images/SubDevice.png and b/SDT/schema4.0/docs/images/SubDevice.png differ
diff --git a/SDT/schema4.0/etc/domain.rnc b/SDT/schema4.0/etc/domain.rnc
index e09e19f5ad58bab8d7fa99ed67c1af6fcce27702..21a15f726dbc14fe14a5efea82d4efe8a3548537 100644
--- a/SDT/schema4.0/etc/domain.rnc
+++ b/SDT/schema4.0/etc/domain.rnc
@@ -17,6 +17,7 @@ Domain =
     element Imports { Domain+ }?,
     element DataTypes { DataTypeDef+ }?,
     ModuleClassesDef?,
+    SubDevicesRef?,
     DeviceClassesDef?,
     ProductClassesDef?
   }
@@ -112,6 +113,7 @@ SubDevicesRef =
       attribute minOccurs { text }?,
       attribute maxOccurs { text }?,
       DocDef,
+      ExtendDef?,
       PropertiesDef?,
       ModuleClassesDef?
     }+
diff --git a/SDT/schema4.0/src/domain.rng b/SDT/schema4.0/src/domain.rng
index 9ba0f59bfd9e6d6f99112f596392f88b080c2124..e5cb20bfca88c90e4a4bd223c48bbb05b7dde87a 100644
--- a/SDT/schema4.0/src/domain.rng
+++ b/SDT/schema4.0/src/domain.rng
@@ -51,6 +51,9 @@
 			<optional>
 				<ref name="ModuleClassesDef"/>
 			</optional>
+			<optional>
+				<ref name="SubDevicesRef" />
+			</optional>
 			<optional>
 				<ref name="DeviceClassesDef" />
 			</optional>
@@ -325,6 +328,9 @@
 						</attribute>
 					</optional>
 					<ref name="DocDef"/>
+					<optional>
+						<ref name="ExtendDef" />
+					</optional>
 					<optional>
 						<ref name="PropertiesDef"/>
 					</optional>
diff --git a/SDT/schema4.0/src/domain.xsd b/SDT/schema4.0/src/domain.xsd
index e3e8fad40dedfcb3747ec039d9118bd05a68b827..a43dbde64a3de638f3826a2f1b62955407cb9acd 100644
--- a/SDT/schema4.0/src/domain.xsd
+++ b/SDT/schema4.0/src/domain.xsd
@@ -23,6 +23,7 @@
             <xs:element minOccurs="0" ref="Imports"/>
             <xs:element minOccurs="0" ref="DataTypes"/>
             <xs:element minOccurs="0" ref="ModuleClasses"/>
+            <xs:element minOccurs="0" ref="SubDevices"/>
             <xs:element minOccurs="0" ref="DeviceClasses"/>
             <xs:element minOccurs="0" ref="ProductClasses"/>
           </xs:sequence>
@@ -242,6 +243,7 @@
       <xs:complexContent>
         <xs:extension base="DocDef">
           <xs:sequence>
+            <xs:element minOccurs="0" ref="Extend"/>
             <xs:element minOccurs="0" ref="Properties"/>
             <xs:element minOccurs="0" ref="ModuleClasses"/>
           </xs:sequence>
diff --git a/SDT/schema4.0/test/subdevices-test.xml b/SDT/schema4.0/test/subdevices-test.xml
new file mode 100644
index 0000000000000000000000000000000000000000..1cf88dcae083a1108b56dadd67138f796384dce1
--- /dev/null
+++ b/SDT/schema4.0/test/subdevices-test.xml
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!-- Test the data types references -->
+
+<Domain id="subdevices-test" xmlns="http://www.onem2m.org/xml/sdt/4.0" xmlns:xi="http://www.w3.org/2001/XInclude">
+	<SubDevices>
+		<SubDevice id="aSubDevice">
+			<ModuleClasses>
+				<ModuleClass name="aModuleClass">
+					<Data>
+						<DataPoint name="aDataPoint">
+							<DataType>
+								<SimpleType type="boolean" />
+							</DataType>
+						</DataPoint>
+					</Data>
+				</ModuleClass>
+			</ModuleClasses>
+		</SubDevice>
+	</SubDevices>
+
+	<DeviceClasses>
+		<DeviceClass id="aDeviceClass">
+			<SubDevices>
+				<SubDevice id="subDevice">
+					<Extend domain="subdevices-test" entity="aSubDevice" />
+				</SubDevice>
+			</SubDevices>
+		</DeviceClass>
+	</DeviceClasses>
+</Domain>
\ No newline at end of file