From c9437b7cf4629ec536ee55aae8faa95d4bf61533 Mon Sep 17 00:00:00 2001
From: reinaortega <miguelangel.reinaortega@etsi.org>
Date: Mon, 11 May 2020 07:49:53 +0200
Subject: [PATCH] XSD v1_1_0 baseline

---
 CDT-AE.xsd                            |  6 +-
 CDT-CSEBase.xsd                       |  2 +-
 CDT-accessControlPolicy.xsd           | 15 -----
 CDT-cmdhLimits.xsd                    |  6 +-
 CDT-commonTypes.xsd                   | 82 +++++++++++----------------
 CDT-container.xsd                     |  5 +-
 CDT-contentInstance.xsd               |  2 -
 CDT-enumerationTypes.xsd              |  7 +--
 CDT-firmware.xsd                      |  2 +-
 CDT-group.xsd                         |  2 -
 CDT-locationPolicy.xsd                |  6 +-
 CDT-m2mServiceSubscriptionProfile.xsd |  1 -
 CDT-remoteCSE.xsd                     |  4 +-
 CDT-requestPrimitive.xsd              |  2 +-
 CDT-software.xsd                      |  6 +-
 15 files changed, 51 insertions(+), 97 deletions(-)

diff --git a/CDT-AE.xsd b/CDT-AE.xsd
index 3fa445d..bd4e846 100644
--- a/CDT-AE.xsd
+++ b/CDT-AE.xsd
@@ -43,9 +43,10 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 						<xs:element name="appName" type="xs:string" minOccurs="0" />
 						<xs:element name="App-ID" type="xs:string" />
 						<xs:element name="AE-ID" type="m2m:ID" />
-						<xs:element name="pointOfAccess" type="m2m:pOAList" minOccurs="0" />
+						<xs:element name="pointOfAccess" type="m2m:poaList" minOccurs="0" />
 						<xs:element name="ontologyRef" type="xs:anyURI" minOccurs="0" />
 						<xs:element name="nodeLink" type="xs:anyURI" minOccurs="0" />
+						<xs:element name="requestReachability" type="xs:boolean" />
 
 						<!-- Child Resources -->
 						<xs:choice minOccurs="0" maxOccurs="1">
@@ -74,9 +75,10 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 						<xs:element name="appName" type="xs:string" minOccurs="0" />
 						<xs:element name="App-ID" type="xs:string" />
 						<xs:element name="AE-ID" type="m2m:ID" />
-						<xs:element name="pointOfAccess" type="m2m:pOAList" minOccurs="0" />
+						<xs:element name="pointOfAccess" type="m2m:poaList" minOccurs="0" />
 						<xs:element name="ontologyRef" type="xs:anyURI" minOccurs="0" />
 						<xs:element name="nodeLink" type="xs:anyURI" minOccurs="0" />
+						<xs:element name="requestReachability" type="xs:boolean" minOccurs="0" />
 
 						<!-- Child Resources -->
 						<xs:choice minOccurs="0" maxOccurs="1">
diff --git a/CDT-CSEBase.xsd b/CDT-CSEBase.xsd
index 39ce59c..22eb283 100644
--- a/CDT-CSEBase.xsd
+++ b/CDT-CSEBase.xsd
@@ -59,7 +59,7 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 								<xs:list itemType="m2m:resourceType" />
 							</xs:simpleType>
 						</xs:element>
-						<xs:element name="pointOfAccess" type="m2m:pOAList" />
+						<xs:element name="pointOfAccess" type="m2m:poaList" />
 						<xs:element name="nodeLink" type="xs:anyURI" minOccurs="0" />
 				
                         <!-- Child Resources -->
diff --git a/CDT-accessControlPolicy.xsd b/CDT-accessControlPolicy.xsd
index 2e1681b..06b9f18 100644
--- a/CDT-accessControlPolicy.xsd
+++ b/CDT-accessControlPolicy.xsd
@@ -75,8 +75,6 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 	</xs:element>
 
 
-	<!-- TODO: define short names for "setOfAcrs" and all its elements names (CR to TS-0004 for next PRO WG meeting)   -->
-
 	<xs:complexType name="setOfAcrs">
 		<xs:sequence>
 			<xs:element name="accessControlRule" type="m2m:accessControlRule" minOccurs="0"
