From efaab0c0768ef42adcfefe8acda5a8f92e4285b7 Mon Sep 17 00:00:00 2001
From: wgranzow <wgranzow@qti.qualcomm.com>
Date: Thu, 8 Oct 2015 20:34:39 +0200
Subject: [PATCH] Updated attributeList, resourceWrapper and new m2m:URI root
 element (in responsePrimitive)

Implements agreed CR PRO-2015-0946R03-primitive_content_issues (R2
mirror: PRO-2015-0968)
---
 v1_4_0/CDT-commonTypes-v1_4_0.xsd       |  18 ++---
 v1_4_0/CDT-responsePrimitive-v1_4_0.xsd | 100 +++++++++++++++++++++++-
 v2_2_0/CDT-commonTypes-v2_2_0.xsd       |  18 ++---
 v2_2_0/CDT-responsePrimitive-v2_2_0.xsd | 100 +++++++++++++++++++++++-
 4 files changed, 208 insertions(+), 28 deletions(-)

diff --git a/v1_4_0/CDT-commonTypes-v1_4_0.xsd b/v1_4_0/CDT-commonTypes-v1_4_0.xsd
index 271ed06..63f9a30 100644
--- a/v1_4_0/CDT-commonTypes-v1_4_0.xsd
+++ b/v1_4_0/CDT-commonTypes-v1_4_0.xsd
@@ -232,6 +232,10 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 			<xs:minLength value="1" /> 
 		</xs:restriction> 
 	</xs:simpleType>
+	
+	<xs:simpleType name="attributeList">
+		<list itemType="xs:NCName" />
+	</xs:simpleType>
 
 
 	<!--********************** -->
@@ -320,12 +324,6 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 		</xs:sequence>
 	</xs:complexType>
 
-	<xs:complexType name="attributeList">
-		<xs:sequence>
-			<xs:element name="attribute" type="m2m:attribute" maxOccurs="unbounded" />
-		</xs:sequence>
-	</xs:complexType>
-
 	<xs:complexType name="scheduleEntries">
 		<xs:sequence>
 			<xs:element name="scheduleEntry" type="m2m:scheduleEntry" maxOccurs="unbounded" />
@@ -440,13 +438,7 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 		</xs:simpleContent>
 	</xs:complexType>
 
-	<xs:complexType name="resourceWrapper">
-		<xs:complexContent>
-			<xs:extension base="m2m:resource">
-				<xs:attribute name="URI" type="xs:anyURI" use="required" />
-			</xs:extension>
-		</xs:complexContent>
-	</xs:complexType>
+	<!--  m2m:resourceWrapper is defined in the responsePrimitive xsd file -->
 
     <!--  m2m:accessControlRule and m2m:locationRegion are defined in the accessControlPolicy xsd file -->
 
diff --git a/v1_4_0/CDT-responsePrimitive-v1_4_0.xsd b/v1_4_0/CDT-responsePrimitive-v1_4_0.xsd
index e97cf5d..3e7ce68 100644
--- a/v1_4_0/CDT-responsePrimitive-v1_4_0.xsd
+++ b/v1_4_0/CDT-responsePrimitive-v1_4_0.xsd
@@ -29,7 +29,51 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
       elementFormDefault="unqualified" attributeFormDefault="unqualified" >   
 
   <xs:include schemaLocation="CDT-commonTypes-v1_4_0.xsd" /> 
-
+  <xs:include schemaLocation="CDT-accessControlPolicy-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-activeCmdhPolicy-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-AE-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-areaNwkDeviceInfo-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-areaNwkInfo-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-battery-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-cmdhBuffer-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-cmdhDefaults-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-cmdhDefEcValue-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-cmdhEcDefParamValues-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-cmdhLimits-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-cmdhNetworkAccessRules-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-cmdhNwAccessRule-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-cmdhPolicy-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-container-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-contentInstance-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-CSEBase-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-delivery-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-deviceCapability-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-deviceInfo-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-eventConfig-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-eventLog-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-execInstance-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-firmware-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-group-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-locationPolicy-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-m2mServiceSubscriptionProfile-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-memory-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-mgmtCmd-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-node-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-notification-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-pollingChannel-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-reboot-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-remoteCSE-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-request-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-requestPrimitive-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-responsePrimitive-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-schedule-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-serviceSubscribedAppRule-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-serviceSubscribedNode-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-software-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-statsCollect-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-statsConfig-v1_4_0.xsd" />
+  <xs:include schemaLocation="CDT-subscription-v1_4_0.xsd" />
+  
   <xs:element name="responsePrimitive" >
       <xs:complexType>
         <xs:sequence>
@@ -58,9 +102,63 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
   <xs:element name="resource" type="m2m:resourceWrapper"  />
   
   <xs:element name="URIList" type="m2m:listOfURIs"  />
+  
+  <xs:element name="URI" type="xs:anyURI"  />
  
   <xs:element name="aggregatedResponse" type="m2m:aggregatedResponse" />
   
