Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/oeg-upm/eWoT

eWoT enables semantic interoperable IoT ecosystems
https://github.com/oeg-upm/eWoT

discover distributed-access semantic-interoperability semantic-web sparql web-of-things

Last synced: 2 months ago
JSON representation

eWoT enables semantic interoperable IoT ecosystems

Awesome Lists containing this project

README

        

# 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](http://iot.linkeddata.es/def/wot/index-en.html) and the [WoT-Mapping](http://iot.linkeddata.es/def/wot-mappings/index-en.html); 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.