semantic discovery in the web of things

23
Fernando Serena María Poveda-Villalón Raúl García-Castro Semantic Discovery in the Web of Things [email protected] @MariaPovedaV Ontology Engineering Group Universidad Politécnica de Madrid 5 th June, 2017 EnWoT (Rome, Italy) This project has received funding from the European Union's Horizon 2020 research and innovation programme under grant agreement No H2020-688467

Upload: maria-poveda-villalon

Post on 21-Jan-2018

221 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Semantic Discovery in the Web of Things

Fernando SerenaMaría Poveda-Villalón

Raúl García-Castro

Semantic Discovery in the Web of Things

[email protected]@MariaPovedaV

Ontology Engineering GroupUniversidad Politécnica de Madrid

5th June, 2017EnWoT (Rome, Italy)

This project has received funding from the European Union's Horizon 2020 research and innovation programme under grant agreement No H2020-688467

Page 2: Semantic Discovery in the Web of Things

Semantic Discovery in the Web of Things

Introduction

2

§ IoT consumers cannot be asked to be aware of every possible aspect, platforms and individual things out thereo It is necessary to rely on mechanisms and services that enable

them to search for and discover what they want to consume.

§ Discovery is meant to cope and take advantage of the heterogeneity and large population of things in the IoTo A common data model for describing things, their features and

capabilities is required;o The W3C Web of Things WG is working on the Thing Description

(TD) data model.

§ The Web of Things aims to make everything that belongs to an IoT ecosystem part of the Webo All individual things accessible through a web interface may

belong to the WoT;o Along with the description of the features and capabilities, web

interfaces have to be described as well.

Page 3: Semantic Discovery in the Web of Things

Semantic Discovery in the Web of Things

Semantic Discovery in VICINITY

3

Consumers issue search criteriaresulting in the discovery of a set of (unknown) relevant web things

Clients are not only interested in whatweb things but also:

• Where: dereferenceable links for accessing the thing;

• How: metadata to be taken into account when invoking each link.

Page 4: Semantic Discovery in the Web of Things

Semantic Discovery in the Web of Things

Semantic Discovery in VICINITY

4

Page 5: Semantic Discovery in the Web of Things

Semantic Discovery in the Web of Things 5

Ontology development

Page 6: Semantic Discovery in the Web of Things

Semantic Discovery in the Web of Things

Ontology development process overview

6

Legend Activity§ Actor Output activity flow

Ontological requirements specification

Ontology implementation

Competency questions

§ Ont. Devel.§ Ont. Devel.§ Users§ Experts

Ontology maintenance

Issue tracker

§ Ont. Devel.§ Users§ Experts

Ontology

Ontology Publication

Online ontology

§ Ont. Devel.

Shared in online

spreadsheetssnapshot in documentation

Ontology code and documentation available online

Openly managed in GitHub

Openly reported in GitHub issue tracker:new needs, bugs, etc.

http://ontoology.linkeddata.es/

Page 7: Semantic Discovery in the Web of Things

Semantic Discovery in the Web of Things

Ontology requirement specification process

7

Requirement specification

Ontological requirements completion

Ontology implementation

Competency questions(verified)

§ Ont. Devel.§ Users§ Experts

Use case specification

Use cases

§ Ont. Devel.§ Users§ Experts

Ontology maintenance

Change requestsOntology

Data exchange

identification

Domain documentation

Purpose and scope

identification

Ontological requirements

proposal

ORSD formalization

Ontology purpose and

scope

Competency questions

(early stage)

ORSD document

§ Ont. Devel.§ Users§ Experts

§ Ont. Devel.§ [Users]

§ Ont. Devel.

���

§ Users§ Experts

Page 8: Semantic Discovery in the Web of Things

Semantic Discovery in the Web of Things

Ontology implementation

§ Ont. Devel.

Ontology maintenance

Issue tracker

§ Ont. Devel.§ Users§ Experts

Ontology

Ontology Publication

Online ontology

§ Ont. Devel.

Ontological requirements specification

Competency questions

