diff --git a/SDT/schema4.0/etc/domain.rnc b/SDT/schema4.0/etc/domain.rnc
index 0f38b2a2f5986a780e895984dfb11787b54af7a5..f4f495ccf2984e34482b66ca2b7550038f2e2006 100644
--- a/SDT/schema4.0/etc/domain.rnc
+++ b/SDT/schema4.0/etc/domain.rnc
@@ -139,6 +139,7 @@ ArgDef =
   element Args {
     element Arg {
       attribute name { xsd:Name },
+      attribute optional { xsd:boolean }?,
       attribute semanticURI { xsd:anyURI }?,
       DocDef,
       DataTypeDef
diff --git a/SDT/schema4.0/src/domain.rng b/SDT/schema4.0/src/domain.rng
index 756e28a0ae44dd3d9abf768ce424ee9e7013c88f..4f121e974fe845a5ab30de37689776abd1fceb6e 100644
--- a/SDT/schema4.0/src/domain.rng
+++ b/SDT/schema4.0/src/domain.rng
@@ -386,6 +386,11 @@
 					<attribute name="name">
 						<data type="Name"/>
 					</attribute>
+					<optional>
+						<attribute name="optional">
+							<data type="boolean"/>
+						</attribute>
+					</optional>
 					<optional>
 						<attribute name="semanticURI">
 							<data type="anyURI"/>
diff --git a/SDT/schema4.0/src/domain.xsd b/SDT/schema4.0/src/domain.xsd
index ea7e43dabbb99b0b114a4577cf9a3718f600d980..64c8448583aeccb2a3fe2ae8410dbea5134e1072 100644
--- a/SDT/schema4.0/src/domain.xsd
+++ b/SDT/schema4.0/src/domain.xsd
@@ -312,6 +312,7 @@
             <xs:element ref="DataType"/>
           </xs:sequence>
           <xs:attribute name="name" use="required" type="xs:Name"/>
+          <xs:attribute name="optional" type="xs:boolean"/>
           <xs:attribute name="semanticURI" type="xs:anyURI"/>
         </xs:extension>
       </xs:complexContent>
diff --git a/SDT/schema4.0/test/arg-test.xml b/SDT/schema4.0/test/arg-test.xml
new file mode 100644
index 0000000000000000000000000000000000000000..6836bbea525449f07d7327915472fded1b3142ed
--- /dev/null
+++ b/SDT/schema4.0/test/arg-test.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!-- Test the data types references -->
+
+<Domain id="arg-test" xmlns="http://homegatewayinitiative.org/xml/dal/4.0" xmlns:xi="http://www.w3.org/2001/XInclude">
+
+	<ModuleClasses>
+		<ModuleClass name="TestArg">
+			<Actions>
+				<Action name="testAction">
+					<Args>
+						<Arg name="argMandatory">
+							<DataType>
+								<SimpleType type="boolean" />
+							</DataType>
+						</Arg>
+						<Arg name="argOptional" optional="true">
+							<DataType>
+								<SimpleType type="boolean" />
+							</DataType>
+						</Arg>
+					</Args>
+				</Action>
+			</Actions>
+		</ModuleClass>
+	</ModuleClasses>
+
+</Domain>
\ No newline at end of file