IPSO Smart Objects

View the Project on GitHub IPSO-Alliance/pub

Welcome to the public IPSO Repository.

Here you can find the XML templates of the IPSO Smart Object Registry with the current object set. The registry is intended for developers that are building products based on IPSO Objects, it is not intended to be used at runtime by applications.

Some of the objects are generic in nature, such as voltage, altitude or percentage, while others are more specialized like the Color Object or the Gyrometer Object. Actuators and Controllers are also defined such as timer or buzzer and Joystick and Level. All of these objects were found to be necessary on a variety of use case domains.

Object Representation

Objects and resources are implicitly mapped into the URI path hierarchy by following the OMA LWM2M object model, in which each URI path component sequentially represents the Object Type ID, the Object Instance ID and the Resource Type ID. More precisely the structure consists of three unsigned 16-bit integers separated by the character '/':

<object ID>/<object instance ID>/<resource ID>

For example, a temperature sensor example URI would be 3303/0/5700:

3300  -> Temperature Sensor
0     -> instance 0 of a Temperature Sensor
5700  -> resource having the current value or recent reading

Object Validation

Anybody can use composition to create new Objects from the existing ones. You would just need to validate them before submitting new ones. You can use 'xmllint' to validate against the LWM2M Schema.

# Run xmllint against one or multiple Objects Object 
$ xmllint --noout --schema LWM2M.xsd example.xml
# The output should be:
$ example.xml validates


You can check the documentation for the public documents we have released. Also the README has more introductory material.

Support or Contact

Having issues with the Objects, then please report them at the issue tracker or contact @jaimejim and we’ll help you sort it out.