@@ -91,22 +89,13 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 			<!-- accessControlOperations defined as enumerated list 1 ... 63 -->
 			<xs:element name="accessControlOperations" type="m2m:accessControlOperations" />
 
-			<!-- TODO: mismatch with TS-0004 where "accessControlContexts" has multiplicity 0..1 -->
 			<xs:element name="accessControlContexts" minOccurs="0" maxOccurs="unbounded">
 				<xs:complexType>
 					<xs:sequence>
-						<!-- TODO: mismatch with TS-0003 where element is called "accessControlTimeWindows" -->
-						<!-- TODO: mismatch with TS-0001 where element is called "accessControlTimeWindow" -->
 						<xs:element name="accessControlWindow" type="m2m:scheduleEntry" minOccurs="0" maxOccurs="unbounded" />
-
-						<!-- TODO: mismatch with TS-0001: element is called accessControlIpAddress in TS-0001" in TS-0003 -->
 						<xs:element name="accessControlIpAddresses" minOccurs="0">
 							<xs:complexType>
 								<xs:sequence>
-									<!-- TODO: it should be possible to include both IPv6 and IPv4 address. Present text in TS-0004 is ambiguous. Not 
-										clear if "or" in TS-0001 is inclusive or exclusive. Below it is interpreted as inclusive. -->
-									<!-- TODO: the element names ipv4Addresses and ipv6Addresses are not explicitly mentioned in TS-0004 -->
-
 									<xs:element name="ipv4Addresses" minOccurs="0" maxOccurs="1">
 										<!-- space separated list of IPv4 addresses -->
 										<xs:simpleType>
@@ -122,9 +111,6 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 								</xs:sequence>
 							</xs:complexType>
 						</xs:element>
-
-						<!-- TODO: mismatch with TS-0003 and TS-0004 where element is called "accessControlLocationRegions" -->
-						<!-- TODO: mismatch with TS-0004 where element has multiplicity [0..n] -->
 						<xs:element name="accessControlLocationRegion" type="m2m:locationRegion" minOccurs="0" />
 					</xs:sequence>
 				</xs:complexType>
@@ -170,7 +156,6 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 	<!-- Initial IPv4 and IPv6 address representation types were found here:
      http://lists.w3.org/Archives/Public/www-xml-schema-comments/2005OctDec/0138.html, CIDR suffix has been added  -->
 
-	<!--  TODO: Need to add more descriptive text into TS-0004 about structure of IPv4 and IPv6 addresses with optional CIDR suffix -->
 	<xs:simpleType name="ipv4">
 		<xs:annotation>
 			<xs:documentation> An IP version 4 address, with optional CIDR suffix in the range /0
diff --git a/CDT-cmdhLimits.xsd b/CDT-cmdhLimits.xsd
index 0c82df2..e7e4e76 100644
--- a/CDT-cmdhLimits.xsd
+++ b/CDT-cmdhLimits.xsd
@@ -29,7 +29,6 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
   elementFormDefault="unqualified" attributeFormDefault="unqualified" >   
   
   <xs:include schemaLocation="CDT-commonTypes.xsd" /> 
-  <xs:include schemaLocation="CDT-subscription.xsd" />
   
   <xs:element name="cmdhLimits">
     <xs:complexType>
@@ -41,22 +40,19 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
             <!-- mgmtObj specialization-specific Attributes -->
             <xs:element name="order" type="xs:positiveInteger" />
             <xs:element name="requestOrigin" type="m2m:listOfM2MID" />
-            <!-- TODO In TS-0004 requestContext is shown as xs:string rather than xs:anyType -->
             <xs:element name="requestContext" type="xs:anyType" />
             <xs:element name="requestContextNotification" type="xs:boolean"  minOccurs="0" />
