From 9e66209287056e28934f57b437eefc31dc0536f7 Mon Sep 17 00:00:00 2001 From: reinaortega <miguelangel.reinaortega@etsi.org> Date: Mon, 11 May 2020 14:42:02 +0200 Subject: [PATCH] XSD v3_1_0 baseline --- CDT-commonTypes.xsd | 82 ++++++++++++++++++++++++++++++++++++++- CDT-enumerationTypes.xsd | 40 +++++++++++++++++++ CDT-notification.xsd | 12 +++++- CDT-remoteCSE.xsd | 2 + CDT-requestPrimitive.xsd | 10 ++++- CDT-responsePrimitive.xsd | 4 +- CDT-subscription.xsd | 9 ++++- 7 files changed, 153 insertions(+), 6 deletions(-) diff --git a/CDT-commonTypes.xsd b/CDT-commonTypes.xsd index 1acaf12..212c45b 100644 --- a/CDT-commonTypes.xsd +++ b/CDT-commonTypes.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/CDT-enumerationTypes.xsd b/CDT-enumerationTypes.xsd index 994ca30..f9c1748 100644 --- a/CDT-enumerationTypes.xsd +++ b/CDT-enumerationTypes.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/CDT-notification.xsd b/CDT-notification.xsd index 26ac7ff..70a5a4e 100644 --- a/CDT-notification.xsd +++ b/CDT-notification.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/CDT-remoteCSE.xsd b/CDT-remoteCSE.xsd index 44a2943..7c730d8 100644 --- a/CDT-remoteCSE.xsd +++ b/CDT-remoteCSE.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/CDT-requestPrimitive.xsd b/CDT-requestPrimitive.xsd index 9d53289..e827a0f 100644 --- a/CDT-requestPrimitive.xsd +++ b/CDT-requestPrimitive.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/CDT-responsePrimitive.xsd b/CDT-responsePrimitive.xsd index aca28c3..714f8cd 100644 --- a/CDT-responsePrimitive.xsd +++ b/CDT-responsePrimitive.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/CDT-subscription.xsd b/CDT-subscription.xsd index 184cc7f..4da487d 100644 --- a/CDT-subscription.xsd +++ b/CDT-subscription.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