W3C home > Mailing lists > Public > public-wot-ig@w3.org > July 2017

Re: Project Things by Mozilla and the Web Thing API

From: Dave Raggett <dsr@w3.org>
Date: Sun, 9 Jul 2017 12:45:30 +0100
Message-Id: <3475AB22-CF72-49EB-943D-155F2B234DD8@w3.org>
Cc: public-wot-ig <public-wot-ig@w3.org>, public-wot-wg@w3.org
To: Benjamin Francis <bfrancis@mozilla.com>
Thanks for sharing this. It shows the value of using simple transparent JSON, and looks very close to my proposal for using JSON rather than JSOPNB-LD, which I implemented last year as a NodeJS server with HTTP for retrieving the JSON models, and WebSockets for messaging. See:

      https://github.com/w3c/wot/blob/master/proposals/dsr-td/td-draft-spec-dsr.md <https://github.com/w3c/wot/blob/master/proposals/dsr-td/td-draft-spec-dsr.md>

This builds upon an extensible type system for the interaction model for things, see:

      https://github.com/w3c/wot/blob/master/proposals/dsr-td/td-draft-spec-dsr.md <https://github.com/w3c/wot/blob/master/proposals/dsr-td/td-draft-spec-dsr.md>

In essence, I used the same approach to JSON as you, but devised a regular algorithm for mapping it to Linked Data, and an extensible set of data types for the interaction model exposed to applications.

You can see an extensive set of examples at:

     https://www.w3.org/WoT/demos/td2ttl/ <https://www.w3.org/WoT/demos/td2ttl/>
     https://www.w3.org/WoT/demos/td2ttl/oic.html <https://www.w3.org/WoT/demos/td2ttl/oic.html>
     https://www.w3.org/WoT/demos/td2ttl/m2m.html <https://www.w3.org/WoT/demos/td2ttl/m2m.html>

This shows that the approach is compatible with the device definitions from OCF and oneM2M.

Moreover the approach can be used with a wide range of protocols and is not restricted to REST.  I am about to start working on adding IoT standards drivers for OCF and oneM2M over CoAP, Bluetooth and so forth.

I am also exploring how to link the interaction models to semantic models as a basis for discovery, composition and adaptation to differences in  capabilities across vendors and IoT standards suites. The aim is to keep this simple and accessible to regular web developers.



> On 4 Jul 2017, at 19:27, Benjamin Francis <bfrancis@mozilla.com> wrote:
> 
> Hi all,
> 
> I wanted to give this group a heads up that last week we announced <https://hacks.mozilla.org/2017/06/building-the-web-of-things/> Project Things <http://iot.mozilla.org/> by Mozilla. This includes an open source Web of Things gateway <http://iot.mozilla.org/gateway/> implementation and a draft Web Thing API <http://iot.mozilla.org/wot/>.
> 
> You can read more about the rationale <http://iot.mozilla.org/specification/> behind our specification on the website but the basic idea is to take a more pragmatic and concrete approach to the Web of Things using existing web technologies, with a JSON based Web Thing Description format and a REST + WebSockets API. All of our source code <https://github.com/mozilla-iot/> is on GitHub.
> 
> The Web Thing Description <http://iot.mozilla.org/wot/#web-thing-description> format we've been working on is not dissimilar to the current draft <https://w3c.github.io/wot-thing-description> by the W3C Web of Things Working Group, but with less of a focus on RDF and the semantic web and more focus on a concrete JSON encoding which web developers can get started with straight away. (In this way it has some things in common with the W3C's Web App Manifest <https://www.w3.org/TR/appmanifest/> specification which went through several complex iterations at the System Applications Working Group <https://www.w3.org/2012/sysapps/> before a much simpler approach ultimately proved successful.)
> 
> The Web Thing Types <http://iot.mozilla.org/wot/#web-thing-types> are designed to be extensible with JSON-LD <http://iot.mozilla.org/wot/#extensibility-with-json-ld>, but this is secondary to defining the core description format. The Web Thing REST API <http://iot.mozilla.org/wot/#web-thing-rest-api> and Web Thing WebSocket API <http://iot.mozilla.org/wot/#web-thing-websocket-api> have similar use cases to the W3C WoT Working Group's Scripting API <https://w3c.github.io/wot-scripting-api/>, but again the focus is on defining a concrete programmable interface using existing web technologies rather than an abstract scripting API.
> 
> We have slightly different views regarding the approach to standardisation than the one described by the current WoT WG Charter (as communicated via our formal objections), but I hope we can continue to have productive conversations - particularly around the Web Thing Description format where I think we have a lot of common ground. I would particularly like to credit the Web Thing Model <http://model.webofthings.io/> member submission from members of the WoT IG and Web of Things community which did a lot to inspire our work and we're keen to hear from others with a like-minded pragmatic approach to this space.
> 
> We're really just getting started in IoT at Mozilla and we're excited to learn more through our open source implementation and through working closely with the hacker/maker/developer community. We look forward to receiving feedback <https://github.com/mozilla-iot/wot/issues>.
> 
> Best Wishes
> 
> Ben

Dave Raggett <dsr@w3.org> http://www.w3.org/People/Raggett
W3C champion for the Web of things
Received on Sunday, 9 July 2017 11:45:43 UTC

This archive was generated by hypermail 2.3.1 : Sunday, 9 July 2017 11:45:46 UTC