+  <xs:complexType name="resourceWrapper">	
+    <xs:sequence>
+      <xs:choice minOccurs="1" maxOccurs="1">
+        <xs:element ref="m2m:accessControlPolicy" />
+        <xs:element ref="m2m:activeCmdhPolicy" />
+        <xs:element ref="m2m:AE" />
+        <xs:element ref="m2m:areaNwkDeviceInfo" />
+        <xs:element ref="m2m:areaNwkInfo" />
+        <xs:element ref="m2m:battery" />
+        <xs:element ref="m2m:cmdhBuffer" />
+        <xs:element ref="m2m:cmdhDefaults" />
+        <xs:element ref="m2m:cmdhDefEcValue" />
+        <xs:element ref="m2m:cmdhEcDefParamValues" />
+        <xs:element ref="m2m:cmdhLimits" />
+        <xs:element ref="m2m:cmdhNetworkAccessRules" />
+        <xs:element ref="m2m:cmdhNwAccessRule" />
+        <xs:element ref="m2m:cmdhPolicy" />
+        <xs:element ref="m2m:container" />
+        <xs:element ref="m2m:contentInstance" />
+        <xs:element ref="m2m:CSEBase" />
+        <xs:element ref="m2m:delivery" />
+        <xs:element ref="m2m:deviceCapability" />
+        <xs:element ref="m2m:deviceInfo" />
+        <xs:element ref="m2m:eventConfig" />
+        <xs:element ref="m2m:eventLog" />
+        <xs:element ref="m2m:execInstance" />
+        <xs:element ref="m2m:firmware" />
+        <xs:element ref="m2m:group" />
+        <xs:element ref="m2m:locationPolicy" />
+        <xs:element ref="m2m:m2mServiceSubscriptionProfile" />
+        <xs:element ref="m2m:memory" />
+        <xs:element ref="m2m:mgmtCmd" />
+        <xs:element ref="m2m:node" />
+        <xs:element ref="m2m:notification" />
+        <xs:element ref="m2m:pollingChannel" />
+        <xs:element ref="m2m:reboot" />
+        <xs:element ref="m2m:remoteCSE" />
+        <xs:element ref="m2m:request" />
+        <xs:element ref="m2m:requestPrimitive" />
+        <xs:element ref="m2m:responsePrimitive" />
+        <xs:element ref="m2m:schedule" />
+        <xs:element ref="m2m:serviceSubscribedAppRule" />
+        <xs:element ref="m2m:serviceSubscribedNode" />
+        <xs:element ref="m2m:software" />
+        <xs:element ref="m2m:statsCollect" />
+        <xs:element ref="m2m:statsConfig" />
+        <xs:element ref="m2m:subscription" />
+      </xs:choice>
+      <xs:element name="URIList" type="m2m:listOfURIs" />		
+    </xs:sequence>	
+  </xs:complexType>
+  
   
   <xs:complexType name="aggregatedResponse">    
     <xs:sequence>      
diff --git a/v2_2_0/CDT-commonTypes-v2_2_0.xsd b/v2_2_0/CDT-commonTypes-v2_2_0.xsd
index c70c1ae..308e269 100644
--- a/v2_2_0/CDT-commonTypes-v2_2_0.xsd
+++ b/v2_2_0/CDT-commonTypes-v2_2_0.xsd
@@ -236,6 +236,10 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 	<xs:simpleType name="listOfDuration">
 		<list itemType="xs:duration" />
 	</xs:simpleType>
+	
+	<xs:simpleType name="attributeList">
+		<list itemType="xs:NCName" />
+	</xs:simpleType>
 
 	<!--********************** -->
 	<!-- oneM2M Complex Types -->
@@ -323,12 +327,6 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 		</xs:sequence>
 	</xs:complexType>
 
-	<xs:complexType name="attributeList">
-		<xs:sequence>
-			<xs:element name="attribute" type="m2m:attribute" maxOccurs="unbounded" />
-		</xs:sequence>
-	</xs:complexType>
-
 	<xs:complexType name="scheduleEntries">
 		<xs:sequence>
 			<xs:element name="scheduleEntry" type="m2m:scheduleEntry" maxOccurs="unbounded" />
@@ -443,13 +441,7 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 		</xs:simpleContent>
 	</xs:complexType>
 
-	<xs:complexType name="resourceWrapper">
-		<xs:complexContent>
-			<xs:extension base="m2m:resource">
-				<xs:attribute name="URI" type="xs:anyURI" use="required" />
-			</xs:extension>
-		</xs:complexContent>
-	</xs:complexType>
+	<!--  m2m:resourceWrapper is defined in the responsePrimitive xsd file -->
 
     <!--  m2m:accessControlRule and m2m:locationRegion are defined in the accessControlPolicy xsd file -->
 
