WebThingsIO / api

Web Thing API Specification
http://iot.mozilla.org/wot/
Other
164 stars 25 forks source link

Change links member to array of link relations - closes #67 closes #68 #74

Closed benfrancis closed 6 years ago

benfrancis commented 6 years ago

The consensus at the W3C (see https://github.com/w3c/wot-thing-description/issues/109) seems to be for a top level links member of the Thing Description to be an array which represents link relations along the lines of RFC 5988. That means links can have a rel, a href and a mediaType.

This is quite a lot more verbose than the current approach in our spec, but it is more flexible and builds on existing standards. For example it can be used to provide a link to an HTML UI for the thing or alternate resources using different formats and protocols.

I don't think we've actually implemented the links member in our gateway implementation yet, but it may have been implemented in some device framework implementations?

What do you think of this approach?

One thing I'm not sure about is what "rel" to use in various places. We might want to register "properties", "actions" and "events" with IANA as new link relation types for example.

Note that the W3C WG is also arguing to make the links on individual properties and events into arrays of link relations too, but I've filed a separate issue for that (#73) as we may want to do one but not the other.

mrstegeman commented 6 years ago

I'm fine with this. I implemented the links object in the webthing implementations I did, but they can very easily be changed. This seems much more flexible.