diff --git a/CDT-commonTypes-v0_8_0.xsd b/CDT-commonTypes-v0_8_0.xsd new file mode 100644 index 0000000000000000000000000000000000000000..b554bd7656d78a59ec4df5ca79f02b757306e7fb --- /dev/null +++ b/CDT-commonTypes-v0_8_0.xsd @@ -0,0 +1,287 @@ +<?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. +© 2014, 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 xmlns="http://www.w3.org/2001/XMLSchema" 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-enumerationTypes-v0_8_0.xsd" /> + + <xs:simpleType name="extendedCrontab"> + <xs:restriction base="xs:string"> + <xs:pattern + value="([*\d/,-]+\s+){3}[*\d/#L,-]+\s+(JAN|FEB|MAR|APR|MAY|JUN|JUL|AUG|SEP|OCT|NOV|DEC|[*\d/,-])+\s+(SUN|MON|TUE|WED|THU|FRI|SAT|[*\dL#/,-])+\s+[*\d/,-]+" /> + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="eCrontabList"> + <xs:list itemType="m2m:extendedCrontab" /> + </xs:simpleType> + + <xs:simpleType name="ID"> + <xs:restriction base="xs:token"> + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="nhURI"> + <xs:restriction base="xs:anyURI" /> + </xs:simpleType> + + <xs:complexType name="acpType"> + <xs:sequence> + <xs:element ref="m2m:accessControlPolicyID" minOccurs="0" maxOccurs="unbounded" /> + </xs:sequence> + </xs:complexType> + + <xs:element name="accessControlPolicyID" type="xs:anyURI" /> + + <xs:simpleType name="labels"> + <xs:list itemType="xs:string" /> + </xs:simpleType> + + <xs:simpleType name="stringList"> + <xs:list itemType="xs:string" /> + </xs:simpleType> + + <xs:simpleType name="pOAList"> + <xs:list itemType="xs:string" /> + </xs:simpleType> + + <xs:simpleType name="triggerRecipientId"> + <xs:restriction base="xs:unsignedInt" /> + </xs:simpleType> + + <xs:complexType name="externalId"> + <xs:simpleContent> + <xs:extension base="xs:anyURI"> + </xs:extension> + </xs:simpleContent> + </xs:complexType> + + <xs:complexType name="AnyURIList"> + <xs:sequence> + <xs:element name="reference" type="xs:anyURI" minOccurs="0" maxOccurs="unbounded" /> + </xs:sequence> + </xs:complexType> + + <!-- <xs:simpleType name="attribute"> --> + <!-- <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 + defined below --> + + <xs:complexType name="resource"> + <xs:sequence> + <xs:element name="resourceType" type="m2m:resourceType" /> + <xs:element name="resourceID" type="m2m:ID" /> + <xs:element name="parentID" type="m2m:nhURI" /> + <xs:element name="creationTime" type="xs:dateTime" /> + <xs:element name="lastModifiedTime" type="xs:dateTime" /> + <xs:element name="labels" type="m2m:labels" minOccurs="0" /> + </xs:sequence> + <xs:attribute name="name" type="xs:token" use="required" /> + </xs:complexType> + + <xs:complexType name="regularResource"> + <xs:complexContent> + <xs:extension base="m2m:resource"> + <xs:sequence> + <xs:element name="accessControlPolicyIDs" type="m2m:acpType" minOccurs="0" /> + <xs:element name="expirationTime" type="xs:dateTime" /> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + + <xs:complexType name="announceableResource"> + <xs:complexContent> + <xs:extension base="m2m:regularResource"> + <xs:sequence> + <xs:element name="announceTo" type="m2m:AnyURIList" minOccurs="0" /> + <xs:element name="announcedAttribute" minOccurs="0"> + <xs:simpleType> + <xs:list itemType="xs:token" /> + </xs:simpleType> + </xs:element> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + + <xs:complexType name="announcedResource"> + <xs:complexContent> + <!-- AccessControlPolicyIDs is mandatory for announced resources but not for the original ones --> + <xs:extension base="m2m:resource"> + <xs:sequence> + <xs:element name="accessControlPolicyIDs" type="m2m:acpType" /> + <xs:element name="expirationTime" type="xs:dateTime" /> + <xs:element name="link" type="xs:anyURI" /> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + + <xs:complexType name="announceableSubordinateResource"> + <xs:complexContent> + <xs:extension base="m2m:resource"> + <xs:sequence> + <xs:element name="expirationTime" type="xs:dateTime" minOccurs="0" /> + <xs:element name="announceTo" type="m2m:AnyURIList" minOccurs="0" /> + <xs:element name="announcedAttribute" minOccurs="0"> + <xs:simpleType> + <xs:list itemType="xs:token" /> + </xs:simpleType> + </xs:element> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + + <xs:complexType name="announcedSubordinateResource"> + <xs:complexContent> + <xs:extension base="m2m:resource"> + <xs:sequence> + <xs:element name="expirationTime" type="xs:dateTime" minOccurs="0" /> + <xs:element name="link" type="xs:anyURI" /> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + + <xs:complexType name="mgmtResource"> + <xs:complexContent> + <xs:extension base="m2m:announceableResource"> + <xs:sequence> + <xs:element name="mgmtDefinition" type="m2m:mgmtDefinition" /> + <xs:element name="objectIDs" type="m2m:AnyURIList" minOccurs="0" /> + <xs:element name="objectPaths" type="m2m:AnyURIList" minOccurs="0" /> + <xs:element name="description" type="xs:string" minOccurs="0" /> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + + <xs:complexType name="announcedMgmtResource"> + <xs:complexContent> + <xs:extension base="m2m:announcedResource"> + <xs:sequence> + <xs:element name="mgmtDefinition" type="m2m:mgmtDefinition" /> + <xs:element name="objectIDs" type="m2m:AnyURIList" minOccurs="0" /> + <xs:element name="objectPaths" type="m2m:AnyURIList" minOccurs="0" /> + <xs:element name="description" type="xs:string" minOccurs="0" /> + </xs:sequence> + </xs:extension> + </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:schema> diff --git a/CDT-container-v0_8_0.xsd b/CDT-container-v0_8_0.xsd new file mode 100644 index 0000000000000000000000000000000000000000..65bffe42be86d5933aa2a1979005e01bd9d7cf2a --- /dev/null +++ b/CDT-container-v0_8_0.xsd @@ -0,0 +1,94 @@ +<?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. © 2014, 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-v0_8_0.xsd" /> + <xs:include schemaLocation="CDT-contentInstance-v0_8_0.xsd" /> + <xs:include schemaLocation="CDT-subscription-v0_8_0.xsd" /> + + <xs:element name="container"> + <xs:complexType> + <xs:complexContent> + <xs:extension base="m2m:announceableResource"> + <xs:sequence> + <!-- Resource Specific Attributes --> + <xs:element name="stateTag" type="xs:nonNegativeInteger" /> + <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" /> + + <!-- 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:contentInstance" /> + <xs:element ref="m2m:container" /> + <xs:element ref="m2m:subscription" /> + </xs:choice> + </xs:choice> + + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + </xs:element> + + <xs:element name="containerAnnc"> + <xs:complexType> + <xs:complexContent> + <xs:extension base="m2m:announcedResource"> + <xs:sequence> + <!-- Resource Specific Attributes --> + <xs:element name="stateTag" type="xs:nonNegativeInteger" /> + <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="latest" type="xs:string" minOccurs="0" /> + <xs:element name="locationID" type="xs:anyURI" 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:contentInstance" /> + <xs:element ref="m2m:container" /> + <xs:element ref="m2m:subscription" /> + <xs:element ref="m2m:containerAnnc" /> + <!-- should m2m:contentInstanceAnnc be allowed as well? --> + </xs:choice> + </xs:choice> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + </xs:element> +</xs:schema> \ No newline at end of file diff --git a/CDT-contentInstance-v0_8_0.xsd b/CDT-contentInstance-v0_8_0.xsd new file mode 100644 index 0000000000000000000000000000000000000000..4de5118556782624268937509b729ab8223eaf3f --- /dev/null +++ b/CDT-contentInstance-v0_8_0.xsd @@ -0,0 +1,69 @@ +<?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. +© 2014, 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 xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.onem2m.org/xml/protocols" + xmlns:m2m="http://www.onem2m.org/xml/protocols" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + elementFormDefault="unqualified" xmlns:xs="http://www.w3.org/2001/XMLSchema"> + + <xs:include schemaLocation="CDT-commonTypes-v0_8_0.xsd" /> + + + + <xs:element name="contentInstance"> + <xs:complexType> + <xs:complexContent> + <xs:extension base="m2m:announceableSubordinateResource"> + <xs:sequence> + <!-- Resource Specific Attributes --> + <xs:element name="stateTag" type="xs:nonNegativeInteger" /> + <xs:element name="typeOfContent" type="xs:string" minOccurs="0" /> + <xs:element name="contentSize" type="xs:nonNegativeInteger" /> + <xs:element name="ontologyRef" type="xs:anyURI" minOccurs="0" /> + <xs:element name="content" type="xs:anyType" /> + <xs:element name="encoding" type="m2m:encodingType" minOccurs="0" /> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + </xs:element> + + <xs:element name="contentInstanceAnnc"> + <xs:complexType> + <xs:complexContent> + <xs:extension base="m2m:announcedSubordinateResource"> + <xs:sequence> + <!-- Resource Specific Attributes --> + <xs:element name="stateTag" type="xs:nonNegativeInteger" /> + <xs:element name="typeOfContent" type="xs:string" minOccurs="0" /> + <xs:element name="contentSize" type="xs:nonNegativeInteger" /> + <xs:element name="ontologyRef" type="xs:anyURI" minOccurs="0" /> + <xs:element name="content" type="xs:anyType" /> + <xs:element name="encoding" type="m2m:encodingType" minOccurs="0" /> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + </xs:element> +</xs:schema> \ No newline at end of file diff --git a/CDT-enumerationTypes-v0_8_0.xsd b/CDT-enumerationTypes-v0_8_0.xsd new file mode 100644 index 0000000000000000000000000000000000000000..6c9c9ee72934202061eda5ae1e91612366ce8ba6 --- /dev/null +++ b/CDT-enumerationTypes-v0_8_0.xsd @@ -0,0 +1,731 @@ +<?xml version="1.0" ?> +<!-- +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. +© 2014, 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 xmlns="http://www.w3.org/2001/XMLSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:m2m="http://www.onem2m.org/xml/protocols" + targetNamespace="http://www.onem2m.org/xml/protocols" elementFormDefault="unqualified"> + + <xs:simpleType name="resourceType"> + <xs:annotation> + <xs:documentation></xs:documentation> + </xs:annotation> + <xs:restriction base="xs:integer"> + <!-- accessControlPolicy --> + <xs:enumeration value="1" /> + <!-- AE --> + <xs:enumeration value="2" /> + <!-- container --> + <xs:enumeration value="3" /> + <!-- contentInstance --> + <xs:enumeration value="4" /> + <!-- CSEBase --> + <xs:enumeration value="5" /> + <!-- delivery --> + <xs:enumeration value="6" /> + <!-- eventConfig --> + <xs:enumeration value="7" /> + <!-- execInstance --> + <xs:enumeration value="8" /> + <!-- group --> + <xs:enumeration value="9" /> + <!-- locationPolicy --> + <xs:enumeration value="10" /> + <!-- m2mServiceSubscriptionProfile --> + <xs:enumeration value="11" /> + <!-- mgmtCmd --> + <xs:enumeration value="12" /> + <!-- mgmtObj --> + <xs:enumeration value="13" /> + <!-- node --> + <xs:enumeration value="14" /> + <!-- pollingChannel --> + <xs:enumeration value="15" /> + <!-- remoteCSE --> + <xs:enumeration value="16" /> + <!-- request --> + <xs:enumeration value="17" /> + <!-- schedule --> + <xs:enumeration value="18" /> + <!-- serviceSubscribedNode --> + <xs:enumeration value="19" /> + <!-- statsCollect --> + <xs:enumeration value="20" /> + <!-- statsConfig --> + <xs:enumeration value="21" /> + <!-- subscription --> + <xs:enumeration value="22" /> + <!-- accessControlPolicyAnnc --> + <xs:enumeration value="10001" /> + <!-- AEAnnc --> + <xs:enumeration value="10002" /> + <!-- containerAnnc --> + <xs:enumeration value="10003" /> + <!-- contentInstanceAnnc --> + <xs:enumeration value="10004" /> + <!-- groupAnnc --> + <xs:enumeration value="10009" /> + <!-- locationPolicyAnnc --> + <xs:enumeration value="10010" /> + <!-- mgmtObjAnnc --> + <xs:enumeration value="10013" /> + <!-- nodeAnnc --> + <xs:enumeration value="10014" /> + <!-- remoteCSEAnnc --> + <xs:enumeration value="10016" /> + <!-- scheduleAnnc --> + <xs:enumeration value="10018" /> + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="cseTypeID"> + <xs:annotation> + <xs:documentation>Used for cseType attribute of <CSEBase> resource.</xs:documentation> + </xs:annotation> + <xs:restriction base="xs:integer"> + <!-- IN-CSE --> + <xs:enumeration value="1" /> + <!-- MN-CSE --> + <xs:enumeration value="2" /> + <!-- ASN-CSE --> + <xs:enumeration value="3" /> + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="locationSource"> + <xs:annotation> + <xs:documentation>Used for locationSource attribute of <locationPolicy> resource.</xs:documentation> + </xs:annotation> + <xs:restriction base="xs:integer"> + <!-- Network-based --> + <xs:enumeration value="1" /> + <!-- Device-based --> + <xs:enumeration value="2" /> + <!-- Sharing-based --> + <xs:enumeration value="3" /> + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="eventCatType"> + <xs:annotation> + <xs:documentation>Used for ec parameter in request and eventCat attribute of <delivery> resource and cmdh + policy resource types.</xs:documentation> + </xs:annotation> + <xs:restriction base="xs:integer"> + <!-- Default --> + <xs:enumeration value="1" /> + <!-- immediate --> + <xs:enumeration value="2" /> + <!-- bestEffort --> + <xs:enumeration value="3" /> + <!-- Latest --> + <xs:enumeration value="4" /> + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="operation"> + <xs:annotation> + <xs:documentation>Used for rt parameter in request and operation attribute in <request> resource + </xs:documentation> + </xs:annotation> + <xs:restriction base="xs:integer"> + <!-- Create --> + <xs:enumeration value="1" /> + <!-- Retrieve --> + <xs:enumeration value="2" /> + <!-- Update --> + <xs:enumeration value="3" /> + <!-- Delete --> + <xs:enumeration value="4" /> + <!-- Notify --> + <xs:enumeration value="5" /> + </xs:restriction> + </xs:simpleType> + + <!-- <xs:simpleType name="accessControlOperation"> --> + <!-- <xs:annotation> --> + <!-- <xs:documentation>Shall be considered for access control policy check by the CSE</xs:documentation> --> + <!-- </xs:annotation> --> + <!-- <xs:restriction base="xs:integer"> --> + <!-- Create --> + <!-- <xs:enumeration value="1" /> --> + <!-- Retrieve --> + <!-- <xs:enumeration value="2" /> --> + <!-- Update --> + <!-- <xs:enumeration value="3" /> --> + <!-- Delete --> + <!-- <xs:enumeration value="4" /> --> + <!-- Notify --> + <!-- <xs:enumeration value="5" /> --> + <!-- Discover --> + <!-- <xs:enumeration value="6" /> --> + <!-- </xs:restriction> --> + <!-- </xs:simpleType> --> + + <!-- <xs:simpleType name="countryCode"> --> + <!-- <xs:annotation> --> + <!-- <xs:documentation>2-character country code </xs:documentation> --> + <!-- </xs:annotation> --> + <!-- <xs:restriction base="xs:integer"> --> + <!-- India --> + <!-- <xs:enumeration value="91" /> --> + <!-- United States of America --> + <!-- <xs:enumeration value="01" /> --> + <!-- </xs:restriction> --> + <!-- </xs:simpleType> --> + + + <xs:simpleType name="responseType"> + <xs:annotation> + <xs:documentation>Used for rt parameter in request and operation attribute in <request> resource + </xs:documentation> + </xs:annotation> + <xs:restriction base="xs:integer"> + <!-- nonBlockingRequestSynch --> + <xs:enumeration value="1" /> + <!-- nonBlockingRequestAsynch --> + <xs:enumeration value="2" /> + <!-- blockingRequest --> + <xs:enumeration value="3" /> + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="resultContent"> + <xs:annotation> + <xs:documentation>Used for rc parameter in request.</xs:documentation> + </xs:annotation> + <xs:restriction base="xs:integer"> + <!-- Nothing --> + <xs:enumeration value="0" /> + <!-- Attributes --> + <xs:enumeration value="1" /> + <!-- Child Resources --> + <xs:enumeration value="2" /> + <!-- Attributes + Child Resources --> + <xs:enumeration value="3" /> + <!-- Original Resources --> + <xs:enumeration value="4" /> + <!-- TODO: add child resource reference options (needs CR to TS0004) --> + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="discResType"> + <xs:annotation> + <xs:documentation></xs:documentation> + </xs:annotation> + <xs:restriction base="xs:integer"> + <!-- hierarchical --> + <xs:enumeration value="1" /> + <!-- Non-hierarchical --> + <xs:enumeration value="2" /> + <!-- cseID+resourceID --> + <xs:enumeration value="3" /> + </xs:restriction> + </xs:simpleType> + + <!-- TODO: to be defined (needs CR) --> + <xs:simpleType name="statusCode"> + <xs:annotation> + <xs:documentation></xs:documentation> + </xs:annotation> + <xs:restriction base="xs:integer"> + <xs:enumeration value="22" /> + </xs:restriction> + </xs:simpleType> + + <!-- TODO: to be defined (needs CR) --> + <xs:simpleType name="requestStatus"> + <xs:annotation> + <xs:documentation></xs:documentation> + </xs:annotation> + <xs:restriction base="xs:integer"> + <xs:enumeration value="22" /> + </xs:restriction> + </xs:simpleType> + + <!-- TODO: Does this need to be different from m2m:resourceType? Can we remove it? (needs CR) --> + <xs:simpleType name="memberType"> + <xs:annotation> + <xs:documentation>Used for memberType attribute in <member> resource.</xs:documentation> + </xs:annotation> + <xs:restriction base="xs:integer"> + <!-- accessControlPolicy --> + <xs:enumeration value="1" /> + <!-- AE --> + <xs:enumeration value="2" /> + <!-- container --> + <xs:enumeration value="3" /> + <!-- contentInstance --> + <xs:enumeration value="4" /> + <!-- CSEBase --> + <xs:enumeration value="5" /> + <!-- delivery --> + <xs:enumeration value="6" /> + <!-- eventConfig --> + <xs:enumeration value="7" /> + <!-- execInstance --> + <xs:enumeration value="8" /> + <!-- fanOutPoint --> + <xs:enumeration value="9" /> + <!-- Group --> + <xs:enumeration value="10" /> + <!-- localPolicy --> <!-- TODO: shouldn't this be locationPolicy ? --> + <xs:enumeration value="11" /> + <!-- m2mServiceSubscription --> + <xs:enumeration value="12" /> + <!-- mgmtCmd --> + <xs:enumeration value="13" /> + <!-- mgmtObj --> + <xs:enumeration value="14" /> + <!-- Node --> + <xs:enumeration value="15" /> + <!-- nodeInfo --> + <xs:enumeration value="16" /> + <!-- pollingChannel --> + <xs:enumeration value="17" /> + <!-- remoteCSE --> + <xs:enumeration value="18" /> + <!-- Request --> + <xs:enumeration value="19" /> + <!-- Schedule --> + <xs:enumeration value="20" /> + <!-- statsCollect --> + <xs:enumeration value="21" /> + <!-- statsConfig --> + <xs:enumeration value="22" /> + <!-- Subscription --> + <xs:enumeration value="23" /> + <!-- Mixed --> + <xs:enumeration value="24" /> + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="consistencyStrategy"> + <xs:annotation> + <xs:documentation></xs:documentation> + </xs:annotation> + <xs:restriction base="xs:integer"> + <!-- abandon member --> + <xs:enumeration value="1" /> + <!-- abandon group --> + <xs:enumeration value="2" /> + <!-- modify type --> + <xs:enumeration value="3" /> + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="cmdType"> + <xs:annotation> + <xs:documentation></xs:documentation> + </xs:annotation> + <xs:restriction base="xs:integer"> + <!-- RESET --> + <xs:enumeration value="1" /> + <!-- REBOOT --> + <xs:enumeration value="2" /> + <!-- UPLOAD --> + <xs:enumeration value="3" /> + <!-- DOWNLOAD --> + <xs:enumeration value="4" /> + <!-- SOFTWAREINSTALL --> + <xs:enumeration value="5" /> + <!-- SOFTWAREUNINSTALL --> + <xs:enumeration value="6" /> + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="execModeType"> + <xs:annotation> + <xs:documentation>Used for execModeType attribute in <mgmtCmd> and <execInstance> resource. + </xs:documentation> + </xs:annotation> + <xs:restriction base="xs:integer"> + <!-- IMMEDIATEONCE --> + <xs:enumeration value="1" /> + <!-- IMMEDIATEREPEAT --> + <xs:enumeration value="2" /> + <!-- RANDOMONCE --> + <xs:enumeration value="3" /> + <!-- RANDOMREPEAT --> + <xs:enumeration value="4" /> + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="execStateType"> + <xs:annotation> + <xs:documentation>Used for execStatusType attribute in <execInstance> resource.</xs:documentation> + </xs:annotation> + <xs:restriction base="xs:integer"> + <!-- INITIATED --> + <xs:enumeration value="1" /> + <!-- STARTED --> + <xs:enumeration value="2" /> + <!-- FINISHED --> + <xs:enumeration value="3" /> + <!-- CANCELLING --> + <xs:enumeration value="4" /> + <!-- CANCELLED --> + <xs:enumeration value="5" /> + <!-- STATUS_ NON_CANCELLABLE --> + <xs:enumeration value="6" /> + </xs:restriction> + </xs:simpleType> + + + <xs:simpleType name="execResultType"> + <xs:annotation> + <xs:documentation></xs:documentation> + </xs:annotation> + <xs:restriction base="xs:integer"> + <!-- STATUS_REQUEST_UNSUPPORTED --> + <xs:enumeration value="1" /> + <!-- STATUS_REQUEST DENIED --> + <xs:enumeration value="2" /> + <!-- STATUS_CANCELLATION_DENIED --> + <xs:enumeration value="3" /> + <!-- STATUS_INTERNAL_ERROR --> + <xs:enumeration value="4" /> + <!-- STATUS_INVALID_ARGUMENTS --> + <xs:enumeration value="5" /> + <!-- STATUS_RESOURCES_EXCEEDED --> + <xs:enumeration value="6" /> + <!-- STATUS_FILE_TRANSFER_FAILED --> + <xs:enumeration value="7" /> + <!-- STATUS_FILE_TRANSFER_SERVER_AUTHENTICATION_FAILURE --> + <xs:enumeration value="8" /> + <!-- STATUS_UNSUPPORTED_PROTOCOL --> + <xs:enumeration value="9" /> + <!-- STATUS_UPLOAD_FAILED --> + <xs:enumeration value="10" /> + <!-- STATUS_FILE_TRANSFER_FAILED_MULTICAST_GROUP_UNABLE_JOIN --> + <xs:enumeration value="11" /> + <!-- STATUS_FILE_TRANSFER_FAILED_SERVER_CONTACT_FAILED --> + <xs:enumeration value="12" /> + <!-- STATUS_FILE_TRANSFER_FAILED_FILE_ACCESS_FAILED --> + <xs:enumeration value="13" /> + <!-- STATUS_FILE_TRANSFER_FAILED_DOWNLOAD_INCOMPLETE --> + <xs:enumeration value="14" /> + <!-- STATUS_FILE_TRANSFER_FAILED_FILE_CORRUPTED --> + <xs:enumeration value="15" /> + <!-- STATUS_FILE_TRANSFER_FILE_AUTHENTICATION_FAILURE --> + <xs:enumeration value="16" /> + <!-- STATUS_FILE_TRANSFER_FAILED --> + <xs:enumeration value="17" /> + <!-- STATUS_FILE_TRANSFER_SERVER_AUTHENTICATION_FAILURE --> + <xs:enumeration value="18" /> + <!-- STATUS_FILE_TRANSFER_WINDOW_EXCEEDED --> + <xs:enumeration value="19" /> + <!-- STATUS_INVALID_UUID_FORMAT --> + <xs:enumeration value="20" /> + <!-- STATUS_UNKNOWN_EXECUTION_ENVIRONMENT --> + <xs:enumeration value="21" /> + <!-- STATUS_DISABLED_EXECUTION_ENVIRONMENT --> + <xs:enumeration value="22" /> + <!-- STATUS_EXECUTION_ENVIRONMENT_MISMATCH --> + <xs:enumeration value="23" /> + <!-- STATUS_DUPLICATE_DEPLOYMENT_UNIT --> + <xs:enumeration value="24" /> + <!-- STATUS_SYSTEM_RESOURCES_EXCEEDED --> + <xs:enumeration value="25" /> + <!-- STATUS_UNKNOWN_DEPLOYMENT_UNIT --> + <xs:enumeration value="26" /> + <!-- STATUS_INVALID_DEPLOYMENT_UNIT_STATE --> + <xs:enumeration value="27" /> + <!-- STATUS_INVALID_DEPLOYMENT_UNIT_UPDATE_DOWNGRADE_DISALLOWED --> + <xs:enumeration value="28" /> + <!-- STATUS_INVALID_DEPLOYMENT_UNIT_UPDATE_UPGRADE_DISALLOWED --> + <xs:enumeration value="29" /> + <!-- STATUS_INVALID_DEPLOYMENT_UNIT_UPDATE_VERSION_EXISTS --> + <xs:enumeration value="30" /> + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="pendingNotification"> + <xs:annotation> + <xs:documentation>This is used for pendingNotification attribute in <subscription> resource.</xs:documentation> + </xs:annotation> + <xs:restriction base="xs:integer"> + <!-- sendLatest --> + <xs:enumeration value="1" /> + <!-- sendAllPending --> + <xs:enumeration value="2" /> + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="notificationContentType"> + <xs:annotation> + <xs:documentation></xs:documentation> + </xs:annotation> + <xs:restriction base="xs:integer"> + <!-- modifiedAttributes --> + <xs:enumeration value="1" /> + <!-- wholeResource --> + <xs:enumeration value="2" /> + <!-- referenceOnly --> + <xs:enumeration value="3" /> + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="resourceStatus"> + <xs:annotation> + <xs:documentation></xs:documentation> + </xs:annotation> + <xs:restriction base="xs:integer"> + <!-- childCreated --> + <xs:enumeration value="1" /> + <!-- childDeleted --> + <xs:enumeration value="2" /> + <!-- updated --> + <xs:enumeration value="3" /> + <!-- deleted --> + <xs:enumeration value="4" /> + </xs:restriction> + </xs:simpleType> + + <!--TODO: resolve the name clash here - needs CR --> + <xs:simpleType name="operationMonitor"> + <xs:annotation> + <xs:documentation></xs:documentation> + </xs:annotation> + <xs:restriction base="xs:integer"> + <!-- Create --> + <xs:enumeration value="1" /> + <!-- Retrieve --> + <xs:enumeration value="2" /> + <!-- Update --> + <xs:enumeration value="3" /> + <!-- Delete --> + <xs:enumeration value="4" /> + </xs:restriction> + </xs:simpleType> + + <!-- TODO: Fill in the details --> + <xs:simpleType name="attribute"> + <xs:annotation> + <xs:documentation></xs:documentation> + </xs:annotation> + <xs:restriction base="xs:integer"> + <xs:enumeration value="22" /> + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="status"> + <xs:annotation> + <xs:documentation>This is used for [software], [firmware] resource.</xs:documentation> + </xs:annotation> + <xs:restriction base="xs:integer"> + <!-- Successful --> + <xs:enumeration value="1" /> + <!-- Failure --> + <xs:enumeration value="2" /> + <!-- In-Process --> + <xs:enumeration value="3" /> + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="batteryStatus"> + <xs:annotation> + <xs:documentation>This is used for [software], [firmware] resource.</xs:documentation> + </xs:annotation> + <xs:restriction base="xs:integer"> + <!-- NORMAL --> + <xs:enumeration value="1" /> + <!-- CHARGING --> + <xs:enumeration value="2" /> + <!-- CHARGING-COMPLETE --> + <xs:enumeration value="3" /> + <!-- DAMAGED --> + <xs:enumeration value="4" /> + <!-- LOW-BATTERY --> + <xs:enumeration value="5" /> + <!-- NOT-INSTALLED --> + <xs:enumeration value="6" /> + <!-- UNKNOWN --> + <xs:enumeration value="7" /> + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="mgmtDefinition"> + <xs:annotation> + <xs:documentation>This is used for mgmtObj resource.</xs:documentation> + </xs:annotation> + <xs:restriction base="xs:integer"> + <!-- unspecified --> + <xs:enumeration value="0" /> + <!-- firmware --> + <xs:enumeration value="1001" /> + <!-- software --> + <xs:enumeration value="1002" /> + <!-- memory --> + <xs:enumeration value="1003" /> + <!-- areaNwkInfo --> + <xs:enumeration value="1004" /> + <!-- areaNwkDeviceInfo --> + <xs:enumeration value="1005" /> + <!-- battery --> + <xs:enumeration value="1006" /> + <!-- deviceInfo --> + <xs:enumeration value="1007" /> + <!-- deviceCapability --> + <xs:enumeration value="1008" /> + <!-- reboot --> + <xs:enumeration value="1009" /> + <!-- eventLog --> + <xs:enumeration value="1010" /> + <!-- cmdhPolicy --> + <xs:enumeration value="1011" /> + <!-- activeCmdhPolicy --> + <xs:enumeration value="1012" /> + <!-- cmdhDefaults --> + <xs:enumeration value="1013" /> + <!-- cmdhDefEcValue --> + <xs:enumeration value="1014" /> + <!-- cmdhEcDefParamValues --> + <xs:enumeration value="1015" /> + <!-- cmdhLimits --> + <xs:enumeration value="1016" /> + <!-- cmdhNetworkAccessRules --> + <xs:enumeration value="1017" /> + <!-- cmdhNwAccessRule --> + <xs:enumeration value="1018" /> + <!-- cmdhBuffer --> + <xs:enumeration value="1019" /> + + + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="logTypeId"> + <xs:annotation> + <xs:documentation>Used for the logTypeId attribute of [eventLog] Management Resource.</xs:documentation> + </xs:annotation> + <xs:restriction base="xs:integer"> + <!-- system --> + <xs:enumeration value="1" /> + <!-- security --> + <xs:enumeration value="2" /> + <!-- event --> + <xs:enumeration value="3" /> + <!-- trace --> + <xs:enumeration value="4" /> + <!-- panic --> + <xs:enumeration value="5" /> + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="logStatus"> + <xs:annotation> + <xs:documentation>Used for the logStatus attribute of [eventLog] Management Resource.</xs:documentation> + </xs:annotation> + <xs:restriction base="xs:integer"> + <!-- Started --> + <xs:enumeration value="1" /> + <!-- Stopped --> + <xs:enumeration value="2" /> + <!-- Unknown --> + <xs:enumeration value="3" /> + <!-- NotPresent --> + <xs:enumeration value="4" /> + <!-- Error --> + <xs:enumeration value="5" /> + </xs:restriction> + </xs:simpleType> + + <!-- TODO: needs a better name (CR required) --> + <xs:simpleType name="listOfBoolean"> + <xs:restriction base="xs:integer"> + <!-- true --> + <xs:enumeration value="1" /> + <!-- false --> + <xs:enumeration value="2" /> + <!-- true and false --> + <xs:enumeration value="3" /> + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="eventType"> + <xs:restriction base="xs:integer"> + <!-- Data Operation --> + <xs:enumeration value="1" /> + <!-- Storage based --> + <xs:enumeration value="2" /> + <!-- Timer Based --> + <xs:enumeration value="3" /> + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="statsRuleStatusType"> + <xs:restriction base="xs:integer"> + <!-- Active --> + <xs:enumeration value="1" /> + <!-- Inactive --> + <xs:enumeration value="2" /> + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="statModelType"> + <xs:restriction base="xs:integer"> + <!-- Event Based --> + <xs:enumeration value="1" /> + </xs:restriction> + </xs:simpleType> + + <!-- TODO: to be defined (needs CR) --> + <xs:simpleType name="notificationCongestionPolicy"> + <xs:annotation> + <xs:documentation></xs:documentation> + </xs:annotation> + <xs:restriction base="xs:integer"> + <!-- TBD --> + <xs:enumeration value="1" /> + <!-- TBD --> + <xs:enumeration value="2" /> + <!-- TBD --> + <xs:enumeration value="3" /> + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="primitiveType"> + <xs:annotation> + <xs:documentation></xs:documentation> + </xs:annotation> + <xs:restriction base="xs:integer"> + <!-- Request --> + <xs:enumeration value="1" /> + <!-- Response --> + <xs:enumeration value="2" /> + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="encodingType"> + <xs:restriction base="xs:integer"> + <!-- No Transfer Encoding --> + <xs:enumeration value="0" /> + <!-- base64Binary --> + <xs:enumeration value="1" /> + <!-- base64String --> + <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 new file mode 100644 index 0000000000000000000000000000000000000000..7780ed13aa1892bb05dd9f7e6e8b3b3600dbd040 --- /dev/null +++ b/CDT-schedule-v0_8_0.xsd @@ -0,0 +1,77 @@ +<?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. +© 2014, 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 xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.onem2m.org/xml/protocols" + xmlns:m2m="http://www.onem2m.org/xml/protocols" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + elementFormDefault="unqualified" xmlns:xs="http://www.w3.org/2001/XMLSchema"> + + <xs:include schemaLocation="CDT-commonTypes-v0_8_0.xsd" /> + <xs:include schemaLocation="CDT-subscription-v0_8_0.xsd" /> + + <xs:element name="schedule"> + <xs:complexType> + <xs:complexContent> + <xs:extension base="m2m:announceableSubordinateResource"> + <xs:sequence> + <!-- Resource Specific Attributes --> + <xs:element name="scheduleElement"> + <xs:complexType> + <xs:sequence> + <xs:element name="timePeriod" type="m2m:eCrontabList" maxOccurs="unbounded" /> + </xs:sequence> + </xs:complexType> + </xs:element> + <!-- 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:element> + </xs:choice> + </xs:choice> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + </xs:element> + + <xs:element name="scheduleAnnc"> + <xs:complexType> + <xs:complexContent> + <xs:extension base="m2m:announcedSubordinateResource"> + <xs:sequence> + <!-- Resource Specific Attributes --> + <xs:element name="scheduleElement"> + <xs:complexType> + <xs:sequence> + <xs:element name="timePeriod" type="m2m:eCrontabList" maxOccurs="unbounded" /> + </xs:sequence> + </xs:complexType> + </xs:element> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + </xs:element> +</xs:schema> \ No newline at end of file diff --git a/CDT-subscription-v0_8_0.xsd b/CDT-subscription-v0_8_0.xsd new file mode 100644 index 0000000000000000000000000000000000000000..1837ce55d1352afe699b8067ba9dbbce47f6ce78 --- /dev/null +++ b/CDT-subscription-v0_8_0.xsd @@ -0,0 +1,109 @@ +<?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. +© 2014, 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 xmlns="http://www.w3.org/2001/XMLSchema" 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-v0_8_0.xsd" /> + <xs:include schemaLocation="CDT-schedule-v0_8_0.xsd" /> + + <xs:element name="subscription"> + <xs:complexType> + <xs:complexContent> + <!-- Inherit common attributes from RegularResource Type --> + <xs:extension base="m2m:regularResource"> + <xs:sequence> + <!-- Resource Specific Attributes --> + <xs:element name="eventNotificationCriteria" type="m2m:eventNotificationCriteria" minOccurs="0" /> + <xs:element name="expirationCounter" type="xs:positiveInteger" minOccurs="0" /> + <xs:element name="notificationURI" type="m2m:AnyURIList" /> + <xs:element name="groupName" type="xs:anyURI" minOccurs="0" /> + <xs:element name="notificationForwardingURI" type="xs:anyURI" minOccurs="0" /> + <xs:element name="batchNotify" type="m2m:batchNotify" minOccurs="0" /> + <xs:element name="rateLimit" type="m2m:rateLimit" minOccurs="0" /> + <xs:element name="preSubscriptionNotify" type="xs:positiveInteger" minOccurs="0" /> + <xs:element name="pendingNotification" type="m2m:pendingNotification" minOccurs="0" /> + <xs:element name="notificationStoragePriority" type="xs:positiveInteger" minOccurs="0" /> + <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" minOccurs="1" maxOccurs="unbounded" /> + <xs:choice minOccurs="1" maxOccurs="unbounded"> + <xs:element ref="m2m:schedule"></xs:element> + </xs:choice> + </xs:choice> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + </xs:element> + + <xs:complexType name="eventNotificationCriteria"> + <xs:sequence> + <xs:element name="createdBefore" type="xs:dateTime" minOccurs="0" /> + <xs:element name="createdAfter" type="xs:dateTime" minOccurs="0" /> + <xs:element name="modifiedSince" type="xs:dateTime" minOccurs="0" /> + <xs:element name="unmodifiedSince" type="xs:dateTime" 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="xs:dateTime" minOccurs="0" /> + <xs:element name="expireAfter" type="xs:dateTime" minOccurs="0" /> + <xs:element name="sizeAbove" type="xs:nonNegativeInteger" minOccurs="0" /> + <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:operationMonitor" minOccurs="0" maxOccurs="unbounded" /> + <xs:element name="attribute" type="m2m:attribute" minOccurs="0" maxOccurs="unbounded" /> + </xs:sequence> + </xs:complexType> + + + <xs:complexType name="batchNotify"> + <xs:sequence> + <xs:element name="number" type="xs:nonNegativeInteger" minOccurs="0" /> + <xs:element name="duration" type="xs:duration" minOccurs="0" /> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="rateLimit"> + <xs:sequence> + <xs:element name="number" type="xs:nonNegativeInteger" minOccurs="0" /> + <xs:element name="rateLimitWindow" type="xs:duration" minOccurs="0" /> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="eventCat"> + <xs:sequence> + <xs:element name="eventCatType" type="m2m:eventCatType" /> + <xs:element name="eventCatNo" type="xs:nonNegativeInteger" /> + </xs:sequence> + </xs:complexType> + +</xs:schema> diff --git a/battery-v0_8_0.xsd b/battery-v0_8_0.xsd new file mode 100644 index 0000000000000000000000000000000000000000..b49a3a3295895e51e8729a63071c834307a7c258 --- /dev/null +++ b/battery-v0_8_0.xsd @@ -0,0 +1,74 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- +Copyright Notification + +No part of this document may be reproduced, in an electronic retrieval system or otherwise, except as authorized by written permission. +The copyright and the foregoing restriction extend to reproduction in all media. +© 2014, 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-v0_8_0.xsd" /> + <xs:include schemaLocation="CDT-subscription-v0_8_0.xsd" /> + + + <xs:element name="battery"> + <xs:complexType> + <xs:complexContent> + <!-- Inherit Common Attributes from management Resource Type --> + <xs:extension base="m2m:mgmtResource"> + <!-- Resource Specific Attributes --> + <xs:sequence> + <xs:element name="batteryLevel" type="xs:nonNegativeInteger" minOccurs="1" /> + <xs:element name="batteryStatus" type="m2m:batteryStatus" minOccurs="1" /> + + <!-- 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:element> + </xs:choice> + </xs:choice> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + </xs:element> + + <xs:element name="batteryAnnc"> + <xs:complexType> + <xs:complexContent> + <!-- Inherit Common Attributes from announced management Resource Type --> + <xs:extension base="m2m:announcedMgmtResource"> + <!-- Resource Specific Attributes --> + <xs:sequence> + <xs:element name="batteryLevel" type="xs:nonNegativeInteger" minOccurs="1" /> + <xs:element name="batteryStatus" type="m2m:batteryStatus" minOccurs="1" /> + + <!-- 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:element> + </xs:choice> + </xs:choice> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + </xs:element> +</xs:schema>