Copyright © 2015 . This document is available under the W3C Document License. See the W3C Intellectual Rights Notice and Legal Disclaimers for additional information.
IoT-Lite ontology is a lightweight ontology to represent Internet of Things (IoT) resources, entities and services. IoT-Lite is an instantiation of the SSN ontology. The lightweight allow the representation and use of IoT platforms without consuming excessive processing time when querying the ontology. However it is also a meta ontology that can be extended in order to represent IoT concepts in a more detailed way in different domains. It also can be combined with ontologies representing IoT data streams such as SAO ontology. Following best practices in ontology engineering iot-lite is meant to be used with a quantity taxonomy, such as qu-taxo, that allows the discovery and interoperability of IoT resources in heterogeneous platforms using a common vocabulary.
This section describes the status of this document at the time of its publication. Other documents may supersede this document. A list of current W3C publications can be found in the W3C technical reports index at http://www.w3.org/TR/.
By publishing this document, W3C acknowledges that the Submitting Members have made a formal Submission request to W3C for discussion. Publication of this document by W3C indicates no endorsement of its content by W3C, nor that W3C has, is, or will be allocating any resources to the issues addressed by it. This document is not the product of a chartered W3C group, but is published as potential input to the W3C Process. A W3C Team Comment has been published in conjunction with this Member Submission. Publication of acknowledged Member Submissions at the W3C site is one of the benefits of W3C Membership. Please consult the requirements associated with Member Submissions of section 3.3 of the W3C Patent Policy. Please consult the complete list of acknowledged W3C Member Submissions.
Internet of Thing (IoT) is machine-to-machine communications and interactions between objects, devices and people. In the near future the communications and information processing will be ubiqutious and performed by IoT systems.
Over the past few years the semantics community has developed ontologies to describe concepts and relationship between different entities in various domains. The Internet of Things (IoT) domain have similar approaches to apply semantics. A key problem is that most of the IoT related semantic descriptions are not as widely adopted as expected. One of the main concerns users and developers have is that semantics increase the complexity and processing time and therefore they are unsuitable for dynamic and responsive environments such as the IoT.
Complex models, although can be applied for querying almost anything about objects, are often difficult to implement and use. They need high processing and therefore they are not suitable for constrained environments. IoT models should consider the constrains and dynamicity of the IoT environments. At the same time, they need to model the relationships and concepts that represent and allow interoperability between IoT entities. Therefore, expressiveness versus complexity is a challenge.
We propose IoT-Lite, a lightweight instantiation of the semantic sensor network (SSN) ontology 1 to describe the key IoT concepts that allows interoperability and discovery of sensory data in heterogeneous IoT platforms. IoT-lite reduces the complexity of other IoT models describing only the main concepts of the IoT domain. IoT-Lite can be extended by different models to increment it expressiveness.
IoT-Lite describes IoT concepts in three classes. Objects, system or resources and services. IoT devices are classified into, although not restricted to, three classes: sensing devices actuating devices and tag devices. IoT-Lite is focused on sensing, although it has a high level concept on actuation that allows any future extension on this area. Services are described with a coverage. This coverage represents the 2D-spatial covered by the IoT device.
The figure below depicts the concepts of the ontology and the main relationships between them.
IoT Lite Ontology is created to be used with a common quantity taxonomy, qu-taxo, to describe the Units and QuantityKind that IoT devices can measure. This taxonomy is represented by individuals in the ontology and is based on well-known taxonomies such as: qu and qudt. Similarly, some other classes, such as Object, Service or Attribute, can be linked to a vocabulary to choose the terms from a set of individual and existing concepts.
The following is an example of an annotated temperature sensor belonging to one of the TelosB devices of the Surrey testbed, SmartCampus.
The example in Turtle (REF) is:
@prefix qu: <http://purl.org/NET/ssnx/qu/qu#> . @prefix geo: <http://www.w3.org/2003/01/geo/wgs84_pos#> . @prefix ssn: <http://www.w3.org/2005/Incubator/ssn/ssnx/ssn#> . @prefix iot-lite: <http://purl.oclc.org/NET/UNIS/fiware/iot-lite#> . @prefix iot-l-ins: <http://purl.oclc.org/NET/UNIS/iot-lite/iot-liteInstance#> . iot-lite:tableRoom13CII01 rdf:type iot-lite:Object , owl:NamedIndividual ; iot-lite:interfaceDescription "http://surrey.ac.uk/sensor/Room13CII01/Table"^^xsd:anyURI ; iot-lite:hasAttribute iot-lite:tempreratureTableRoom12CII01 ; geo:hasLocation iot-l-Ins:locationRoom13CII01 . iot-lite:temperatureTableRoom12CII01 rdf:type iot-lite:Attribute , owl:NamedIndividual ; iot-lite:isAssociatedWith iot-l-Ins:temperatureSensorRoom13CII01 ; iot-lite:hasQuantityKind qu:temperature . iot-l-Ins:NEcornerRoom13CII01 rdf:type owl:NamedIndividual , geo:Point ; geo:long "-0.59316"^^xsd:float ; iot-lite:altRelative "1stFloor"^^xsd:string ; geo:lat "51.2434"^^xsd:float . iot-l-Ins:SWcornerRoom13CII01 rdf:type owl:NamedIndividual , geo:Point ; geo:long "-0.59315"^^xsd:float ; iot-lite:altRelative "1stFloor"^^xsd:string ; geo:lat "51.2433"^^xsd:float . iot-l-Ins:TelosB001 rdf:type owl:NamedIndividual , ssn:Device ; ssn:hasSubsystem iot-l-Ins:temperatureSensorRoom13CII01 . iot-l-Ins:UniSTestbed rdf:type owl:NamedIndividual , ssn:System ; ssn:hasSubsystem iot-l-Ins:TelosB001 . iot-l-Ins:areaRoom13CII01 rdf:type iot-lite:Rectangle , owl:NamedIndividual ; iot-lite:hasPoint iot-l-Ins:NEcornerRoom13CII01 , iot-l-Ins:SWcornerRoom13CII01 . iot-l-Ins:locationRoom13CII01 rdf:type owl:NamedIndividual , geo:Point ; geo:long "-0.593154"^^xsd:float ; iot-lite:altRelative "1stFloor"^^xsd:string ; geo:lat "51.243362"^^xsd:float . iot-l-Ins:ngsi10SensorRoom13CII01 rdf:type iot-lite:Service , owl:NamedIndividual ; iot-lite:endpoint "http://surrey.ac.uk/sensors/measures/rom13CII01"^^xsd:anyURI ; iot-lite:interfaceDescription "http://surrey.ac.uk/sensors/measures/room13CII01"^^xsd:anyURI ; iot-lite:type "ngsi-10"^^xsd:string . iot-l-Ins:resolution1024 rdf:type iot-lite:Metadata , owl:NamedIndividual ; iot-lite:metadataValue "1024.0"^^xsd:float ; iot-lite:type "resolution"^^xsd:string . iot-l-Ins:sensorRoom13CII01 rdf:type owl:NamedIndividual , ssn:Deployment ; geo:hasLocation iot-l-Ins:locationRoom13CII01 . iot-l-Ins:temperatureSensorRoom13CII01 rdf:type owl:NamedIndividual , ssn:SensingDevice ; iot-lite:hasCoverage iot-l-Ins:areaRoom13CII01 ; iot-lite:exposedBy iot-l-Ins:ngsi10SensorRoom13CII01 ; ssn:hasDeployment iot-l-Ins:sensorRoom13CII01 . iot-l-Ins:temperatureSensorTelosB rdf:type owl:NamedIndividual , ssn:Sensor ; iot-lite:hasMetadata iot-l-Ins:resolution1024 ; iot-lite:hasSensingDevice iot-l-Ins:temperatureSensorRoom13CII01 ; iot-lite:hasUnit qu:degree_Celsius ; iot-lite:hasQuantityKind <http://purl.org/NET/ssnx/qu/quantity#temperature>.
An alphabetical index of IoT Lite terms, by class (concepts) and properties are given below. All the terms are hyperlinked to their detailed description for quick reference.
Device that can actuate over an object or QuantityKind.
An attribute of an IoT object that can be exposed by an IoT service (i.e. a room (IoT Object) has a temperature (Attribute), that can be exposed by a temperature sensor (IoT device).
Circle coverage needs the location of the sensor as the centre of the circle and the radius as a DataProperty.
The coverage of an IoT device (i.e. a temperature sensor inside a room has a coverage of that room).
Class used to describe properties that cannot be described by QuantityKind and Units. e.g. the resolution of a sensor.
An IoT entity
The coverage is made up by linking several points by strait lines.
The coverage is made up by giving two points which are the oposite corners of a rectangle.
Service provided by an IoT Device
Tag Device such as QR code, RFID or bar code.
Location provided in relative terms, not with geo coordinates.
Altitude location provided in relative terms, not with geo coordinates.
Description of the service provided.
Endpoint of the service. It is usually a URL where the service is available.
A Device is exposed by a service.
Links the devices with their attributes.
Links the devices with their coverages.
Links any concept with metadata about that concept.
Links the coverage with the points that describe the coverage (e.g. A square coverage is defined with two points in a diagonal of the square).
Links the sensor or attribute with the quantity kind it measures (e.g. A sensor -sensor1- measures temperature: sensor1 hasQuantityKind temperature).
Links a sensor with the sensing device the same way as SSN.
Links the sensor with the units of the quantity kind it measures (e.g. A sensor -sensor1- measures temperature in Celsius: sensor1 hasUnit celsius).
Defines the ID of the Object or Device
Defines the association between objects and sensors (e.g. A table (object) has an attribute(temperature at the table) which is associated with a sensor (the temperature sensor of the room).
Specifies the radius of a circle coverage defined by a point -the center of the circle- and its radius.
Defines the type of interface of the service endpoint.
Defines the type of the metadata value (e.g. resolution of the sensor).
Value of the metadata.
Michael Compton, Payam Barnaghi, Luis Bermudez, Raul Garcia-Castro, Oscar Corcho, Simon Cox, John Graybeal, Manfred Hauswirth, Cory Henson, Arthur Herzog, et al. The ssn ontology of the w3c semantic sensor network incubator group. Web Semantics: Science, Services and Agents on the World Wide Web, 17:25–32, 2012.