=Paper=
{{Paper
|id=Vol-2043/paper-11
|storemode=property
|title=A Pattern-based Ontology for the Internet of Things
|pdfUrl=https://ceur-ws.org/Vol-2043/paper-11.pdf
|volume=Vol-2043
|authors=Aldo Gangemi,Raffaele Lillo,Giorgia Lodi,Andrea Giovanni Nuzzolese,Valentina Presutti
|dblpUrl=https://dblp.org/rec/conf/semweb/GangemiLLNP17
}}
==A Pattern-based Ontology for the Internet of Things==
A pattern-based ontology for the Internet of Things Aldo Gangemi1,2 , Raffaele Lillo3 , Giorgia Lodi2 , ? Andrea Giovanni Nuzzolese1, , and Valentina Presutti1 1 Semantic Technology Laboratory, ISTC-CNR, Rome, Italy 2 LIPN, Université Paris 13, Sorbone Cité, UMR CNRS, France 3 Digital Transformation Team, Italian Government, Rome, Italy Abstract. The Internet of Things (IoT) is about inter-networking real word objects in order to foster data exchange and communication among things. In this work we present the IoT Application Profile (IoT-AP) on- tology with a particular focus on the pattern-based design methodology used for modelling the ontology. Keywords: internet of things, ontology design patterns, ontology re-use 1 Introduction In recent years a lot of research has been carried out for realising a novel paradigm known as the Internet of Things (IoT). Basically, the IoT is about inter-networking real word objects (i.e. things), such as vehicles, roads, build- ings, etc. The inter-networking is realised by providing those things with sensors, actuators, and network connectivity for enabling data production and exchange. Nevertheless, the enhancement of real word objects with intelligent behaviours is still challenging. In this paper we present an ontology, named the IoT Appli- cation Profile (IoT-AP) ontology, for representing and modelling the knowledge within the domain of the Internet of Things. The focus of the paper is mainly on the Ontology Design Patterns re-used for modelling the ontologies and on the design methodology. The ontology is part of a wider ontology network, which has been designed in the context of a project founded by the Italian Govern- ment aimed at providing a big data framework for dealing with the Open Data coming from the Italian Public Administration (PA). The rest of the paper is organised as follows. Section 2 presents the related work, Section 3 presents the IoT-AP ontology, Section 4 presents a usage scenario. Finally, Section 5 presents the conclusions and future work. 2 Related Work The main considerable effort to offer a comprehensive ontology for the IoT is the Semantic Sensor Network ontology4 [2] (SSN), which is currently a W3C ? Corresponding author: andrea.nuzzolese@istc.cnr.it 4 https://www.w3.org/TR/vocab-ssn/ 2 Aldo Gangemi et al. candidate recommendation. SSN is built on top of the the SOSA ontology5 and describes sensors and their observations, the involved procedures, the studied fea- tures of interest, the samples used to do so, and the observed properties, as well as actuators. More recently, the IoT-Lite ontology6 , a W3C member submission, is aimed at instantiating and extending the SSN ontology by introducing three distinct concepts belonging to the IoT domain, i.e. objects, systems or resources and services. Our solutions is inspired by the IoT and SSN ontologies. However, we cannot directly re-use those ontologies as (i) both are still unstable being not W3C recommendations yet, (ii) we have a soft requirement that encourages us to design self-contained ontologies in order to avoid dependencies with external ontologies that might evolve separately, thus, introducing inconsistencies. 3 Ontology overview In next sub-sections we present the design methodology used and the resulting IoT-AP ontology. 3.1 Design Methodology IoT-AP is designed by following best design practices and pattern-based ontology engineering aimed at extensively re-using Ontology Design Patterns (ODPs) [3] for modelling ontologies. The design methodology that we followed is based on an extension [6] of the eXtreme Design [1], an agile design methodology developed in the context of the NeON project7 . Such an extension mainly focuses on providing ontology engineer with clear strategies for ontology re-use. According to the guidelines provided by [6], we adopted the indirect re-use. This means that ODPs are used as templates. At the same time, the ontology guarantees interoperability by keeping the appropriate alignments with the external ODPs, and provides extensions that satisfy more specific requirements. 3.2 IoT-AP ontology Table 1 reports the competency questions used at design time for modelling the IoT-AP ontology. Figure 1 shows the core classes and properties of the IoT-AP ontology by using the Graffoo notation. The IoT-AP ontology is designed around the class Observation, which is declared as subclass of dul:Event and is modelled by re-using the time indexed situation8 Ontology Design Pattern (ODP) and the Observation9 ODP. In fact, an observation represents the situation carried out by a sensor of estimating or 5 https://www.w3.org/2015/spatial/wiki/SOSA_Ontology 6 https://www.w3.org/Submission/2015/SUBM-iot-lite-20151126/ 7 http://www.neon-project.org/nw/. 8 http://ontologydesignpatterns.org/wiki/Submissions:TimeIndexedSituation 9 http://ontologydesignpatterns.org/wiki/Submissions:Observation A pattern-based ontology for the Internet of Things 3 Table 1. Competency questions used for modelling the ontology. ID Competency question CQ1 What is the sensor that makes an observation? CQ2 What is the object (i.e. the feature of interest) associated with an observation? CQ3 When is a certain observation made? CQ4 What is the value of an observation? CQ5 What is the observation parameter of an observation? CQ6 What is the quality of an observation? Fig. 1. Core classes of the IoT-Ont. calculating a value of an attribute of a feature of interest at a specific time. Addi- tionally, an observation can be associated with an instance of the class Geometry, which identifies a location as a point, line, polygon, etc., and is expressed by using coordinates in some coordinate reference system. This class Sensor is de- clared as subclass of dul:Object and represents a sensor. A sensor is a device whose purpose is to detect and respond to events or changes in its environment. The detected information can be used and disseminated for successive elabora- tions. Individuals of the class Sensor are associated with individuals of the class Observation by means of the object property makesObservation. An observa- tion can be associated with an ObservationParameter by means of the object property hasObservationParameter. The class ObservationParameter repre- 4 Aldo Gangemi et al. sents a property or a characteristic of a feature of interest under observation. For instance, if we say that the temperature of the kitchen is 28 degrees cel- sius, the observed parameter is the temperature. Additionally, an Observation can be associated with a MeasurementQuality. The class MeasurementQuality is declared as subclass of dul:Quality and expresses quality parameters or measurement capabilities of an observation. Examples include latency, accuracy, repeatability, etc. We re-used the Region ODP10 to represent and reason on val- ues of attributes of MeasuramenteQuality and Observation. Hence, the object property hasObservationValue links individuals of the class Observation to individuals of the class ObservationValue and the object property hasMeasure- mentQualityValue links individuals of the class MeasurementQualityValue. The classes ObservationValue and MeasurementQualityValue represent val- ues for observations and measurement quality, respectively. Additionally, both classes are declared as subclasses of Value, which, in turn, is subclass of dul:Re- gion. Collections of observations made by a sensor can be represented by in- stantiating the class ObservationCollection. The conceptualisation around ObservationCollection is obtained by re-using the Collection11 ODP. Hence, ObservationCollection is subclass of dul:Collection and is associated with the class Observation by means of the object property consistOf. The IoT-AP ontology is aligned with DOLCE Ultra-Light and the Semantic Sensor Network (SSN) ontology. The alignments with these two ontologies are kept in a separate OWL file. Both the core IoT-AP ontology and the OWL file with the alignments are available online12 . The HTML documentation is available via LODE13 . 4 Usage scenario The following RDF triples, serialised as TURTLE, provide a usage example of the IoT-AP ontology. These triples come from real traffic data provided us by an organisation part of the Italian Public Administration. :sensor a iotap:Sensor; iotap:makesObservation :observation . :observation a iotap:Observation; iotap:hasFeatureOfInterest :a1_Calenzano-SestoFiorentino; iotap:atTime :observation_time; iotap:hasObservationParameter :average_speed; iotap:hasObservatiobValue :average_speed_value . :a1_Calenzano-SestoFiorentino a iotap:FeatureOfInterest; rdfs:label "A1 road segment between Calenzano and Sesto Fiorentino". :observation_time a iotap:TimeInterval; iotap:startTime "2017-07-27T23:12:00+02:00"^^xsd:dateTime; iotap:endTime "2017-07-28T01:54:00+02:00"^^xsd:dateTime . 10 http://ontologydesignpatterns.org/wiki/Submissions:Region 11 http://ontologydesignpatterns.org/wiki/Submissions:Collection 12 IoT-AP: http://stlab.istc.cnr.it/IoT-AP/IoT-AP.rdf - alignments: http:// stlab.istc.cnr.it/IoT-AP/IoT-AP-aligns.rdf 13 https://goo.gl/MFggc4 REFERENCES 5 :average_speed a iotap:ObservationParameter; rdfs:label "Average speed" . :average_speed_value a iotap:ObservationValue; value "65"; iotap:hasMeasuramentUnit :kilometres_per_hour . :kilometres_per_hour a iotap:MeasurementUnit; rdfs:label "Kilometres per hour" . The individual :sensor represents the sensor who makes the observation identified by the individual :observation. This observation is about the average speed observed by the sensor during the time interval identified by :obser- vation time on the road segment of the A1 motorway between the cities of Calenzano and Sesto Fiorentino (i.e. the feature of interest identified by the individual :a1 Calenzano-SestoFiorentino). The value associated with the observation (i.e. the individua :average speed value) allows to say that the observed average speed is 65 Km/h. 5 Conclusion and future work This paper proposes an ontology for the Internet of Things, namely the IoT-AP ontology. The focus of the paper is on the pattern-based design methodology used for modelling such an ontology. The design of the ontology is part of a project with the Italian Government aimed at implementing a big data framework for dealing with a variety of data sources including Open Data. As future work we are planning to assess the quality of the ontology by using real data coming from the big data framework as Linked Open Data and to analyse the ontology in the context of the wider ontology network we are designing. References [1] Eva Blomqvist et al. “Experimenting with eXtreme Design”. In: Proc. of EKAW 2010. (Lisbon, Portugal). Springer, 2010, pp. 120–134. [2] Michael Compton et al. “The SSN ontology of the W3C semantic sensor network incubator group”. In: Web semantics: science, services and agents on the World Wide Web 17 (2012), pp. 25–32. [3] Aldo Gangemi and Valentina Presutti. “Ontology Design Patterns”. In: Handbook on Ontologies, 2nd Ed. Springer, 2009, pp. 221–243. [4] Aldo Gangemi et al. “Sweetening ontologies with DOLCE”. In: Knowledge engi- neering and knowledge management: Ontologies and the semantic Web. Vol. 2473. Lecture Notes in Computer Science. Berlin, Germany: Springer, 2002, pp. 166– 181. doi: 10.1007/3-540-45810-7_18. [5] Sara Hachem, Thiago Teixeira, and Valérie Issarny. “Ontologies for the internet of things”. In: Proceedings of the 8th Middleware Doctoral Symposium. ACM. 2011, p. 3. [6] Valentina Presutti et al. “The role of Ontology Design Patterns in Linked Data projects”. In: Proc. of ER 2016. Springer, 2016, pp. 113–121.