From 6d7d151a1e2bb80215f99e87fcef61ddb2b791f2 Mon Sep 17 00:00:00 2001 From: reinaortega <miguelangel.reinaortega@etsi.org> Date: Mon, 11 May 2020 10:40:26 +0200 Subject: [PATCH] XSD v2_6_0 baseline --- CDT-CSEBase.xsd | 7 +- CDT-accessControlPolicy.xsd | 106 +-------- CDT-commonTypes.xsd | 299 +++++++++++++++++++++++- CDT-container.xsd | 9 +- CDT-contentInstance.xsd | 2 +- CDT-enumerationTypes.xsd | 107 ++++++--- CDT-eventConfig.xsd | 3 +- CDT-group.xsd | 8 +- CDT-m2mServiceSubscriptionProfile.xsd | 5 - CDT-node.xsd | 1 + CDT-notification.xsd | 116 ++++++++- CDT-notificationTargetMgmtPolicyRef.xsd | 2 +- CDT-notificationTargetPolicy.xsd | 3 +- CDT-remoteCSE.xsd | 4 + CDT-requestPrimitive.xsd | 31 ++- CDT-responsePrimitive.xsd | 15 +- CDT-role.xsd | 57 +++++ CDT-semanticDescriptor.xsd | 29 ++- CDT-statsCollect.xsd | 3 +- CDT-statsConfig.xsd | 3 +- CDT-subscription.xsd | 12 +- CDT-timeSeries.xsd | 110 +++++++++ CDT-timeSeriesInstance.xsd | 65 ++++++ CDT-token.xsd | 68 ++++++ instance1.xml | 60 ----- 25 files changed, 894 insertions(+), 231 deletions(-) create mode 100644 CDT-role.xsd create mode 100644 CDT-timeSeries.xsd create mode 100644 CDT-timeSeriesInstance.xsd create mode 100644 CDT-token.xsd delete mode 100644 instance1.xml diff --git a/CDT-CSEBase.xsd b/CDT-CSEBase.xsd index 22eb283..84559b0 100644 --- a/CDT-CSEBase.xsd +++ b/CDT-CSEBase.xsd @@ -43,7 +43,10 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:include schemaLocation="CDT-schedule.xsd" /> <xs:include schemaLocation="CDT-m2mServiceSubscriptionProfile.xsd" /> <xs:include schemaLocation="CDT-serviceSubscribedAppRule.xsd" /> - + <xs:include schemaLocation="CDT-serviceSubscribedAppRule.xsd" /> + <xs:include schemaLocation="CDT-role.xsd" /> + <xs:include schemaLocation="CDT-token.xsd" /> + <xs:element name="CSEBase"> <xs:complexType> <xs:complexContent> @@ -82,6 +85,8 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:element ref="m2m:schedule" /> <xs:element ref="m2m:m2mServiceSubscriptionProfile" /> <xs:element ref="m2m:serviceSubscribedAppRule" /> + <xs:element ref="m2m:role" /> + <xs:element ref="m2m:token" /> </xs:choice> </xs:choice> </xs:sequence> diff --git a/CDT-accessControlPolicy.xsd b/CDT-accessControlPolicy.xsd index e2d9e16..3b920a5 100644 --- a/CDT-accessControlPolicy.xsd +++ b/CDT-accessControlPolicy.xsd @@ -74,112 +74,10 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR </xs:complexType> </xs:element> - - <xs:complexType name="setOfAcrs"> - <xs:sequence> - <xs:element name="accessControlRule" type="m2m:accessControlRule" minOccurs="0" - maxOccurs="unbounded"/> - </xs:sequence> - </xs:complexType> - - <xs:complexType name="accessControlRule"> - <xs:sequence> - <xs:element name="accessControlOriginators" type="m2m:listOfURIs" /> - - <!-- accessControlOperations defined as enumerated list 1 ... 63 --> - <xs:element name="accessControlOperations" type="m2m:accessControlOperations" /> - - <xs:element name="accessControlContexts" minOccurs="0" maxOccurs="unbounded"> - <xs:complexType> - <xs:sequence> - <xs:element name="accessControlWindow" type="m2m:scheduleEntry" minOccurs="0" maxOccurs="unbounded" /> - <xs:element name="accessControlIpAddresses" minOccurs="0"> - <xs:complexType> - <xs:sequence> - <xs:element name="ipv4Addresses" minOccurs="0" maxOccurs="1"> - <!-- space separated list of IPv4 addresses --> - <xs:simpleType> - <xs:restriction> - <xs:simpleType> - <xs:list itemType="m2m:ipv4" /> - </xs:simpleType> - <xs:minLength value="1"/> - </xs:restriction> - </xs:simpleType> - </xs:element> - <xs:element name="ipv6Addresses" minOccurs="0" maxOccurs="1"> - <!-- space separated list of IPv6 addresses --> - <xs:simpleType> - <xs:restriction> - <xs:simpleType> - <xs:list itemType="m2m:ipv6" /> - </xs:simpleType> - <xs:minLength value="1"/> - </xs:restriction> - </xs:simpleType> - </xs:element> - </xs:sequence> - </xs:complexType> - </xs:element> - <xs:element name="accessControlLocationRegion" type="m2m:locationRegion" minOccurs="0" /> - </xs:sequence> - </xs:complexType> - </xs:element> - </xs:sequence> - </xs:complexType> + <!-- m2m:setOfAcrs and m2m:accessControlRule are defined in the accessControlPolicy xsd file --> <!-- locationRegion is defined in commonTypes --> <!-- countryCode is defined in commonTypes --> - - - <!-- 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 --> - - <xs:simpleType name="ipv4"> - <xs:annotation> - <xs:documentation> An IP version 4 address, with optional CIDR suffix in the range /0 - ... /32. </xs:documentation> - </xs:annotation> - <xs:restriction base="xs:token"> - <xs:pattern - value="(25[0-5]|2[0-4][0-9]|[0-1]?[0-9]?[0-9])\.(25[0-5]|2[0-4][0-9]|[0-1]?[0-9]?[0-9])\.(25[0-5]|2[0-4][0-9]|[0-1]?[0-9]?[0-9])\.(25[0-5]|2[0-4][0-9]|[0-1]?[0-9]?[0-9])(/([0-9]|[1-2][0-9]|3[0-2]))?"/> - <xs:pattern value="[0-9A-Fa-f]{8}(/([0-9]|[1-2][0-9]|3[0-2]))?"/> - </xs:restriction> - </xs:simpleType> - - <xs:simpleType name="ipv6"> - <xs:annotation> - <xs:documentation> An IP version 6 address, based on RFC 1884, with optional CIDR suffix - in the range /0 ... /128. </xs:documentation> - </xs:annotation> - <xs:restriction base="xs:token"> - <!-- Fully specified address --> - <xs:pattern - value="[0-9A-Fa-f]{1,4}(:[0-9A-Fa-f]{1,4}){7}(/([0-9]|[1-9][0-9]|1[0-1][0-9]|12[0-8]))?"/> - <!-- Double colon start --> - <xs:pattern value=":(:[0-9A-Fa-f]{1,4}){1,7}"/> - <!-- Double colon middle --> - <xs:pattern - value="([0-9A-Fa-f]{1,4}:){1,6}(:[0-9A-Fa-f]{1,4}){1}(/([0-9]|[1-9][0-9]|1[0-1][0-9]|12[0-8]))?"/> - <xs:pattern - value="([0-9A-Fa-f]{1,4}:){1,5}(:[0-9A-Fa-f]{1,4}){1,2}(/([0-9]|[1-9][0-9]|1[0-1][0-9]|12[0-8]))?"/> - <xs:pattern - value="([0-9A-Fa-f]{1,4}:){1,4}(:[0-9A-Fa-f]{1,4}){1,3}(/([0-9]|[1-9][0-9]|1[0-1][0-9]|12[0-8]))?"/> - <xs:pattern - value="([0-9A-Fa-f]{1,4}:){1,3}(:[0-9A-Fa-f]{1,4}){1,4}(/([0-9]|[1-9][0-9]|1[0-1][0-9]|12[0-8]))?"/> - <xs:pattern - value="([0-9A-Fa-f]{1,4}:){1,2}(:[0-9A-Fa-f]{1,4}){1,5}(/([0-9]|[1-9][0-9]|1[0-1][0-9]|12[0-8]))?"/> - <xs:pattern - value="([0-9A-Fa-f]{1,4}:){1}(:[0-9A-Fa-f]{1,4}){1,6}(/([0-9]|[1-9][0-9]|1[0-1][0-9]|12[0-8]))?"/> - <!-- Double colon end --> - <xs:pattern value="([0-9A-Fa-f]{1,4}:){1,7}:(/([0-9]|[1-9][0-9]|1[0-1][0-9]|12[0-8]))?"/> - <!-- Embedded IPv4 addresses without CIDR suffix. Should IPv4 CIDR suffix be added?--> - <xs:pattern - value="((:(:0{1,4}){0,3}(:(0{1,4}|[fF]{4}))?)|(0{1,4}:(:0{1,4}){0,2}(:(0{1,4}|[fF]{4}))?)|((0{1,4}:){2}(:0{1,4})?(:(0{1,4}|[fF]{4}))?)|((0{1,4}:){3}(:(0{1,4}|[fF]{4}))?)|((0{1,4}:){4}(0{1,4}|[fF]{4})?)):(25[0-5]|2[0-4][0-9]|[0-1]?[0-9]?[0-9])\.(25[0-5]|2[0-4][0-9]|[0-1]?[0-9]?[0-9])\.(25[0-5]|2[0-4][0-9]|[0-1]?[0-9]?[0-9])\.(25[0-5]|2[0-4][0-9]|[0-1]?[0-9]?[0-9])"/> - <!-- The unspecified address --> - <xs:pattern value="::(/0)?"/> - </xs:restriction> - </xs:simpleType> - + </xs:schema> diff --git a/CDT-commonTypes.xsd b/CDT-commonTypes.xsd index 1288bfb..eb40c7b 100644 --- a/CDT-commonTypes.xsd +++ b/CDT-commonTypes.xsd @@ -56,6 +56,14 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:simpleType name="requestID"> <xs:restriction base="xs:token" /> </xs:simpleType> + + <xs:simpleType name="roleID"> + <xs:restriction base="xs:NCName" /> + </xs:simpleType> + + <xs:simpleType name="tokenID"> + <xs:restriction base="xs:NCName" /> + </xs:simpleType> <xs:simpleType name="nhURI"> <xs:restriction base="xs:anyURI" /> @@ -125,7 +133,56 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR </xs:restriction> </xs:simpleType> - <!-- m2m:ipv4 and m2m:ipv6 and m2m:countryCode are defined in the CDT-accessControlPolicy file --> + <!-- ipv4 and ipv6 are defined in commonTypes --> + <!-- 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 --> + + <xs:simpleType name="ipv4"> + <xs:annotation> + <xs:documentation> An IP version 4 address, with optional CIDR suffix in the range /0 + ... /32. </xs:documentation> + </xs:annotation> + <xs:restriction base="xs:token"> + <xs:pattern + value="(25[0-5]|2[0-4][0-9]|[0-1]?[0-9]?[0-9])\.(25[0-5]|2[0-4][0-9]|[0-1]?[0-9]?[0-9])\.(25[0-5]|2[0-4][0-9]|[0-1]?[0-9]?[0-9])\.(25[0-5]|2[0-4][0-9]|[0-1]?[0-9]?[0-9])(/([0-9]|[1-2][0-9]|3[0-2]))?"/> + <xs:pattern value="[0-9A-Fa-f]{8}(/([0-9]|[1-2][0-9]|3[0-2]))?"/> + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="ipv6"> + <xs:annotation> + <xs:documentation> An IP version 6 address, based on RFC 1884, with optional CIDR suffix + in the range /0 ... /128. </xs:documentation> + </xs:annotation> + <xs:restriction base="xs:token"> + <!-- Fully specified address --> + <xs:pattern + value="[0-9A-Fa-f]{1,4}(:[0-9A-Fa-f]{1,4}){7}(/([0-9]|[1-9][0-9]|1[0-1][0-9]|12[0-8]))?"/> + <!-- Double colon start --> + <xs:pattern value=":(:[0-9A-Fa-f]{1,4}){1,7}"/> + <!-- Double colon middle --> + <xs:pattern + value="([0-9A-Fa-f]{1,4}:){1,6}(:[0-9A-Fa-f]{1,4}){1}(/([0-9]|[1-9][0-9]|1[0-1][0-9]|12[0-8]))?"/> + <xs:pattern + value="([0-9A-Fa-f]{1,4}:){1,5}(:[0-9A-Fa-f]{1,4}){1,2}(/([0-9]|[1-9][0-9]|1[0-1][0-9]|12[0-8]))?"/> + <xs:pattern + value="([0-9A-Fa-f]{1,4}:){1,4}(:[0-9A-Fa-f]{1,4}){1,3}(/([0-9]|[1-9][0-9]|1[0-1][0-9]|12[0-8]))?"/> + <xs:pattern + value="([0-9A-Fa-f]{1,4}:){1,3}(:[0-9A-Fa-f]{1,4}){1,4}(/([0-9]|[1-9][0-9]|1[0-1][0-9]|12[0-8]))?"/> + <xs:pattern + value="([0-9A-Fa-f]{1,4}:){1,2}(:[0-9A-Fa-f]{1,4}){1,5}(/([0-9]|[1-9][0-9]|1[0-1][0-9]|12[0-8]))?"/> + <xs:pattern + value="([0-9A-Fa-f]{1,4}:){1}(:[0-9A-Fa-f]{1,4}){1,6}(/([0-9]|[1-9][0-9]|1[0-1][0-9]|12[0-8]))?"/> + <!-- Double colon end --> + <xs:pattern value="([0-9A-Fa-f]{1,4}:){1,7}:(/([0-9]|[1-9][0-9]|1[0-1][0-9]|12[0-8]))?"/> + <!-- Embedded IPv4 addresses without CIDR suffix. Should IPv4 CIDR suffix be added?--> + <xs:pattern + value="((:(:0{1,4}){0,3}(:(0{1,4}|[fF]{4}))?)|(0{1,4}:(:0{1,4}){0,2}(:(0{1,4}|[fF]{4}))?)|((0{1,4}:){2}(:0{1,4})?(:(0{1,4}|[fF]{4}))?)|((0{1,4}:){3}(:(0{1,4}|[fF]{4}))?)|((0{1,4}:){4}(0{1,4}|[fF]{4})?)):(25[0-5]|2[0-4][0-9]|[0-1]?[0-9]?[0-9])\.(25[0-5]|2[0-4][0-9]|[0-1]?[0-9]?[0-9])\.(25[0-5]|2[0-4][0-9]|[0-1]?[0-9]?[0-9])\.(25[0-5]|2[0-4][0-9]|[0-1]?[0-9]?[0-9])"/> + <!-- The unspecified address --> + <xs:pattern value="::(/0)?"/> + </xs:restriction> + </xs:simpleType> + <xs:simpleType name="poaList"> <xs:restriction> @@ -157,6 +214,36 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR </xs:union> </xs:simpleType> + <xs:simpleType name="missingDataList"> + <xs:union> + <simpleType> + <restriction base='m2m:listOfTimeStamp' /> + </simpleType> + <simpleType> + <restriction base='m2m:listOfRelTimeStamp' /> + </simpleType> + </xs:union> + </xs:simpleType> + + <!-- auxiliary data type required for definition of m2m:missingDataList --> + <xs:simpleType name="listOfTimeStamp"> + <xs:restriction> + <xs:simpleType> + <xs:list itemType="m2m:timestamp" /> + </xs:simpleType> + <xs:minLength value="1" /> + </xs:restriction> + </xs:simpleType> + + <!-- auxiliary data type required for definition of m2m:missingDataList --> + <xs:simpleType name="listOfRelTimeStamp"> + <xs:restriction> + <xs:simpleType> + <xs:list itemType="xs:long" /> + </xs:simpleType> + <xs:minLength value="1" /> + </xs:restriction> + </xs:simpleType> <xs:simpleType name="typeOfContent"> <xs:restriction base="xs:string"> @@ -279,7 +366,31 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:pattern value="application\/rdf\+xml\:1" /> </xs:restriction> </xs:simpleType> - + + <!-- NOTE: following data types are proposed in PRO-2014-0183R0x which is not agreed yet --> + <!-- These are required to enable validation of data type m2m:dynAuthJWT defined in agreed + contribution PRO-2016-0154R03 used in <token> resource, + request and response primitive. Fefinitions to be reviewed after approval --> + <xs:simpleType name="e2eCompactJWS"> + <xs:restriction base="xs:string" /> + </xs:simpleType> + + <xs:simpleType name="e2eCompactJWE"> + <xs:restriction base="xs:string" /> + </xs:simpleType> + + <xs:simpleType name="dynAuthJWT"> + <xs:union> + <!-- absolute Time --> + <xs:simpleType> + <xs:restriction base='m2m:e2eCompactJWS' /> + </xs:simpleType> + <!-- relative Time --> + <xs:simpleType> + <xs:restriction base='m2m:e2eCompactJWE' /> + </xs:simpleType> + </xs:union> + </xs:simpleType> <!--********************** --> <!-- oneM2M Complex Types --> @@ -358,6 +469,7 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:element name="filterUsage" type="m2m:filterUsage" minOccurs="0" /> <xs:element name="limit" type="xs:nonNegativeInteger" minOccurs="0" /> <xs:element name="semanticsFilter" type="m2m:sparql" minOccurs="0" maxOccurs="unbounded" /> + <xs:element name="filterOperation" type="xs:boolean" minOccurs="0" /> </xs:sequence> </xs:complexType> @@ -374,7 +486,7 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR </xs:sequence> </xs:complexType> - <!-- m2m:aggregatedNotification and m2m:Notification are in the Notification xsd file --> + <!-- m2m:aggregatedNotification and m2m:notification are in the CDT-notification xsd file --> <!-- "actionStatus" is used across mgmtObj resources --> <xs:complexType name="actionStatus"> @@ -484,13 +596,64 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <!-- m2m:resourceWrapper is defined in the responsePrimitive xsd file --> - <!-- m2m:accessControlRule and m2m:locationRegion are defined in the accessControlPolicy xsd file --> + <xs:complexType name="setOfAcrs"> + <xs:sequence> + <xs:element name="accessControlRule" type="m2m:accessControlRule" minOccurs="0" maxOccurs="unbounded"/> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="accessControlRule"> + <xs:sequence> + <xs:element name="accessControlOriginators" type="m2m:listOfURIs" /> + + <!-- accessControlOperations defined as enumerated list 1 ... 63 --> + <xs:element name="accessControlOperations" type="m2m:accessControlOperations" /> + + <xs:element name="accessControlContexts" minOccurs="0" maxOccurs="unbounded"> + <xs:complexType> + <xs:sequence> + <xs:element name="accessControlWindow" type="m2m:scheduleEntry" minOccurs="0" maxOccurs="unbounded" /> + <xs:element name="accessControlIpAddresses" minOccurs="0"> + <xs:complexType> + <xs:sequence> + <xs:element name="ipv4Addresses" minOccurs="0" maxOccurs="1"> + <!-- space separated list of IPv4 addresses --> + <xs:simpleType> + <xs:restriction> + <xs:simpleType> + <xs:list itemType="m2m:ipv4" /> + </xs:simpleType> + <xs:minLength value="1"/> + </xs:restriction> + </xs:simpleType> + </xs:element> + <xs:element name="ipv6Addresses" minOccurs="0" maxOccurs="1"> + <!-- space separated list of IPv6 addresses --> + <xs:simpleType> + <xs:restriction> + <xs:simpleType> + <xs:list itemType="m2m:ipv6" /> + </xs:simpleType> + <xs:minLength value="1"/> + </xs:restriction> + </xs:simpleType> + </xs:element> + </xs:sequence> + </xs:complexType> + </xs:element> + <xs:element name="accessControlLocationRegion" type="m2m:locationRegion" minOccurs="0" /> + </xs:sequence> + </xs:complexType> + </xs:element> + </xs:sequence> + </xs:complexType> <xs:complexType name="childResourceRef"> <xs:simpleContent> <xs:extension base="xs:anyURI"> <xs:attribute name="name" type="xs:NCName" use="required" /> - <xs:attribute name="type" type="m2m:resourceType" use="required" /> + <xs:attribute name="type" type="m2m:resourceType" use="required" /> + <xs:attribute name="specializationID" type="xs:anyURI" use="optional" /> </xs:extension> </xs:simpleContent> </xs:complexType> @@ -526,7 +689,7 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR </xs:sequence> </xs:complexType> - <!-- m2m:aggregatedResponse is in the ResponsePrimitive xsd file --> + <!-- m2m:aggregatedResponse is in the CDT-responsePrimitive xsd file --> <xs:complexType name="contentRef"> <xs:sequence> @@ -585,6 +748,107 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR </xs:restriction> </xs:simpleType> + <xs:complexType name="missingData"> + <xs:sequence> + <xs:element name="number" type="xs:nonNegativeInteger" minOccurs="1" /> + <xs:element name="duration" type="xs:duration" minOccurs="1" /> + </xs:sequence> + </xs:complexType> + + <!-- m2m:securityInfo, m2m:dynAuthDasRequest, m2m:dynAuthDasRequest, m2m:dynAuthDasResponse, m2m:receiverE2ERandObject + m2m:eSPrimObject and m2m:dynAuthDasRequest are in the CDT-notification xsd file --> + + <xs:complexType name="tokenPermission"> + <xs:sequence> + <xs:element name="resourceIDs" type="m2m:listOfM2MID" minOccurs="0" /> + <xs:element name="privileges" type="m2m:setOfAcrs" minOccurs="0" /> + <xs:element name="roleIDs" minOccurs="0"> + <xs:simpleType> + <xs:restriction> + <xs:simpleType> + <xs:list itemType="m2m:roleID" /> + </xs:simpleType> + <xs:minLength value="1" /> + </xs:restriction> + </xs:simpleType> + </xs:element> + </xs:sequence> + </xs:complexType> + + + <!-- + <xs:complexType name="tokenObject"> + <xs:sequence> + <xs:element name="resourceIDs" type="m2m:listOfM2MID" minOccurs="0" /> + <xs:element name="privileges" type="m2m:setOfAcrs" minOccurs="0" /> + <xs:element name="roleIDs" minOccurs="0"> + <xs:simpleType> + <xs:restriction> + <xs:simpleType> + <xs:list itemType="m2m:roleID" /> + </xs:simpleType> + <xs:minLength value="1" /> + </xs:restriction> + </xs:simpleType> + </xs:element> + </xs:sequence> + </xs:complexType> + + version xs:string 1 + tokenID m2m:tokenID 1 + holder m2m:ID 1 + issuer m2m:ID 1 + notBefore m2m:timestamp 1 + notAfter m2m:timestamp 1 + tokenName xs:string 0..1 + audience list of m2m:ID 0..1 + permissions List of m2m:tokenPermission 0..1 + extension xs:string 0..1 + +--> + + <xs:complexType name="dynAuthLocalTokenIdAssignments"> + <xs:sequence> + <xs:element name="localTokenIdAssignment" minOccurs="1" maxOccurs="unbounded" > + <complexType> + <sequence> + <xs:element name="localTokenID" type="xs:NCName" /> + <xs:element name="tokenID" type="m2m:tokenID" /> + </sequence> + </complexType> + </xs:element> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="dynAuthTokenSummary"> + <xs:sequence> + <xs:element name="tokenID" type="m2m:tokenID" /> + <xs:element name="notBefore" type="m2m:timestamp" /> + <xs:element name="notAfter" type="m2m:timestamp" /> + <xs:element name="tokenName" type="xs:string" minOccurs="0" /> + <xs:element name="audience" type="m2m:listOfM2MID" minOccurs="0" /> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="dynAuthTokenReqInfo"> + <xs:sequence> + <xs:element name="dasInfo" minOccurs="1" maxOccurs="unbounded" > + <complexType> + <sequence> + <xs:element name="URI" type="xs:anyURI" /> + <xs:element name="dasRequest" type="m2m:dynAuthDASRequest" minOccurs="0"/> + <xs:element name="securedDASRequest" type="m2m:dynAuthJWT" minOccurs="0"/> + </sequence> + </complexType> + </xs:element> + </xs:sequence> + </xs:complexType> + + <!-- dummy data type for missing definition of m2m:dynAuthDASRequest --> + <xs:simpleType name="dynAuthDASRequest"> + <xs:restriction base="xs:string" /> + </xs:simpleType> + <!-- 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 @@ -715,5 +979,28 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR </xs:extension> </xs:complexContent> </xs:complexType> + + <xs:complexType name="flexContainerResource"> + <xs:complexContent> + <xs:extension base="m2m:announceableResource"> + <xs:sequence> + <xs:element name="containerDefinition" type="xs:anyURI" /> + <xs:element name="creator" type="m2m:ID" minOccurs="0" /> + <xs:element name="ontologyRef" type="xs:anyURI" minOccurs="0" /> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + + <xs:complexType name="announcedFlexContainerResource"> + <xs:complexContent> + <xs:extension base="m2m:announcedResource"> + <xs:sequence> + <xs:element name="containerDefinition" type="xs:anyURI" /> + <xs:element name="ontologyRef" type="xs:anyURI" minOccurs="0" /> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> </xs:schema> diff --git a/CDT-container.xsd b/CDT-container.xsd index f32aab4..6c411ac 100644 --- a/CDT-container.xsd +++ b/CDT-container.xsd @@ -36,17 +36,18 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:complexContent> <xs:extension base="m2m:announceableResource"> <xs:sequence> - <!-- Common Attribute, specific to <container>, <contentInstance>, <request> and <delivery> resources --> + <!-- Common Attribute, specific to <container>, <contentInstance>, <request> and <delivery> and other resources --> <xs:element name="stateTag" type="xs:nonNegativeInteger" /> + <xs:element name="creator" type="m2m:ID" minOccurs="0" /> <!-- Resource Specific Attributes --> - <xs:element name="creator" type="m2m:ID" /> <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="locationID" type="xs:anyURI" minOccurs="0" /> - <xs:element name="ontologyRef" type="xs:anyURI" minOccurs="0" /> + <xs:element name="ontologyRef" type="xs:anyURI" minOccurs="0" /> + <xs:element name="disableRetrieval" type="xs:boolean" minOccurs="0" /> <!-- Child Resources --> <xs:element name="latest" type="xs:anyURI" /> @@ -58,6 +59,7 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:element ref="m2m:container" /> <xs:element ref="m2m:subscription" /> <xs:element ref="m2m:semanticDescriptor" /> + <xs:element ref="m2m:semanticDescriptorAnnc" /> </xs:choice> </xs:choice> </xs:sequence> @@ -81,6 +83,7 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <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" /> + <xs:element name="disableRetrieval" type="xs:boolean" minOccurs="0" /> <!-- Child Resources --> <xs:choice minOccurs="0" maxOccurs="1"> diff --git a/CDT-contentInstance.xsd b/CDT-contentInstance.xsd index 6a33dd7..b8f59b9 100644 --- a/CDT-contentInstance.xsd +++ b/CDT-contentInstance.xsd @@ -37,8 +37,8 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:sequence> <!-- Common Attribute, specific to <container>, <contentInstance>, <request> and <delivery> resources --> <xs:element name="stateTag" type="xs:nonNegativeInteger" /> - <!-- Resource Specific Attributes --> <xs:element name="creator" type="m2m:ID" minOccurs="0" /> + <!-- Resource Specific Attributes --> <xs:element name="contentInfo" type="m2m:contentInfo" minOccurs="0" /> <xs:element name="contentSize" type="xs:nonNegativeInteger" /> <xs:element name="contentRef" type="m2m:contentRef" minOccurs="0"/> diff --git a/CDT-enumerationTypes.xsd b/CDT-enumerationTypes.xsd index 8a1f801..459a7e9 100644 --- a/CDT-enumerationTypes.xsd +++ b/CDT-enumerationTypes.xsd @@ -80,14 +80,28 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:enumeration value="23" /> <!-- semanticDescriptor --> <xs:enumeration value="24" /> - <!-- dynamicAuthorizationConsultation --> + <!-- notificationTargetMgmtPolicyRef --> <xs:enumeration value="25" /> <!-- notificationTargetPolicy --> <xs:enumeration value="26" /> - <!-- notificationTargetMgmtPolicyRef --> - <xs:enumeration value="27" /> <!-- policyDeletionRules --> - <xs:enumeration value="28" /> + <xs:enumeration value="27" /> + <!-- flexContainer --> + <xs:enumeration value="28" /> + <!-- timeSeries --> + <xs:enumeration value="29" /> + <!-- timeSeriesInstance --> + <xs:enumeration value="30" /> + <!-- role --> + <xs:enumeration value="31" /> + <!-- token --> + <xs:enumeration value="32" /> + <!-- trafficCharacteristics --> + <xs:enumeration value="33" /> + <!-- trafficPattern --> + <xs:enumeration value="34" /> + <!-- dynamicAuthorizationConsultation --> + <xs:enumeration value="35" /> <!-- accessControlPolicyAnnc --> <xs:enumeration value="10001" /> <!-- AEAnnc --> @@ -110,6 +124,18 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:enumeration value="10018" /> <!-- semanticDescriptorAnnc --> <xs:enumeration value="10024" /> + <!-- flexContainerAnnc --> + <xs:enumeration value="10028" /> + <!-- timeSeriesAnnc --> + <xs:enumeration value="10029" /> + <!-- timeSeriesInstanceAnnc --> + <xs:enumeration value="10030" /> + <!-- trafficCharacteristicsAnnc --> + <xs:enumeration value="10033" /> + <!-- trafficPatternAnnc --> + <xs:enumeration value="10034" /> + <!-- dynamicAuthorizationConsultationAnnc --> + <xs:enumeration value="10035" /> </xs:restriction> </xs:simpleType> @@ -335,6 +361,8 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:documentation>Used for memberType attribute in <group> resource.</xs:documentation> </xs:annotation> <xs:restriction base="xs:integer"> + <!-- mixed --> + <xs:enumeration value="0" /> <!-- accessControlPolicy --> <xs:enumeration value="1" /> <!-- AE --> @@ -381,6 +409,30 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:enumeration value="22" /> <!-- subscription --> <xs:enumeration value="23" /> + <!-- semanticDescriptor --> + <xs:enumeration value="24" /> + <!-- notificationTargetMgmtPolicyRef --> + <xs:enumeration value="25" /> + <!-- notificationTargetPolicy --> + <xs:enumeration value="26" /> + <!-- policyDeletionRules --> + <xs:enumeration value="27" /> + <!-- flexContainer --> + <xs:enumeration value="28" /> + <!-- timeSeries --> + <xs:enumeration value="29" /> + <!-- timeSeriesInstance --> + <xs:enumeration value="30" /> + <!-- role --> + <xs:enumeration value="31" /> + <!-- token --> + <xs:enumeration value="32" /> + <!-- trafficCharacteristics --> + <xs:enumeration value="33" /> + <!-- trafficPattern --> + <xs:enumeration value="34" /> + <!-- dynamicAuthorizationConsultation --> + <xs:enumeration value="35" /> <!-- accessControlPolicyAnnc --> <xs:enumeration value="10001" /> <!-- AEAnnc --> @@ -401,9 +453,20 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:enumeration value="10016" /> <!-- scheduleAnnc --> <xs:enumeration value="10018" /> - - <!-- Mixed --> - <xs:enumeration value="24" /> + <!-- semanticDescriptorAnnc --> + <xs:enumeration value="10024" /> + <!-- flexContainerAnnc --> + <xs:enumeration value="10028" /> + <!-- timeSeriesAnnc --> + <xs:enumeration value="10029" /> + <!-- timeSeriesInstanceAnnc --> + <xs:enumeration value="10030" /> + <!-- trafficCharacteristicsAnnc --> + <xs:enumeration value="10033" /> + <!-- trafficPatternAnnc --> + <xs:enumeration value="10034" /> + <!-- dynamicAuthorizationConsultationAnnc --> + <xs:enumeration value="10035" /> </xs:restriction> </xs:simpleType> @@ -886,33 +949,6 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR </xs:restriction> </xs:simpleType> - <xs:simpleType name="SRole-ID"> - <xs:restriction base="xs:token"> - <!-- Software Management --> - <xs:enumeration value="01-001" /> - <!-- Device Configuration --> - <xs:enumeration value="02-001" /> - <!-- Device Diagnostics and Management --> - <xs:enumeration value="02-002" /> - <!-- Device Firmware Management --> - <xs:enumeration value="02-003" /> - <!-- Device Topology --> - <xs:enumeration value="02-004" /> - <!-- Location --> - <xs:enumeration value="03-001" /> - <!-- Basic Data --> - <xs:enumeration value="04-001" /> - <!-- Onboarding --> - <xs:enumeration value="05-001" /> - <!-- Security Administration --> - <xs:enumeration value="06-001" /> - <!-- Groups Management --> - <xs:enumeration value="07-001" /> - <!-- Event Collection --> - <xs:enumeration value="08-001" /> - </xs:restriction> - </xs:simpleType> - <xs:simpleType name="filterUsage"> <xs:annotation> <xs:documentation>Used in filterCriteria</xs:documentation> @@ -951,5 +987,8 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:enumeration value="2" /> </xs:restriction> </xs:simpleType> + + <!-- m2m:securityInfoType is defined in the CDT-notification xsd file --> + </xs:schema> diff --git a/CDT-eventConfig.xsd b/CDT-eventConfig.xsd index 89a7216..5528a58 100644 --- a/CDT-eventConfig.xsd +++ b/CDT-eventConfig.xsd @@ -35,8 +35,9 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <!-- Inherit common attributes --> <xs:extension base="m2m:regularResource"> <xs:sequence> + <!-- Common Attribute, specific to <container>, <contentInstance>, <request> and <delivery> and other resources --> + <xs:element name="creator" type="m2m:ID" minOccurs="0" /> <!-- Resource Specific Attributes --> - <xs:element name="creator" type="m2m:ID" /> <xs:element name="eventID" type="xs:string" /> <xs:element name="eventType" type="m2m:eventType" /> <xs:element name="eventStart" type="m2m:timestamp" minOccurs="0" /> diff --git a/CDT-group.xsd b/CDT-group.xsd index 015314a..c8944bb 100644 --- a/CDT-group.xsd +++ b/CDT-group.xsd @@ -36,9 +36,10 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:complexContent> <!-- Inherit common attributes for announceable Resources --> <xs:extension base="m2m:announceableResource"> - <!-- Resource Specific Attributes --> - <xs:sequence> - <xs:element name="creator" type="m2m:ID" minOccurs="0" /> + <xs:sequence> + <!-- Common Attribute, specific to <container>, <contentInstance>, <request> and <delivery> and other resources --> + <xs:element name="creator" type="m2m:ID" minOccurs="0" /> + <!-- Resource Specific Attributes --> <xs:element name="memberType" type="m2m:memberType" /> <xs:element name="currentNrOfMembers" type="xs:positiveInteger" /> <xs:element name="maxNrOfMembers" type="xs:positiveInteger" /> @@ -88,6 +89,7 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:choice minOccurs="1" maxOccurs="unbounded"> <xs:element ref="m2m:subscription" /> <xs:element ref="m2m:semanticDescriptor" /> + <xs:element ref="m2m:semanticDescriptorAnnc" /> </xs:choice> </xs:choice> </xs:sequence> diff --git a/CDT-m2mServiceSubscriptionProfile.xsd b/CDT-m2mServiceSubscriptionProfile.xsd index 897447c..8e3d27b 100644 --- a/CDT-m2mServiceSubscriptionProfile.xsd +++ b/CDT-m2mServiceSubscriptionProfile.xsd @@ -37,11 +37,6 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:extension base="m2m:regularResource"> <xs:sequence> <!-- Resource Specific Attributes --> - <xs:element name="serviceRoles" minOccurs="0"> - <xs:simpleType> - <xs:list itemType="m2m:SRole-ID" /> - </xs:simpleType> - </xs:element> <!-- Child Resources --> <xs:choice minOccurs="0" maxOccurs="1"> diff --git a/CDT-node.xsd b/CDT-node.xsd index 212b3c9..70f66de 100644 --- a/CDT-node.xsd +++ b/CDT-node.xsd @@ -105,6 +105,7 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:element ref="m2m:eventLogAnnc" /> <xs:element ref="m2m:subscription" /> <xs:element ref="m2m:semanticDescriptor" /> + <xs:element ref="m2m:semanticDescriptorAnnc" /> </xs:choice> </xs:choice> </xs:sequence> diff --git a/CDT-notification.xsd b/CDT-notification.xsd index 29b2004..6ac3846 100644 --- a/CDT-notification.xsd +++ b/CDT-notification.xsd @@ -37,7 +37,7 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:element name="notification" type="m2m:notification" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> - + <xs:complexType name="notification"> <xs:sequence> <xs:element name="notificationEvent" minOccurs="0"> @@ -71,5 +71,119 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR </xs:element> </xs:sequence> </xs:complexType> + + <xs:element name="securityInfo" type="m2m:securityInfo" /> + + <xs:complexType name="securityInfo"> + <xs:sequence> + <xs:element name="securityInfoType" type="m2m:securityInfoType" minOccurs="0" /> + <xs:element name="dasRequest" type="m2m:dynAuthDasRequest" minOccurs="0" /> + <xs:element name="dasResponse" type="m2m:dynAuthDasResponse" minOccurs="0" /> + <xs:element name="e2eRandObject" type="m2m:receiverE2ERandObject" minOccurs="0" /> + <xs:element name="esprimObject" type="m2m:eSPrimObject" minOccurs="0" /> + <xs:element name="escertkeMessage" type="xs:base64Binary" minOccurs="0" /> + </xs:sequence> + </xs:complexType> + + <!-- dummy data type for missing definition of m2m:receiverE2ERandObject --> + <xs:simpleType name="receiverE2ERandObject"> + <xs:restriction base="xs:string" /> + </xs:simpleType> + + <!-- dummy data type for missing definition of m2m:eSPrimObject --> + <xs:simpleType name="eSPrimObject"> + <xs:restriction base="xs:string" /> + </xs:simpleType> + + + <xs:simpleType name="securityInfoType"> + <xs:restriction base="xs:integer"> + <!-- Dynamic Authorization Request --> + <xs:enumeration value="1" /> + <!-- Dynamic Authorization Response --> + <xs:enumeration value="2" /> + <!-- Receiver E2E Rand Object Request --> + <xs:enumeration value="3" /> + <!-- Receiver E2E Rand Object Response --> + <xs:enumeration value="4" /> + <!-- ESPrim Object --> + <xs:enumeration value="5" /> + <!-- ESCertKE Message --> + <xs:enumeration value="6" /> + </xs:restriction> + </xs:simpleType> + + <xs:complexType name="dynAuthDasRequest"> + <xs:sequence> + <xs:element name="originator" type="m2m:ID" minOccurs="1" /> + <xs:element name="targetedResourceType" type="m2m:resourceType" minOccurs="1" /> + <xs:element name="operation" type="m2m:operation" minOccurs="1" /> + <xs:element name="originatorIP" minOccurs="0" > + <xs:complexType> + <xs:sequence> + <xs:element name="ipv4Address" type="m2m:ipv4" minOccurs="0" /> + <xs:element name="ipv6Address" type="m2m:ipv6" minOccurs="0" /> + </xs:sequence> + </xs:complexType> + </xs:element> + <xs:element name="originatorLocation" type="m2m:locationRegion" minOccurs="0" /> + <xs:element name="originatorRoleIDs" minOccurs="0" > + <xs:simpleType> + <xs:restriction> + <xs:simpleType> + <xs:list itemType="m2m:roleID" /> + </xs:simpleType> + <xs:minLength value="1" /> + </xs:restriction> + </xs:simpleType> + </xs:element> + <xs:element name="requestTimestamp" type="m2m:absRelTimestamp" minOccurs="0" /> + <xs:element name="targetedResourceID" type="xs:anyURI" minOccurs="0" /> + <xs:element name="proposedPrivilegesLifetime" type="m2m:absRelTimestamp" minOccurs="0" /> + <xs:element name="roleIDsFromACPs" minOccurs="0" > + <xs:simpleType> + <xs:restriction> + <xs:simpleType> + <xs:list itemType="m2m:roleID" /> + </xs:simpleType> + <xs:minLength value="1" /> + </xs:restriction> + </xs:simpleType> + </xs:element> + <xs:element name="tokenIDs" minOccurs="0" > + <xs:simpleType> + <xs:restriction> + <xs:simpleType> + <xs:list itemType="m2m:tokenID" /> + </xs:simpleType> + <xs:minLength value="1" /> + </xs:restriction> + </xs:simpleType> + </xs:element> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="dynAuthDasResponse"> + <xs:sequence> + <xs:element name="dynamicACPInfo" minOccurs="0" > + <xs:complexType> + <xs:sequence> + <xs:element name="grantedPrivileges" type="m2m:setOfAcrs" minOccurs="0" /> + <xs:element name="privilegesLifetime" type="m2m:absRelTimestamp" minOccurs="0" /> + </xs:sequence> + </xs:complexType> + </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:sequence> + </xs:complexType> </xs:schema> diff --git a/CDT-notificationTargetMgmtPolicyRef.xsd b/CDT-notificationTargetMgmtPolicyRef.xsd index 286b3d5..4cd10a0 100644 --- a/CDT-notificationTargetMgmtPolicyRef.xsd +++ b/CDT-notificationTargetMgmtPolicyRef.xsd @@ -37,7 +37,7 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:sequence> <!-- Resource Specific Attributes --> <xs:element name="notificationTargetURI" type="m2m:listOfURIs" minOccurs="0" /> - <xs:element name="notificationlPolicyID" type="m2m:listOfURIs" minOccurs="0" /> + <xs:element name="notificationlPolicyID" type="xs:anyURI" minOccurs="0" /> <!-- Child Resources --> <xs:choice minOccurs="0" maxOccurs="1"> diff --git a/CDT-notificationTargetPolicy.xsd b/CDT-notificationTargetPolicy.xsd index fbabe8f..ecf2eb2 100644 --- a/CDT-notificationTargetPolicy.xsd +++ b/CDT-notificationTargetPolicy.xsd @@ -36,11 +36,12 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <!-- Inherit common attributes --> <xs:extension base="m2m:regularResource"> <xs:sequence> + <!-- Common Attribute, specific to <container>, <contentInstance>, <request> and <delivery> and other resources --> + <xs:element name="creator" type="m2m:ID" minOccurs="0" /> <!-- Resource Specific Attributes --> <xs:element name="action" type="m2m:notificationTargetPolicyAction" minOccurs="1" /> <xs:element name="policyLabel" type="xs:token" minOccurs="1" /> <xs:element name="rulesRelationship" type="m2m:logicalOperator" minOccurs="0" /> - <xs:element name="creator" type="m2m:ID" minOccurs="0" /> <!-- Child Resources --> <xs:choice minOccurs="0" maxOccurs="1"> diff --git a/CDT-remoteCSE.xsd b/CDT-remoteCSE.xsd index a575abe..90fbdaa 100644 --- a/CDT-remoteCSE.xsd +++ b/CDT-remoteCSE.xsd @@ -35,6 +35,7 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:include schemaLocation="CDT-schedule.xsd" /> <xs:include schemaLocation="CDT-node.xsd" /> <xs:include schemaLocation="CDT-locationPolicy.xsd" /> + <xs:include schemaLocation="CDT-timeSeries.xsd" /> <xs:element name="remoteCSE"> <xs:complexType> @@ -62,6 +63,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:schedule" /> + <xs:element ref="m2m:timeSeries" /> </xs:choice> </xs:choice> </xs:sequence> @@ -99,6 +101,8 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:element ref="m2m:pollingChannel" /> <xs:element ref="m2m:scheduleAnnc" /> <xs:element ref="m2m:locationPolicyAnnc" /> + <xs:element ref="m2m:timeSeries" /> + <xs:element ref="m2m:timeSeriesAnnc" /> </xs:choice> </xs:choice> </xs:sequence> diff --git a/CDT-requestPrimitive.xsd b/CDT-requestPrimitive.xsd index bb92ccb..207e680 100644 --- a/CDT-requestPrimitive.xsd +++ b/CDT-requestPrimitive.xsd @@ -45,8 +45,18 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:element name="resourceType" type="m2m:resourceType" minOccurs="0"/> <!-- parameter "Content" --> <xs:element name="primitiveContent" type="m2m:primitiveContent" minOccurs="0"/> - <!-- parameter "Role" --> - <xs:element name="role" type="xs:anyType" minOccurs="0"/> + <!-- parameter "Role IDs" --> + <xs:element name="roleIDs" minOccurs="0"> + <xs:simpleType> + <xs:restriction> + <xs:simpleType> + <xs:list itemType="m2m:roleID" /> + </xs:simpleType> + <xs:minLength value="1" /> + </xs:restriction> + </xs:simpleType> + </xs:element> + <!-- parameter "Originating Timestamp" --> <xs:element name="originatingTimestamp" type="m2m:timestamp" minOccurs="0"/> <!-- parameter "Request Expiration Timestamp" --> @@ -71,6 +81,23 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:element name="filterCriteria" type="m2m:filterCriteria" minOccurs="0"/> <!-- parameter "Discovery Result Type" --> <xs:element name="discoveryResultType" type="m2m:discResType" minOccurs="0"/> + <!-- parameter "Tokens" --> + <xs:element name="tokens" type="m2m:dynAuthJWT" minOccurs="0"/> + <!-- parameter "Token IDs" --> + <xs:element name="tokenIDs" type="m2m:tokenID" minOccurs="0"/> + <!-- parameter "Local Token IDs" --> + <xs:element name="localTokenIDs" minOccurs="0"> + <xs:simpleType> + <xs:restriction> + <xs:simpleType> + <xs:list itemType="xs:NCName" /> + </xs:simpleType> + <xs:minLength value="1" /> + </xs:restriction> + </xs:simpleType> + </xs:element> + <!-- parameter "Token Request Indicator" --> + <xs:element name="tokenReqIndicator" type="xs:boolean" minOccurs="0"/> </xs:sequence> </xs:complexType> </xs:element> diff --git a/CDT-responsePrimitive.xsd b/CDT-responsePrimitive.xsd index 69e213c..c44127e 100644 --- a/CDT-responsePrimitive.xsd +++ b/CDT-responsePrimitive.xsd @@ -73,6 +73,10 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:include schemaLocation="CDT-statsCollect.xsd" /> <xs:include schemaLocation="CDT-statsConfig.xsd" /> <xs:include schemaLocation="CDT-subscription.xsd" /> + <xs:include schemaLocation="CDT-timeSeries.xsd" /> + <xs:include schemaLocation="CDT-timeSeriesInstance.xsd" /> + <xs:include schemaLocation="CDT-role.xsd" /> + <xs:include schemaLocation="CDT-token.xsd" /> <xs:element name="responsePrimitive" > <xs:complexType> @@ -95,6 +99,10 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:element name="resultExpirationTimestamp" type="m2m:absRelTimestamp" minOccurs="0"/> <!-- parameter "Event Category" --> <xs:element name="eventCategory" type="m2m:eventCat" minOccurs="0" /> + <!-- parameter "Assigned Token Identifiers --> + <xs:element name="assignedTokenIdentifiers" type="m2m:dynAuthLocalTokenIdAssignments" minOccurs="0" /> + <!-- parameter "Token Request Information --> + <xs:element name="tokenReqInfo" type="m2m:dynAuthTokenReqInfo" minOccurs="0" /> </xs:sequence> </xs:complexType> </xs:element> @@ -154,6 +162,10 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:element ref="m2m:statsCollect" /> <xs:element ref="m2m:statsConfig" /> <xs:element ref="m2m:subscription" /> + <xs:element ref="m2m:timeSeries" /> + <xs:element ref="m2m:timeSeriesInstance" /> + <xs:element ref="m2m:role" /> + <xs:element ref="m2m:token" /> </xs:choice> <xs:element name="URI" type="xs:anyURI" /> </xs:sequence> @@ -161,7 +173,8 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:complexType name="aggregatedResponse"> - <xs:sequence> + <xs:sequence> + <xs:element name="resourceID" type="xs:anyURI" minOccurs="0"/> <xs:element ref="m2m:responsePrimitive" minOccurs="1" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> diff --git a/CDT-role.xsd b/CDT-role.xsd new file mode 100644 index 0000000..7e1b1f9 --- /dev/null +++ b/CDT-role.xsd @@ -0,0 +1,57 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- +Copyright Notification + + +The oneM2M Partners authorize you to copy this document, provided that you retain all copyright and other proprietary notices +contained in the original materials on any copies of the materials and that you comply strictly with these terms. +This copyright permission does not constitute an endorsement of the products or services, nor does it encompass the granting of +any patent rights. The oneM2M Partners assume no responsibility for errors or omissions in this document. +© 2015, oneM2M Partners Type 1 (ARIB, ATIS, CCSA, ETSI, TIA, TTA, TTC). All rights reserved. + +Notice of Disclaimer & Limitation of Liability + +The information provided in this document is directed solely to professionals who have the appropriate degree of experience +to understand and interpret its contents in accordance with generally accepted engineering or other professional standards +and applicable regulations. No recommendation as to products or vendors is made or should be implied. + +NO REPRESENTATION OR WARRANTY IS MADE THAT THE INFORMATION IS TECHNICALLY ACCURATE OR SUFFICIENT OR CONFORMS TO ANY STATUTE, +GOVERNMENTAL RULE OR REGULATION, AND FURTHER, NO REPRESENTATION OR WARRANTY IS MADE OF MERCHANTABILITY OR FITNESS FOR ANY +PARTICULAR PURPOSE OR AGAINST INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS. +NO oneM2M PARTNER TYPE 1 SHALL BE LIABLE, BEYOND THE AMOUNT OF ANY SUM RECEIVED IN PAYMENT BY THAT PARTNER FOR THIS DOCUMENT, +WITH RESPECT TO ANY CLAIM, AND IN NO EVENT SHALL oneM2M BE LIABLE FOR LOST PROFITS OR OTHER INCIDENTAL OR CONSEQUENTIAL DAMAGES. +oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PROVIDED IN THIS DOCUMENT IS AT THE RISK OF THE USER. + +--> + +<xs:schema targetNamespace="http://www.onem2m.org/xml/protocols" xmlns:m2m="http://www.onem2m.org/xml/protocols" + elementFormDefault="unqualified" xmlns:xs="http://www.w3.org/2001/XMLSchema"> + <xs:include schemaLocation="CDT-subscription.xsd" /> + + <xs:element name="role"> + <xs:complexType> + <xs:complexContent> + <xs:extension base="m2m:regularResource"> + <xs:sequence> + <!-- Resource Specific Attributes --> + <xs:element name="roleID" type="m2m:roleID" /> + <xs:element name="issuer" type="m2m:ID" /> + <xs:element name="holder" type="m2m:ID" /> + <xs:element name="notBefore" type="m2m:timestamp" /> + <xs:element name="notAfter" type="m2m:timestamp" /> + <xs:element name="roleName" type="xs:string" minOccurs="0" /> + <xs:element name="tokenLink" type="xs:anyURI" minOccurs="0" /> + + <!-- Child Resources --> + <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:subscription" /> + </xs:choice> + </xs:choice> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + </xs:element> +</xs:schema> diff --git a/CDT-semanticDescriptor.xsd b/CDT-semanticDescriptor.xsd index 9906af8..410b080 100644 --- a/CDT-semanticDescriptor.xsd +++ b/CDT-semanticDescriptor.xsd @@ -33,10 +33,11 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:complexType> <xs:complexContent> <!-- Inherit common attributes for announceable Resources --> - <xs:extension base="m2m:regularResource"> + <xs:extension base="m2m:announceableResource"> <xs:sequence> - <!-- Resource Specific Attributes --> + <!-- Common Attribute, specific to <container>, <contentInstance>, <request> and <delivery> and other resources --> <xs:element name="creator" type="m2m:ID" minOccurs="0" /> + <!-- Resource Specific Attributes --> <xs:element name="descriptorRepresentation" type="m2m:descriptorRepresentation" minOccurs="0" /> <xs:element name="semanticOpExec" type="m2m:sparql" minOccurs="0" /> <xs:element name="descriptor" type="xs:base64Binary" /> @@ -53,4 +54,28 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR </xs:complexContent> </xs:complexType> </xs:element> + + <xs:element name="semanticDescriptorAnnc"> + <xs:complexType> + <xs:complexContent> + <!-- Inherit common attributes for announceable Resources --> + <xs:extension base="m2m:announcedResource"> + <xs:sequence> + <!-- Resource Specific Attributes --> + <xs:element name="descriptorRepresentation" type="m2m:descriptorRepresentation" minOccurs="0" /> + <xs:element name="semanticOpExec" type="m2m:sparql" minOccurs="0" /> + <xs:element name="descriptor" type="xs:base64Binary" minOccurs="0" /> + <xs:element name="ontologyRef" type="xs:anyURI" minOccurs="0" /> + <xs:element name="relatedSemantics" type="m2m:listOfURIs" minOccurs="0" /> + + <!-- Child Resources --> + <xs:choice minOccurs="0" maxOccurs="1"> + <xs:element name="childResource" type="m2m:childResourceRef" maxOccurs="unbounded" /> + <xs:element ref="m2m:subscription" maxOccurs="unbounded" /> + </xs:choice> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + </xs:element> </xs:schema> diff --git a/CDT-statsCollect.xsd b/CDT-statsCollect.xsd index 22cba0e..f7287b1 100644 --- a/CDT-statsCollect.xsd +++ b/CDT-statsCollect.xsd @@ -35,8 +35,9 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <!-- Inherit common attributes --> <xs:extension base="m2m:regularResource"> <xs:sequence> + <!-- Common Attribute, specific to <container>, <contentInstance>, <request> and <delivery> and other resources --> + <xs:element name="creator" type="m2m:ID" minOccurs="0" /> <!-- Resource Specific Attributes --> - <xs:element name="creator" type="m2m:ID" /> <xs:element name="statsCollectID" type="xs:string" /> <xs:element name="collectingEntityID" type="m2m:ID" /> <xs:element name="collectedEntityID" type="m2m:ID" /> diff --git a/CDT-statsConfig.xsd b/CDT-statsConfig.xsd index 3092de0..e9fe68c 100644 --- a/CDT-statsConfig.xsd +++ b/CDT-statsConfig.xsd @@ -36,8 +36,9 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <!-- Inherit common attributes --> <xs:extension base="m2m:regularResource"> <xs:sequence> + <!-- Common Attribute, specific to <container>, <contentInstance>, <request> and <delivery> and other resources --> + <xs:element name="creator" type="m2m:ID" minOccurs="0" /> <!-- Resource Specific Attributes --> - <xs:element name="creator" type="m2m:ID" /> <!-- Child Resources --> <xs:choice minOccurs="0" maxOccurs="1"> diff --git a/CDT-subscription.xsd b/CDT-subscription.xsd index 00e8b2c..7cdb561 100644 --- a/CDT-subscription.xsd +++ b/CDT-subscription.xsd @@ -29,6 +29,7 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:include schemaLocation="CDT-commonTypes.xsd" /> <xs:include schemaLocation="CDT-schedule.xsd" /> + <xs:include schemaLocation="CDT-notificationTargetMgmtPolicyRef.xsd" /> <xs:element name="subscription"> <xs:complexType> @@ -36,6 +37,8 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <!-- Inherit common attributes from RegularResource Type --> <xs:extension base="m2m:regularResource"> <xs:sequence> + <!-- Common Attribute, specific to <container>, <contentInstance>, <request> and <delivery> and other resources --> + <xs:element name="creator" type="m2m:ID" minOccurs="0" /> <!-- Resource Specific Attributes --> <xs:element name="eventNotificationCriteria" type="m2m:eventNotificationCriteria" minOccurs="0" /> <xs:element name="expirationCounter" type="xs:positiveInteger" minOccurs="0" /> @@ -50,13 +53,15 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:element name="latestNotify" type="xs:boolean" minOccurs="0" /> <xs:element name="notificationContentType" type="m2m:notificationContentType" /> <xs:element name="notificationEventCat" type="m2m:eventCat" minOccurs="0" /> - <xs:element name="creator" type="m2m:ID" minOccurs="0" /> <xs:element name="subscriberURI" type="xs:anyURI" minOccurs="0" /> <!-- Child Resources --> <xs:choice minOccurs="0" maxOccurs="1"> - <xs:element name="childResource" type="m2m:childResourceRef" /> - <xs:element ref="m2m:schedule" /> + <xs:element name="childResource" type="m2m:childResourceRef" minOccurs="1" maxOccurs="unbounded" /> + <xs:choice minOccurs="1" maxOccurs="unbounded"> + <xs:element ref="m2m:schedule" /> + <xs:element ref="m2m:notificationTargetMgmtPolicyRef" /> + </xs:choice> </xs:choice> </xs:sequence> </xs:extension> @@ -79,6 +84,7 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:element name="operationMonitor" type="m2m:operation" minOccurs="0" maxOccurs="5" /> <xs:element name="attribute" type="m2m:attribute" minOccurs="0" maxOccurs="unbounded" /> <xs:element name="notificationEventType" type="m2m:notificationEventType" minOccurs="0" maxOccurs="5" /> + <xs:element name="missingData" type="m2m:missingData" minOccurs="0" /> </xs:sequence> </xs:complexType> diff --git a/CDT-timeSeries.xsd b/CDT-timeSeries.xsd new file mode 100644 index 0000000..769780a --- /dev/null +++ b/CDT-timeSeries.xsd @@ -0,0 +1,110 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- +Copyright Notification + + +The oneM2M Partners authorize you to copy this document, provided that you retain all copyright and other proprietary notices +contained in the original materials on any copies of the materials and that you comply strictly with these terms. +This copyright permission does not constitute an endorsement of the products or services, nor does it encompass the granting of +any patent rights. The oneM2M Partners assume no responsibility for errors or omissions in this document. +© 2015, oneM2M Partners Type 1 (ARIB, ATIS, CCSA, ETSI, TIA, TTA, TTC). All rights reserved. + +Notice of Disclaimer & Limitation of Liability + +The information provided in this document is directed solely to professionals who have the appropriate degree of experience +to understand and interpret its contents in accordance with generally accepted engineering or other professional standards +and applicable regulations. No recommendation as to products or vendors is made or should be implied. + +NO REPRESENTATION OR WARRANTY IS MADE THAT THE INFORMATION IS TECHNICALLY ACCURATE OR SUFFICIENT OR CONFORMS TO ANY STATUTE, +GOVERNMENTAL RULE OR REGULATION, AND FURTHER, NO REPRESENTATION OR WARRANTY IS MADE OF MERCHANTABILITY OR FITNESS FOR ANY +PARTICULAR PURPOSE OR AGAINST INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS. +NO oneM2M PARTNER TYPE 1 SHALL BE LIABLE, BEYOND THE AMOUNT OF ANY SUM RECEIVED IN PAYMENT BY THAT PARTNER FOR THIS DOCUMENT, +WITH RESPECT TO ANY CLAIM, AND IN NO EVENT SHALL oneM2M BE LIABLE FOR LOST PROFITS OR OTHER INCIDENTAL OR CONSEQUENTIAL DAMAGES. +oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PROVIDED IN THIS DOCUMENT IS AT THE RISK OF THE USER. + +--> + +<xs:schema targetNamespace="http://www.onem2m.org/xml/protocols" xmlns:m2m="http://www.onem2m.org/xml/protocols" + elementFormDefault="unqualified" xmlns:xs="http://www.w3.org/2001/XMLSchema"> + <xs:include schemaLocation="CDT-commonTypes.xsd" /> + <xs:include schemaLocation="CDT-timeSeriesInstance.xsd" /> + <xs:include schemaLocation="CDT-subscription.xsd" /> + <xs:include schemaLocation="CDT-semanticDescriptor.xsd" /> + + + <xs:element name="timeSeries"> + <xs:complexType> + <xs:complexContent> + <xs:extension base="m2m:announceableResource"> + <xs:sequence> + <!-- Common Attribute, specific to <container>, <contentInstance>, <request> and <delivery> and other resources --> + <xs:element name="stateTag" type="xs:nonNegativeInteger" /> + <xs:element name="creator" type="m2m:ID" /> + <!-- Resource Specific Attributes --> + <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="periodicInterval" type="xs:nonNegativeInteger" minOccurs="0" /> + <xs:element name="missingDataDetect" type="xs:boolean" minOccurs="0" /> + <xs:element name="missingDataMaxNr" type="xs:nonNegativeInteger" minOccurs="0" /> + <xs:element name="missingDataList" type="m2m:missingDataList" minOccurs="0" /> + <xs:element name="missingDataCurrentNr" type="xs:nonNegativeInteger" minOccurs="0" /> + <xs:element name="missingDataDetectTimer" type="xs:nonNegativeInteger" minOccurs="0" /> + <xs:element name="ontologyRef" type="xs:anyURI" minOccurs="0" /> + + <!-- Child Resources --> + <xs:element name="latest" type="xs:anyURI" /> + <xs:element name="oldest" type="xs:anyURI" /> + <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:timeSeriesInstance" /> + <xs:element ref="m2m:subscription" /> + <xs:element ref="m2m:semanticDescriptor" /> + </xs:choice> + </xs:choice> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + </xs:element> + + <xs:element name="timeSeriesAnnc"> + <xs:complexType> + <xs:complexContent> + <xs:extension base="m2m:announcedResource"> + <xs:sequence> + <!-- Common Attribute, specific to <container>, <contentInstance>, <request> and <delivery> resources --> + <xs:element name="stateTag" type="xs:nonNegativeInteger" minOccurs="0" /> + <!-- Resource Specific Attributes --> + <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="periodicInterval" type="xs:nonNegativeInteger" minOccurs="0" /> + <xs:element name="missingDataDetect" type="xs:boolean" minOccurs="0" /> + <xs:element name="missingDataList" type="m2m:missingDataList" minOccurs="0" /> + <xs:element name="missingDataCurrentNr" type="xs:nonNegativeInteger" minOccurs="0" /> + <xs:element name="missingDataDetectTimer" type="xs:nonNegativeInteger" minOccurs="0" /> + <xs:element name="ontologyRef" type="xs:anyURI" minOccurs="0" /> + + <!-- Child Resources --> + <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:timeSeriesInstance" /> + <xs:element ref="m2m:timeSeriesInstanceAnnc" /> + <xs:element ref="m2m:subscription" /> + <xs:element ref="m2m:semanticDescriptor" /> + <xs:element ref="m2m:semanticDescriptorAnnc" /> + </xs:choice> + </xs:choice> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + </xs:element> +</xs:schema> diff --git a/CDT-timeSeriesInstance.xsd b/CDT-timeSeriesInstance.xsd new file mode 100644 index 0000000..7c71149 --- /dev/null +++ b/CDT-timeSeriesInstance.xsd @@ -0,0 +1,65 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- +Copyright Notification + + +The oneM2M Partners authorize you to copy this document, provided that you retain all copyright and other proprietary notices +contained in the original materials on any copies of the materials and that you comply strictly with these terms. +This copyright permission does not constitute an endorsement of the products or services, nor does it encompass the granting of +any patent rights. The oneM2M Partners assume no responsibility for errors or omissions in this document. +© 2015, oneM2M Partners Type 1 (ARIB, ATIS, CCSA, ETSI, TIA, TTA, TTC). All rights reserved. + +Notice of Disclaimer & Limitation of Liability + +The information provided in this document is directed solely to professionals who have the appropriate degree of experience +to understand and interpret its contents in accordance with generally accepted engineering or other professional standards +and applicable regulations. No recommendation as to products or vendors is made or should be implied. + +NO REPRESENTATION OR WARRANTY IS MADE THAT THE INFORMATION IS TECHNICALLY ACCURATE OR SUFFICIENT OR CONFORMS TO ANY STATUTE, +GOVERNMENTAL RULE OR REGULATION, AND FURTHER, NO REPRESENTATION OR WARRANTY IS MADE OF MERCHANTABILITY OR FITNESS FOR ANY +PARTICULAR PURPOSE OR AGAINST INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS. +NO oneM2M PARTNER TYPE 1 SHALL BE LIABLE, BEYOND THE AMOUNT OF ANY SUM RECEIVED IN PAYMENT BY THAT PARTNER FOR THIS DOCUMENT, +WITH RESPECT TO ANY CLAIM, AND IN NO EVENT SHALL oneM2M BE LIABLE FOR LOST PROFITS OR OTHER INCIDENTAL OR CONSEQUENTIAL DAMAGES. +oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PROVIDED IN THIS DOCUMENT IS AT THE RISK OF THE USER. + +--> + +<xs:schema targetNamespace="http://www.onem2m.org/xml/protocols" xmlns:m2m="http://www.onem2m.org/xml/protocols" + elementFormDefault="unqualified" xmlns:xs="http://www.w3.org/2001/XMLSchema"> + <xs:include schemaLocation="CDT-commonTypes.xsd" /> + + <xs:element name="timeSeriesInstance"> + <xs:complexType> + <xs:complexContent> + <xs:extension base="m2m:announceableSubordinateResource"> + <xs:sequence> + <!-- Resource Specific Attributes --> + <xs:element name="dataGenerationTime" type="m2m:absRelTimestamp" /> + <xs:element name="content" type="xs:anySimpleType" /> + <xs:element name="sequenceNr" type="xs:nonNegativeInteger" minOccurs="0" /> + + <!-- Child Resources --> + + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + </xs:element> + + <xs:element name="timeSeriesInstanceAnnc"> + <xs:complexType> + <xs:complexContent> + <xs:extension base="m2m:announcedSubordinateResource"> + <xs:sequence> + <xs:element name="dataGenerationTime" type="m2m:absRelTimestamp" minOccurs="0" /> + <xs:element name="content" type="xs:anySimpleType" minOccurs="0" /> + <xs:element name="sequenceNr" type="xs:nonNegativeInteger" minOccurs="0" /> + + <!-- Child Resources --> + + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + </xs:element> +</xs:schema> diff --git a/CDT-token.xsd b/CDT-token.xsd new file mode 100644 index 0000000..9210df2 --- /dev/null +++ b/CDT-token.xsd @@ -0,0 +1,68 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- +Copyright Notification + + +The oneM2M Partners authorize you to copy this document, provided that you retain all copyright and other proprietary notices +contained in the original materials on any copies of the materials and that you comply strictly with these terms. +This copyright permission does not constitute an endorsement of the products or services, nor does it encompass the granting of +any patent rights. The oneM2M Partners assume no responsibility for errors or omissions in this document. +© 2015, oneM2M Partners Type 1 (ARIB, ATIS, CCSA, ETSI, TIA, TTA, TTC). All rights reserved. + +Notice of Disclaimer & Limitation of Liability + +The information provided in this document is directed solely to professionals who have the appropriate degree of experience +to understand and interpret its contents in accordance with generally accepted engineering or other professional standards +and applicable regulations. No recommendation as to products or vendors is made or should be implied. + +NO REPRESENTATION OR WARRANTY IS MADE THAT THE INFORMATION IS TECHNICALLY ACCURATE OR SUFFICIENT OR CONFORMS TO ANY STATUTE, +GOVERNMENTAL RULE OR REGULATION, AND FURTHER, NO REPRESENTATION OR WARRANTY IS MADE OF MERCHANTABILITY OR FITNESS FOR ANY +PARTICULAR PURPOSE OR AGAINST INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS. +NO oneM2M PARTNER TYPE 1 SHALL BE LIABLE, BEYOND THE AMOUNT OF ANY SUM RECEIVED IN PAYMENT BY THAT PARTNER FOR THIS DOCUMENT, +WITH RESPECT TO ANY CLAIM, AND IN NO EVENT SHALL oneM2M BE LIABLE FOR LOST PROFITS OR OTHER INCIDENTAL OR CONSEQUENTIAL DAMAGES. +oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PROVIDED IN THIS DOCUMENT IS AT THE RISK OF THE USER. + +--> + +<xs:schema targetNamespace="http://www.onem2m.org/xml/protocols" xmlns:m2m="http://www.onem2m.org/xml/protocols" + elementFormDefault="unqualified" xmlns:xs="http://www.w3.org/2001/XMLSchema"> + <xs:include schemaLocation="CDT-subscription.xsd" /> + + <xs:element name="token"> + <xs:complexType> + <xs:complexContent> + <xs:extension base="m2m:regularResource"> + <xs:sequence> + <!-- Resource Specific Attributes --> + <xs:element name="tokenID" type="m2m:tokenID" /> + <xs:element name="tokenObject" type="m2m:dynAuthJWT" /> + <xs:element name="version" type="xs:string" minOccurs="0"/> + <xs:element name="issuer" type="m2m:ID" minOccurs="0" /> + <xs:element name="holder" type="m2m:ID" minOccurs="0"/> + <xs:element name="notBefore" type="m2m:timestamp" /> + <xs:element name="notAfter" type="m2m:timestamp" minOccurs="0"/> + <xs:element name="tokenName" type="xs:string" minOccurs="0" /> + <xs:element name="audience" type="m2m:listOfM2MID" minOccurs="0" /> + + <xs:element name="permissions" minOccurs="0"> + <xs:complexType> + <xs:sequence> + <xs:element name="permission" type="m2m:tokenPermission" /> + </xs:sequence> + </xs:complexType> + </xs:element> + <xs:element name="extension" type="xs:string" minOccurs="0" /> + + <!-- Child Resources --> + <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:subscription" /> + </xs:choice> + </xs:choice> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + </xs:element> +</xs:schema> diff --git a/instance1.xml b/instance1.xml deleted file mode 100644 index da0eb5b..0000000 --- a/instance1.xml +++ /dev/null @@ -1,60 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<m2m:requestPrimitive xmlns:m2m="http://www.onem2m.org/xml/protocols" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://www.onem2m.org/xml/protocols file:/C:/Users/wgranzow/UserData/M2M/OneM2M/PRO/GitHub/oneM2M-schemas/v2_5_0/CDT-requestPrimitive-v2_5_0.xsd"> - <operation>1</operation> - <to>http://www.oxygenxml.com/</to> - <from>http://www.oxygenxml.com/</from> - <requestIdentifier>requestIdentifier0</requestIdentifier> - <resourceType>1</resourceType> - <primitiveContent> - <m2m:attributeList>attributeList0</m2m:attributeList> - <m2m:attributeList>attributeList1</m2m:attributeList> - </primitiveContent> - <role> - </role> - <originatingTimestamp>00000101T000000</originatingTimestamp> - <requestExpirationTimestamp>00000101T000000</requestExpirationTimestamp> - <resultExpirationTimestamp>00000101T000000</resultExpirationTimestamp> - <operationExecutionTime>00000101T000000</operationExecutionTime> - <responseType> - <responseTypeValue>1</responseTypeValue> - <notificationURI></notificationURI> - </responseType> - <resultPersistence>00000101T000000</resultPersistence> - <resultContent>0</resultContent> - <eventCategory>2</eventCategory> - <deliveryAggregation>false</deliveryAggregation> - <groupRequestIdentifier>groupRequestIdentifier0</groupRequestIdentifier> - <filterCriteria> - <createdBefore>00000101T000000</createdBefore> - <createdAfter>00000101T000000</createdAfter> - <modifiedSince>00000101T000000</modifiedSince> - <unmodifiedSince>00000101T000000</unmodifiedSince> - <stateTagSmaller>50</stateTagSmaller> - <stateTagBigger>50</stateTagBigger> - <expireBefore>00000101T000000</expireBefore> - <expireAfter>00000101T000000</expireAfter> - <labels>labels0</labels> - <resourceType>1</resourceType> - <sizeAbove>50</sizeAbove> - <sizeBelow>50</sizeBelow> - <contentType>contentType0</contentType> - <contentType>contentType1</contentType> - <attribute> - <name>creator</name> - <value>CSEID1* - </value> - </attribute> - <attribute> - <name>name1</name> - <value> - </value> - </attribute> - <filterUsage>1</filterUsage> - <limit>50</limit> - <semanticsFilter>semanticsFilter0</semanticsFilter> - <semanticsFilter>semanticsFilter1</semanticsFilter> - </filterCriteria> - <discoveryResultType>1</discoveryResultType> -</m2m:requestPrimitive> -- GitLab