Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [om2m-dev] Question on LWM2M to OneM2M mapping

Hi Guillaume,

Thank you for taking time looking at this.

I have seen this and I see that there are two ways of doing this. Please let me know if I am correct.

My summary is that for LWM2M IPE, for each Object Instance, we create a <Container> with a set of <ContentInstance> that is either an encapsulation or a defined content-type. If the encapsulation is used, then all the attributes are stored in one shot; if the defined-content-type is used, then for each attribute, we need to create a <ContentInstance>…   Here are the details: please review and confirm that my understanding is correct…


I am actually thinking to create a content instance for each attribute. 

>From TS0001:

following are termed "Content Sharing Resources" in oneM2M Specifications for the purpose of referring to any of those resource types:

· container; · contentInstance; · flexContainer; · timeSeries; · timeSeriesInstance.


The <contentInstance> resource represents a data instance in the <container> resource. The content of the contentInstance can be encrypted. Unlike other resources, the <contentInstance> resource shall not be modified once created.



Actual content of a contentInstance. This content may be opaque data for understandable with the help of the contentInfo. This may, for example, be an image taken by a security camera, or a temperature measurement taken by a temperature sensor.

>From TS0005:

6.5 LWM2M Server Interactions


>From TS0014:

The present document limits Content Sharing Resources to <container> and <contentInstance> resources


In the scenarios depicted in Figure 5.1-1, the Hybrid and LWM2M Applications represent applications that implement the LWM2M Client role defined in the LWM2M Protocol

LWM2M IPEs provide the following types of interworking:


1) Interworking using the Content Sharing Resource for transparent transport of encoded LWM2M Objects that are available to AEs as depicted in Figure 5.3-1.

2) Interworking with full mapping of the semantics of LWM2M Objects to semantically enabled resources that are available to AEs as depicted in Figure 5.3-2.


The LWM2M IPE participation in the LWM2M Protocol as described in clause 5 does so in the role of a LWM2M Server to which LWM2M Applications (LWM2M Clients) interact. As a LWM2M Server, the IPE provides the following Architecture Aspects based on the LWM2M Protocol Aspects described in clause A.2:

· LWM2M Device and Endpoint Lifecycle (Client Registration).

· LWM2M Object Discovery (Client Registration, Device Management and Service Enablement).

· LWM2M Object Transport and Interworking (Device Management and Service Enablement).

· LWM2M Object Subscription and Notification (Information Reporting).

· LWM2M Interworking Proxy Entity Administration.

· LWM2M Client Provisioning (Bootstrap).



6.3.2 LWM2M Object Identifier Representation


For example the LWM2M Client could provide the following list of paths: </1/0>, </1/1>, </2/0>, </2/1>, </3/0>, </4/0>, </5>. This list of paths is a valid list of LWM2M Objects and LWM2M Object Instances in the CoRE Link Format [RFC6690], specifying that LWM2M Objects with OMNA Identifiers 1, 2, 3,4, and 5 are supported. The respective OMNA references are : urn:oma:lwm2m:oma:1, urn:oma:lwm2m:oma:2, urn:oma:lwm2m:oma:3, urn:oma:lwm2m:oma:4, urn:oma:lwm2m:oma:5.

Additionally, information is provided that LWM2M Object 1 (Server Object) and LWM2M Object 2 (Access Control Object) have 2 instances (Instance Identifiers 0 and 1); LWM2M Object 3 (Device Object) and LWM2M Object 4 (Connectivity Monitoring Object) have 1 instance each (0); LWM2M Object 5 is supported but no instance has been created yet for that LWM2M Object.


if the LWM2M Endpoint provided the following LWM2M Objects as part of the Client Registration Interface: </lwm2m>;rt="oma.lwm2m";ct=LWM2M+JSON,</1/0> would translate into a <container> resource with the following entries in the labels attribute: Iwked-Technology:LWM2M Iwked-Entity-Type:”urn:oma:lwm2m:oma:1” LWM2MPTH:"/lwm2m" Iwked-Entity-ID: "/1/0" Iwked-Content-Type:LWM2M+JSON Relevant Interworked Resource Settings

A LWM2M Object Instance is represented in oneM2M as a Content Sharing Resource with 2 direct children resource types: a <subscription> resource and a <contentInstance> resource when used with a <container> resource.



Step 003.1.1: On receiving the event of type 'E' (eventType 'E') the IPE performs a LWM2M READ request on the Object Instance of the targeted LWM2M Client.

Step 003.1.2: Once the targeted Object Instance is available to IPE, the IPE creates and populates with that data the <contentInstance> child-resource of the requested <container> resource.



Step 003.2: On receiving the event of type 'C' the IPE – via the Mca reference point – get the data from the created <contentInstance> resource and propagates the updated data to the related Object Instance in the LWM2M Client.


Table 7.2-1: Transparent Interworking Function Mapping Interworking Function Mapping

oneM2M Resource Attribute

Indication that a LWM2M Object or Object Instance is encapsulated in the <contentInstance> resource with the content type and encoding of the LWM2M Object or Object Instance.

<contentInstance> resource: labels. Value is "LWM2M-Object-Encapsulation"

The content type of the LWM2M Object or Object Instance based on the Content-Type option

<contentInstance>: contentInfo. Possible contentInfo values are translated from the LWM2M Content-Type option (see note).

NOTE: The LWM2M Technical Specification [3] defines the value to be used for the [encoding] if the Content-Type option is not present.


On Mon, Jan 30, 2017 at 3:03 PM, <guillaume.garzone@xxxxxxx> wrote:
Hello Santos,

Actually there several ways of working with LWM2M and oneM2M.
You can find more information in the TS-0005 ( regarding the mapping of Management Objects from oneM2M with OMA DM & OMA LWM2M resources. This part is correlated with device management policies.

On the other hand you have the interworking with LWM2M (TS-0014 that can either ways use application data or device management data with different ways of mapping it.

These two documents should help you understand better the connection between the two standards.

Guillaume, for the OM2M team.

Le 25 janv. 2017 à 18:24, Santos Das <santos.das@xxxxxxxxx> a écrit :


Reading more, it seems I need to create a container for DeviceInfo and then create one contentInstance containing all these variables.

Any help, pointers?


On Wed, Jan 25, 2017 at 10:01 PM, Santos Das <santos.das@xxxxxxxxx> wrote:
Hi All,

I am mapping the LWM2M objects to OneM2M Resource tree and have some questions.

I have started mapping the Device Info of the LWM2M object object.


From my reading on TS0001, What I understand is in the OMA tree, each of the attribute will be one container type (for example, Manufacturer will be a container resource) and the value of that will be contentInstance.


Is my understanding correct , or I am misreading ?

om2m-dev mailing list
To change your delivery options, retrieve your password, or unsubscribe from this list, visit

Back to the top