Observations
LwM2M Observation Relations are not persisted in the DB, they are stored only at runtime in the memory. Every Node (excluding Resource Instance Nodes) has an Is Observed State Variable by which Remote Manager is able to determine where an observation has been initiated. Upon restart the observations are lost but are then automatically re-initiated, meaning that a search is performed to gather information about the existing observations and an Observe request is sent for each of them.
LwM2M Attributes
In the LwM2M Resource Model structure, Attributes can be attached to Objects, Object Instances and Resources (referred to as O-Attributes, OI-Attributes, and R-Attributes) and their values can be assigned on more than one structure level. Where the same Attribute is assigned a value on different structure levels, its use is governed by specific rules of precedence, described in the official technical specification by OMA.
Generally, if an Attribute is set on Object level, it applies to its respective Resource levels as well. However, Remote Manager has to reflect the current states of all Attributes and on all levels, which is why it does not apply any "inheritance" or other representation logic for them.
This is better illustrated through the following examples:
If a Write-Attributes operation is triggered for an R-Attribute on Object level, the respective Resource Nodes have to "inherit" it. However, the LwM2M client may have a different representation of the attributes tree, which may lead to inaccurate results upon a subsequent Discover request on the Resource Node. For that reason Remote Manager will use the LwM2M client response to update only the Attributes of the selected node. If a request concerns Object Instance level, the response will return information only for the Object Instance level, without inheritance.
A Discover action on an Object Node will take only this Object's attributes and will show them in the "Attributes" State Variable.
The same applies to Write-Attributes - if a Write-Attributes operation is triggered for a Resource Node for example, only the Resource Node’s "Attributes" State Variable will be changed.