AW: Project Things by Mozilla and the Web Thing API

Dear Benjamin

Thanks for keeping up the conversion so lively and helping us evaluating the current status. I saw a few key discussion points on which I would like to comment to better understand our approach.


> Is it not possible to have a core plain JSON vocabulary which can be extended
> with semantic markup in JSON-LD? Rather than two separate encodings.

JSON-LD puts a number of constraints onto the JSON structure to result in valid triples. To be able to make use of the existing tooling around Linked Data, triple stores, reasoning, etc., we must stick to valid JSON-LD in the way we do.

Once the formal model is standardized -- the JSON-LD serialization comes basically for free here -- we are happy to look into a more human-friendly serializations in pure JSON. It simply entails more work on standardizing a new representation format, converters to Linked Data, test suite, IANA registration, etc. Yet, Dave has been working on this individually already, the IG now bumped up the priority on this, and your format could actually be a way forward here.

I think we agree on the overall goal that the Thing Description is on the one hand machine-understandable, but on the other hand developer-friendly in the sense they are not confronted with any Semantic Web complexity.


> To be honest I still don't understand what the Scripting API actually is or what it has
> to do with the web. The web is made of resources linked by URLs, not function calls.
> All the terminology around runtimes and life-cycles reminds me a lot of the packaged
> app runtime the System Applications Working Group tried to create which also had
> nothing to do with the web and went nowhere.

In the Web, the browser with its standardized APIs plays a central role in realizing applications. The browser APIs, however, focus on interfacing with the user through a graphical UI / the DOM.

Thing companies, e.g., device manufacturers and vendors, identified the need for a similar standardized runtime environment for IoT application, which is not focusing on UIs, but on device and automation logic. Our approach is also fundamentally different to the System Applications Working Group, as we define a very narrow Thing API more comparable to the XMLHttpRequest Object. So, at first it will be Thing companies implementing this on their devices; at some point, browser vendors might want join in to close the link between devices and UIs. Maybe you can relate to the struggle of releasing apps for the different smartphone ecosystems -- which is also solved through (UI-centric) Web technology.

Overall, nobody is forced to use it. So why not simply accept that there are more than enough W3C Member organizations -- which are not limited to browser vendors anymore -- that agreed that they need this standard? Others can simply ignore it, no?

Best wishes,
Matthias

Received on Saturday, 15 July 2017 13:33:37 UTC