-            <!-- TODO In TS-0004 requestCharacteristics is shown as xs:string rather than xs:anyType -->
             <xs:element name="requestCharacteristics" type="xs:anyType"  />
             <xs:element name="limitsEventCategory" type="m2m:listOfEventCat" />
             <xs:element name="limitsRequestExpTime" type="m2m:listOfMinMax" />
             <xs:element name="limitsResultExpTime" type="m2m:listOfMinMax" />
             <xs:element name="limitsOpExecTime" type="m2m:listOfMinMax" />
             <xs:element name="limitsRespPersistence" type="m2m:listOfMinMax" />
-            <!-- TODO: TS-0004 D.12.5 uses type "m2m:permittedBooleanValues" -->
             <xs:element name="limitsDelAggregation" >
                 <xs:simpleType>
                     <xs:restriction base="xs:token">
                     <xs:annotation>
-                        <xs:documentation>defines data type denoted "m2m:permittedBooleanValues" in TS-0004 D.12.5
+                        <xs:documentation>defines data type denoted "restricted list of xs:boolean" in TS-0004 D.12.5
                         </xs:documentation>
                     </xs:annotation>
                     <!-- False -->
diff --git a/CDT-commonTypes.xsd b/CDT-commonTypes.xsd
index 2ee4e4d..f6c1698 100644
--- a/CDT-commonTypes.xsd
+++ b/CDT-commonTypes.xsd
@@ -65,16 +65,16 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
         <list itemType="xs:anyURI" />
     </xs:simpleType>
 
-    <!-- TODO: "labels" is called "labelsType" in  Table 6.3.2-1 -->
 	<xs:simpleType name="labels">
 		<xs:list itemType="xs:token" />
 	</xs:simpleType>
 
