From b55fb5d2489d8dfb810ab35513c44f7284ded86a Mon Sep 17 00:00:00 2001 From: Wolfgang Granzow <wgranzow@qti.qualcomm.com> Date: Tue, 11 Apr 2017 15:22:31 +0200 Subject: [PATCH] Rel-3 changes agreed at PRO#28 See PRO-2017-0084 for the CR references and detailed list of changes --- v3_1_0/CDT-commonTypes-v3_1_0.xsd | 82 ++++++++++++++++++++++++- v3_1_0/CDT-enumerationTypes-v3_1_0.xsd | 40 ++++++++++++ v3_1_0/CDT-notification-v3_1_0.xsd | 12 +++- v3_1_0/CDT-remoteCSE-v3_1_0.xsd | 2 + v3_1_0/CDT-requestPrimitive-v3_1_0.xsd | 10 ++- v3_1_0/CDT-responsePrimitive-v3_1_0.xsd | 4 +- v3_1_0/CDT-subscription-v3_1_0.xsd | 9 ++- 7 files changed, 153 insertions(+), 6 deletions(-) diff --git a/v3_1_0/CDT-commonTypes-v3_1_0.xsd b/v3_1_0/CDT-commonTypes-v3_1_0.xsd index 4295a02..5f1dc8d 100644 --- a/v3_1_0/CDT-commonTypes-v3_1_0.xsd +++ b/v3_1_0/CDT-commonTypes-v3_1_0.xsd @@ -125,6 +125,23 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:length value="2" /> </xs:restriction> </xs:simpleType> + + <!-- "signatureList" is a space separated list of base64url encoded elements which includes at lease one element --> + <xs:simpleType name="signatureList"> + <xs:restriction> + <xs:simpleType> + <xs:list itemType="m2m:base64url"/> + </xs:simpleType> + <xs:minLength value="1" /> + </xs:restriction> + </xs:simpleType> + + <!-- data type required to define "signatureList" above --> + <xs:simpleType name="base64url"> + <xs:restriction base="xs:string" > + <xs:pattern value="([a-zA-Z0-9\-_=]+)" /> + </xs:restriction> + </xs:simpleType> <!-- ipv4 and ipv6 are defined in commonTypes --> @@ -480,7 +497,11 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR </xs:restriction> </xs:simpleType> </xs:element> - <xs:element name="groupRequestTargetMembers" type="m2m:listOfURIs" minOccurs="0"/> + <xs:element name="groupRequestTargetMembers" type="m2m:listOfURIs" minOccurs="0"/> + <xs:element name="authorSignIndicator" type="xs:boolean" minOccurs="0"/> + <xs:element name="authorSigns" type="m2m:signatureList" minOccurs="0"/> + <xs:element name="authorRelIndicator" type="xs:boolean" minOccurs="0"/> + <xs:element name="originator" type="m2m:ID" minOccurs="0"/> </xs:sequence> </xs:complexType> @@ -1028,6 +1049,7 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR </xs:restriction> </xs:simpleType> </xs:element> + <xs:element name="authorSignIndicator" type="xs:boolean" minOccurs="0" /> </xs:sequence> </xs:complexType> @@ -1076,6 +1098,64 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR </xs:sequence> </xs:complexType> + + <!-- data type m2m:operationMonitor is defined in the CDT-subscription XSD file --> + + <xs:complexType name="dynAuthRelMapRequest"> + <xs:sequence> + <xs:element name="originator" type="m2m:ID" minOccurs="0" /> + <xs:element name="tokenIDs" minOccurs="1" > + <xs:simpleType> + <xs:restriction> + <xs:simpleType> + <xs:list itemType="m2m:tokenID" /> + </xs:simpleType> + <xs:minLength value="1" /> + </xs:restriction> + </xs:simpleType> + </xs:element> + <xs:element name="tokens" minOccurs="0" > + <xs:simpleType> + <xs:restriction> + <xs:simpleType> + <xs:list itemType="m2m:dynAuthJWT" /> + </xs:simpleType> + <xs:minLength value="1" /> + </xs:restriction> + </xs:simpleType> + </xs:element> + <xs:element name="authorSigns" type="m2m:signatureList" minOccurs="0" /> + <xs:element name="authorSignReqInfo" type="xs:boolean" minOccurs="0" /> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="dynAuthRelMapResponse"> + <xs:sequence> + <xs:element name="tokenIDs" minOccurs="1" > + <xs:simpleType> + <xs:restriction> + <xs:simpleType> + <xs:list itemType="m2m:tokenID" /> + </xs:simpleType> + <xs:minLength value="1" /> + </xs:restriction> + </xs:simpleType> + </xs:element> + <xs:element name="tokens" minOccurs="0" > + <xs:simpleType> + <xs:restriction> + <xs:simpleType> + <xs:list itemType="m2m:dynAuthJWT" /> + </xs:simpleType> + <xs:minLength value="1" /> + </xs:restriction> + </xs:simpleType> + </xs:element> + <xs:element name="authorSignReqInfo" type="xs:boolean" minOccurs="0" /> + <xs:element name="authorSigns" type="m2m:signatureList" minOccurs="0" /> + </xs:sequence> + </xs:complexType> + <!-- 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 diff --git a/v3_1_0/CDT-enumerationTypes-v3_1_0.xsd b/v3_1_0/CDT-enumerationTypes-v3_1_0.xsd index 994ca30..f9c1748 100644 --- a/v3_1_0/CDT-enumerationTypes-v3_1_0.xsd +++ b/v3_1_0/CDT-enumerationTypes-v3_1_0.xsd @@ -237,6 +237,8 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:enumeration value="7" /> <!-- Child Resources --> <xs:enumeration value="8" /> + <!-- Modified Attributes --> + <xs:enumeration value="9" /> </xs:restriction> </xs:simpleType> @@ -1191,6 +1193,44 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR </xs:restriction> </xs:simpleType> + <xs:simpleType name="triggerPurpose"> + <xs:annotation> + <xs:documentation>Used for the triggerPurpose field of trigger requests on Mcn</xs:documentation> + </xs:annotation> + <xs:restriction base="xs:integer"> + <!-- establishConnection --> + <xs:enumeration value="0" /> + <!-- registrationRequest --> + <xs:enumeration value="1" /> + <!-- executeCRUD --> + <xs:enumeration value="2" /> + </xs:restriction> + </xs:simpleType> + + + <xs:simpleType name="serializationType"> + <xs:annotation> + <xs:documentation>Used for the triggerInfoSrializationType field of trigger requests on Mcn</xs:documentation> + </xs:annotation> + <xs:restriction base="xs:integer"> + <!-- XML --> + <xs:enumeration value="1" /> + <!-- JSON --> + <xs:enumeration value="2" /> + <!-- XML + JSON --> + <xs:enumeration value="3" /> + <!-- CBOR --> + <xs:enumeration value="4" /> + <!-- XML + CBOR --> + <xs:enumeration value="5" /> + <!-- JSON + CBOR --> + <xs:enumeration value="6" /> + <!-- XML + JSON + CBOR --> + <xs:enumeration value="7" /> + </xs:restriction> + </xs:simpleType> + + </xs:schema> diff --git a/v3_1_0/CDT-notification-v3_1_0.xsd b/v3_1_0/CDT-notification-v3_1_0.xsd index 7708d01..850e6b6 100644 --- a/v3_1_0/CDT-notification-v3_1_0.xsd +++ b/v3_1_0/CDT-notification-v3_1_0.xsd @@ -82,9 +82,12 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:element name="esprimRandObject" type="m2m:receiverESPrimRandObject" minOccurs="0" /> <xs:element name="esprimObject" type="m2m:e2eCompactJWE" minOccurs="0" /> <xs:element name="escertkeMessage" type="xs:base64Binary" minOccurs="0" /> + <xs:element name="dynAuthRelMapRequest" type="m2m:dynAuthRelMapRequest" minOccurs="0" /> + <xs:element name="dynAuthRelMapResponse" type="m2m:dynAuthRelMapResponse" minOccurs="0" /> </xs:sequence> </xs:complexType> + <xs:simpleType name="securityInfoType"> <xs:restriction base="xs:integer"> <!-- Dynamic Authorization Request --> @@ -99,9 +102,13 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:enumeration value="5" /> <!-- ESCertKE Message --> <xs:enumeration value="6" /> + <!-- Dynamic Authorization Relationship Mapping Request --> + <xs:enumeration value="7" /> + <!-- Dynamic Authorization Relationship Mapping Response --> + <xs:enumeration value="8" /> </xs:restriction> </xs:simpleType> - + <xs:complexType name="dynAuthDasResponse"> <xs:sequence> <xs:element name="dynamicACPInfo" minOccurs="0" > @@ -121,7 +128,8 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:minLength value="1" /> </xs:restriction> </xs:simpleType> - </xs:element> + </xs:element> + <xs:element name="authorSignReqInfo" type="xs:boolean" minOccurs="0" /> </xs:sequence> </xs:complexType> diff --git a/v3_1_0/CDT-remoteCSE-v3_1_0.xsd b/v3_1_0/CDT-remoteCSE-v3_1_0.xsd index d8883e6..3ff9cb2 100644 --- a/v3_1_0/CDT-remoteCSE-v3_1_0.xsd +++ b/v3_1_0/CDT-remoteCSE-v3_1_0.xsd @@ -55,6 +55,7 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:element name="nodeLink" type="xs:anyURI" minOccurs="0" /> <xs:element name="e2eSecInfo" type="m2m:e2eSecInfo" minOccurs="0" /> <xs:element name="triggerReferenceNumber" type="xs:unsignedInt" minOccurs="0" /> + <xs:element name="descendantCSEs" type="m2m:listOfM2MID" minOccurs="0" /> <!-- Child Resources --> <xs:choice minOccurs="0" maxOccurs="1"> @@ -98,6 +99,7 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:element name="requestReachability" type="xs:boolean" minOccurs="0" /> <xs:element name="nodeLink" type="xs:anyURI" minOccurs="0" /> <xs:element name="e2eSecInfo" type="m2m:e2eSecInfo" minOccurs="0" /> + <xs:element name="descendantCSEs" type="m2m:listOfM2MID" minOccurs="0" /> <!-- Child Resources --> <xs:choice minOccurs="0" maxOccurs="1"> diff --git a/v3_1_0/CDT-requestPrimitive-v3_1_0.xsd b/v3_1_0/CDT-requestPrimitive-v3_1_0.xsd index c907f3b..715a7ee 100644 --- a/v3_1_0/CDT-requestPrimitive-v3_1_0.xsd +++ b/v3_1_0/CDT-requestPrimitive-v3_1_0.xsd @@ -116,7 +116,15 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR </xs:element> <!-- parameter "Token Request Indicator" --> <xs:element name="tokenRequestIndicator" type="xs:boolean" minOccurs="0"/> - <xs:element name="groupRequestTargetMembers" type="m2m:listOfURIs" minOccurs="0"/> + <!-- parameter "Group Request Traget Members" --> + <xs:element name="groupRequestTargetMembers" type="m2m:listOfURIs" minOccurs="0"/> + <!-- parameter "Authorization Signature Indicator" --> + <xs:element name="authorSignIndicator" type="xs:boolean" minOccurs="0"/> + <!-- parameter "Authorization Signatures" --> + <xs:element name="authorSigns" type="m2m:signatureList" minOccurs="0"/> + <!-- parameter "Authorization Relationship Indicator" --> + <xs:element name="authorRelIndicator" type="xs:boolean" minOccurs="0"/> + </xs:sequence> </xs:complexType> </xs:element> diff --git a/v3_1_0/CDT-responsePrimitive-v3_1_0.xsd b/v3_1_0/CDT-responsePrimitive-v3_1_0.xsd index 1e6913c..e8fe22c 100644 --- a/v3_1_0/CDT-responsePrimitive-v3_1_0.xsd +++ b/v3_1_0/CDT-responsePrimitive-v3_1_0.xsd @@ -106,7 +106,9 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <!-- parameter "Assigned Token Identifiers --> <xs:element name="assignedTokenIdentifiers" type="m2m:dynAuthLocalTokenIdAssignments" minOccurs="0" /> <!-- parameter "Token Request Information --> - <xs:element name="tokenRequestInformation" type="m2m:dynAuthTokenReqInfo" minOccurs="0" /> + <xs:element name="tokenRequestInformation" type="m2m:dynAuthTokenReqInfo" minOccurs="0" /> + <!-- parameter "Authorization Signature Request Information --> + <xs:element name="authorSignReqInfo" type="xs:boolean" minOccurs="0" /> </xs:sequence> </xs:complexType> </xs:element> diff --git a/v3_1_0/CDT-subscription-v3_1_0.xsd b/v3_1_0/CDT-subscription-v3_1_0.xsd index 9b6f38c..16a9cdd 100644 --- a/v3_1_0/CDT-subscription-v3_1_0.xsd +++ b/v3_1_0/CDT-subscription-v3_1_0.xsd @@ -81,12 +81,19 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:element name="expireAfter" type="m2m:timestamp" minOccurs="0" /> <xs:element name="sizeAbove" type="xs:nonNegativeInteger" minOccurs="0" /> <xs:element name="sizeBelow" type="xs:positiveInteger" minOccurs="0" /> - <xs:element name="operationMonitor" type="m2m:operation" minOccurs="0" maxOccurs="5" /> + <xs:element name="operationMonitor" type="m2m:operationMonitor" minOccurs="0" maxOccurs="unbounded" /> <xs:element name="attribute" type="m2m:attributeList" minOccurs="0" maxOccurs="1" /> <xs:element name="notificationEventType" type="m2m:notificationEventType" minOccurs="0" maxOccurs="5" /> <xs:element name="missingData" type="m2m:missingData" minOccurs="0" /> </xs:sequence> </xs:complexType> + + <xs:complexType name="operationMonitor"> + <xs:sequence> + <xs:element name="operations" type="m2m:accessControlOperations" minOccurs="0" /> + <xs:element name="originator" type="m2m:ID" minOccurs="0" /> + </xs:sequence> + </xs:complexType> <xs:complexType name="batchNotify"> <xs:sequence> -- GitLab