#445 Difference between available ontologies in building automation: Haystack vs oneM2M

Matthew Severini Wed 5 Oct 2016

I am new to this space, and I am trying to understand the differences between the available ontologies between the available semantics/ontologies in the building automation space. We have been looking at oneM2M recently and it seems to offer several advantages. First: they adopted the ETSI/ SAREF ontology, which by definition has semantics that encompass protocol requests from a large set of protocols. Also, because the ontology is defined in owl, it is possible to define interrelationships of entities, as this is what ontologies are for.

I am trying to understand what the benefits are of using what Haystack brings to the table that oneM2M doesn’t. I should probably include that I am coming at this from the point of view of an application developer. Our app will have to interface directly to the control network, and run analytics on the available data.

Are there other ontologies that I should be looking at as well?

Brian Frank Wed 5 Oct 2016

Haystack isn't really a formal ontology, but just a tagging model to easily add semantics to data that represents equipment and points. I've never really looked closely at oneM2M but just spending a bit of time poking around their specs, I would say its a lot more complicated than what we are doing. If you are familiar with how it works, then maybe you can help contrast to how you might do some basic typical things.

For example, how do you query a device for its list of points? In Haystack you make a GET request like this:

http://host/haystack/read?filter=point

Get get back a table in Zinc or JSON that looks like this:

ver:"3.0"
id,     dis,          point, his, kind,     unit, tz,        temp, sensor, power
@temp, "Temp Sensor", M,     M,   "Number", "°F", "New_York, M,    M,      
@kw,   "Demand",      M,     M,   "Number", "kW", "New_York,  ,    M,      N

Then how do you query some historical trend data for a given point? In Haystack that would look like this:

http://host/haystack/hisRead?id=@temp&range=today

Response in Zinc:

ver:"3.0"
ts,                                 val
2016-10-05T00:00:00-04:00 New_York, 73.0°F
2016-10-05T00:15:00-04:00 New_York, 74.2°F
2016-10-05T00:30:00-04:00 New_York, 74.5°F
2016-10-05T00:45:00-04:00 New_York, 74.6°F

I would say those are two extremely common M2M/IoT use cases worth contrasting if you want to help us understand how you do that in oneM2M.

Login or Signup to reply.