§ Ont. Devel.§ Users§ Experts

Requirements from WoT WG

8

http://w3c.github.io/wot/current-practices/wot-practices

https://lists.w3.org/Archives/Public/public-wot-ig/2016Dec/0016.html

Page 9: Semantic Discovery in the Web of Things

Semantic Discovery in the Web of Things

Ontology requirements status overview

9

Ontology implementation

§ Ont. Devel.

Ontology maintenance

Issue tracker

§ Ont. Devel.§ Users§ Experts

Ontology

Ontology Publication

Online ontology

§ Ont. Devel.

Ontological requirements specification

Competency questions

§ Ont. Devel.§ Users§ Experts

Requirements

Ontology Extracted from Defined Implemented Closed Pending

WoT • W3C WebofThingsIG 34 15 11 8

Mappings • GatewayAPI• Developers 16 15 1 0

50 30 12 8

Page 10: Semantic Discovery in the Web of Things

Semantic Discovery in the Web of Things

Ontology implementation

10

Implementation

Ontological requirements specification

Encoding

Competency questions

§ Ont. Devel.§ Ont. Devel.§ Users§ Experts

Ontology maintenance

Issue tracker

§ Ont. Devel.§ Users§ Experts

Ontology code

Ontology Publication

Online ontology

§ Ont. Devel.

Ontology conceptualization

Ontology model

§ Ont. Devel.

Evaluation

§ Ont. Devel.

Validated ontology

��

Page 11: Semantic Discovery in the Web of Things

Semantic Discovery in the Web of Things

Implementation

Ontological requirements specification

Encoding

Competency questions

§ Ont. Devel.§ Ont. Devel.§ Users§ Experts

Ontology maintenance

Issue tracker

§ Ont. Devel.§ Users§ Experts

Ontology code

Ontology Publication

Online ontology

§ Ont. Devel.

Ontology conceptualization

Ontology model

§ Ont. Devel.

Evaluation

§ Ont. Devel.

Validated ontology

��

WoT ontology conceptualization

11

Page 12: Semantic Discovery in the Web of Things

Semantic Discovery in the Web of Things

Implementation

Ontological requirements specification

Encoding

Competency questions

§ Ont. Devel.§ Ont. Devel.§ Users§ Experts

Ontology maintenance

Issue tracker

§ Ont. Devel.§ Users§ Experts

Ontology code

Ontology Publication

Online ontology

§ Ont. Devel.

Ontology conceptualization

Ontology model

§ Ont. Devel.

Evaluation

§ Ont. Devel.

Validated ontology

��

Mapping ontology conceptualization

12

Page 13: Semantic Discovery in the Web of Things

Semantic Discovery in the Web of Things

Implementation

Ontological requirements specification

Encoding

Competency questions

§ Ont. Devel.§ Ont. Devel.§ Users§ Experts

Ontology maintenance

Issue tracker

§ Ont. Devel.§ Users§ Experts

Ontology code

Ontology Publication

Online ontology

§ Ont. Devel.

Ontology conceptualization

Ontology model

§ Ont. Devel.

Evaluation

§ Ont. Devel.

Validated ontology

��

WoT Ontology evaluation

13

Ontology requirements coverage

Experts validation

OOPS! http://oops.linkeddata.es

Page 14: Semantic Discovery in the Web of Things

Semantic Discovery in the Web of Things

Ontology publication

14

Ontologypublication

Ontological requirements specification

Ontology implementation

Competency questions

§ Ont. Devel.§ Ont. Devel.§ Users§ Experts

Ontology maintenance

Issue tracker

§ Ont. Devel.§ Users§ Experts

Ontology

Propose release candidate

Ontology

§ Ont. Devel.

Documentation

HTML documentation

§ Ont. Devel.

Online publication

Online access (content

negotiation)

§ Ont. Devel.

Page 15: Semantic Discovery in the Web of Things

Semantic Discovery in the Web of Things

WoT ontology publication - WoT

15

Ontology maintenance

Issue tracker

§ Ont. Devel.§ Users§ Experts

