/** * 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. * © 2016, oneM2M Partners Type 1 (ARIB, ATIS, CCSA, ETSI, TIA, TSDSI, TTA, TTC). * All rights reserved. * * @author ETSI * @version $URL: https://forge.etsi.org/svn/oneM2M/branches/Release1/ttcn/LibOneM2M/OneM2M_Types.ttcn $ * $Id: OneM2M_Types.ttcn 175 2016-11-22 12:39:39Z reinaortega $ * @desc Test System module for oneM2M * */ module OneM2M_Types { import from XSD all; type record AccessControlPolicy { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, Timestamp expirationTime, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute, SetOfAcrs privileges, SetOfAcrs selfPrivileges, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of Subscription subscription_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.subscription_list) "untagged"; variant (choice.subscription_list[-]) "name as 'subscription'"; }; type record AccessControlPolicyAnnc { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, Timestamp expirationTime, XSD.AnyURI link, SetOfAcrs privileges, SetOfAcrs selfPrivileges, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of Subscription subscription_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.subscription_list) "untagged"; variant (choice.subscription_list[-]) "name as 'subscription'"; }; type record SetOfAcrs { record of AccessControlRule accessControlRule_list } with { variant "name as uncapitalized"; variant (accessControlRule_list) "untagged"; variant (accessControlRule_list[-]) "name as 'accessControlRule'"; }; type record AccessControlRule { ListOfURIs accessControlOriginators, AccessControlOperations accessControlOperations, record of record { record of ScheduleEntry accessControlWindow_list, record { record length(1 .. infinity) of Ipv4 ipv4Addresses, record length(1 .. infinity) of Ipv6 ipv6Addresses } accessControlIpAddresses optional, LocationRegion accessControlLocationRegion optional } accessControlContexts_list optional//TODO } with { variant "name as uncapitalized"; // variant (accessControlContexts_list) "untagged"; variant (accessControlContexts_list[-]) "name as 'accessControlContexts'"; variant (accessControlContexts_list[-].accessControlWindow_list) "untagged"; variant (accessControlContexts_list[-].accessControlWindow_list[-]) "name as 'accessControlWindow'"; variant (accessControlContexts_list[-].accessControlIpAddresses.ipv4Addresses) "list"; variant (accessControlContexts_list[-].accessControlIpAddresses.ipv6Addresses) "list"; }; type record LocationRegion { union { record length(1 .. infinity) of CountryCode countryCode, record length(3) of XSD.Float circRegion } choice } with { variant "name as uncapitalized"; variant (choice) "untagged"; variant (choice.countryCode) "list"; variant (choice.circRegion) "list"; }; type XSD.String CountryCode (pattern "[A-Z]#(2)") with { variant "name as uncapitalized"; }; type XSD.Token Ipv4 (pattern "[0-9A-Fa-f]#(8)(/([0-9]|[1-2][0-9]|3[0-2]))#(0,1)") with { variant "name as uncapitalized"; }; type XSD.Token Ipv6 (pattern "::(/0)#(0,1)") with { variant "name as uncapitalized"; }; type record ActiveCmdhPolicy { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute, MgmtDefinition mgmtDefinition, ListOfURIs objectIDs optional, ListOfURIs objectPaths optional, XSD.String description optional, XSD.ID activeCmdhPolicyLink } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; }; type record AE { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute, XSD.String appName optional, XSD.String app_ID, XSD.ID aE_ID, PoaList pointOfAccess optional, XSD.AnyURI ontologyRef optional, XSD.AnyURI nodeLink optional, XSD.Boolean requestReachability, Serializations contentSerialization optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of union { Container container, Group group_, AccessControlPolicy accessControlPolicy, Subscription subscription, PollingChannel pollingChannel, Schedule schedule } choice_list } choice optional } with { variant "element"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; variant (app_ID) "name as 'App-ID'"; variant (aE_ID) "name as 'AE-ID'"; //variant (requestReachability) "text 'true' as '1'"; //variant (requestReachability) "text 'false' as '0'"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.choice_list) "untagged"; variant (choice.choice_list[-]) "untagged"; variant (choice.choice_list[-].group_) "name as 'group'"; }; type record AEAnnc { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs, Timestamp expirationTime, XSD.AnyURI link, XSD.String appName optional, XSD.String app_ID optional, XSD.ID aE_ID optional, PoaList pointOfAccess optional, XSD.AnyURI ontologyRef optional, XSD.AnyURI nodeLink optional, XSD.Boolean requestReachability optional, Serializations contentSerialization optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of union { Container container, ContainerAnnc containerAnnc, Group group_, GroupAnnc groupAnnc, AccessControlPolicy accessControlPolicy, AccessControlPolicyAnnc accessControlPolicyAnnc, Subscription subscription, ScheduleAnnc scheduleAnnc } choice_list } choice optional } with { variant "element"; variant (resourceName) "attribute"; variant (app_ID) "name as 'App-ID'"; variant (aE_ID) "name as 'AE-ID'"; //variant (requestReachability) "text 'true' as '1'"; //variant (requestReachability) "text 'false' as '0'"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.choice_list) "untagged"; variant (choice.choice_list[-]) "untagged"; variant (choice.choice_list[-].group_) "name as 'group'"; }; type record AreaNwkDeviceInfo { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute, MgmtDefinition mgmtDefinition, ListOfURIs objectIDs optional, ListOfURIs objectPaths optional, XSD.String description optional, XSD.String devID, XSD.String devType, XSD.AnyURI areaNwkId, XSD.NonNegativeInteger sleepInterval optional, XSD.NonNegativeInteger sleepDuration optional, XSD.String devStatus optional, ListOfURIs listOfNeighbors, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of Subscription subscription_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.subscription_list) "untagged"; variant (choice.subscription_list[-]) "name as 'subscription'"; }; type record AreaNwkDeviceInfoAnnc { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs, Timestamp expirationTime, XSD.AnyURI link, MgmtDefinition mgmtDefinition, ListOfURIs objectIDs optional, ListOfURIs objectPaths optional, XSD.String description optional, XSD.String devID optional, XSD.String devType optional, XSD.AnyURI areaNwkId optional, XSD.NonNegativeInteger sleepInterval optional, XSD.NonNegativeInteger sleepDuration optional, XSD.String devStatus optional, ListOfURIs listOfNeighbors optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of Subscription subscription_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.subscription_list) "untagged"; variant (choice.subscription_list[-]) "name as 'subscription'"; }; type record AreaNwkInfo { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute, MgmtDefinition mgmtDefinition, ListOfURIs objectIDs optional, ListOfURIs objectPaths optional, XSD.String description optional, XSD.String areaNwkType, ListOfURIs listOfDevices, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of Subscription subscription_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.subscription_list) "untagged"; variant (choice.subscription_list[-]) "name as 'subscription'"; }; type record AreaNwkInfoAnnc { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs, Timestamp expirationTime, XSD.AnyURI link, MgmtDefinition mgmtDefinition, ListOfURIs objectIDs optional, ListOfURIs objectPaths optional, XSD.String description optional, XSD.String areaNwkType optional, ListOfURIs listOfDevices optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of Subscription subscription_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.subscription_list) "untagged"; variant (choice.subscription_list[-]) "name as 'subscription'"; }; type record Battery { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute, MgmtDefinition mgmtDefinition, ListOfURIs objectIDs optional, ListOfURIs objectPaths optional, XSD.String description optional, XSD.UnsignedInt batteryLevel, BatteryStatus batteryStatus, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of Subscription subscription_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.subscription_list) "untagged"; variant (choice.subscription_list[-]) "name as 'subscription'"; }; type record BatteryAnnc { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs, Timestamp expirationTime, XSD.AnyURI link, MgmtDefinition mgmtDefinition, ListOfURIs objectIDs optional, ListOfURIs objectPaths optional, XSD.String description optional, XSD.UnsignedInt batteryLevel optional, BatteryStatus batteryStatus optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of Subscription subscription_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.subscription_list) "untagged"; variant (choice.subscription_list[-]) "name as 'subscription'"; }; type record CmdhBuffer { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute, MgmtDefinition mgmtDefinition, ListOfURIs objectIDs optional, ListOfURIs objectPaths optional, XSD.String description optional, ListOfEventCatWithDef applicableEventCategory, XSD.NonNegativeInteger maxBufferSize, XSD.PositiveInteger storagePriority (1 .. !11) } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; }; type record CmdhDefaults { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute, MgmtDefinition mgmtDefinition, ListOfURIs objectIDs optional, ListOfURIs objectPaths optional, XSD.String description optional, record length(2 .. infinity) of MgmtLinkRef mgmtLink_list } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; variant (mgmtLink_list) "untagged"; variant (mgmtLink_list[-]) "name as 'mgmtLink'"; }; type record CmdhDefEcValue { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute, MgmtDefinition mgmtDefinition, ListOfURIs objectIDs optional, ListOfURIs objectPaths optional, XSD.String description optional, XSD.PositiveInteger order, EventCat defEcValue, ListOfM2MID requestOrigin, XSD.AnyType requestContext optional, XSD.Boolean requestContextNotification optional, XSD.AnyType requestCharacteristics optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; //variant (requestContextNotification) "text 'true' as '1'"; //variant (requestContextNotification) "text 'false' as '0'"; }; type record CmdhEcDefParamValues { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute, MgmtDefinition mgmtDefinition, ListOfURIs objectIDs optional, ListOfURIs objectPaths optional, XSD.String description optional, ListOfEventCatWithDef applicableEventCategory, XSD.Long defaultRequestExpTime, XSD.Long defaultResultExpTime, XSD.Long defaultOpExecTime, XSD.Long defaultRespPersistence, XSD.Boolean defaultDelAggregation } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; //variant (defaultDelAggregation) "text 'true' as '1'"; //variant (defaultDelAggregation) "text 'false' as '0'"; }; type record CmdhLimits { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute, MgmtDefinition mgmtDefinition, ListOfURIs objectIDs optional, ListOfURIs objectPaths optional, XSD.String description optional, XSD.PositiveInteger order, ListOfM2MID requestOrigin, XSD.AnyType requestContext, XSD.Boolean requestContextNotification optional, XSD.AnyType requestCharacteristics, ListOfEventCat limitsEventCategory, ListOfMinMax limitsRequestExpTime, ListOfMinMax limitsResultExpTime, ListOfMinMax limitsOpExecTime, ListOfMinMax limitsRespPersistence, enumerated { x0, x1, x0_1 } limitsDelAggregation } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; //variant (requestContextNotification) "text 'true' as '1'"; //variant (requestContextNotification) "text 'false' as '0'"; variant (limitsDelAggregation) "text 'x0' as '0'"; variant (limitsDelAggregation) "text 'x0_1' as '0 1'"; variant (limitsDelAggregation) "text 'x1' as '1'"; }; type record CmdhNetworkAccessRules { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute, MgmtDefinition mgmtDefinition, ListOfURIs objectIDs optional, ListOfURIs objectPaths optional, XSD.String description optional, ListOfEventCatWithDef applicableEventCategories, record of MgmtLinkRef mgmtLink_list } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; variant (mgmtLink_list) "untagged"; variant (mgmtLink_list[-]) "name as 'mgmtLink'"; }; type record CmdhNwAccessRule { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute, MgmtDefinition mgmtDefinition, ListOfURIs objectIDs optional, ListOfURIs objectPaths optional, XSD.String description optional, ListOfM2MID targetNetwork, XSD.NonNegativeInteger minReqVolume, BackOffParameters backOffParameters, XSD.AnyType otherConditions, MgmtLinkRef mgmtLink } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; }; type record CmdhPolicy { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute, MgmtDefinition mgmtDefinition, ListOfURIs objectIDs optional, ListOfURIs objectPaths optional, XSD.String description optional, XSD.String cmdhPolicyName, record length(4 .. infinity) of MgmtLinkRef mgmtLink_list } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; variant (mgmtLink_list) "untagged"; variant (mgmtLink_list[-]) "name as 'mgmtLink'"; }; type XSD.AnyURI ID; type XSD.Token NodeID with { variant "name as uncapitalized"; }; type XSD.Token DeviceID (pattern "urn:meid:[\dABCDEFabcdef]#(14)") with { variant "name as uncapitalized"; }; type XSD.Token ExternalID with { variant "name as uncapitalized"; }; type XSD.Token RequestID with { variant "name as uncapitalized"; }; type XSD.AnyURI NhURI with { variant "name as uncapitalized"; }; type record length(1 .. infinity) of XSD.ID AcpType with { variant "name as uncapitalized"; variant "list"; }; type record length(1 .. infinity) of XSD.Token Labels with { variant "name as uncapitalized"; variant "list"; }; type XSD.UnsignedInt TriggerRecipientID (0 .. 65535) with { variant "name as uncapitalized"; }; type record length(1 .. infinity) of XSD.ID ListOfM2MID with { variant "name as uncapitalized"; variant "list"; }; type XSD.Long LongMin_1 (-1 .. infinity) with { variant "name as 'longMin-1'"; }; type record length(2) of LongMin_1 ListOfMinMax with { variant "name as uncapitalized"; variant "list"; }; type record length(3) of XSD.NonNegativeInteger BackOffParameters with { variant "name as uncapitalized"; variant "list"; }; type record length(1 .. infinity) of XSD.String PoaList with { variant "name as uncapitalized"; variant "list"; }; type XSD.String Timestamp // FIXME (pattern "\d#(4)(0[1-9]|1[0-2])(0[1-9]|[1-2]\d|30|31)T([01]\d|2[0-3])[0-5]\d[0-5]\d(,\d#(1,6))#(0,1)") with { variant "name as uncapitalized"; }; type union AbsRelTimestamp { Timestamp alt_, XSD.Long alt_1 } with { variant "name as uncapitalized"; variant "useUnion"; variant (alt_) "name as ''"; variant (alt_1) "name as ''"; }; type XSD.String TypeOfContent (pattern "[\w/!#$\^_.+\q{0, 0, 0, 38}&\-]+") with { variant "name as uncapitalized"; }; type enumerated PermittedMediaTypes { applicationjson, applicationxml } with { variant "text 'applicationjson' as 'application/json'"; variant "text 'applicationxml' as 'application/xml'"; variant "name as uncapitalized"; }; type record length(1 .. infinity) of PermittedMediaTypes Serializations with { variant "name as uncapitalized"; variant "list"; }; type XSD.String ContentInfo //(pattern "[\w/!#$\^_.+\q{0, 0, 0, 38}&\-]+(:[0-2])#(0,1)") TODO To verify pattern with { variant "name as uncapitalized"; }; type union EventCat { StdEventCats alt_, XSD.Integer alt_1 (100 .. 999) } with { variant "name as uncapitalized"; variant "useUnion"; variant (alt_) "name as ''"; variant (alt_1) "name as ''"; }; type union EventCatWithDef { enumerated { int0(0) } alt_, StdEventCats alt_1, XSD.Integer alt_2 (100 .. 999) } with { variant "name as uncapitalized"; variant "useUnion"; variant (alt_) "name as ''"; variant (alt_) "useNumber"; variant (alt_1) "name as ''"; variant (alt_2) "name as 'alt_1'"; variant (alt_2) "name as ''"; }; type record length(1 .. infinity) of EventCat ListOfEventCat with { variant "name as uncapitalized"; variant "list"; }; type record length(1 .. infinity) of EventCatWithDef ListOfEventCatWithDef with { variant "name as uncapitalized"; variant "list"; }; type XSD.String ScheduleEntry //FIXME To be added (pattern "(([*]|[1-5]#(0,1)\d([,-][1-5]#(0,1)\d)*)[\q{0,0,0,20}\q{0,0,0,10}\t\r]+)#(2)([*]|((1#(0,1)\d|2[0-3])([,-](1#(0,1)\d|2[0-3]))*))[\q{0,0,0,20}\q{0,0,0,10}\t\r]+([*]|(([1-9]|1\d|2\d|3[01])([,-]([1-9]|1\d|2\d|3[01]))*))[\q{0,0,0,20}\q{0,0,0,10}\t\r]+([*]|(([1-9]|1[0-2])([,-]([1-9]|1[0-2]))*))[\q{0,0,0,20}\q{0,0,0,10}\t\r]+([*]|([0-6]([,-][0-6])*))") with { variant "name as uncapitalized"; }; type record length(1 .. infinity) of XSD.AnyURI ListOfURIs with { variant "name as uncapitalized"; variant "list"; }; type record of XSD.NCName AttributeList_1 with { variant "name as 'attributeList'"; variant "list"; }; type record length(1 .. infinity) of ResourceType ResourceTypeList with { variant "name as uncapitalized"; variant "list"; }; type record DeliveryMetaData { XSD.Boolean tracingOption, ListOfM2MID tracingInfo optional } with { variant "name as uncapitalized"; //variant (tracingOption) "text 'true' as '1'"; //variant (tracingOption) "text 'false' as '0'"; }; type record AggregatedRequest { record length(1 .. infinity) of record { Operation operation, XSD.AnyURI to_, XSD.ID from_, RequestID requestIdentifier, PrimitiveContent primitiveContent optional, MetaInformation metaInformation optional } request_list } with { variant "name as uncapitalized"; variant (request_list) "untagged"; variant (request_list[-]) "name as 'request'"; variant (request_list[-].to_) "name as 'to'"; variant (request_list[-].from_) "name as 'from'"; }; type record MetaInformation { ResourceType resourceType optional, XSD.NCName name optional, Timestamp originatingTimestamp optional, AbsRelTimestamp requestExpirationTimestamp optional, AbsRelTimestamp resultExpirationTimestamp optional, AbsRelTimestamp operationExecutionTime optional, ResponseTypeInfo responseType optional, AbsRelTimestamp resultPersistence optional, ResultContent resultContent optional, EventCat eventCategory optional, XSD.Boolean deliveryAggregation optional, XSD.String groupRequestIdentifier optional, FilterCriteria filterCriteria optional, DiscResType discoveryResultType optional } with { variant "name as uncapitalized"; //variant (deliveryAggregation) "text 'true' as '1'"; //variant (deliveryAggregation) "text 'false' as '0'"; }; type record of anytype Contents; // FIXME added by AMB, necessary for Codec type record PrimitiveContent { Contents any_1 //record of XSD.String elem_list } with { variant "name as uncapitalized"; // variant (elem_list) "untagged"; // variant (elem_list[-]) "anyElement from 'http://www.onem2m.org/xml/protocols'"; }; type record FilterCriteria { Timestamp createdBefore optional, Timestamp createdAfter optional, Timestamp modifiedSince optional, Timestamp unmodifiedSince optional, XSD.PositiveInteger stateTagSmaller optional, XSD.NonNegativeInteger stateTagBigger optional, Timestamp expireBefore optional, Timestamp expireAfter optional, Labels labels optional, ResourceTypeList resourceType optional, XSD.NonNegativeInteger sizeAbove optional, XSD.PositiveInteger sizeBelow optional, record of TypeOfContent contentType_list, record of Attribute attribute_list, FilterUsage filterUsage optional, XSD.NonNegativeInteger limit optional } with { variant "name as uncapitalized"; variant (contentType_list) "untagged"; variant (contentType_list[-]) "name as 'contentType'"; variant (attribute_list) "untagged"; variant (attribute_list[-]) "name as 'attribute'"; }; type record Attribute { XSD.NCName name, XSD.AnyType value_ } with { variant "name as uncapitalized"; variant (value_) "name as 'value'"; }; type record ScheduleEntries { record length(1 .. infinity) of ScheduleEntry scheduleEntry_list } with { variant "name as uncapitalized"; variant (scheduleEntry_list) "untagged"; variant (scheduleEntry_list[-]) "name as 'scheduleEntry'"; }; type record ActionStatus { XSD.AnyURI action_ optional, Status status optional } with { variant "name as uncapitalized"; variant (action_) "name as 'action'"; }; type record AnyArgType { XSD.NCName name, XSD.AnyType value_ } with { variant "name as uncapitalized"; variant (value_) "name as 'value'"; }; type record ResetArgsType { record of AnyArgType anyArg_list } with { variant "name as uncapitalized"; variant (anyArg_list) "untagged"; variant (anyArg_list[-]) "name as 'anyArg'"; }; type record RebootArgsType { record of AnyArgType anyArg_list } with { variant "name as uncapitalized"; variant (anyArg_list) "untagged"; variant (anyArg_list[-]) "name as 'anyArg'"; }; type record UploadArgsType { XSD.String fileType, XSD.AnyURI uRL, XSD.String username, XSD.String password, record of AnyArgType anyArg_list } with { variant "name as uncapitalized"; variant (uRL) "name as capitalized"; variant (anyArg_list) "untagged"; variant (anyArg_list[-]) "name as 'anyArg'"; }; type record DownloadArgsType { XSD.String fileType, XSD.AnyURI uRL, XSD.String username, XSD.String password, XSD.PositiveInteger filesize, XSD.String targetFile, XSD.PositiveInteger delaySeconds, XSD.AnyURI successURL, Timestamp startTime, Timestamp completeTime, record of AnyArgType anyArg_list } with { variant "name as uncapitalized"; variant (uRL) "name as capitalized"; variant (anyArg_list) "untagged"; variant (anyArg_list[-]) "name as 'anyArg'"; }; type record SoftwareInstallArgsType { XSD.AnyURI uRL, XSD.String uUID, XSD.String username, XSD.String password, XSD.String executionEnvRef, record of AnyArgType anyArg_list } with { variant "name as uncapitalized"; variant (uRL) "name as capitalized"; variant (uUID) "name as capitalized"; variant (anyArg_list) "untagged"; variant (anyArg_list[-]) "name as 'anyArg'"; }; type record SoftwareUpdateArgsType { XSD.String uUID, XSD.String version, XSD.AnyURI uRL, XSD.String username, XSD.String password, XSD.String executionEnvRef, record of AnyArgType anyArg_list } with { variant "name as uncapitalized"; variant (uUID) "name as capitalized"; variant (uRL) "name as capitalized"; variant (anyArg_list) "untagged"; variant (anyArg_list[-]) "name as 'anyArg'"; }; type record SoftwareUninstallArgsType { XSD.String uUID, XSD.String version, XSD.String executionEnvRef, record of AnyArgType anyArg_list } with { variant "name as uncapitalized"; variant (uUID) "name as capitalized"; variant (anyArg_list) "untagged"; variant (anyArg_list[-]) "name as 'anyArg'"; }; type record ExecReqArgsListType { union { record of ResetArgsType reset_list, record length(1 .. infinity) of RebootArgsType reboot_list, record length(1 .. infinity) of UploadArgsType upload_list, record length(1 .. infinity) of DownloadArgsType download_list, record length(1 .. infinity) of SoftwareInstallArgsType softwareInstall_list, record length(1 .. infinity) of SoftwareUpdateArgsType softwareUpdate_list, record length(1 .. infinity) of SoftwareUninstallArgsType softwareUninstall_list } choice } with { variant "name as uncapitalized"; variant (choice) "untagged"; variant (choice.reset_list) "untagged"; variant (choice.reset_list[-]) "name as 'reset'"; variant (choice.reboot_list) "untagged"; variant (choice.reboot_list[-]) "name as 'reboot'"; variant (choice.upload_list) "untagged"; variant (choice.upload_list[-]) "name as 'upload'"; variant (choice.download_list) "untagged"; variant (choice.download_list[-]) "name as 'download'"; variant (choice.softwareInstall_list) "untagged"; variant (choice.softwareInstall_list[-]) "name as 'softwareInstall'"; variant (choice.softwareUpdate_list) "untagged"; variant (choice.softwareUpdate_list[-]) "name as 'softwareUpdate'"; variant (choice.softwareUninstall_list) "untagged"; variant (choice.softwareUninstall_list[-]) "name as 'softwareUninstall'"; }; type record MgmtLinkRef { XSD.NCName name, MgmtDefinition type_, XSD.AnyURI base } with { variant "name as uncapitalized"; variant (name) "attribute"; variant (type_) "name as 'type'"; variant (type_) "attribute"; variant (base) "untagged"; }; type record ChildResourceRef { XSD.NCName name, ResourceType type_, XSD.AnyURI base } with { variant "name as uncapitalized"; variant (name) "attribute"; variant (type_) "name as 'type'"; variant (type_) "attribute"; variant (base) "untagged"; }; type record ResponseTypeInfo { ResponseType responseTypeValue, record of XSD.AnyURI notificationURI } with { variant "name as uncapitalized"; variant (notificationURI) "list"; }; type record OperationResult { ResponseStatusCode responseStatusCode, RequestID requestIdentifier, PrimitiveContent primitiveContent optional, XSD.AnyURI to_ optional, XSD.ID from_ optional, Timestamp originatingTimestamp optional, AbsRelTimestamp resultExpirationTimestamp optional, EventCat eventCategory optional } with { variant "name as uncapitalized"; variant (to_) "name as 'to'"; variant (from_) "name as 'from'"; }; type record Resource_1 { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional } with { variant "name as 'resource'"; variant (resourceName) "attribute"; }; type record RegularResource { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime } with { variant "name as uncapitalized"; variant (resourceName) "attribute"; }; type record AnnounceableResource { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute } with { variant "name as uncapitalized"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; }; type record AnnouncedResource { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs, Timestamp expirationTime, XSD.AnyURI link } with { variant "name as uncapitalized"; variant (resourceName) "attribute"; }; type record AnnounceableSubordinateResource { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, Timestamp expirationTime, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute } with { variant "name as uncapitalized"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; }; type record SubordinateResource { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, Timestamp expirationTime } with { variant "name as uncapitalized"; variant (resourceName) "attribute"; }; type record AnnouncedSubordinateResource { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, Timestamp expirationTime, XSD.AnyURI link } with { variant "name as uncapitalized"; variant (resourceName) "attribute"; }; type record MgmtResource { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute, MgmtDefinition mgmtDefinition, ListOfURIs objectIDs optional, ListOfURIs objectPaths optional, XSD.String description optional } with { variant "name as uncapitalized"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; }; type record AnnouncedMgmtResource { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs, Timestamp expirationTime, XSD.AnyURI link, MgmtDefinition mgmtDefinition, ListOfURIs objectIDs optional, ListOfURIs objectPaths optional, XSD.String description optional } with { variant "name as uncapitalized"; variant (resourceName) "attribute"; }; type record Container { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute, XSD.NonNegativeInteger stateTag, XSD.ID creator, XSD.NonNegativeInteger maxNrOfInstances optional, XSD.NonNegativeInteger maxByteSize optional, XSD.NonNegativeInteger maxInstanceAge optional, XSD.NonNegativeInteger currentNrOfInstances, XSD.NonNegativeInteger currentByteSize, XSD.AnyURI locationID optional, XSD.AnyURI ontologyRef optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of union { ContentInstance contentInstance, Container container, Subscription subscription } choice_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.choice_list) "untagged"; variant (choice.choice_list[-]) "untagged"; }; type record ContainerAnnc { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs, Timestamp expirationTime, XSD.AnyURI link, XSD.NonNegativeInteger stateTag, XSD.NonNegativeInteger maxNrOfInstances optional, XSD.NonNegativeInteger maxByteSize optional, XSD.NonNegativeInteger maxInstanceAge optional, XSD.NonNegativeInteger currentNrOfInstances optional, XSD.NonNegativeInteger currentByteSize optional, XSD.AnyURI locationID optional, XSD.AnyURI ontologyRef optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of union { ContentInstance contentInstance, ContentInstanceAnnc contentInstanceAnnc, Container container, ContainerAnnc containerAnnc, Subscription subscription } choice_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.choice_list) "untagged"; variant (choice.choice_list[-]) "untagged"; }; type record ContentInstance { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, Timestamp expirationTime, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute, XSD.NonNegativeInteger stateTag, XSD.ID creator optional, ContentInfo contentInfo optional, XSD.NonNegativeInteger contentSize, XSD.AnyURI ontologyRef optional, XSD.AnyType content } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; }; type record ContentInstanceAnnc { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, Timestamp expirationTime, XSD.AnyURI link, XSD.NonNegativeInteger stateTag, ContentInfo contentInfo optional, XSD.NonNegativeInteger contentSize optional, XSD.AnyURI ontologyRef optional, XSD.AnyType content optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; }; type record CSEBase { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, CseTypeID cseType optional, XSD.ID cSE_ID, record of ResourceType supportedResourceType, PoaList pointOfAccess, XSD.AnyURI nodeLink optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of union { RemoteCSE remoteCSE, RemoteCSEAnnc remoteCSEAnnc, Node node, AE aE, Container container, Group group_, AccessControlPolicy accessControlPolicy, Subscription subscription, MgmtCmd mgmtCmd, LocationPolicy locationPolicy, StatsConfig statsConfig, StatsCollect statsCollect, Request request, Delivery delivery, Schedule schedule, M2mServiceSubscriptionProfile m2mServiceSubscriptionProfile, ServiceSubscribedAppRule serviceSubscribedAppRule } choice_list } choice optional } with { variant "element"; variant (resourceName) "attribute"; variant (cSE_ID) "name as 'CSE-ID'"; variant (supportedResourceType) "list"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.choice_list) "untagged"; variant (choice.choice_list[-]) "untagged"; variant (choice.choice_list[-].aE) "name as capitalized"; variant (choice.choice_list[-].group_) "name as 'group'"; }; type record Delivery { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime, XSD.NonNegativeInteger stateTag, XSD.ID source, XSD.ID target, Timestamp lifespan, EventCat eventCat, DeliveryMetaData deliveryMetaData, AggregatedRequest aggregatedRequest, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of union { Subscription subscription } choice_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.choice_list) "untagged"; variant (choice.choice_list[-]) "untagged"; }; type record DeviceCapability { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute, MgmtDefinition mgmtDefinition, ListOfURIs objectIDs optional, ListOfURIs objectPaths optional, XSD.String description optional, XSD.String capabilityName, XSD.Boolean attached, ActionStatus capabilityActionStatus, XSD.Boolean currentState, XSD.Boolean enable optional, XSD.Boolean disable optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of Subscription subscription_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; //variant (attached) "text 'true' as '1'"; //variant (attached) "text 'false' as '0'"; //variant (currentState) "text 'true' as '1'"; //variant (currentState) "text 'false' as '0'"; //variant (enable) "text 'true' as '1'"; //variant (enable) "text 'false' as '0'"; //variant (disable) "text 'true' as '1'"; //variant (disable) "text 'false' as '0'"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.subscription_list) "untagged"; variant (choice.subscription_list[-]) "name as 'subscription'"; }; type record DeviceCapabilityAnnc { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs, Timestamp expirationTime, XSD.AnyURI link, MgmtDefinition mgmtDefinition, ListOfURIs objectIDs optional, ListOfURIs objectPaths optional, XSD.String description optional, XSD.String capabilityName optional, XSD.Boolean attached optional, ActionStatus capabilityActionStatus optional, XSD.Boolean currentState optional, XSD.Boolean enable optional, XSD.Boolean disable optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of Subscription subscription_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; //variant (attached) "text 'true' as '1'"; //variant (attached) "text 'false' as '0'"; //variant (currentState) "text 'true' as '1'"; //variant (currentState) "text 'false' as '0'"; //variant (enable) "text 'true' as '1'"; //variant (enable) "text 'false' as '0'"; //variant (disable) "text 'true' as '1'"; //variant (disable) "text 'false' as '0'"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.subscription_list) "untagged"; variant (choice.subscription_list[-]) "name as 'subscription'"; }; type record DeviceInfo { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute, MgmtDefinition mgmtDefinition, ListOfURIs objectIDs optional, ListOfURIs objectPaths optional, XSD.String description optional, XSD.String deviceLabel, XSD.String manufacturer, XSD.String model, XSD.String deviceType, XSD.String fwVersion, XSD.String swVersion, XSD.String hwVersion, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of Subscription subscription_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.subscription_list) "untagged"; variant (choice.subscription_list[-]) "name as 'subscription'"; }; type record DeviceInfoAnnc { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs, Timestamp expirationTime, XSD.AnyURI link, MgmtDefinition mgmtDefinition, ListOfURIs objectIDs optional, ListOfURIs objectPaths optional, XSD.String description optional, XSD.String deviceLabel optional, XSD.String manufacturer optional, XSD.String model optional, XSD.String deviceType optional, XSD.String fwVersion optional, XSD.String swVersion optional, XSD.String hwVersion optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of Subscription subscription_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.subscription_list) "untagged"; variant (choice.subscription_list[-]) "name as 'subscription'"; }; type enumerated ResourceType { int1(1), int2(2), int3(3), int4(4), int5(5), int6(6), int7(7), int8(8), int9(9), int10(10), int11(11), int12(12), int13(13), int14(14), int15(15), int16(16), int17(17), int18(18), int19(19), int20(20), int21(21), int22(22), int23(23), int10001(10001), int10002(10002), int10003(10003), int10004(10004), int10009(10009), int10010(10010), int10013(10013), int10014(10014), int10016(10016), int10018(10018) } with { variant "useNumber"; variant "name as uncapitalized"; }; type enumerated CseTypeID { int1(1), int2(2), int3(3) } with { variant "useNumber"; variant "name as uncapitalized"; }; type enumerated LocationSource { int1(1), int2(2), int3(3) } with { variant "useNumber"; variant "name as uncapitalized"; }; type enumerated StdEventCats { int2(2), int3(3), int4(4) } with { variant "useNumber"; variant "name as uncapitalized"; }; type enumerated Operation { int1(1), int2(2), int3(3), int4(4), int5(5) } with { variant "useNumber"; variant "name as uncapitalized"; }; type enumerated ResponseType { int1(1), int2(2), int3(3) } with { variant "useNumber"; variant "name as uncapitalized"; }; type enumerated ResultContent { int0(0), int1(1), int2(2), int3(3), int4(4), int5(5), int6(6), int7(7) } with { variant "useNumber"; variant "name as uncapitalized"; }; type enumerated DiscResType { int1(1), int2(2) } with { variant "useNumber"; variant "name as uncapitalized"; }; type enumerated ResponseStatusCode { int1000(1000), int2000(2000), int2001(2001), int2002(2002), int2004(2004), int4000(4000), int4004(4004), int4005(4005), int4008(4008), int4101(4101), int4102(4102), int4103(4103), int4104(4104), int4105(4105), int4106(4106), int4107(4107), int4108(4108), int4109(4109), int4110(4110), int5000(5000), int5001(5001), int5103(5103), int5105(5105), int5106(5106), int5203(5203), int5204(5204), int5205(5205), int5206(5206), int5207(5207), int5209(5209), int6003(6003), int6005(6005), int6010(6010), int6020(6020), int6021(6021), int6022(6022), int6023(6023), int6024(6024), int6025(6025), int6026(6026), int6028(6028), int6029(6029) } with { variant "useNumber"; variant "name as uncapitalized"; }; type enumerated RequestStatus { int1(1), int2(2), int3(3), int4(4) } with { variant "useNumber"; variant "name as uncapitalized"; }; type enumerated MemberType { int0(0), int1(1), int2(2), int3(3), int4(4), int5(5), int6(6), int7(7), int8(8), int9(9), int10(10), int11(11), int12(12), int13(13), int14(14), int15(15), int16(16), int17(17), int18(18), int19(19), int20(20), int21(21), int22(22), int23(23), int10001(10001), int10002(10002), int10003(10003), int10004(10004), int10009(10009), int10010(10010), int10013(10013), int10014(10014), int10016(10016), int10018(10018), int20001(20001), int20002(20002) } with { variant "useNumber"; variant "name as uncapitalized"; }; type enumerated ConsistencyStrategy { int1(1), int2(2), int3(3) } with { variant "useNumber"; variant "name as uncapitalized"; }; type enumerated CmdType { int1(1), int2(2), int3(3), int4(4), int5(5), int6(6), int7(7) } with { variant "useNumber"; variant "name as uncapitalized"; }; type enumerated ExecModeType { int1(1), int2(2), int3(3), int4(4) } with { variant "useNumber"; variant "name as uncapitalized"; }; type enumerated ExecStatusType { int1(1), int2(2), int3(3), int4(4), int5(5), int6(6) } with { variant "useNumber"; variant "name as uncapitalized"; }; type enumerated ExecResultType { int1(1), int2(2), int3(3), int4(4), int5(5), int6(6), int7(7), int8(8), int9(9), int10(10), int11(11), int12(12), int13(13), int14(14), int15(15), int16(16), int19(19), int20(20), int21(21), int22(22), int23(23), int24(24), int25(25), int26(26), int27(27), int28(28), int29(29), int30(30) } with { variant "useNumber"; variant "name as uncapitalized"; }; type enumerated PendingNotification { int1(1), int2(2) } with { variant "useNumber"; variant "name as uncapitalized"; }; type enumerated NotificationContentType { int1(1), int2(2), int3(3) } with { variant "useNumber"; variant "name as uncapitalized"; }; type enumerated NotificationEventType { int1(1), int2(2), int3(3), int4(4) } with { variant "useNumber"; variant "name as uncapitalized"; }; type enumerated Status { int1(1), int2(2), int3(3) } with { variant "useNumber"; variant "name as uncapitalized"; }; type enumerated BatteryStatus { int1(1), int2(2), int3(3), int4(4), int5(5), int6(6), int7(7) } with { variant "useNumber"; variant "name as uncapitalized"; }; type enumerated MgmtDefinition { int0(0), int1001(1001), int1002(1002), int1003(1003), int1004(1004), int1005(1005), int1006(1006), int1007(1007), int1008(1008), int1009(1009), int1010(1010), int1011(1011), int1012(1012), int1013(1013), int1014(1014), int1015(1015), int1016(1016), int1017(1017), int1018(1018), int1019(1019) } with { variant "useNumber"; variant "name as uncapitalized"; }; type enumerated LogTypeId { int1(1), int2(2), int3(3), int4(4), int5(5) } with { variant "useNumber"; variant "name as uncapitalized"; }; type enumerated LogStatus { int1(1), int2(2), int3(3), int4(4), int5(5) } with { variant "useNumber"; variant "name as uncapitalized"; }; type enumerated EventType { int1(1), int2(2), int3(3) } with { variant "useNumber"; variant "name as uncapitalized"; }; type enumerated StatsRuleStatusType { int1(1), int2(2) } with { variant "useNumber"; variant "name as uncapitalized"; }; type enumerated StatModelType { int1(1) } with { variant "useNumber"; variant "name as uncapitalized"; }; type enumerated EncodingType { int0(0), int1(1), int2(2) } with { variant "useNumber"; variant "name as uncapitalized"; }; type enumerated AccessControlOperations { int1(1), int2(2), int3(3), int4(4), int5(5), int6(6), int7(7), int8(8), int9(9), int10(10), int11(11), int12(12), int13(13), int14(14), int15(15), int16(16), int17(17), int18(18), int19(19), int20(20), int21(21), int22(22), int23(23), int24(24), int25(25), int26(26), int27(27), int28(28), int29(29), int30(30), int31(31), int32(32), int33(33), int34(34), int35(35), int36(36), int37(37), int38(38), int39(39), int40(40), int41(41), int42(42), int43(43), int44(44), int45(45), int46(46), int47(47), int48(48), int49(49), int50(50), int51(51), int52(52), int53(53), int54(54), int55(55), int56(56), int57(57), int58(58), int59(59), int60(60), int61(61), int62(62), int63(63) } with { variant "useNumber"; variant "name as uncapitalized"; }; type enumerated SRole_ID { x01_001, x02_001, x02_002, x02_003, x02_004, x03_001, x04_001, x05_001, x06_001, x07_001, x08_001 } with { variant "text 'x01_001' as '01-001'"; variant "text 'x02_001' as '02-001'"; variant "text 'x02_002' as '02-002'"; variant "text 'x02_003' as '02-003'"; variant "text 'x02_004' as '02-004'"; variant "text 'x03_001' as '03-001'"; variant "text 'x04_001' as '04-001'"; variant "text 'x05_001' as '05-001'"; variant "text 'x06_001' as '06-001'"; variant "text 'x07_001' as '07-001'"; variant "text 'x08_001' as '08-001'"; variant "name as 'SRole-ID'"; }; type enumerated FilterUsage { int1(1), int2(2) } with { variant "useNumber"; variant "name as uncapitalized"; }; type record EventConfig { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime, XSD.ID creator, XSD.String eventID, EventType eventType, Timestamp eventStart optional, Timestamp eventEnd optional, record of Operation operationType, XSD.NonNegativeInteger dataSize optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of Subscription subscription_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (operationType) "list"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.subscription_list) "untagged"; variant (choice.subscription_list[-]) "name as 'subscription'"; }; type record EventLog { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute, MgmtDefinition mgmtDefinition, ListOfURIs objectIDs optional, ListOfURIs objectPaths optional, XSD.String description optional, LogTypeId logTypeId, XSD.String logData, LogStatus logStatus, XSD.Boolean logStart, XSD.Boolean logStop, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of Subscription subscription_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; //variant (logStart) "text 'true' as '1'"; //variant (logStart) "text 'false' as '0'"; //variant (logStop) "text 'true' as '1'"; //variant (logStop) "text 'false' as '0'"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.subscription_list) "untagged"; variant (choice.subscription_list[-]) "name as 'subscription'"; }; type record EventLogAnnc { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs, Timestamp expirationTime, XSD.AnyURI link, MgmtDefinition mgmtDefinition, ListOfURIs objectIDs optional, ListOfURIs objectPaths optional, XSD.String description optional, LogTypeId logTypeId optional, XSD.String logData optional, LogStatus logStatus optional, XSD.Boolean logStart optional, XSD.Boolean logStop optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of Subscription subscription_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; //variant (logStart) "text 'true' as '1'"; //variant (logStart) "text 'false' as '0'"; //variant (logStop) "text 'true' as '1'"; //variant (logStop) "text 'false' as '0'"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.subscription_list) "untagged"; variant (choice.subscription_list[-]) "name as 'subscription'"; }; type record ExecInstance { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime, ExecStatusType execStatus, ExecResultType execResult, XSD.Boolean execDisable optional, NodeID execTarget, ExecModeType execMode optional, XSD.Duration execFrequency optional, XSD.Duration execDelay optional, XSD.NonNegativeInteger execNumber optional, ExecReqArgsListType execReqArgs optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of Subscription subscription_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; //variant (execDisable) "text 'true' as '1'"; //variant (execDisable) "text 'false' as '0'"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.subscription_list) "untagged"; variant (choice.subscription_list[-]) "name as 'subscription'"; }; type record Firmware { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute, MgmtDefinition mgmtDefinition, ListOfURIs objectIDs optional, ListOfURIs objectPaths optional, XSD.String description optional, XSD.String version, XSD.String firmwareName, XSD.AnyURI uRL, XSD.Boolean update, ActionStatus updateStatus, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of Subscription subscription_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; variant (uRL) "name as capitalized"; //variant (update) "text 'true' as '1'"; //variant (update) "text 'false' as '0'"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.subscription_list) "untagged"; variant (choice.subscription_list[-]) "name as 'subscription'"; }; type record FirmwareAnnc { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs, Timestamp expirationTime, XSD.AnyURI link, MgmtDefinition mgmtDefinition, ListOfURIs objectIDs optional, ListOfURIs objectPaths optional, XSD.String description optional, XSD.String version optional, XSD.String firmwareName optional, XSD.AnyURI uRL optional, XSD.Boolean update optional, ActionStatus updateStatus optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of Subscription subscription_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (uRL) "name as capitalized"; //variant (update) "text 'true' as '1'"; //variant (update) "text 'false' as '0'"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.subscription_list) "untagged"; variant (choice.subscription_list[-]) "name as 'subscription'"; }; type record Group { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute, XSD.ID creator optional, MemberType memberType, XSD.NonNegativeInteger currentNrOfMembers, XSD.PositiveInteger maxNrOfMembers, record of XSD.AnyURI memberIDs, ListOfURIs membersAccessControlPolicyIDs optional, XSD.Boolean memberTypeValidated, ConsistencyStrategy consistencyStrategy optional, XSD.String groupName optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of Subscription subscription_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; variant (memberIDs) "list"; //variant (memberTypeValidated) "text 'true' as '1'"; //variant (memberTypeValidated) "text 'false' as '0'"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.subscription_list) "untagged"; variant (choice.subscription_list[-]) "name as 'subscription'"; }; type record GroupAnnc { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs, Timestamp expirationTime, XSD.AnyURI link, MemberType memberType optional, XSD.NonNegativeInteger currentNrOfMembers optional, XSD.PositiveInteger maxNrOfMembers optional, record of XSD.AnyURI memberIDs, ListOfURIs membersAccessControlPolicyIDs optional, XSD.Boolean memberTypeValidated optional, ConsistencyStrategy consistencyStrategy optional, XSD.String groupName optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of Subscription subscription_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (memberIDs) "list"; //variant (memberTypeValidated) "text 'true' as '1'"; //variant (memberTypeValidated) "text 'false' as '0'"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.subscription_list) "untagged"; variant (choice.subscription_list[-]) "name as 'subscription'"; }; type record LocationPolicy { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute, LocationSource locationSource, XSD.Duration locationUpdatePeriod optional, NodeID locationTargetID optional, XSD.AnyURI locationServer optional, XSD.AnyURI locationContainerID optional, XSD.String locationContainerName optional, XSD.String locationStatus, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of union { Subscription subscription } choice_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.choice_list) "untagged"; variant (choice.choice_list[-]) "untagged"; }; type record LocationPolicyAnnc { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs, Timestamp expirationTime, XSD.AnyURI link, LocationSource locationSource optional, XSD.Duration locationUpdatePeriod optional, NodeID locationTargetID optional, XSD.AnyURI locationServer optional, XSD.AnyURI locationContainerID optional, XSD.String locationContainerName optional, XSD.String locationStatus optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; }; type record M2mServiceSubscriptionProfile { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime, record of SRole_ID serviceRoles, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of union { ServiceSubscribedNode serviceSubscribedNode, Subscription subscription } choice_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (serviceRoles) "list"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.choice_list) "untagged"; variant (choice.choice_list[-]) "untagged"; }; type record Memory { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute, MgmtDefinition mgmtDefinition, ListOfURIs objectIDs optional, ListOfURIs objectPaths optional, XSD.String description optional, XSD.UnsignedLong memAvailable, XSD.UnsignedLong memTotal, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of Subscription subscription_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.subscription_list) "untagged"; variant (choice.subscription_list[-]) "name as 'subscription'"; }; type record MemoryAnnc { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs, Timestamp expirationTime, XSD.AnyURI link, MgmtDefinition mgmtDefinition, ListOfURIs objectIDs optional, ListOfURIs objectPaths optional, XSD.String description optional, XSD.UnsignedLong memAvailable optional, XSD.UnsignedLong memTotal optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of Subscription subscription_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.subscription_list) "untagged"; variant (choice.subscription_list[-]) "name as 'subscription'"; }; type record MgmtCmd { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime, XSD.String description optional, CmdType cmdType, ExecReqArgsListType execReqArgs optional, XSD.Boolean execEnable, NodeID execTarget, ExecModeType execMode optional, XSD.Duration execFrequency optional, XSD.Duration execDelay optional, XSD.NonNegativeInteger execNumber optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of union { ExecInstance execInstance, Subscription subscription } choice_list } choice } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; //variant (execEnable) "text 'true' as '1'"; //variant (execEnable) "text 'false' as '0'"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.choice_list) "untagged"; variant (choice.choice_list[-]) "untagged"; }; type record Node { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute, NodeID nodeID, XSD.ID hostedCSELink optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of union { Memory memory, Battery battery, AreaNwkInfo areaNwkInfo, AreaNwkDeviceInfo areaNwkDeviceInfo, Firmware firmware, Software software, DeviceInfo deviceInfo, DeviceCapability deviceCapability, Reboot reboot, EventLog eventLog, CmdhPolicy cmdhPolicy, ActiveCmdhPolicy activeCmdhPolicy, Subscription subscription } choice_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.choice_list) "untagged"; variant (choice.choice_list[-]) "untagged"; }; type record NodeAnnc { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs, Timestamp expirationTime, XSD.AnyURI link, NodeID nodeID, XSD.ID hostedCSELink optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of union { MemoryAnnc memoryAnnc, BatteryAnnc batteryAnnc, AreaNwkInfoAnnc areaNwkInfoAnnc, AreaNwkDeviceInfoAnnc areaNwkDeviceInfoAnnc, FirmwareAnnc firmwareAnnc, SoftwareAnnc softwareAnnc, DeviceInfoAnnc deviceInfoAnnc, DeviceCapabilityAnnc deviceCapabilityAnnc, RebootAnnc rebootAnnc, EventLogAnnc eventLogAnnc, Subscription subscription } choice_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.choice_list) "untagged"; variant (choice.choice_list[-]) "untagged"; }; type Notification_1 Notification with { variant "name as uncapitalized"; variant "element"; }; type AggregatedNotification_1 AggregatedNotification with { variant "name as uncapitalized"; variant "element"; }; type record AggregatedNotification_1 { record of Notification notification_list } with { variant "name as 'aggregatedNotification'"; variant (notification_list) "untagged"; variant (notification_list[-]) "name as 'notification'"; }; type record AggregatedNotification_1 { record of Notification notification_list } with { variant "name as 'aggregatedNotification'"; variant (notification_list) "untagged"; variant (notification_list[-]) "name as 'notification'"; }; //FIXME To be added type union Representation { anytype resource, ResponsePrimitive responsePrimitive }; type record Notification_1 { record { //XSD.AnyType representation optional, To be exchanged by Representation Representation representation optional, record { XSD.AnyType representation optional, record { Operation operation optional, XSD.ID originator optional } operationMonitor optional, NotificationEventType notificationEventType optional } notificationEvent optional, XSD.Boolean verificationRequest optional, XSD.Boolean subscriptionDeletion optional, XSD.AnyURI subscriptionReference optional, XSD.ID creator optional, XSD.AnyURI notificationForwardingURI optional } with { variant "name as 'notification'"; //variant (verificationRequest) "text 'true' as '1'"; //variant (verificationRequest) "text 'false' as '0'"; //variant (subscriptionDeletion) "text 'true' as '1'"; //variant (subscriptionDeletion) "text 'false' as '0'"; }; type record PollingChannel { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, Timestamp expirationTime } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; }; type record Reboot { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute, MgmtDefinition mgmtDefinition, ListOfURIs objectIDs optional, ListOfURIs objectPaths optional, XSD.String description optional, XSD.Boolean reboot, XSD.Boolean factoryReset, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of Subscription subscription_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; //variant (reboot) "text 'true' as '1'"; //variant (reboot) "text 'false' as '0'"; //variant (factoryReset) "text 'true' as '1'"; //variant (factoryReset) "text 'false' as '0'"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.subscription_list) "untagged"; variant (choice.subscription_list[-]) "name as 'subscription'"; }; type record RebootAnnc { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs, Timestamp expirationTime, XSD.AnyURI link, MgmtDefinition mgmtDefinition, ListOfURIs objectIDs optional, ListOfURIs objectPaths optional, XSD.String description optional, XSD.Boolean reboot optional, XSD.Boolean factoryReset optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of Subscription subscription_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; //variant (reboot) "text 'true' as '1'"; //variant (reboot) "text 'false' as '0'"; //variant (factoryReset) "text 'true' as '1'"; //variant (factoryReset) "text 'false' as '0'"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.subscription_list) "untagged"; variant (choice.subscription_list[-]) "name as 'subscription'"; }; type record RemoteCSE { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute, CseTypeID cseType optional, PoaList pointOfAccess optional, XSD.AnyURI cSEBase, XSD.ID cSE_ID, ExternalID m2M_Ext_ID optional, TriggerRecipientID trigger_Recipient_ID optional, XSD.Boolean requestReachability, XSD.AnyURI nodeLink optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of union { Container container, ContainerAnnc containerAnnc, Group group_, GroupAnnc groupAnnc, AccessControlPolicy accessControlPolicy, AccessControlPolicyAnnc accessControlPolicyAnnc, Subscription subscription, PollingChannel pollingChannel, Schedule schedule, NodeAnnc nodeAnnc, RemoteCSEAnnc remoteCSEAnnc, AEAnnc aEAnnc, LocationPolicyAnnc locationPolicyAnnc } choice_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; variant (cSEBase) "name as capitalized"; variant (cSE_ID) "name as 'CSE-ID'"; variant (m2M_Ext_ID) "name as 'M2M-Ext-ID'"; variant (trigger_Recipient_ID) "name as 'Trigger-Recipient-ID'"; //variant (requestReachability) "text 'true' as '1'"; //variant (requestReachability) "text 'false' as '0'"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.choice_list) "untagged"; variant (choice.choice_list[-]) "untagged"; variant (choice.choice_list[-].group_) "name as 'group'"; variant (choice.choice_list[-].aEAnnc) "name as capitalized"; }; type record RemoteCSEAnnc { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs, Timestamp expirationTime, XSD.AnyURI link, CseTypeID cseType optional, PoaList pointOfAccess optional, XSD.AnyURI cSEBase optional, XSD.ID cSE_ID optional, XSD.Boolean requestReachability optional, XSD.AnyURI nodeLink optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of union { NodeAnnc nodeAnnc, Container container, ContainerAnnc containerAnnc, Group group_, GroupAnnc groupAnnc, AccessControlPolicy accessControlPolicy, AccessControlPolicyAnnc accessControlPolicyAnnc, Subscription subscription, PollingChannel pollingChannel, ScheduleAnnc scheduleAnnc, LocationPolicyAnnc locationPolicyAnnc, RemoteCSEAnnc remoteCSEAnnc, AEAnnc aEAnnc } choice_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (cSEBase) "name as capitalized"; variant (cSE_ID) "name as 'CSE-ID'"; //variant (requestReachability) "text 'true' as '1'"; //variant (requestReachability) "text 'false' as '0'"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.choice_list) "untagged"; variant (choice.choice_list[-]) "untagged"; variant (choice.choice_list[-].group_) "name as 'group'"; variant (choice.choice_list[-].aEAnnc) "name as capitalized"; }; type record RequestPrimitive { Operation operation, XSD.AnyURI to_, XSD.ID from_ optional, RequestID requestIdentifier, ResourceType resourceType optional, PrimitiveContent primitiveContent optional, XSD.AnyType role optional, Timestamp originatingTimestamp optional, AbsRelTimestamp requestExpirationTimestamp optional, AbsRelTimestamp resultExpirationTimestamp optional, AbsRelTimestamp operationExecutionTime optional, ResponseTypeInfo responseType optional, AbsRelTimestamp resultPersistence optional, ResultContent resultContent optional, EventCat eventCategory optional, XSD.Boolean deliveryAggregation optional, XSD.String groupRequestIdentifier optional, FilterCriteria filterCriteria optional, DiscResType discoveryResultType optional } with { variant "name as uncapitalized"; variant "element"; variant (to_) "name as 'to'"; variant (from_) "name as 'from'"; //variant (deliveryAggregation) "text 'true' as '1'"; //variant (deliveryAggregation) "text 'false' as '0'"; }; type AttributeList_1 AttributeList with { variant "name as uncapitalized"; variant "element"; }; type record Request { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime, XSD.NonNegativeInteger stateTag, Operation operation, XSD.AnyURI target, XSD.ID originator, RequestID requestID, MetaInformation metaInformation, PrimitiveContent primitiveContent, RequestStatus requestStatus, OperationResult operationResult, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of union { Subscription subscription } choice_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.choice_list) "untagged"; variant (choice.choice_list[-]) "untagged"; }; type record ResponsePrimitive { ResponseStatusCode responseStatusCode, RequestID requestIdentifier, PrimitiveContent primitiveContent optional, XSD.ID to_ optional, XSD.ID from_ optional, Timestamp originatingTimestamp optional, AbsRelTimestamp resultExpirationTimestamp optional, EventCat eventCategory optional } with { variant "name as uncapitalized"; variant "element"; variant (to_) "name as 'to'"; variant (from_) "name as 'from'"; }; type ResourceWrapper Resource with { variant "name as uncapitalized"; variant "element"; }; type ListOfURIs URIList with { variant "element"; }; type XSD.AnyURI URI with { variant "element"; }; type AggregatedResponse_1 AggregatedResponse with { variant "name as uncapitalized"; variant "element"; }; type XSD.String DebugInfo with { variant "name as uncapitalized"; variant "element"; }; type record ResourceWrapper { union { AccessControlPolicy accessControlPolicy, ActiveCmdhPolicy activeCmdhPolicy, AE aE, AreaNwkDeviceInfo areaNwkDeviceInfo, AreaNwkInfo areaNwkInfo, Battery battery, CmdhBuffer cmdhBuffer, CmdhDefaults cmdhDefaults, CmdhDefEcValue cmdhDefEcValue, CmdhEcDefParamValues cmdhEcDefParamValues, CmdhLimits cmdhLimits, CmdhNetworkAccessRules cmdhNetworkAccessRules, CmdhNwAccessRule cmdhNwAccessRule, CmdhPolicy cmdhPolicy, Container container, ContentInstance contentInstance, CSEBase cSEBase, Delivery delivery, DeviceCapability deviceCapability, DeviceInfo deviceInfo, EventConfig eventConfig, EventLog eventLog, ExecInstance execInstance, Firmware firmware, Group group_, LocationPolicy locationPolicy, M2mServiceSubscriptionProfile m2mServiceSubscriptionProfile, Memory memory, MgmtCmd mgmtCmd, Node node, Notification notification, PollingChannel pollingChannel, Reboot reboot, RemoteCSE remoteCSE, Request request, RequestPrimitive requestPrimitive, ResponsePrimitive responsePrimitive, Schedule schedule, ServiceSubscribedAppRule serviceSubscribedAppRule, ServiceSubscribedNode serviceSubscribedNode, Software software, StatsCollect statsCollect, StatsConfig statsConfig, Subscription subscription } choice, XSD.AnyURI uRI } with { variant "name as uncapitalized"; variant (choice) "untagged"; variant (choice.aE) "name as capitalized"; variant (choice.cSEBase) "name as capitalized"; variant (choice.group_) "name as 'group'"; variant (uRI) "name as capitalized"; }; type record AggregatedResponse_1 { record of ResponsePrimitive responsePrimitive_list } with { variant "name as 'aggregatedResponse'"; variant (responsePrimitive_list) "untagged"; variant (responsePrimitive_list[-]) "name as 'responsePrimitive'"; }; type record Schedule { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, Timestamp expirationTime, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute, ScheduleEntries scheduleElement, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of union { Subscription subscription } choice_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.choice_list) "untagged"; variant (choice.choice_list[-]) "untagged"; }; type record ScheduleAnnc { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, Timestamp expirationTime, XSD.AnyURI link, ScheduleEntries scheduleElement optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; }; type record ServiceSubscribedAppRule { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime, ListOfM2MID applicableCredIDs optional, ListOfM2MID allowedApp_IDs optional, ListOfM2MID allowedAEs optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of Subscription subscription_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (allowedApp_IDs) "name as 'allowedApp-IDs'"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.subscription_list) "untagged"; variant (choice.subscription_list[-]) "name as 'subscription'"; }; type record ServiceSubscribedNode { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime, NodeID nodeID, XSD.ID cSE_ID optional, record of DeviceID deviceIdentifier, ListOfURIs ruleLinks optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of Subscription subscription_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (cSE_ID) "name as 'CSE-ID'"; variant (deviceIdentifier) "list"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.subscription_list) "untagged"; variant (choice.subscription_list[-]) "name as 'subscription'"; }; type record Software { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute, MgmtDefinition mgmtDefinition, ListOfURIs objectIDs optional, ListOfURIs objectPaths optional, XSD.String description optional, XSD.String version, XSD.String softwareName, XSD.AnyURI uRL, XSD.Boolean install, XSD.Boolean uninstall, ActionStatus installStatus, XSD.Boolean activate_ optional, XSD.Boolean deactivate_ optional, ActionStatus activeStatus optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of Subscription subscription_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; variant (uRL) "name as capitalized"; //variant (install) "text 'true' as '1'"; //variant (install) "text 'false' as '0'"; //variant (uninstall) "text 'true' as '1'"; //variant (uninstall) "text 'false' as '0'"; variant (activate_) "name as 'activate'"; //variant (activate_) "text 'true' as '1'"; //variant (activate_) "text 'false' as '0'"; variant (deactivate_) "name as 'deactivate'"; //variant (deactivate_) "text 'true' as '1'"; //variant (deactivate_) "text 'false' as '0'"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.subscription_list) "untagged"; variant (choice.subscription_list[-]) "name as 'subscription'"; }; type record SoftwareAnnc { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs, Timestamp expirationTime, XSD.AnyURI link, MgmtDefinition mgmtDefinition, ListOfURIs objectIDs optional, ListOfURIs objectPaths optional, XSD.String description optional, XSD.String version optional, XSD.String softwareName optional, XSD.AnyURI uRL optional, XSD.Boolean install optional, XSD.Boolean uninstall optional, ActionStatus installStatus optional, XSD.Boolean activate_ optional, XSD.Boolean deactivate_ optional, ActionStatus activeStatus optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of Subscription subscription_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (uRL) "name as capitalized"; //variant (install) "text 'true' as '1'"; //variant (install) "text 'false' as '0'"; //variant (uninstall) "text 'true' as '1'"; //variant (uninstall) "text 'false' as '0'"; variant (activate_) "name as 'activate'"; //variant (activate_) "text 'true' as '1'"; //variant (activate_) "text 'false' as '0'"; variant (deactivate_) "name as 'deactivate'"; //variant (deactivate_) "text 'true' as '1'"; //variant (deactivate_) "text 'false' as '0'"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.subscription_list) "untagged"; variant (choice.subscription_list[-]) "name as 'subscription'"; }; type record StatsCollect { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime, XSD.ID creator, XSD.String statsCollectID, XSD.ID collectingEntityID, XSD.ID collectedEntityID, StatsRuleStatusType statsRuleStatus, StatModelType statModel, ScheduleEntries collectPeriod optional, XSD.String eventID optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of Subscription subscription_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.subscription_list) "untagged"; variant (choice.subscription_list[-]) "name as 'subscription'"; }; type record StatsConfig { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime, XSD.ID creator, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of union { EventConfig eventConfig, Subscription subscription } choice_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.choice_list) "untagged"; variant (choice.choice_list[-]) "untagged"; }; type record Subscription { XSD.NCName resourceName, ResourceType resourceType, XSD.ID resourceID, NhURI parentID, Timestamp creationTime, Timestamp lastModifiedTime, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime, EventNotificationCriteria eventNotificationCriteria optional, XSD.PositiveInteger expirationCounter optional, ListOfURIs notificationURI, XSD.AnyURI groupID optional, XSD.AnyURI notificationForwardingURI optional, BatchNotify batchNotify optional, RateLimit rateLimit optional, XSD.PositiveInteger preSubscriptionNotify optional, PendingNotification pendingNotification optional, XSD.PositiveInteger notificationStoragePriority optional, XSD.Boolean latestNotify optional, NotificationContentType notificationContentType, EventCat notificationEventCat optional, XSD.ID creator optional, XSD.AnyURI subscriberURI optional, union { ChildResourceRef childResource, Schedule schedule } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; //variant (latestNotify) "text 'true' as '1'"; //variant (latestNotify) "text 'false' as '0'"; variant (choice) "untagged"; }; type record EventNotificationCriteria { Timestamp createdBefore optional, Timestamp createdAfter optional, Timestamp modifiedSince optional, Timestamp unmodifiedSince optional, XSD.PositiveInteger stateTagSmaller optional, XSD.NonNegativeInteger stateTagBigger optional, Timestamp expireBefore optional, Timestamp expireAfter optional, XSD.NonNegativeInteger sizeAbove optional, XSD.PositiveInteger sizeBelow optional, record length(0 .. 5) of Operation operationMonitor_list, record of Attribute attribute_list, record length(0 .. 4) of NotificationEventType notificationEventType_list } with { variant "name as uncapitalized"; variant (operationMonitor_list) "untagged"; variant (operationMonitor_list[-]) "name as 'operationMonitor'"; variant (attribute_list) "untagged"; variant (attribute_list[-]) "name as 'attribute'"; variant (notificationEventType_list) "untagged"; variant (notificationEventType_list[-]) "name as 'notificationEventType'"; }; type record BatchNotify { XSD.NonNegativeInteger number, XSD.Duration duration } with { variant "name as uncapitalized"; }; type record RateLimit { XSD.NonNegativeInteger maxNrOfNotify optional, XSD.Duration timeWindow optional } with { variant "name as uncapitalized"; }; /* Additional types */ group optionalResourceTypes { //Added by @Naum type record AEAnnc_optional { XSD.NCName resourceName optional, ResourceType resourceType optional, XSD.ID resourceID optional, NhURI parentID optional, Timestamp creationTime optional, Timestamp lastModifiedTime optional, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime optional, XSD.AnyURI link optional, XSD.String appName optional, XSD.String app_ID optional, XSD.ID aE_ID optional, PoaList pointOfAccess optional, XSD.AnyURI ontologyRef optional, XSD.AnyURI nodeLink optional, XSD.Boolean requestReachability optional, Serializations contentSerialization optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of union { Container container, ContainerAnnc containerAnnc, Group group_, GroupAnnc groupAnnc, AccessControlPolicy accessControlPolicy, AccessControlPolicyAnnc accessControlPolicyAnnc, Subscription subscription, ScheduleAnnc scheduleAnnc } choice_list } choice optional } with { variant "element"; variant (resourceName) "attribute"; variant (app_ID) "name as 'App-ID'"; variant (aE_ID) "name as 'AE-ID'"; //variant (requestReachability) "text 'true' as '1'"; //variant (requestReachability) "text 'false' as '0'"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.choice_list) "untagged"; variant (choice.choice_list[-]) "untagged"; variant (choice.choice_list[-].group_) "name as 'group'"; }; type record AE_optional { XSD.NCName resourceName optional, ResourceType resourceType optional, XSD.ID resourceID optional, NhURI parentID optional, Timestamp creationTime optional, Timestamp lastModifiedTime optional, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime optional, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute optional, XSD.String appName optional, XSD.String app_ID optional, XSD.ID aE_ID optional, PoaList pointOfAccess optional, XSD.AnyURI ontologyRef optional, XSD.AnyURI nodeLink optional, XSD.Boolean requestReachability optional, Serializations contentSerialization optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of union { Container container, Group group_, AccessControlPolicy accessControlPolicy, Subscription subscription, PollingChannel pollingChannel, Schedule schedule } choice_list } choice optional } with { variant "element"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; variant (app_ID) "name as 'App-ID'"; variant (aE_ID) "name as 'AE-ID'"; //variant (requestReachability) "text 'true' as '1'"; //variant (requestReachability) "text 'false' as '0'"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.choice_list) "untagged"; variant (choice.choice_list[-]) "untagged"; variant (choice.choice_list[-].group_) "name as 'group'"; }; type record AccessControlPolicy_optional { XSD.NCName resourceName optional, ResourceType resourceType optional, XSD.ID resourceID optional, NhURI parentID optional, Timestamp creationTime optional, Timestamp lastModifiedTime optional, Labels labels optional, Timestamp expirationTime optional, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute optional, SetOfAcrs privileges optional, SetOfAcrs selfPrivileges optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of Subscription subscription_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.subscription_list) "untagged"; variant (choice.subscription_list[-]) "name as 'subscription'"; }; type record ContentInstance_optional { XSD.NCName resourceName optional, ResourceType resourceType optional, XSD.ID resourceID optional, NhURI parentID optional, Timestamp creationTime optional, Timestamp lastModifiedTime optional, Labels labels optional, Timestamp expirationTime optional, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute optional, XSD.NonNegativeInteger stateTag optional, XSD.ID creator optional, ContentInfo contentInfo optional, XSD.NonNegativeInteger contentSize optional, XSD.AnyURI ontologyRef optional, XSD.AnyType content optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; }; type record Container_optional { XSD.NCName resourceName optional, ResourceType resourceType optional, XSD.ID resourceID optional, NhURI parentID optional, Timestamp creationTime optional, Timestamp lastModifiedTime optional, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime optional, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute optional, XSD.NonNegativeInteger stateTag optional, XSD.ID creator optional, XSD.NonNegativeInteger maxNrOfInstances optional, XSD.NonNegativeInteger maxByteSize optional, XSD.NonNegativeInteger maxInstanceAge optional, XSD.NonNegativeInteger currentNrOfInstances optional, XSD.NonNegativeInteger currentByteSize optional, XSD.AnyURI locationID optional, XSD.AnyURI ontologyRef optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of union { ContentInstance contentInstance, Container container, Subscription subscription } choice_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.choice_list) "untagged"; variant (choice.choice_list[-]) "untagged"; }; //added by @Naum type record CSEBase_optional { XSD.NCName resourceName optional, ResourceType resourceType optional, XSD.ID resourceID optional, NhURI parentID optional, Timestamp creationTime optional, Timestamp lastModifiedTime optional, Labels labels optional, AcpType accessControlPolicyIDs optional, CseTypeID cseType optional, XSD.ID cSE_ID optional, record of ResourceType supportedResourceType optional, PoaList pointOfAccess optional, XSD.AnyURI nodeLink optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of union { RemoteCSE remoteCSE, Node node, AE aE, Container container, Group group_, AccessControlPolicy accessControlPolicy, Subscription subscription, MgmtCmd mgmtCmd, LocationPolicy locationPolicy, StatsConfig statsConfig, StatsCollect statsCollect, Request request, Delivery delivery, Schedule schedule, M2mServiceSubscriptionProfile m2mServiceSubscriptionProfile, ServiceSubscribedAppRule serviceSubscribedAppRule } choice_list } choice optional } with { variant "element"; variant (resourceName) "attribute"; variant (cSE_ID) "name as 'CSE-ID'"; variant (supportedResourceType) "list"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.choice_list) "untagged"; variant (choice.choice_list[-]) "untagged"; variant (choice.choice_list[-].aE) "name as capitalized"; variant (choice.choice_list[-].group_) "name as 'group'"; }; type record Group_optional { XSD.NCName resourceName optional, ResourceType resourceType optional, XSD.ID resourceID optional, NhURI parentID optional, Timestamp creationTime optional, Timestamp lastModifiedTime optional, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime optional, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute optional, XSD.ID creator optional, MemberType memberType optional, XSD.PositiveInteger currentNrOfMembers optional, XSD.PositiveInteger maxNrOfMembers optional, ListOfURIs memberIDs optional, ListOfURIs membersAccessControlPolicyIDs optional, XSD.Boolean memberTypeValidated optional, ConsistencyStrategy consistencyStrategy optional, XSD.String groupName optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of Subscription subscription_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; //variant (memberTypeValidated) "text 'true' as '1'"; //variant (memberTypeValidated) "text 'false' as '0'"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.subscription_list) "untagged"; variant (choice.subscription_list[-]) "name as 'subscription'"; }; type record PollingChannel_optional { XSD.NCName resourceName optional, ResourceType resourceType optional, XSD.ID resourceID optional, NhURI parentID optional, Timestamp creationTime optional, Timestamp lastModifiedTime optional, Labels labels optional, Timestamp expirationTime optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; }; type record Schedule_optional { XSD.NCName resourceName optional, ResourceType resourceType optional, XSD.ID resourceID optional, NhURI parentID optional, Timestamp creationTime optional, Timestamp lastModifiedTime optional, Labels labels optional, Timestamp expirationTime optional, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute optional, ScheduleEntries scheduleElement optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of union { Subscription subscription } choice_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.choice_list) "untagged"; variant (choice.choice_list[-]) "untagged"; }; //Added by @Naum type record ServiceSubscribedAppRule_optional { XSD.NCName resourceName optional, ResourceType resourceType optional, XSD.ID resourceID optional, NhURI parentID optional, Timestamp creationTime optional, Timestamp lastModifiedTime optional, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime optional, ListOfM2MID applicableCredIDs optional, ListOfM2MID allowedApp_IDs optional, ListOfM2MID allowedAEs optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of Subscription subscription_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (allowedApp_IDs) "name as 'allowedApp-IDs'"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.subscription_list) "untagged"; variant (choice.subscription_list[-]) "name as 'subscription'"; }; type record Subscription_optional { XSD.NCName resourceName optional, ResourceType resourceType optional, XSD.ID resourceID optional, NhURI parentID optional, Timestamp creationTime optional, Timestamp lastModifiedTime optional, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime optional, EventNotificationCriteria eventNotificationCriteria optional, XSD.PositiveInteger expirationCounter optional, ListOfURIs notificationURI optional, XSD.AnyURI groupID optional, XSD.AnyURI notificationForwardingURI optional, BatchNotify batchNotify optional, RateLimit rateLimit optional, XSD.PositiveInteger preSubscriptionNotify optional, PendingNotification pendingNotification optional, XSD.PositiveInteger notificationStoragePriority optional, XSD.Boolean latestNotify optional, NotificationContentType notificationContentType optional, EventCat notificationEventCat optional, XSD.ID creator optional, XSD.AnyURI subscriberURI optional, union { ChildResourceRef childResource, Schedule schedule } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; //variant (latestNotify) "text 'true' as '1'"; //variant (latestNotify) "text 'false' as '0'"; variant (choice) "untagged"; }; //@Martin type record LocationPolicy_optional { XSD.NCName resourceName optional, ResourceType resourceType optional, XSD.ID resourceID optional, NhURI parentID optional, Timestamp creationTime optional, Timestamp lastModifiedTime optional, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime optional, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute optional, LocationSource locationSource optional, XSD.Duration locationUpdatePeriod optional, NodeID locationTargetID optional, XSD.AnyURI locationServer optional, XSD.AnyURI locationContainerID optional, XSD.String locationContainerName optional, XSD.String locationStatus optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of union { Subscription subscription } choice_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.choice_list) "untagged"; variant (choice.choice_list[-]) "untagged"; }; } group invalidTypes { type record AE_update_invalid { Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp creationTime optional,//Invalid field to be used for BI tests Timestamp expirationTime optional, ListOfURIs announceTo optional, record of XSD.Token announcedAttribute optional, XSD.String appName optional, PoaList pointOfAccess optional, XSD.AnyURI ontologyRef optional, XSD.Boolean requestReachability optional }; type record ACP_update_invalid { Labels labels optional, Timestamp expirationTime optional, Timestamp creationTime optional,//Invalid field to be used for BI tests XSD.PositiveInteger expirationCounter optional,//Invalid field, non existing for ACP ListOfURIs announceTo optional, record of XSD.Token announcedAttribute optional, SetOfAcrs privileges optional, SetOfAcrs selfPrivileges optional } type record Container_update_invalid { Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp creationTime optional,//Invalid field to be used for BI tests (RO attributes) XSD.PositiveInteger expirationCounter optional,//Invalid field, non existing for Container Timestamp expirationTime optional, ListOfURIs announceTo optional, record of XSD.Token announcedAttribute optional, XSD.NonNegativeInteger maxNrOfInstances optional, XSD.NonNegativeInteger maxByteSize optional, XSD.NonNegativeInteger maxInstanceAge optional, XSD.AnyURI locationID optional, XSD.AnyURI ontologyRef optional } //TODO To double check type record ContentInstance_update_invalid { Labels labels optional, Timestamp creationTime optional,//Invalid field to be used for BI tests ListOfURIs announceTo optional, ContentInfo contentInfo optional, XSD.NonNegativeInteger contentSize optional, XSD.AnyURI ontologyRef optional, XSD.AnyType content_ optional } type record Group_update_invalid { Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp creationTime optional,//Invalid field to be used for BI tests XSD.PositiveInteger expirationCounter optional,//Invalid field, non existing for Group Timestamp expirationTime optional, ListOfURIs announceTo optional, record of XSD.Token announcedAttribute optional, XSD.NonNegativeInteger maxNrOfMembers optional, ListOfURIs memberIDs optional, ListOfURIs membersAccessControlPolicyIDs optional, XSD.String groupName optional } type record PollingChannel_update_invalid { Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp creationTime optional,//Invalid field to be used for BI tests XSD.PositiveInteger expirationCounter optional,//Invalid field, non existing for PollingChannel Timestamp expirationTime optional, XSD.AnyURI pollingChannelURI optional //TODO: To be double checked } type record Schedule_update_invalid { Labels labels optional, Timestamp creationTime optional,//Invalid field to be used for BI tests XSD.PositiveInteger expirationCounter optional,//Invalid field, non existing for Schedule Timestamp expirationTime optional, ListOfURIs announceTo optional, record of XSD.Token announcedAttribute optional, ScheduleEntries scheduleElement optional } type record Subscription_update_invalid { Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp creationTime optional,//Invalid field to be used for BI tests XSD.NonNegativeInteger maxNrOfInstances optional,//Invalid field, non existing for Subscription Timestamp expirationTime optional, EventNotificationCriteria eventNotificationCriteria optional, XSD.PositiveInteger expirationCounter optional, ListOfURIs notificationURI optional, XSD.AnyURI groupID optional, XSD.AnyURI notificationForwardingURI optional, BatchNotify batchNotify optional, RateLimit rateLimit optional, PendingNotification pendingNotification optional, XSD.PositiveInteger notificationStoragePriority optional, XSD.Boolean latestNotify optional, NotificationContentType notificationContentType optional, EventCat notificationEventCat optional } //@Martin type record LocationPolicy_update_invalid { Timestamp creationTime optional,//invalid field to be used for BI tests Timestamp lastModifiedTime optional,//invalid field to be used for BI tests Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime optional, LocationSource locationSource optional,//invalid field to be used for BI tests XSD.Duration locationUpdatePeriod optional, NodeID locationTargetID optional,//invalid field to be used for BI tests XSD.AnyURI locationServer optional,//invalid field to be used for BI tests XSD.AnyURI locationContainerID optional,//invalid field to be used for BI tests XSD.String locationContainerName optional, XSD.String locationStatus optional//invalid field to be used for BI tests } }//end group invalidTypes group otherTypes { type NhURI ParentID; type record MyResource { integer parentIndex, PrimitiveContent resource }; type record of MyResource MyResourcesList; type record of integer IntegerList; type enumerated AddressingFormat { e_cseRelative, e_spRelative, e_absolute } } } with { encode "XML"; variant "namespace as 'http://www.onem2m.org/xml/protocols' prefix 'm2m'"; variant "controlNamespace 'http://www.w3.org/2001/XMLSchema-instance' prefix 'xsi'"; extension "anytype AggregatedResponse, AggregatedNotification,Notification, ServiceSubscribedAppRule_optional, charstring, AnyURI, AttributeList, AE, AccessControlPolicy, AccessControlPolicy_optional, ACP_update_invalid, AE_optional, AE_update_invalid,AEAnnc_optional, Container_optional, CSEBase_optional, Container_update_invalid, ContentInstance_optional, ContentInstance_update_invalid, Group_optional, Group_update_invalid, Schedule_optional, Schedule_update_invalid, Subscription_optional, Subscription_update_invalid, PollingChannel_optional, PollingChannel_update_invalid, LocationPolicy_optional, LocationPolicy_update_invalid" }