W3C home > Mailing lists > Public > public-wot-ig@w3.org > December 2016

RE: [Charter]: include both Scripting and REST API

From: Mccool, Michael <michael.mccool@intel.com>
Date: Fri, 9 Dec 2016 07:40:20 +0000
To: "Mccool, Michael" <michael.mccool@intel.com>, "Kis, Zoltan" <zoltan.kis@intel.com>, "Kovatsch, Matthias" <matthias.kovatsch@siemens.com>
CC: "dsr@w3.org" <dsr@w3.org>, "public-wot-ig@w3.org" <public-wot-ig@w3.org>, "dom@evrythng.com" <dom@evrythng.com>
Message-ID: <94B1DC03AB76B54E8C86625B98F8506A2FB81390@PGSMSX108.gar.corp.intel.com>
Zoltan has also proposed putting a standard RESTful API under the “Scripting APIs”.   I think this is interesting but we don’t actually have to change the charter to deliver it: if can be done, then we can cover it under the interpretation of delivering the Scripting API in “multiple languages”, interpreting a RESTful API as a language.   If we discover there is some step in the Thing lifecycle that can’t be easily covered with a RESTful API (say, discovery), then we can instead put it under Binding Templates as a target protocol.

Leaving the charter as it is gives us some flexibility.


From: Mccool, Michael [mailto:michael.mccool@intel.com]
Sent: Friday, December 9, 2016 16:06
To: Kis, Zoltan <zoltan.kis@intel.com>; Kovatsch, Matthias <matthias.kovatsch@siemens.com>
Cc: dsr@w3.org; public-wot-ig@w3.org; dom@evrythng.com
Subject: RE: [Charter]: include both Scripting and REST API

My personal opinion here is that we need both.   Currently the WG charter has the (a) the Scripting API as a normative specification and (b) “binding templates” for protocols, explicitly to target HTTP and CoAP-based protocols, as “informative”.

A REST API for HTTP/CoAP devices would be defined under (b), which could also include recommendations for how to build a “good” REST-based IoT device interface.

The proposed WG charter also states, however, that the Thing Description is the main deliverable.

In my opinion this is very important to position the W3C WoT standard as something that is “above” and “connects” other existing or emerging IoT standards like OCF, DDS, etc. rather than competing with them.   I see the TD acting as a bridge connecting thing APIs to RDF and the semantic web and it is my strong belief that the higher-level capabilities brought to the table by semantic processing is where the W3C can really make a contribution.

Standardizing a web-based RESTful interface for things would be useful, so sure, let’s provide some recommendations as part of the informative part of the standard.   But enabling the use of semantic processing across ANY IoT interface would be revolutionary.

I personally don’t really want to reopen the WG charter can of worms and delay the process yet again.  The rest of the industry is not standing still.

My suggestion is that we go with having the RESTful API be an informative recommendation for now, as part of the “Binding Templates” deliverable.   If we feel later that no, we really do need a normative standard, we can do that in another round of standardization in a couple of years.   At MOST I would add a normative deliverable for a RESTful standard to the WG charter (but then we get into a “your scope is too big” problem; although, I guess you could argue we have to do it anyway… to define a target for the HTTP/CoAP template bindings).

I don’t think a RESTful API standard for IoT devices is a replacement for a Thing Description standard; they are at different levels of abstraction.

Michael McCool

From: Kis, Zoltan [mailto:zoltan.kis@intel.com]
Sent: Friday, December 9, 2016 00:21
To: Kovatsch, Matthias <matthias.kovatsch@siemens.com<mailto:matthias.kovatsch@siemens.com>>
Cc: dsr@w3.org<mailto:dsr@w3.org>; public-wot-ig@w3.org<mailto:public-wot-ig@w3.org>; dom@evrythng.com<mailto:dom@evrythng.com>
Subject: Re: [Charter]: include both Scripting and REST API

Hi Matthias,

I agree with all your points, but I don't see how do they relate to this discussion.
We need to specify _how_ are we using REST for our use cases.
That work is better carried out in the WoT WG.
I don't understand what is not clear about the request.
Also, the proposal @domguinard mentioned defines the context quite well:

I try to understand/reformulate your concern: are you saying WoT does not need to standardize any REST API at all, _because_ a Scripting API is a better abstraction?

If that is the concern, then we have a divergent view on this in the group. Some members say REST API is enough and they are not even interested in Scripting API, some say Scripting API is enough and let's not do REST at all, some (like me) say we need both.

What about letting people choose what they need? Is it a problem if the WG would be working on both a REST and a Scripting API?
Best regards,

On Thu, Dec 8, 2016 at 2:27 PM, Kovatsch, Matthias <matthias.kovatsch@siemens.com<mailto:matthias.kovatsch@siemens.com>> wrote:
For a clearer discussion, could you maybe specify your assumptions of a REST API? Due to the different backgrounds of the group members, we need to be careful with wording...

Do you expect a specification how people have to name their resources, what request has to be sent, and what responses are to be expected?

Once this is clear, how does a Thing Description that has a common vocabulary to annotate links, encode forms, and provides a schema to enrich reusable representation formats not provide for a REST API?

Best regards

Sent from my phone, limitations might apply.

-----Original Message-----
From: Kis, Zoltan [zoltan.kis@intel.com<mailto:zoltan.kis@intel.com>]
Received: Thursday, 08 Dec 2016, 13:11
To: Dave Raggett [dsr@w3.org<mailto:dsr@w3.org>]
CC: Dominique Guinard [dom@evrythng.com<mailto:dom@evrythng.com>]; Public Web of Things IG [public-wot-ig@w3.org<mailto:public-wot-ig@w3.org>]
Subject: Re: [Charter]: include both Scripting and REST API
[We'd need to set the WoT github repo to send emails on issue comments...]
On Thu, Dec 8, 2016 at 1:36 PM, Dave Raggett <dsr@w3.org<mailto:dsr@w3.org>> wrote:
Just to point out that W3C already has a standard API for REST as part of the Open Web Platform, so we would need to justify why a new API is needed.

That's a good point. Which one did you mean? I have found these:
https://www.w3.org/2012/ldp/charter (expired), general spec here: https://www.w3.org/TR/ldp/

https://www.w3.org/community/hydra/ (http://www.hydra-cg.com/spec/latest/core/ )
The above are good input for WoT REST. The latter is a special application, with specific use cases (which are shared with the WoT Scripting API). We can't expect to work on a WoT REST API in that WG/CG, right? For instance Thing Descriptions are not discussed there, either.

We can discuss and then embrace, drop or transfer REST API work, but the point is, can we arrive to this in the WoT WG, and does the WoT WG charter allow working on that.

Received on Friday, 9 December 2016 07:40:57 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 19:27:08 UTC