From 97e8e90cb7cca7d77bbe908c2ca21dab2b7e5066 Mon Sep 17 00:00:00 2001
From: PeterNiblett <pdn3270@gmail.com>
Date: Sun, 18 Jan 2015 22:21:42 +0000
Subject: [PATCH] Fixes following PRO14.3

---
 CDT-contentInstance-v0_8_0.xsd |  5 +++--
 CDT-delivery-v0_8_0.xsd        |  6 +++---
 CDT-locationPolicy-v0_8_0.xsd  |  4 ++--
 CDT-remoteCSE-v0_8_0.xsd       | 12 +++++-------
 CDT-subscription-v0_8_0.xsd    | 22 ++++++++++------------
 5 files changed, 23 insertions(+), 26 deletions(-)

diff --git a/CDT-contentInstance-v0_8_0.xsd b/CDT-contentInstance-v0_8_0.xsd
index 4de5118..4732313 100644
--- a/CDT-contentInstance-v0_8_0.xsd
+++ b/CDT-contentInstance-v0_8_0.xsd
@@ -38,6 +38,7 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 					<xs:sequence>
 						<!-- Resource Specific Attributes -->
 						<xs:element name="stateTag" type="xs:nonNegativeInteger" />
+						<xs:element name="creator" type="m2m:ID" minOccurs="0" />
 						<xs:element name="typeOfContent" type="xs:string" minOccurs="0" />
 						<xs:element name="contentSize" type="xs:nonNegativeInteger" />
 						<xs:element name="ontologyRef" type="xs:anyURI" minOccurs="0" />
@@ -57,9 +58,9 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 						<!-- Resource Specific Attributes -->
 						<xs:element name="stateTag" type="xs:nonNegativeInteger" />
 						<xs:element name="typeOfContent" type="xs:string" minOccurs="0" />
-						<xs:element name="contentSize" type="xs:nonNegativeInteger" />
+						<xs:element name="contentSize" type="xs:nonNegativeInteger" minOccurs="0" />
 						<xs:element name="ontologyRef" type="xs:anyURI" minOccurs="0" />
-						<xs:element name="content" type="xs:anyType" />
+						<xs:element name="content" type="xs:anyType" minOccurs="0" />
 						<xs:element name="encoding" type="m2m:encodingType" minOccurs="0" />
 					</xs:sequence>
 				</xs:extension>
diff --git a/CDT-delivery-v0_8_0.xsd b/CDT-delivery-v0_8_0.xsd
index da8a298..b90215b 100644
--- a/CDT-delivery-v0_8_0.xsd
+++ b/CDT-delivery-v0_8_0.xsd
@@ -39,9 +39,8 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 					<xs:sequence>
 						<!-- Resource Specific Attributes -->
 						<xs:element name="stateTag" type="xs:nonNegativeInteger" />
-						<!-- TODO: The type of source and target should match that of CSE-ID (i.e.they should have type m2m:ID) -->
-						<xs:element name="source" type="xs:anyURI" />
-						<xs:element name="target" type="xs:anyURI" />
+						<xs:element name="source" type="m2m:ID" />
+						<xs:element name="target" type="m2m:ID" />
 						<xs:element name="lifespan" type="xs:dateTime" />
 						<xs:element name="eventCat" type="m2m:eventCat" />
 						<xs:element name="deliveryMetaData" type="m2m:deliveryMetaData" />
@@ -57,4 +56,5 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 			</xs:complexContent>
 		</xs:complexType>
 	</xs:element>
+	
 </xs:schema>
\ No newline at end of file
diff --git a/CDT-locationPolicy-v0_8_0.xsd b/CDT-locationPolicy-v0_8_0.xsd
index 75bc849..32d8f81 100644
--- a/CDT-locationPolicy-v0_8_0.xsd
+++ b/CDT-locationPolicy-v0_8_0.xsd
@@ -66,14 +66,14 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 				<xs:extension base="m2m:announcedResource">
 					<xs:sequence>
 						<!-- Resource Specific Attributes -->
-						<xs:element name="locationSource" type="m2m:locationSource" />
+						<xs:element name="locationSource" type="m2m:locationSource" minOccurs="0" />
 						<xs:element name="locationUpdatePeriod" type="xs:duration" minOccurs="0" />
 						<xs:element name="locationTargetID" type="m2m:nodeID" minOccurs="0" />
 						<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: verify that xs:string is really the best type for locationStatus -->
-						<xs:element name="locationStatus" type="xs:string" />
+						<xs:element name="locationStatus" type="xs:string" minOccurs="0" />
 
 						<!-- No Child Resources -->
 					</xs:sequence>
diff --git a/CDT-remoteCSE-v0_8_0.xsd b/CDT-remoteCSE-v0_8_0.xsd
index 9306c55..d496061 100644
--- a/CDT-remoteCSE-v0_8_0.xsd
+++ b/CDT-remoteCSE-v0_8_0.xsd
@@ -36,6 +36,7 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 	<xs:include schemaLocation="CDT-pollingChannel-v0_8_0.xsd" />
 	<xs:include schemaLocation="CDT-schedule-v0_8_0.xsd" />
 	<xs:include schemaLocation="CDT-node-v0_8_0.xsd" />
