Re: Introduction of WebI2C and WebGPIO

> On 19 Oct 2015, at 20:31, Futomi Hatano <futomi.hatano@newphoria.co.jp> wrote:
> 
> It is not yet clear what is "WoT" for me.
> I thought that JavaScript APIs in web browsers for accessing local hardware components (GPIO, I2C, etc.) are also included in WoT...
> What does "Web" in the term "Web of Things" means for WoT IG?
> Protocols (including data formats) or JavaScript APIs or both?
> 
> Isn't WoT IG interested in JavaScript APIs for accessing local hardware components for now?
> I'd like to hear your honest advice.
> If not, sorry to bother you.



My 2 cents worth. 

The architecture of the Web is founded on 3 aspects:

  1. addressing
  2. declarative resources with links to other resources
  3. protocols for accessing resources

For the Web of pages, we have URLs, HTML and HTTP.

For the Web of things, we have URIs, thing descriptions, and a suite of protocols.

Whilst HTTP is great for accessing Web pages, it is less so for the bi-directional messaging for accessing remote sensors, actuators and other services, nor is it particularly good for pub-sub. HTTP is also too demanding when it comes to resource constrained devices.  As a result, the Web of Things has to work with a suite of protocols, where the protocols supported by a given server are chosen according to need.

Thing descriptions are formally based upon the resource description framework (RDF), but there can be multiple ways to serialise this.  A lightweight JSON-based serialisation is appropriate for resource constrained devices, to web developers who are fans of JSON, and to cloud based servers that need to deal with very high throughput of messages.

Thing descriptions may include links to other things, just as an HTML page can embed links to other pages on the same server or on other servers.

Servers can create things or proxies for things on other servers.  Web pages can do the same using JavaScript libraries, but are restricted to the protocols supported by the browser that executes the web page.

The behaviour of “things” can be expressed in a variety of languages, depending upon the server.  For web developers, JavaScript will be an appealing choice where practical.

Modern digital electronics use a variety of low level standards, e.g. GPIO pins, ADC, PWM, I2C, SPI, CAN, hardware timers, real-time clocks and so forth. The WoT IG could survey the software interfaces provided for these and assess the potential for standardisation.

p.s. I see that this thread now encourages 3 W3C mailing lists and wonder if we should prune that back to one?

—
   Dave Raggett <dsr@w3.org <mailto:dsr@w3.org>>

Received on Tuesday, 20 October 2015 08:17:31 UTC