diff --git a/v2_2_0/CDT-responsePrimitive-v2_2_0.xsd b/v2_2_0/CDT-responsePrimitive-v2_2_0.xsd
index 23e10c1..762cd85 100644
--- a/v2_2_0/CDT-responsePrimitive-v2_2_0.xsd
+++ b/v2_2_0/CDT-responsePrimitive-v2_2_0.xsd
@@ -29,6 +29,50 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
       elementFormDefault="unqualified" attributeFormDefault="unqualified" >   
 
   <xs:include schemaLocation="CDT-commonTypes-v2_2_0.xsd" /> 
+  <xs:include schemaLocation="CDT-accessControlPolicy-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-activeCmdhPolicy-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-AE-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-areaNwkDeviceInfo-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-areaNwkInfo-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-battery-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-cmdhBuffer-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-cmdhDefaults-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-cmdhDefEcValue-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-cmdhEcDefParamValues-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-cmdhLimits-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-cmdhNetworkAccessRules-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-cmdhNwAccessRule-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-cmdhPolicy-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-container-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-contentInstance-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-CSEBase-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-delivery-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-deviceCapability-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-deviceInfo-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-eventConfig-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-eventLog-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-execInstance-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-firmware-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-group-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-locationPolicy-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-m2mServiceSubscriptionProfile-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-memory-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-mgmtCmd-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-node-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-notification-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-pollingChannel-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-reboot-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-remoteCSE-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-request-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-requestPrimitive-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-responsePrimitive-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-schedule-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-serviceSubscribedAppRule-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-serviceSubscribedNode-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-software-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-statsCollect-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-statsConfig-v2_2_0.xsd" />
+  <xs:include schemaLocation="CDT-subscription-v2_2_0.xsd" />
 
   <xs:element name="responsePrimitive" >
       <xs:complexType>
@@ -58,9 +102,63 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
   <xs:element name="resource" type="m2m:resourceWrapper"  />
   
   <xs:element name="URIList" type="m2m:listOfURIs"  />
- 
+  
+  <xs:element name="URI" type="xs:anyURI"  />
+  
   <xs:element name="aggregatedResponse" type="m2m:aggregatedResponse" />
   
+  <xs:complexType name="resourceWrapper">	
+    <xs:sequence>
+      <xs:choice minOccurs="1" maxOccurs="1">
+        <xs:element ref="m2m:accessControlPolicy" />
+        <xs:element ref="m2m:activeCmdhPolicy" />
+        <xs:element ref="m2m:AE" />
+        <xs:element ref="m2m:areaNwkDeviceInfo" />
+        <xs:element ref="m2m:areaNwkInfo" />
+        <xs:element ref="m2m:battery" />
+        <xs:element ref="m2m:cmdhBuffer" />
+        <xs:element ref="m2m:cmdhDefaults" />
+        <xs:element ref="m2m:cmdhDefEcValue" />
+        <xs:element ref="m2m:cmdhEcDefParamValues" />
+        <xs:element ref="m2m:cmdhLimits" />
+        <xs:element ref="m2m:cmdhNetworkAccessRules" />
+        <xs:element ref="m2m:cmdhNwAccessRule" />
+        <xs:element ref="m2m:cmdhPolicy" />
+        <xs:element ref="m2m:container" />
+        <xs:element ref="m2m:contentInstance" />
+        <xs:element ref="m2m:CSEBase" />
+        <xs:element ref="m2m:delivery" />
+        <xs:element ref="m2m:deviceCapability" />
+        <xs:element ref="m2m:deviceInfo" />
+        <xs:element ref="m2m:eventConfig" />
+        <xs:element ref="m2m:eventLog" />
+        <xs:element ref="m2m:execInstance" />
+        <xs:element ref="m2m:firmware" />
+        <xs:element ref="m2m:group" />
+        <xs:element ref="m2m:locationPolicy" />
+        <xs:element ref="m2m:m2mServiceSubscriptionProfile" />
+        <xs:element ref="m2m:memory" />
+        <xs:element ref="m2m:mgmtCmd" />
+        <xs:element ref="m2m:node" />
+        <xs:element ref="m2m:notification" />
+        <xs:element ref="m2m:pollingChannel" />
+        <xs:element ref="m2m:reboot" />
+        <xs:element ref="m2m:remoteCSE" />
+        <xs:element ref="m2m:request" />
+        <xs:element ref="m2m:requestPrimitive" />
+        <xs:element ref="m2m:responsePrimitive" />
+        <xs:element ref="m2m:schedule" />
+        <xs:element ref="m2m:serviceSubscribedAppRule" />
+        <xs:element ref="m2m:serviceSubscribedNode" />
+        <xs:element ref="m2m:software" />
+        <xs:element ref="m2m:statsCollect" />
+        <xs:element ref="m2m:statsConfig" />
+        <xs:element ref="m2m:subscription" />
+      </xs:choice>
+      <xs:element name="URIList" type="m2m:listOfURIs" />		
+    </xs:sequence>	
+  </xs:complexType>
+  
   
   <xs:complexType name="aggregatedResponse">    
     <xs:sequence>      
-- 
GitLab