+	<xs:include schemaLocation="CDT-locationPolicy-v0_8_0.xsd" />
 
 	<xs:element name="remoteCSE">
 		<xs:complexType>
@@ -47,7 +48,6 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 						<xs:element name="cseType" type="m2m:cseTypeID" minOccurs="0" />
 						<xs:element name="pointOfAccess" type="m2m:pOAList" minOccurs="0" />
 						<xs:element name="CSEBase" type="xs:anyURI" />
-						<!-- TODO: update TS-0004 to say m2m:ID not m2m:id -->
 						<xs:element name="CSE-ID" type="m2m:ID" />
 						<xs:element name="M2M-Ext-ID" type="m2m:externalId" minOccurs="0" />
 						<xs:element name="Trigger-Recipient-ID" type="m2m:triggerRecipientId" minOccurs="0" />
@@ -58,7 +58,6 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
                         <xs:choice minOccurs="0" maxOccurs="1">
                             <xs:element name="childResource" type="m2m:childResourceRef" minOccurs="1" maxOccurs="unbounded" />
                             <xs:choice minOccurs="1" maxOccurs="unbounded">
-                                <xs:element ref="m2m:node" />
                                 <xs:element ref="m2m:AE" />
                                 <xs:element ref="m2m:container" />
                                 <xs:element ref="m2m:group" />
@@ -83,10 +82,9 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 						<!-- Resource Specific Attributes -->
 						<xs:element name="cseType" type="m2m:cseTypeID" minOccurs="0" />
 						<xs:element name="pointOfAccess" type="m2m:pOAList" minOccurs="0" />
-						<xs:element name="CSEBase" type="xs:anyURI" />
-						<!-- TODO: update TS-0004 to say m2m:ID not m2m:id -->
-						<xs:element name="CSE-ID" type="m2m:ID" />
-						<xs:element name="requestReachability" type="xs:boolean" />
+						<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" />
 						<xs:element name="nodeLink" type="xs:anyURI" minOccurs="0" />
                        
                         <!-- Child Resources -->
@@ -105,6 +103,7 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
                                 <xs:element ref="m2m:subscription" />
                                 <xs:element ref="m2m:pollingChannel" />
                                 <xs:element ref="m2m:scheduleAnnc" />
+                                <xs:element ref="m2m:locationPolicyAnnc" />
                             </xs:choice>
                         </xs:choice>
 					</xs:sequence>
@@ -112,5 +111,4 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 			</xs:complexContent>
 		</xs:complexType>
 	</xs:element>
-
 </xs:schema>
diff --git a/CDT-subscription-v0_8_0.xsd b/CDT-subscription-v0_8_0.xsd
index de6c4e6..00603cb 100644
--- a/CDT-subscription-v0_8_0.xsd
+++ b/CDT-subscription-v0_8_0.xsd
@@ -42,14 +42,7 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 						<xs:element name="notificationURI" type="m2m:AnyURIList" />
 						<xs:element name="groupID" type="xs:anyURI" minOccurs="0" />
 						<xs:element name="notificationForwardingURI" type="xs:anyURI" minOccurs="0" />
-						<xs:element name="batchNotify" minOccurs="0">
-							<xs:complexType>
-								<xs:sequence>
-									<xs:element name="number" type="xs:nonNegativeInteger" minOccurs="0" />
-									<xs:element name="duration" type="xs:duration" minOccurs="0" />
-								</xs:sequence>
-							</xs:complexType>
-						</xs:element>
+						<xs:element name="batchNotify" type="m2m:batchNotify" minOccurs="0" />
 						<xs:element name="rateLimit" type="m2m:rateLimit" minOccurs="0" />
 						<xs:element name="preSubscriptionNotify" type="xs:positiveInteger" minOccurs="0" />
 						<xs:element name="pendingNotification" type="m2m:pendingNotification" minOccurs="0" />
@@ -88,13 +81,18 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR
 			<xs:element name="attribute" type="m2m:attribute" minOccurs="0" maxOccurs="unbounded" />
 		</xs:sequence>
 	</xs:complexType>
-	
-	<!-- TODO: Member names here are different from those given in TS-0004 -->
 
-	<xs:complexType name="rateLimit">
+	<xs:complexType name="batchNotify">
 		<xs:sequence>
 			<xs:element name="number" type="xs:nonNegativeInteger" minOccurs="0" />
-			<xs:element name="rateLimitWindow" type="xs:duration" minOccurs="0" />
+			<xs:element name="duration" type="xs:duration" minOccurs="0" />
+		</xs:sequence>
+	</xs:complexType>
+	
+	<xs:complexType name="rateLimit">
+		<xs:sequence>
+			<xs:element name="maxNrOfNotify" type="xs:nonNegativeInteger" minOccurs="0" />
+			<xs:element name="timeWindow" type="xs:duration" minOccurs="0" />
 		</xs:sequence>
 	</xs:complexType>
 
-- 
GitLab