From 05743b7dfcc254480fed468ca96da26dba64e5c8 Mon Sep 17 00:00:00 2001 From: PeterNiblett <pdn3270@gmail.com> Date: Sat, 24 Jan 2015 13:18:04 +0000 Subject: [PATCH] Further work on CommonTypes to align with TS-0004 changes --- CDT-commonTypes-v0_8_0.xsd | 437 ++++++++++++++++---------------- CDT-enumerationTypes-v0_8_0.xsd | 12 + CDT-schedule-v0_8_0.xsd | 17 +- CDT-subscription-v0_8_0.xsd | 2 +- 4 files changed, 241 insertions(+), 227 deletions(-) diff --git a/CDT-commonTypes-v0_8_0.xsd b/CDT-commonTypes-v0_8_0.xsd index 66b8208..402b7fd 100644 --- a/CDT-commonTypes-v0_8_0.xsd +++ b/CDT-commonTypes-v0_8_0.xsd @@ -27,7 +27,9 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:include schemaLocation="CDT-enumerationTypes-v0_8_0.xsd" /> + <!-- --> <!-- oneM2M Simple Types --> + <!-- --> <!-- TODO: Choose appropriate definitions for the id types (xs:token is placeholder for now) --> @@ -188,8 +190,6 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:restriction base="xs:unsignedInt" /> </xs:simpleType> - - <xs:simpleType name="listOfURIs"> <list itemType="xs:anyURI" /> </xs:simpleType> @@ -199,6 +199,229 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <!-- <xs:restriction base="xs:string" /> --> <!-- </xs:simpleType> --> + + + <!-- --> + <!-- oneM2M Complex Types --> + <!-- --> + + <xs:complexType name="deliveryMetaData"> + <xs:sequence> + <xs:sequence> + <xs:element name="tracingOption" type="xs:boolean" /> + <xs:element name="tracingInfo" type="m2m:listOfM2MID" /> + <!-- should tracing Info be list of anyURI? --> + </xs:sequence> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="aggregatedRequest"> + <xs:sequence> + <xs:element name="request" maxOccurs="unbounded"> + <xs:complexType> + <xs:sequence> + <xs:element name="operation" type="m2m:operation" /> + <xs:element name="to" type="xs:anyURI" /> + <xs:element name="from" type="m2m:ID" /> + <xs:element name="requestIdentifier" type="m2m:requestID" /> + <xs:element name="content" type="m2m:primitiveContent" minOccurs="0" /> + <xs:element name="metaInformation" type="m2m:metaInformation" minOccurs="0" /> + </xs:sequence> + </xs:complexType> + </xs:element> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="metaInformation"> + <xs:sequence> + <xs:element name="resourceType" type="m2m:resourceType" minOccurs="0" /> + <xs:element name="name" type="xs:string" minOccurs="0" /> + <xs:element name="originatingTimestamp" type="m2m:timestamp" minOccurs="0" /> + <xs:element name="requestMessageExpirationTimestamp" type="m2m:timestamp" minOccurs="0" /> + <xs:element name="resultExpirationTimestamp" type="m2m:timestamp" minOccurs="0" /> + <xs:element name="operationalExecutionTime" type="m2m:timestamp" minOccurs="0" /> + <xs:element name="responseMessageType" type="m2m:responseType" minOccurs="0" /> + <xs:element name="responsePersistence" type="m2m:timestamp" minOccurs="0" /> + <xs:element name="resultContent" type="m2m:resultContent" minOccurs="0" /> + <xs:element name="eventCategory" minOccurs="0"> + <xs:complexType> + <xs:sequence> + <xs:element name="eventCatType" type="m2m:eventCat" /> + <xs:element name="eventCatNo" type="xs:nonNegativeInteger" /> + </xs:sequence> + </xs:complexType> + </xs:element> + <xs:element name="deliveryAggregation" type="xs:boolean" minOccurs="0" /> + <xs:element name="groupRequestIdentifier" type="xs:string" minOccurs="0" /> + <xs:element name="filterCriteria" type="m2m:filterCriteria" minOccurs="0" /> + <xs:element name="discoveryResultType" type="m2m:discResType" minOccurs="0" /> + <xs:element name="role" type="xs:string" minOccurs="0" /> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="primitiveContent"> + <xs:sequence> + <xs:any namespace="http://www.onem2m.org/xml/protocols" processContents="lax" minOccurs="0" maxOccurs="unbounded" /> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="filterCriteria"> + <xs:sequence> + <xs:element name="createdBefore" type="m2m:timestamp" minOccurs="0" /> + <xs:element name="createdAfter" type="m2m:timestamp" minOccurs="0" /> + <xs:element name="modifiedSince" type="m2m:timestamp" minOccurs="0" /> + <xs:element name="unmodifiedSince" type="m2m:timestamp" minOccurs="0" /> + <xs:element name="stateTagSmaller" type="xs:positiveInteger" minOccurs="0" /> + <xs:element name="stateTagBigger" type="xs:nonNegativeInteger" minOccurs="0" /> + <xs:element name="expireBefore" type="m2m:timestamp" minOccurs="0" /> + <xs:element name="expireAfter" type="m2m:timestamp" minOccurs="0" /> + <xs:element name="labels" type="m2m:labels" minOccurs="0" /> + <xs:element name="resourceType" type="m2m:resourceType" minOccurs="0" /> + <xs:element name="sizeAbove" type="xs:nonNegativeInteger" minOccurs="0" /> + <xs:element name="sizeBelow" type="xs:positiveInteger" minOccurs="0" /> + <xs:element name="contentType" type="xs:string" minOccurs="0" maxOccurs="unbounded" /> + <xs:element name="attribute" type="m2m:attribute" minOccurs="0" maxOccurs="unbounded" /> + <xs:element name="filterUsage" type="m2m:filterUsage" minOccurs="0" /> + <xs:element name="limit" type="xs:nonNegativeInteger" minOccurs="0" /> + </xs:sequence> + </xs:complexType> + + + <xs:complexType name="attribute"> + <xs:sequence> + <xs:element name="name" type="xs:NCName" /> + <xs:element name="value" type="xs:anyType" /> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="attributeList"> + <xs:sequence> + <xs:element name="attribute" type="m2m:attribute" maxOccurs="unbounded" /> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="scheduleEntries"> + <xs:sequence> + <xs:element name="scheduleEntry" type="m2m:scheduleEntry" maxOccurs="unbounded" /> + </xs:sequence> + </xs:complexType> + + <!-- "actionStatus" is used across mgmtObj resources --> + <xs:complexType name="actionStatus"> + <xs:sequence> + <xs:element name="action" type="xs:anyURI" minOccurs="0" /> + <xs:element name="status" type="m2m:status" minOccurs="0" /> + </xs:sequence> + </xs:complexType> + + + <!-- Todo - this looks wrong. Are there supposed to be separate type and value elements ? --> + <xs:complexType name="anyArgType"> + <xs:sequence> + <xs:element name="name" type="xs:NCName" /> + <xs:element name="type" type="xs:anyType" /> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="resetArgsType"> + <xs:sequence> + <xs:element name="anyArg" type="m2m:anyArgType" minOccurs="0" maxOccurs="unbounded" /> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="rebootArgsType"> + <xs:sequence> + <xs:element name="anyArg" type="m2m:anyArgType" minOccurs="0" maxOccurs="unbounded" /> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="uploadArgsType"> + <xs:sequence> + <xs:element name="fileType" type="xs:string" /> + <xs:element name="uRL" type="xs:anyURI" /> + <xs:element name="username" type="xs:string" /> + <xs:element name="password" type="xs:string" /> + <xs:element name="anyArg" type="m2m:anyArgType" minOccurs="0" maxOccurs="unbounded" /> + </xs:sequence> + </xs:complexType> + + + <xs:complexType name="downloadArgsType"> + <xs:sequence> + <xs:element name="fileType" type="xs:string" /> + <xs:element name="URL" type="xs:anyURI" /> + <xs:element name="username" type="xs:string" /> + <xs:element name="password" type="xs:string" /> + <xs:element name="filesize" type="xs:string" /> + <xs:element name="targetFile" type="xs:string" /> + <xs:element name="delaySeconds" type="xs:int" /> + <xs:element name="successURL" type="xs:anyURI" /> + <xs:element name="startTime" type="xs:dateTime" /> + <xs:element name="completeTime" type="xs:dateTime" /> + <xs:element name="anyArg" type="m2m:anyArgType" minOccurs="0" maxOccurs="unbounded" /> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="anyArgsListType"> + <xs:sequence> + <xs:element name="anyArg" type="m2m:anyArgType" minOccurs="0" maxOccurs="unbounded" /> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="execReqArgsListType"> + <xs:choice> + <xs:element name="reset" type="m2m:resetArgsType" /> + <xs:element name="reboot" type="m2m:rebootArgsType" /> + <xs:element name="upload" type="m2m:uploadArgsType" /> + <xs:element name="download" type="m2m:downloadArgsType" /> + <xs:element name="anyArg" type="m2m:anyArgsListType" minOccurs="0" /> + </xs:choice> + </xs:complexType> + + <xs:complexType name="mgmtLinkRef"> + <xs:simpleContent> + <xs:extension base="xs:anyURI"> + <xs:attribute name="name" type="xs:string" use="required" /> + <xs:attribute name="type" type="m2m:mgmtDefinition" use="required" /> + </xs:extension> + </xs:simpleContent> + </xs:complexType> + + <xs:complexType name="resourceWrapper"> + <xs:complexContent> + <xs:extension base="m2m:resource"> + <xs:attribute name="URI" type="xs:anyURI" use="required" /> + </xs:extension> + </xs:complexContent> + </xs:complexType> + + + <xs:complexType name="childResourceRef"> + <xs:simpleContent> + <xs:extension base="xs:anyURI"> + <xs:attribute name="resourceName" type="xs:string" use="required" /> + <xs:attribute name="type" type="m2m:resourceType" use="required" /> + </xs:extension> + </xs:simpleContent> + </xs:complexType> + + + + <!-- TODO: is this a sensible order? --> + <xs:complexType name="operationResult"> + <xs:sequence> + <xs:element name="content" type="m2m:primitiveContent" minOccurs="0" /> + <xs:element name="eventCategory" type="m2m:eventCat" minOccurs="0" /> + <xs:element name="from" type="m2m:ID" minOccurs="0" /> + <xs:element name="originatingTimestamp" type="m2m:timestamp" minOccurs="0" /> + <xs:element name="requestIdentifier" type="m2m:requestID" /> + <xs:element name="resultExpirationTimestamp" type="m2m:timestamp" minOccurs="0" /> + <xs:element name="to" type="xs:anyURI" minOccurs="0" /> + <xs:element name="responseStatusCode" type="m2m:responseStatusCode" /> + </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 defined below --> @@ -307,214 +530,4 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR </xs:complexContent> </xs:complexType> - <xs:complexType name="childResourceRef"> - <xs:simpleContent> - <xs:extension base="xs:anyURI"> - <xs:attribute name="name" type="xs:string" use="required" /> - <xs:attribute name="type" type="m2m:resourceType" use="required" /> - </xs:extension> - </xs:simpleContent> - </xs:complexType> - - <xs:complexType name="mgmtLinkRef"> - <xs:simpleContent> - <xs:extension base="xs:anyURI"> - <xs:attribute name="name" type="xs:string" use="required" /> - <xs:attribute name="type" type="m2m:mgmtDefinition" use="required" /> - </xs:extension> - </xs:simpleContent> - </xs:complexType> - - - <xs:complexType name="anyArgType"> - <xs:sequence> - <xs:element name="name" type="xs:string" /> - <xs:element name="type" type="xs:string" /> - <xs:element name="value" type="xs:anyType" /> - </xs:sequence> - </xs:complexType> - - - <xs:complexType name="downloadArgsType"> - <xs:sequence> - <xs:element name="FileType" type="xs:string" /> - <xs:element name="URL" type="xs:anyURI" /> - <xs:element name="Username" type="xs:string" /> - <xs:element name="Password" type="xs:string" /> - <xs:element name="Filesize" type="xs:string" /> - <xs:element name="TargetFile" type="xs:string" /> - <xs:element name="DelaySeconds" type="xs:int" /> - <xs:element name="SuccessURL" type="xs:anyURI" /> - <xs:element name="StartTime" type="xs:dateTime" /> - <xs:element name="StartTime" type="xs:dateTime" /> - <xs:element name="AnyArg" type="m2m:anyArgsListType" minOccurs="0" /> - </xs:sequence> - </xs:complexType> - - <xs:complexType name="uploadArgsType"> - <xs:sequence> - <xs:element name="FileType" type="xs:string" /> - <xs:element name="URL" type="xs:anyURI" /> - <xs:element name="Username" type="xs:string" /> - <xs:element name="Password" type="xs:string" /> - <xs:element name="AnyArg" type="m2m:anyArgsListType" minOccurs="0" /> - </xs:sequence> - </xs:complexType> - - <xs:complexType name="rebootArgsType"> - <xs:sequence> - <xs:element name="anyArg" type="m2m:anyArgType" minOccurs="0" maxOccurs="unbounded" /> - </xs:sequence> - </xs:complexType> - - <xs:complexType name="resetArgsType"> - <xs:sequence> - <xs:element name="anyArg" type="m2m:anyArgType" minOccurs="0" maxOccurs="unbounded" /> - </xs:sequence> - </xs:complexType> - - <xs:complexType name="anyArgsListType"> - <xs:sequence> - <xs:element name="anyArg" type="m2m:anyArgType" minOccurs="0" maxOccurs="unbounded" /> - </xs:sequence> - </xs:complexType> - - <xs:complexType name="execReqArgsType"> - <xs:choice> - <xs:element name="Download" type="m2m:downloadArgsType" /> - <xs:element name="Upload" type="m2m:uploadArgsType" /> - <xs:element name="Reboot" type="m2m:rebootArgsType" /> - <xs:element name="Reset" type="m2m:resetArgsType" /> - <xs:element name="AnyArg" type="m2m:anyArgsListType" minOccurs="0" /> - </xs:choice> - </xs:complexType> - - <xs:complexType name="execReqArgsListType"> - <xs:sequence> - <xs:element name="execReqArg" type="m2m:execReqArgsType" minOccurs="0" maxOccurs="unbounded" /> - </xs:sequence> - </xs:complexType> - - <xs:complexType name="deliveryMetaData"> - <xs:sequence> - - </xs:sequence> - </xs:complexType> - - <xs:complexType name="primitiveContent"> - <xs:sequence> - <xs:any namespace="http://www.onem2m.org/xml/protocols" processContents="lax" minOccurs="0" maxOccurs="unbounded" /> - </xs:sequence> - </xs:complexType> - - <!-- TODO: reconcile this with PRO-2014-0562-Implementation_of_Filter_Criteria_as_concept --> - <xs:complexType name="filterCriteria"> - <xs:sequence> - <xs:element name="createdBefore" type="m2m:timestamp" minOccurs="0" /> - <xs:element name="createdAfter" type="m2m:timestamp" minOccurs="0" /> - <xs:element name="modifiedSince" type="m2m:timestamp" minOccurs="0" /> - <xs:element name="unmodifiedSince" type="m2m:timestamp" minOccurs="0" /> - <xs:element name="stateTagSmaller" type="xs:positiveInteger" minOccurs="0" /> - <xs:element name="stateTagBigger" type="xs:nonNegativeInteger" minOccurs="0" /> - <xs:element name="expireBefore" type="m2m:timestamp" minOccurs="0" /> - <xs:element name="expireAfter" type="m2m:timestamp" minOccurs="0" /> - <xs:element name="labels" type="m2m:labels" minOccurs="0" /> - <xs:element name="resourceType" type="m2m:resourceType" minOccurs="0" /> - <xs:element name="sizeAbove" type="xs:nonNegativeInteger" minOccurs="0" /> - <xs:element name="sizeBelow" type="xs:positiveInteger" minOccurs="0" /> - <xs:element name="contentType" type="xs:string" minOccurs="0" maxOccurs="unbounded" /> - <xs:element name="attribute" type="m2m:attributeTest" minOccurs="0" maxOccurs="unbounded" /> - <xs:element name="filterUsage" type="m2m:filterUsage" minOccurs="0" /> - <xs:element name="limit" type="xs:nonNegativeInteger" minOccurs="0" /> - </xs:sequence> - - </xs:complexType> - <xs:complexType name="attributeTest"> - <xs:sequence> - <xs:element name="name" type="xs:NCName" /> - <xs:element name="value" type="xs:anyType" /> - </xs:sequence> - </xs:complexType> - - <!-- TODO: consider moving this to the Enumerations file --> - <xs:simpleType name="filterUsage"> - <xs:annotation> - <xs:documentation></xs:documentation> - </xs:annotation> - <xs:restriction base="xs:integer"> - <!-- Discovery Criteria --> - <xs:enumeration value="1" /> - <!-- Event Notification Criteria --> - <xs:enumeration value="2" /> - </xs:restriction> - </xs:simpleType> - - <xs:complexType name="metaInformation"> - <xs:sequence> - <xs:element name="resourceType" type="m2m:resourceType" minOccurs="0" /> - <xs:element name="name" type="xs:string" minOccurs="0" /> - <xs:element name="originatingTimestamp" type="m2m:timestamp" minOccurs="0" /> - <xs:element name="requestMessageExpirationTimestamp" type="m2m:timestamp" minOccurs="0" /> - <xs:element name="resultExpirationTimestamp" type="m2m:timestamp" minOccurs="0" /> - <xs:element name="operationalExecutionTime" type="m2m:timestamp" minOccurs="0" /> - <xs:element name="responseMessageType" type="m2m:responseType" minOccurs="0" /> - <xs:element name="responsePersistence" type="m2m:timestamp" minOccurs="0" /> - <xs:element name="resultContent" type="m2m:resultContent" minOccurs="0" /> - <xs:element name="eventCategory" minOccurs="0"> - <xs:complexType> - <xs:sequence> - <xs:element name="eventCatType" type="m2m:eventCat" /> - <xs:element name="eventCatNo" type="xs:nonNegativeInteger" /> - </xs:sequence> - </xs:complexType> - </xs:element> - <xs:element name="deliveryAggregation" type="xs:boolean" minOccurs="0" /> - <xs:element name="groupRequestIdentifier" type="xs:string" minOccurs="0" /> - <xs:element name="filterCriteria" type="m2m:filterCriteria" minOccurs="0" /> - <xs:element name="discoveryResultType" type="m2m:discResType" minOccurs="0" /> - <xs:element name="role" type="xs:string" minOccurs="0" /> - </xs:sequence> - </xs:complexType> - - <xs:complexType name="aggregatedRequest"> - <xs:sequence> - <xs:element name="request" maxOccurs="unbounded"> - <xs:complexType> - <xs:sequence> - <xs:element name="operation" type="m2m:operation" /> - <xs:element name="to" type="xs:anyURI" /> - <xs:element name="from" type="m2m:ID" /> - <xs:element name="requestIdentifier" type="m2m:requestID" /> - <xs:element name="content" type="m2m:primitiveContent" minOccurs="0" /> - <xs:element name="metaInformation" type="m2m:metaInformation" minOccurs="0" /> - </xs:sequence> - </xs:complexType> - </xs:element> - </xs:sequence> - </xs:complexType> - - <!-- TODO: is this a sensible order? --> - <xs:complexType name="operationResult"> - <xs:sequence> - <xs:element name="content" type="m2m:primitiveContent" minOccurs="0" /> - <xs:element name="eventCategory" type="m2m:eventCat" minOccurs="0" /> - <xs:element name="from" type="m2m:ID" minOccurs="0" /> - <xs:element name="originatingTimestamp" type="m2m:timestamp" minOccurs="0" /> - <xs:element name="requestIdentifier" type="m2m:requestID" /> - <xs:element name="resultExpirationTimestamp" type="m2m:timestamp" minOccurs="0" /> - <xs:element name="to" type="xs:anyURI" minOccurs="0" /> - <xs:element name="responseStatusCode" type="m2m:responseStatusCode" /> - </xs:sequence> - </xs:complexType> - - - - <!-- "actionStatus" is used across mgmtObj resources --> - <xs:complexType name="actionStatus"> - <xs:sequence> - <xs:element name="action" type="xs:anyURI" minOccurs="0" /> - <xs:element name="status" type="m2m:status" minOccurs="0" /> - </xs:sequence> - </xs:complexType> - </xs:schema> diff --git a/CDT-enumerationTypes-v0_8_0.xsd b/CDT-enumerationTypes-v0_8_0.xsd index c2b8ab9..1f7c3bb 100644 --- a/CDT-enumerationTypes-v0_8_0.xsd +++ b/CDT-enumerationTypes-v0_8_0.xsd @@ -693,5 +693,17 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:enumeration value="08-001" /> </xs:restriction> </xs:simpleType> + + <xs:simpleType name="filterUsage"> + <xs:annotation> + <xs:documentation>Used in filterCriteria</xs:documentation> + </xs:annotation> + <xs:restriction base="xs:integer"> + <!-- Discovery Criteria --> + <xs:enumeration value="1" /> + <!-- Event Notification Criteria --> + <xs:enumeration value="2" /> + </xs:restriction> + </xs:simpleType> </xs:schema> diff --git a/CDT-schedule-v0_8_0.xsd b/CDT-schedule-v0_8_0.xsd index 7dbe52e..2f02819 100644 --- a/CDT-schedule-v0_8_0.xsd +++ b/CDT-schedule-v0_8_0.xsd @@ -36,13 +36,8 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:extension base="m2m:announceableSubordinateResource"> <xs:sequence> <!-- Resource Specific Attributes --> - <xs:element name="scheduleElement"> - <xs:complexType> - <xs:sequence> - <xs:element name="scheduleEntry" type="m2m:scheduleEntry" maxOccurs="unbounded" /> - </xs:sequence> - </xs:complexType> - </xs:element> + <xs:element name="scheduleElement" type="m2m:scheduleEntries" minOccurs="0" /> + <!-- Child Resources --> <xs:choice minOccurs="0" maxOccurs="1"> <xs:element name="childResource" type="m2m:childResourceRef" minOccurs="1" maxOccurs="unbounded" /> @@ -62,13 +57,7 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:extension base="m2m:announcedSubordinateResource"> <xs:sequence> <!-- Resource Specific Attributes --> - <xs:element name="scheduleElement" minOccurs="0"> - <xs:complexType> - <xs:sequence> - <xs:element name="scheduleEntry" type="m2m:scheduleEntry" maxOccurs="unbounded" /> - </xs:sequence> - </xs:complexType> - </xs:element> + <xs:element name="scheduleElement" type="m2m:scheduleEntries" minOccurs="0" /> </xs:sequence> </xs:extension> </xs:complexContent> diff --git a/CDT-subscription-v0_8_0.xsd b/CDT-subscription-v0_8_0.xsd index 84d1a38..1f852be 100644 --- a/CDT-subscription-v0_8_0.xsd +++ b/CDT-subscription-v0_8_0.xsd @@ -78,7 +78,7 @@ oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PR <xs:element name="sizeBelow" type="xs:positiveInteger" minOccurs="0" /> <xs:element name="resourceStatus" type="m2m:resourceStatus" minOccurs="0" maxOccurs="unbounded" /> <xs:element name="operationMonitor" type="m2m:operation" minOccurs="0" maxOccurs="unbounded" /> - <xs:element name="attribute" type="m2m:attributeTest" minOccurs="0" maxOccurs="unbounded" /> + <xs:element name="attribute" type="m2m:attribute" minOccurs="0" maxOccurs="unbounded" /> </xs:sequence> </xs:complexType> -- GitLab