RE: Call for WoT Implementations

Hi berni, hi all,



I'm glad you brought that topic up. Here are a few things I wanted to mention.



> I was looking for mail or wiki page that contains the arguments for that decision, but I haven't found anything. Is there something written? Can you give me a link?



I'm afraid nothing has been written regarding this so far. I presented Hydra and its possible interplay with the TD in an IG call (July 2015). Unfortunately, I couldn't find the minutes either, so I attached the slides. Now, why we haven't gone further with it? I'd say there weren't so many implementations of Hydra clients/servers which means it wasn't of much help as we started experimenting with WoT (I'm glad to hear you wrote C++ code for Hydra, by the way). So, instead, protocol bindings have been defined (see http://w3c.github.io/wot/current-practices/wot-practices.html#protocol-bindings). Now, things have evolved and we might want to consider aligning with Hydra again. For instance, we have lately become aware that we needed flexibility in defining interaction patterns (e.g. some would use PUT while some would use POST to update a Property) and Hydra might prove useful.



However, semantically speaking, there are a few things I hardly understand in Hydra. The fact that a Link or a IRI Template Mapping are dereferenceable resources (i.e. Hydra Resources) confuses me a bit. I have recently developed a proposal to semantically define terms like Thing, Property, Event, Action and Interaction that makes slightly different assumptions about Web resources and links. See https://github.com/vcharpenay/wot/blob/gh-pages/wot.owl (note: the slides I made last year ware not in line with this model anymore). Although my model and Hydra are compatible in a sense, they are not semantically equivalent.



> It will be a generic solution for any RDF data. Therefore I would like to have a clean separation of RDF data and API description.



I totally agree on that. However, I have doubts when I read your apartment example. There is no RDF data in it, only an API description, right? Just for clarification: most TD concepts (Thing, Property, Action, Event) are not supposed to be used to describe the API. On the contrary, they are abstract entities (e.g. temperature) or physical objects (building, computational device, ...). In WoT, a room or a thermometer are both "Things". The Web resources there are associated to (so that one can interact with them) are Thing Descriptions and the resources indicated by hrefs (that I call Interactions in my proposal). So, here, the separation seems rather clear to me.



> In the properties and actions of the Thing Description, names are used for referencing. That's serialization dependent.



Not quite. In the TD you are referring to, the name is only meant to provide human-readable information (like Hydra's "title"). There's nothing that prevents you from using "@id" for referencing (this is rather encouraged, in fact).



So, I'm looking forward to the next web-conference to discuss it more interactively. I'll also try to prepare some slides about the ontological model I propose for WoT.



Best regards,

Victor



From: Peintner, Daniel (ext) [mailto:daniel.peintner.ext@siemens.com]
Sent: Montag, 22. August 2016 13:54
To: bergi
Cc: Hydra; public-wot-ig@w3.org; public-web-of-things@w3.org
Subject: AW: Call for WoT Implementations



Hi bergi,

> I can try to join the next call, if you would like to discuss this topic.

I think that makes most sense. You can find webconf details on
https://www.w3.org/WoT/IG/wiki/IG_WebConf

Please let me know whether you can join this weeks call and how much time you would need to explain your point of view and we will arrange also time for discussions.

Michael Koster planned to look into Hydra also.

Thanks,

-- Daniel





  _____

Von: bergi [bergi@axolotlfarm.org]
Gesendet: Dienstag, 16. August 2016 23:10
An: Peintner, Daniel (ext) (CT RDA NEC EMB-DE)
Cc: Hydra; public-wot-ig@w3.org<mailto:public-wot-ig@w3.org>; public-web-of-things@w3.org<mailto:public-web-of-things@w3.org>
Betreff: Re: Call for WoT Implementations

Hi Daniel,

Am 11.08.2016 um 11:23 schrieb Peintner, Daniel (ext):
>> I have seen Hydra was mentioned in some older posts and wiki pages. Now
>> it looks like this group will create a new hypermedia API spec with the
>> Thing Description [3]. I was looking for mail or wiki page that contains
>> the arguments for that decision, but I haven't found anything. Is there
>> something written? Can you give me a link?
>
> Unfortunately I do not recall a discussion and scanning emails didn't
> help either.
> I added your comment under the "technical discussions" topic for the
> next webconf.
>
> Do you want to provide some further feedback or join a webconf to give
> some more insights?
>

Actually, I would like to solve problems one level higher. Because of
the increasing number of things, I expect rules for actuators will be
not be configured or programmed in the near future. Instead, machine
learning will be used. That's the problem I would like to solve. It will
be a generic solution for any RDF data. Therefore I would like to have a
clean separation of RDF data and API description. But the API
description should be defined for the RDF model. In the properties and
actions of the Thing Description [1], names are used for referencing.
That's serialization dependent. Also using the hrefs property requires
to define it for every instance. Hydra defines the operations for RDF
classes and RDF properties. Because of that, the named nodes of the
actual data can be used. For example, I've defined a class "Apartment"
with a property "room" [2]. The triples of the apartment point to the
rooms [3]. So by defining which rooms the apartment has, it also
describes where to call the operations. Hydra was defined for HTTP only.
But I think it would be easy to extend the existing spec for other
protocols or defining a new ontology which extends the Hydra ontology.

I can try to join the next call, if you would like to discuss this topic.

bergi

[1]
http://w3c.github.io/wot/current-practices/wot-practices.html#quick-start-td-samples
[2]
https://github.com/bergos/dark-horse-server/blob/master/public/vocab.ttl#L19
[3] http://dark-horse.bergnet.org/

Received on Tuesday, 23 August 2016 12:19:03 UTC