-	<!-- TODO: this data type is not used in any of the XSD files. It is listed in TS-0004 without any given use case  -->
-	<xs:simpleType name="networkaccessID">
-		<xs:restriction base="xs:token">
-		</xs:restriction>
-	</xs:simpleType>
+    <xs:simpleType name="triggerRecipientID">
+        <xs:restriction base="xs:unsignedInt">
+            <xs:minInclusive value="0"></xs:minInclusive>
+            <xs:maxInclusive value="65535"></xs:maxInclusive>
+        </xs:restriction>
+    </xs:simpleType>
 
 	<!-- "listOfM2MID" is a space separated list of CSE-IDs and/or AE-IDs (i.e. elements of data type m2m:ID") -->
 	<xs:simpleType name="listOfM2MID">
@@ -117,7 +117,7 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 	 
 	<!-- m2m:ipv4 and m2m:ipv6 and m2m:countryCode are defined in the CDT-accessControlPolicy file -->
 	
-	<xs:simpleType name="pOAList">
+	<xs:simpleType name="poaList">
 		<xs:list itemType="xs:string" />
 	</xs:simpleType>
 
@@ -184,11 +184,6 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 		</xs:restriction>
 	</xs:simpleType>
 
-    <!-- TODO: triggerRecipientID is not in  Table 6.3.2-1 -->
-	<xs:simpleType name="triggerRecipientID">
-		<xs:restriction base="xs:unsignedInt" />
-	</xs:simpleType>
-
 	<xs:simpleType name="listOfURIs">
 		<list itemType="xs:anyURI" />
 	</xs:simpleType>
@@ -202,7 +197,7 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 		<xs:sequence>
 			<xs:sequence>
 				<xs:element name="tracingOption" type="xs:boolean" />
-				<xs:element name="tracingInfo" type="m2m:listOfM2MID" />
+				<xs:element name="tracingInfo" type="m2m:listOfM2MID" minOccurs="0"/>
 				<!-- should tracing Info be list of anyURI? -->
 			</xs:sequence>
 		</xs:sequence>
@@ -232,18 +227,11 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 			<xs:element name="originatingTimestamp" type="m2m:timestamp" minOccurs="0" />
 			<xs:element name="requestExpirationTimestamp" type="m2m:timestamp" minOccurs="0" />
 			<xs:element name="resultExpirationTimestamp" type="m2m:timestamp" minOccurs="0" />
-			<xs:element name="operationalExecutionTime" type="m2m:timestamp" minOccurs="0" />
+			<xs:element name="operationExecutionTime" type="m2m:timestamp" minOccurs="0" />
 			<xs:element name="responseType" type="m2m:responseType" minOccurs="0" />
 			<xs:element name="resultPersistence" type="m2m:timestamp" minOccurs="0" />
 			<xs:element name="resultContent" type="m2m:resultContent" minOccurs="0" />
-			<xs:element name="eventCategory" minOccurs="0">
-				<xs:complexType>
-					<xs:sequence>
-						<xs:element name="eventCatType" type="m2m:eventCat" />
-						<xs:element name="eventCatNo" type="xs:nonNegativeInteger" />
-					</xs:sequence>
-				</xs:complexType>
-			</xs:element>
+			<xs:element name="eventCategory" type="m2m:eventCat" minOccurs="0" />
 			<xs:element name="deliveryAggregation" type="xs:boolean" minOccurs="0" />
 			<xs:element name="groupRequestIdentifier" type="xs:string" minOccurs="0" />
 			<xs:element name="filterCriteria" type="m2m:filterCriteria" minOccurs="0" />
@@ -273,14 +261,13 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 			<xs:element name="resourceType" type="m2m:resourceType" minOccurs="0" />
 			<xs:element name="sizeAbove" type="xs:nonNegativeInteger" minOccurs="0" />
 			<xs:element name="sizeBelow" type="xs:positiveInteger" minOccurs="0" />
-			<xs:element name="contentType" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
+			<xs:element name="contentType" type="m2m:typeOfContent" minOccurs="0" maxOccurs="unbounded" />
 			<xs:element name="attribute" type="m2m:attribute" minOccurs="0" maxOccurs="unbounded" />
 			<xs:element name="filterUsage" type="m2m:filterUsage" minOccurs="0" />
 			<xs:element name="limit" type="xs:nonNegativeInteger" minOccurs="0" />
 		</xs:sequence>
 	</xs:complexType>
 
-    <!-- TODO: The format for attribute shown in clause 6.3.4 cannot take complex content, so it is done differently here -->
 	<xs:complexType name="attribute">
 		<xs:sequence>
 			<xs:element name="name" type="xs:NCName" />
@@ -310,8 +297,6 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 		</xs:sequence>
 	</xs:complexType>
 
-
-	<!-- TODO: TS-0004 calls the member elements "name" and "type", but name and value seems more appropriate -->
 	<xs:complexType name="anyArgType">
 		<xs:sequence>
 			<xs:element name="name" type="xs:NCName" />
@@ -347,9 +332,9 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 			<xs:element name="URL" type="xs:anyURI" />
 			<xs:element name="username" type="xs:string" />
 			<xs:element name="password" type="xs:string" />
-			<xs:element name="filesize" type="xs:string" />
-			<xs:element name="targetFile" type="xs:string" />
-			<xs:element name="delaySeconds" type="xs:int" />
+			<xs:element name="filesize" type="xs:positiveInteger" />
+            <xs:element name="targetFile" type="xs:string" />
+            <xs:element name="delaySeconds" type="xs:positiveInteger" />
 			<xs:element name="successURL" type="xs:anyURI" />
 			<xs:element name="startTime" type="m2m:timestamp" />
 			<xs:element name="completeTime" type="m2m:timestamp" />
@@ -389,21 +374,18 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 		</xs:sequence>
 	</xs:complexType>
 	
-    <!-- TODO: - TS-0004 also shows an anyArg option, but this isn't compatible with the cmdType, so has been omitted -->
 	<xs:complexType name="execReqArgsListType">
 		<xs:choice>
-			<xs:element name="reset" type="m2m:resetArgsType" maxOccurs="unbounded" />
-			<xs:element name="reboot" type="m2m:rebootArgsType" maxOccurs="unbounded" />
-			<xs:element name="upload" type="m2m:uploadArgsType" maxOccurs="unbounded" />
-			<xs:element name="download" type="m2m:downloadArgsType" maxOccurs="unbounded" />
-			<xs:element name="softwareInstall" type="m2m:softwareInstallArgsType" maxOccurs="unbounded" />
-			<xs:element name="softwareUpdate" type="m2m:softwareUpdateArgsType" maxOccurs="unbounded" />
-			<xs:element name="softwareUninstall" type="m2m:softwareUninstallArgsType" maxOccurs="unbounded" />
-<!-- 			<xs:element name="anyArg" type="m2m:anyArgsListType" minOccurs="0" maxOccurs="unbounded" /> -->
-		</xs:choice>
+            <xs:element name="reset" type="m2m:resetArgsType" minOccurs="0" maxOccurs="unbounded" />
+            <xs:element name="reboot" type="m2m:rebootArgsType" minOccurs="0" maxOccurs="unbounded" />
+            <xs:element name="upload" type="m2m:uploadArgsType" minOccurs="0" maxOccurs="unbounded" />
+            <xs:element name="download" type="m2m:downloadArgsType" minOccurs="0" maxOccurs="unbounded" />
+            <xs:element name="softwareInstall" type="m2m:softwareInstallArgsType" minOccurs="0" maxOccurs="unbounded" />
+            <xs:element name="softwareUpdate" type="m2m:softwareUpdateArgsType" minOccurs="0" maxOccurs="unbounded" />
+            <xs:element name="softwareUninstall" type="m2m:softwareUninstallArgsType" minOccurs="0" maxOccurs="unbounded" />
+        </xs:choice>
 	</xs:complexType>
 
-  <!-- TODO: - TS-0004 gives the datatype of name as xs:string   -->
 	<xs:complexType name="mgmtLinkRef">
 		<xs:simpleContent>
 			<xs:extension base="xs:anyURI">
@@ -423,40 +405,40 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 
     <!--  m2m:accessControlRule and m2m:locationRegion are defined in the accessControlPolicy xsd file -->
 
-  <!-- TODO: - TS-0004 gives the datatype of name as xs:string   -->
 	<xs:complexType name="childResourceRef">
 		<xs:simpleContent>
 			<xs:extension base="xs:anyURI">
-				<xs:attribute name="resourceName" type="xs:NCName" use="required" />
+				<xs:attribute name="name" type="xs:NCName" use="required" />
 				<xs:attribute name="type" type="m2m:resourceType" use="required" />
 			</xs:extension>
 		</xs:simpleContent>
 	</xs:complexType>
 
- <!-- TODO: - This is in TS-0004 but is not used by any other schema  -->
     <xs:complexType name="responseTypeInfo">
         <xs:sequence>
             <xs:element name="responseType" type="m2m:responseType" />
             <xs:element name="notificationURI" type="xs:anyURI" minOccurs="0" maxOccurs="unbounded" />
         </xs:sequence>
     </xs:complexType>
+    
+    <!-- m2m:rateLimit is in the Subscription xsd file -->
 
-	<!-- TODO: order of elements should be aligned with the one in responsePrimitive -->
 	<xs:complexType name="operationResult">
 		<xs:sequence>
+			<xs:element name="responseStatusCode" type="m2m:responseStatusCode" />
+			<xs:element name="requestIdentifier" type="m2m:requestID" />			
 			<xs:element name="content" type="m2m:primitiveContent" minOccurs="0" />
-			<xs:element name="eventCategory" type="m2m:eventCat" minOccurs="0" />
+			<xs:element name="to" type="xs:anyURI" minOccurs="0" />
 			<xs:element name="from" type="m2m:ID" minOccurs="0" />
 			<xs:element name="originatingTimestamp" type="m2m:timestamp" minOccurs="0" />
-			<xs:element name="requestIdentifier" type="m2m:requestID" />
 			<xs:element name="resultExpirationTimestamp" type="m2m:timestamp" minOccurs="0" />
-			<xs:element name="to" type="xs:anyURI" minOccurs="0" />
-			<xs:element name="responseStatusCode" type="m2m:responseStatusCode" />
+			<xs:element name="eventCategory" type="m2m:eventCat" minOccurs="0" />
 		</xs:sequence>
 	</xs:complexType>
 
+    <!-- m2m:aggregatedResponse is in the ResponsePrimitive xsd file -->
 
-	<!-- Resource type definitions. These types include the "common attributes" that are used by oneM2M Resources Each oneM2M 
+	<!-- Resource type definitions. These types include the "common attributes" that are used by oneM2M Resources. Each oneM2M 
 		Resource has a resource type that is defined in a separate schema, but each resource type extends one of the types that is 
 		defined below -->
 
@@ -469,7 +451,7 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 			<xs:element name="lastModifiedTime" type="m2m:timestamp" />
 			<xs:element name="labels" type="m2m:labels" minOccurs="0" />
 		</xs:sequence>
-		<xs:attribute name="name" type="xs:token" use="required" />
+		<xs:attribute name="resourceName" type="xs:NCName" use="required" />
 	</xs:complexType>
 
 	<xs:complexType name="regularResource">
diff --git a/CDT-container.xsd b/CDT-container.xsd
index 685ea22..e8c8bc3 100644
--- a/CDT-container.xsd
+++ b/CDT-container.xsd
@@ -58,7 +58,6 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 								<xs:element ref="m2m:subscription" />
 							</xs:choice>
 						</xs:choice>
-
 					</xs:sequence>
 				</xs:extension>
 			</xs:complexContent>
@@ -76,8 +75,8 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 						<xs:element name="maxNrOfInstances" type="xs:nonNegativeInteger" minOccurs="0" />
 						<xs:element name="maxByteSize" type="xs:nonNegativeInteger" minOccurs="0" />
 						<xs:element name="maxInstanceAge" type="xs:nonNegativeInteger" minOccurs="0" />
-						<xs:element name="currentNrOfInstances" type="xs:nonNegativeInteger" />
-						<xs:element name="currentByteSize" type="xs:nonNegativeInteger" />
+						<xs:element name="currentNrOfInstances" type="xs:nonNegativeInteger" minOccurs="0" />
+						<xs:element name="currentByteSize" type="xs:nonNegativeInteger" minOccurs="0"  />
 						<xs:element name="locationID" type="xs:anyURI" minOccurs="0" />
 						<xs:element name="ontologyRef" type="xs:anyURI" minOccurs="0" />
 
diff --git a/CDT-contentInstance.xsd b/CDT-contentInstance.xsd
index 35a0c5a..73efb4e 100644
--- a/CDT-contentInstance.xsd
+++ b/CDT-contentInstance.xsd
@@ -29,8 +29,6 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 
 	<xs:include schemaLocation="CDT-commonTypes.xsd" />
 
-
-
 	<xs:element name="contentInstance">
 		<xs:complexType>
 			<xs:complexContent>
diff --git a/CDT-enumerationTypes.xsd b/CDT-enumerationTypes.xsd
index eef31be..02f97bf 100644
--- a/CDT-enumerationTypes.xsd
+++ b/CDT-enumerationTypes.xsd
@@ -135,8 +135,6 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 				policy resource types.</xs:documentation>
 		</xs:annotation>
 		<xs:restriction base="xs:integer">
-			<!-- Default -->
-			<xs:enumeration value="1" />
 			<!-- Immediate -->
 			<xs:enumeration value="2" />
 			<!-- BestEffort -->
@@ -273,7 +271,6 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
             <xs:enumeration value="6003" />              
             <!-- EXTERNAL_OBJECT_NOT_FOUND              -->
             <xs:enumeration value="6005" />  
-            <!-- TODO: Typo in the table in TS-0004     -->           
             <!-- MAX_NUMBER_OF_MEMBER_EXCEEDED          -->
             <xs:enumeration value="6010" />              
             <!-- MEMBER_TYPE_INCONSISTENT               -->
@@ -559,7 +556,7 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 	
 	<xs:simpleType name="status">
 		<xs:annotation>
-			<xs:documentation>This is used for [software], [firmware] resource.</xs:documentation>
+			<xs:documentation>This is used for [software], [firmware] resources.</xs:documentation>
 		</xs:annotation>
 		<xs:restriction base="xs:integer">
 			<!-- Successful -->
@@ -573,7 +570,7 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 
 	<xs:simpleType name="batteryStatus">
 		<xs:annotation>
-			<xs:documentation>This is used for [software], [firmware] resource.</xs:documentation>
+			<xs:documentation>This is used for [battery] resource.</xs:documentation>
 		</xs:annotation>
 		<xs:restriction base="xs:integer">
 			<!-- NORMAL -->
diff --git a/CDT-firmware.xsd b/CDT-firmware.xsd
index 274dc8a..f1646d3 100644
--- a/CDT-firmware.xsd
+++ b/CDT-firmware.xsd
@@ -41,7 +41,7 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 						<xs:element name="name" type="xs:string" />
 						<xs:element name="URL" type="xs:anyURI" />
 						<xs:element name="update" type="xs:boolean" />
-						<xs:element name="updateStatus" type="m2m:actionStatus" minOccurs="0" />
+						<xs:element name="updateStatus" type="m2m:actionStatus" />
             
 						<!-- Child Resources -->
 						<xs:choice minOccurs="0" maxOccurs="1">
diff --git a/CDT-group.xsd b/CDT-group.xsd
index 8f73904..7437067 100644
--- a/CDT-group.xsd
+++ b/CDT-group.xsd
@@ -39,7 +39,6 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 					<xs:sequence>					
                         <xs:element name="creator" type="m2m:ID" minOccurs="0" />					
 						<xs:element name="memberType" type="m2m:memberType" />
-						<!-- TODO: data type xs:integer is used in TS-0004 for currentNrOfMembers and maxNrOfMembers (TS-0004 to be corrected) -->
 						<xs:element name="currentNrOfMembers" type="xs:nonNegativeInteger" />
 						<xs:element name="maxNrOfMembers" type="xs:nonNegativeInteger" />
 						<xs:element name="memberIDs" type="m2m:listOfURIs" />
@@ -70,7 +69,6 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 					<xs:sequence>
 						<xs:element name="memberType" type="m2m:memberType" minOccurs="0" />
 						<xs:element name="currentNrOfMembers" type="xs:nonNegativeInteger" minOccurs="0" />
-						<!-- TODO: data type xs:integer is used in TS-0004 for currentNrOfMembers and maxNrOfMembers (TS-0004 to be corrected) -->
 						<xs:element name="maxNrOfMembers" type="xs:nonNegativeInteger" minOccurs="0" />
 						<xs:element name="memberIDs" type="m2m:listOfURIs" minOccurs="0" />
 						<xs:element name="membersAccessControlPolicyIDs" type="m2m:listOfURIs" minOccurs="0" />
diff --git a/CDT-locationPolicy.xsd b/CDT-locationPolicy.xsd
index fa23581..d3f54b1 100644
--- a/CDT-locationPolicy.xsd
+++ b/CDT-locationPolicy.xsd
@@ -43,8 +43,7 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 						<xs:element name="locationServer" type="xs:anyURI" minOccurs="0" />
 						<xs:element name="locationContainerID" type="xs:anyURI" minOccurs="0" />
 						<xs:element name="locationContainerName" type="xs:string" minOccurs="0" />
-						<!-- TODO: Data type changed from "xs:string" to "m2m:status". Table 7.3.10.1-3 of TS-0004 needs to be corrected -->
-						<xs:element name="locationStatus" type="m2m:status" />
+						<xs:element name="locationStatus" type="xs:string" />
 
 						<!-- Child Resources -->
 						<xs:choice minOccurs="0" maxOccurs="1">
@@ -72,8 +71,7 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 						<xs:element name="locationServer" type="xs:anyURI" minOccurs="0" />
 						<xs:element name="locationContainerID" type="xs:anyURI" minOccurs="0" />
 						<xs:element name="locationContainerName" type="xs:string" minOccurs="0" />
-						<!-- TODO: Data type changed from "xs:string" to "m2m:status". Table 7.3.10.1-3 of TS-0004 needs to be corrected -->
-						<xs:element name="locationStatus" type="m2m:status" minOccurs="0" />
+						<xs:element name="locationStatus" type="xs:string" minOccurs="0" />
 
 						<!-- No Child Resources -->
 					</xs:sequence>
diff --git a/CDT-m2mServiceSubscriptionProfile.xsd b/CDT-m2mServiceSubscriptionProfile.xsd
index be72cf4..897447c 100644
--- a/CDT-m2mServiceSubscriptionProfile.xsd
+++ b/CDT-m2mServiceSubscriptionProfile.xsd
@@ -27,7 +27,6 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 	elementFormDefault="unqualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
 
 	<xs:include schemaLocation="CDT-commonTypes.xsd" />
-
 	<xs:include schemaLocation="CDT-subscription.xsd" />
 	<xs:include schemaLocation="CDT-serviceSubscribedNode.xsd" />
 
diff --git a/CDT-remoteCSE.xsd b/CDT-remoteCSE.xsd
index 80cac03..cf76471 100644
--- a/CDT-remoteCSE.xsd
+++ b/CDT-remoteCSE.xsd
@@ -46,7 +46,7 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 					<xs:sequence>
 						<!-- Resource Specific Attributes -->
 						<xs:element name="cseType" type="m2m:cseTypeID" minOccurs="0" />
-						<xs:element name="pointOfAccess" type="m2m:pOAList" minOccurs="0" />
+						<xs:element name="pointOfAccess" type="m2m:poaList" minOccurs="0" />
 						<xs:element name="CSEBase" type="xs:anyURI" />
 						<xs:element name="CSE-ID" type="m2m:ID" />
 						<xs:element name="M2M-Ext-ID" type="m2m:externalID" minOccurs="0" />
@@ -81,7 +81,7 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 					<xs:sequence>
 						<!-- Resource Specific Attributes -->
 						<xs:element name="cseType" type="m2m:cseTypeID" minOccurs="0" />
-						<xs:element name="pointOfAccess" type="m2m:pOAList" minOccurs="0" />
+						<xs:element name="pointOfAccess" type="m2m:poaList" minOccurs="0" />
 						<xs:element name="CSEBase" type="xs:anyURI" minOccurs="0" />
 						<xs:element name="CSE-ID" type="m2m:ID" minOccurs="0" />
 						<xs:element name="requestReachability" type="xs:boolean" minOccurs="0" />
diff --git a/CDT-requestPrimitive.xsd b/CDT-requestPrimitive.xsd
index d78ced5..2168b5e 100644
--- a/CDT-requestPrimitive.xsd
+++ b/CDT-requestPrimitive.xsd
@@ -56,7 +56,7 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
           <!-- parameter "Operation Execution Time" -->
           <xs:element name="operationExecutionTime" type="m2m:timestamp" minOccurs="0"/>
           <!-- parameter "Response Type" -->
-          <xs:element name="responseType" type="m2m:resourceType" minOccurs="0"/>
+          <xs:element name="responseType" type="m2m:responseTypeInfo" minOccurs="0"/>
           <!-- parameter "Result Persistence" -->
           <xs:element name="resultPersistence" type="xs:duration" minOccurs="0"/>
           <!-- parameter "Result Content" -->
diff --git a/CDT-software.xsd b/CDT-software.xsd
index 5b5689b..b6fd129 100644
--- a/CDT-software.xsd
+++ b/CDT-software.xsd
@@ -40,9 +40,9 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 						<xs:element name="version" type="xs:string" />
 						<xs:element name="name" type="xs:string" />
 						<xs:element name="URL" type="xs:anyURI" />
-						<xs:element name="install" type="xs:boolean" minOccurs="0" />
-						<xs:element name="uninstall" type="xs:boolean" minOccurs="0" />
-						<xs:element name="installStatus" type="m2m:actionStatus" minOccurs="0" />
+						<xs:element name="install" type="xs:boolean" />
+						<xs:element name="uninstall" type="xs:boolean" />
+						<xs:element name="installStatus" type="m2m:actionStatus" />
 						<xs:element name="activate" type="xs:boolean" minOccurs="0"/>
 						<xs:element name="deactivate" type="xs:boolean" minOccurs="0"/>
 						<xs:element name="activeStatus" type="m2m:actionStatus" minOccurs="0"/>
-- 
GitLab