Ontological requirements specification

Competency questions

§ Ont. Devel.§ Users§ Experts

Ontology implementation

§ Ont. Devel.

Ontology

Ontology Publication

Online ontology

§ Ont. Devel.

http://iot.linkeddata.es/def/wot/

Ontology code

Output:Human oriented documentation

Output:Machine oriented code

Page 16: Semantic Discovery in the Web of Things

Semantic Discovery in the Web of Things

Ontology Network portal

16

http://vicinity.iot.linkeddata.es/vicinity/Ontology online documentation

GitHub repository for code

Issue tracker

Releases tracking

RequirementsOntology network overview

Page 17: Semantic Discovery in the Web of Things

Semantic Discovery in the Web of Things 17

Example

Page 18: Semantic Discovery in the Web of Things

Semantic Discovery in the Web of Things

Example (I)

18

ssn:MeasurementCapability ssn:Frequencyex:TemperatureSensor01MeasurementCapability

ex:TemperatureSensor01Frequency

ssn:hasMeasurementProperty

ssn:hasMeasurementCapability ex:TemperatureSensor01FrequencyValue

ssn:hasValue

core:Value

rdf:value “100“^^xsd:integer

wot:isMeasuredIn

om:Unit_of_measure

om:second-time

ex:TemperatureSensor01MeasurementeRange

ssn:hasMeasurementProperty ex:TemperatureSensor01MeasurementRangeValue

ssn:hasValue

core:Value

core:hasMaxValue “0“^^xsd:integer

wot:isMeasuredIn ssn:MeasurementRange

core:hasMinValue “40“^^xsd:integer

ssn:Resolutionex:TemperatureSensor

01Resolution

ssn:hasMeasurementPropertyex:TemperatureSensor01ResolutionValue

ssn:hasValue

core:Value

rdf:value “0.3“^^xsd:float

wot:isMeasuredIn

om:Unit_of_measure

om:degree_Celsius

ssn:Accuracyex:TemperatureSensor

01Accurary

ssn:hasMeasurementPropertyex:TemperatureSensor01AccuracyValue

ssn:hasValue

core:Value

rdf:value “1“^^xsd:integer

wot:isMeasuredIn

wot:providesInteractionPattern

ex:TemperatureSensor01

wot:Thing

wot:InteractionPattern

ex:TemperatureSensor01TempProp

wot:Property

wot:Event

wot:isWritable “false”^^xsd:boolean

xsd:double

wot:hasValueType

om:degree_Celsiuswot:providesInteractionPattern

wot:interactionName “Temperature“^^xsd:stringwot:thingName

“Temperature Sensor 01“^^xsd:string

wot:DataSchema wot:DataTypeex:TemperatureSensor01TempOutputDatawot:hasOutput

Data

core:serialNumber

“5072dd0b-c2f0-4744-9dd4-dff344d8e2bb“^^xsd:string

core:Thermometer

wot:isMeasuredIn

ex:TemperatureSensor01TempEvent

wot:interactionName “Temperature New Value“^^xsd:string

wot:isMeasuredIn

core:monitors

core:AverageTemperature

core:TemperatureAmbientProperty

core:monitors

core:monitors

om:Unit_of_measure

Name: Temperature_Sensor_01Type: ThermometerGUID: 5072dd0b-c2f0-4744-9dd4-dff344d8e2bbProperties:oTemperature:

• Name: Temperature• Observed Property: Average

temperature• Datatype: Double• Writable: no• Units of measure: ºC

Events:oTemperature:

• Name: Temperature New Value

• Observed Property: Average temperature

--------------------------------------Capabilities:• Frequency: 100 seconds• Resolution: 0.3 ºC• Accuracy: 1 ºC• Range: 0 - 40 ºC

Page 19: Semantic Discovery in the Web of Things

Semantic Discovery in the Web of Things

Example (II)

19

wot:providesInteractionPatternex:TemperatureSensor01

wot:Thing

wot:InteractionPattern

ex:TemperatureSensor01TempProp

wot:Property

