Skip to content
/ eWoT Public

eWoT enables semantic interoperable IoT ecosystems

License

Notifications You must be signed in to change notification settings

oeg-upm/eWoT

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

eWoT

eWoT is an implementation that enables semantic interoperability for an IoT ecosystem. It relies on Thing Descriptions (TD) to profile the different IoT devices, and WoT-Mappings to translate their heterogeneus data into a normalised RDF modelled with a specific ontology. The ontologies endow for this purpose are the Thing Description and the WoT-Mapping; nevertheless they can be extended with any other to enhance contextual information of the IoT device.

Related paper: https://www.mdpi.com/1424-8220/20/3/822

Quickstart

Run the client jar with the following command

java -jar ewot.jar --server.port=9000 --server.repository=http://localhost:32768/repositories/discovery
  • The statement --server.port=9000 specifies that the client will be running on the port 9000. The port can be changed freely
  • The statement --server.repository=http://localhost:32768/repositories/discovery specifies the URL of a SPARQL endpoint where all the descriptions that this client can discover will be allocated. This can be changed freely as far as the triple store implements SPARQL 1.1

Registering a Thing Description

In order to include a new IoT device in the ecosystem, making it interoperable, a user must register in the SPARQL endpoint that eWoT relies on a Thing Description (TD). The thing description must be stored in a named graph which name is the subject that has the type core:Thing. The TD must contain a specification of where ther IoT device data is, by means of the Web of Things Thing Description ontology, and also, specify how such data is translated by means of a WoT-Mapping. Find below an example of TD with the WoT-Mappings.

## Issuing a SPARQL query in the ecosystem

In order to transparently query the ecosystem a SPARQL query must be issued to the endpoint http://localhost:9000/sparql. Alternativelly, if an user navigates with the browser to the very same address a GUI will be displayed where the SPARQL query could be written and its results displayed.