wot:isWritable “false”^^xsd:boolean

xsd:double

wot:hasValueType

om:degree_Celsius

wot:interactionName “Temperature“^^xsd:stringwot:thingName

“Temperature Sensor 01“^^xsd:string

wot:DataSchema wot:DataTypeex:TemperatureSensor01TempOutputDatawot:hasOutput

Data

core:serialNumber

“5072dd0b-c2f0-4744-9dd4-dff344d8e2bb“^^xsd:string

core:Thermometer

wot:isMeasuredIn

wot:isMeasuredIn

core:AverageTemperature

core:TemperatureAmbientProperty

core:monitors

om:Unit_of_measure

geo:SpatialThing

wot:isAccessibleThrough

wot:Link

ex:TemperatureSensor01TempPropLink wot:hasMediaType

“http://localhost:5005/things/TemperatureSensor01/temp“^^xsd:string

wot:href

“application/json“^^xsd:string

Extended with access information for an interaction pattern

Page 20: Semantic Discovery in the Web of Things

Semantic Discovery in the Web of Things

Example (III)

20

core:describes

wot:Link

ex:TemperatureSensor01TD-AM1

map:AccessMapping

map:hasAccessMapping

ex:TemperatureSensor01AM-Link1 wot:hasMediaType

“http://localhost:5005/things/TemperatureSensor01/pos“^^xsd:string

wot:href

map:Mapping

ex:mapping1

ex:mapping2

“latitude“^^xsd:stringmap:key

“longitude“^^xsd:stringmap:key

geo:lat

geo:long

map:predicate

map:predicate

map:hasMapping

map:Mapping

map:mapsResourcesFrom

ex:TemperatureSensor01TD

core:ThingDescription

“application/json“^^xsd:string

map:hasMapping

wot:providesInteractionPatternex:TemperatureSensor01

wot:Thing

wot:InteractionPattern

ex:TemperatureSensor01TempProp

wot:Property

wot:isWritable “false”^^xsd:boolean

xsd:double

wot:hasValueType

om:degree_Celsius

wot:interactionName “Temperature“^^xsd:stringwot:thingName

“Temperature Sensor 01“^^xsd:string

wot:DataSchema wot:DataTypeex:TemperatureSensor01TempOutputDatawot:hasOutput

Data

core:serialNumber

“5072dd0b-c2f0-4744-9dd4-dff344d8e2bb“^^xsd:string

core:Thermometer

wot:isMeasuredIn

wot:isMeasuredIn

core:AverageTemperature

core:TemperatureAmbientProperty

core:monitors

om:Unit_of_measure

geo:SpatialThing

wot:isAccessibleThrough

wot:Link

ex:TemperatureSensor01TempPropLink wot:hasMediaType

“http://localhost:5005/things/TemperatureSensor01/temp“^^xsd:string

wot:href

“application/json“^^xsd:string

“40.451”geo:lat

“-3.7261”geo:long

ex:TemperatureSensor01

{“latitude”: 40.451, “longitude”:-3.7261

}

1

2 3

4

Page 21: Semantic Discovery in the Web of Things

Semantic Discovery in the Web of Things

Wrap up: Conclusions and future work

21

Conclusions

§ Semantic approach as for interoperability as a service

§ Two ontology modules provided

Future work

☞ Experiments within the project

☞ Online examples

☞ Ontology reuse☞ Semantic annotation

examples☞ Validation

Page 22: Semantic Discovery in the Web of Things

Semantic Discovery in the Web of Things

Questions?

22

Thanks for you attention!

About [email protected], [email protected]

About [email protected], [email protected]

Page 23: Semantic Discovery in the Web of Things

Fernando SerenaMaría Poveda-Villalón

Raúl García-Castro

Semantic Discovery in the Web of Things

[email protected]@MariaPovedaV

Ontology Engineering GroupUniversidad Politécnica de Madrid

5th June, 2017EnWoT (Rome, Italy)

This project has received funding from the European Union's Horizon 2020 research and innovation programme under grant agreement No H2020-688467