Abstract

The Semantic Smart Sensor Network (S3N) ontology is an ontology for describing smart sensors, their different computation and communication profiles, and how different algorithms may be selected and loaded, potentially at runtime. S3N is modular and is designed on top of the OGC and W3C SOSA/SSN (Sensor, Observation, Sample, and Actuator)/(Semantic Sensor Network) ontology [SOSA/SSN] and the W3C WoT TD (Thing Description) ontology [TD]. S3N ontology and its combine with SOSA/SSN and the TD ontology are described below,

The namespace for S3N terms is https://w3id.org/s3n/.

The suggested prefix for the S3N namespace is s3n.

1. Introduction

Thanks to the considerable progress in electronics and communication technology, the number of sensors embedded in everyday objects has greatly increased over the past years. Such sensors are typically not deployed on their own, but connected to a microcontroller capable of running algorithms and storing data, and a communication module that can send data or receive commands, using various Internet of Things protocols and data formats. Such compound systems enable the emergence of new types of “Smart-” applications in various domains (e.g., health, military, building, home, city, industry). We therefore refer to these systems using term Smart-Sensor. Unlike traditional sensors (called Basic-Sensors in the context of this paper), Smart-Sensors are multi-functional: they have the ability to be reprogrammed or reconfigured such that they can be used in multiple contexts with different algorithms. To interpretation and understanding operation of Smart-Sensors, it is important to obtain information about the components of smart sensor, the micro-controller, the the smart sensor configuration, the algorithm, and a variety of other information. The joint OGC and W3C standard SOSA/SSN ontology describes sensors, observations, sampling, and actuation. The SOSA/SSN ontology is only able to model partially the adaptation capabilities of Smart-Sensors to different contexts. The Semantic Smart Sensor Network (S3N) ontology extends SOSA/SSN ontology to model Smart-Sensors. It allows to define how to adapt the Smart-Sensor to the current context of use, that is to say selecting the algorithms to provide the right sensors outputs and the micro-controller capabilities. S3N Combines the SOSA/SSN and the TD ontology and formalizes an alignment between them.

1.1 Namespaces

The following namespace prefixes are used throughout this document

Prefix Namespace
s3n: https://w3id.org/s3n/
ssn: http://www.w3.org/ns/ssn/
sosa: http://www.w3.org/ns/sosa/
td: http://www.w3.org/ns/td#/

2. Modularization

Ontology modularization consists of partitioning domain knowledge into modules containing different types of knowledge. Moreover, the modularization promotes the reuse of standard ontologies. S3N reuses the OGC and W3C SOSA/SSN standard and the W3C TD future standard to describe the architecture of Smart-Sensors, the algorithms they can execute and the indicator values they output, the features of these algorithms and the capabilities of the different components, and the patterns one may use to interact with the Smart-Sensors. Adopting a modularization approach by composing the ontology into several modules that use owl:import statements, S3N is divided in three modules that semantically describe a specific aspect of Smart-Sensors.


The S3N-Core ontology module describes the constitution of Smart-Sensors and its adaptability. It imports SSN. It is available at https://w3id.org/s3n/S3NCore using content negotiation, or directly in HTML, Turtle, RDF/XML.

The S3N-Procedure ontology module describes algorithms’ features, and capabilities of a micro-controller. It imports S3N-core and SSN-System. It is available at https://w3id.org/s3n/S3NProcedure using content negotiation, or directly in HTML, Turtle, RDF/XML.

The S3N-Thing ontology module describes possible interactions with a Smart-Sensor. It imports S3N-core and TD. It is available at https://w3id.org/s3n/S3NThing using content negotiation, or directly in HTML, Turtle, RDF/XML.


These three modules can be imported separately or together:

The complete S3N ontology imports the three modules above. It is available at https://w3id.org/s3n/ using content negotiation, or directly in HTML, Turtle, RDF/XML.


They are published according to the publication and metadata best practices using the [SEAS] innovative publication scheme. See the sources of this website with the .htaccess document on GitHub.

The three modules define terms in the same namespace that is https://w3id.org/s3n/.

The suggested prefix for the S3N namespace is s3n.

3. Axiomatization

This section introduces the specifications for S3N.

3.1 Overview of Classes and Properties

3.2 S3N-Core

This section introduces the specifications for the S3N-Core ontology module, that describes the constitution of Smart-Sensors and its adaptability. It imports SSN. It is available at https://w3id.org/s3n/S3NCore using content negotiation, or directly in HTML, Turtle, RDF/XML.

3.2.1 Overview

This section introduces the following classes and properties:

3.2.2 Specification

3.2.2.1 s3n:Indicator

a OWL Class

Indicator - A specific property of a FeatureOfInterest. It has a specific use in a specific domain.
Example the pedaling speed, the number of steps, the number of consumed calories.
Sub class of ssn:Property
is Defined By https://w3id.org/s3n/S3NCore/
3.2.2.2 s3n:MicroController

a OWL Class

Micro-Controller - is a compact integrated circuit containing a processor, some Memory, and input/output (I/O) peripherals on a single chip, and is designed to govern a specific operation in an embedded system. It implements some Algorithms, and makes AlgorithmExecutions.
Sub class of ssn:System
Restrictions s3n:madeAlgorithmExecution ONLY s3n:AlgorithmExecution
ssn:implements MIN 1
is Defined By https://w3id.org/s3n/S3NCore/
3.2.2.3 s3n:CommunicatingSystem

a OWL Class

Communicating System - A CommunicatingSystem can be used to exchange information with other CommunicatingSystem on some network.
Sub class of ssn:System
is Defined By https://w3id.org/s3n/S3NCore/
3.2.2.4 s3n:SmartSensor

a OWL Class

Smart-Sensor - A SmartSensor is composed of one or more Sensors together with a MicroController that implements different Algorithms, and makes Algorithm Executions on the result of the Observations these Sensors make to output a resulting value for some Indicator. This value may then be communicated by some CommunicatingSystemCommunicatingSystem.
Sub class of ssn:System , sosa:Platform
Restrictions ssn:hasSubSystem SOME sosa:Sensor
ssn:hasSubSystem SOME s3n:MicroController
ssn:hasSubSystem SOME s3n:CommunicatingSystem
is Defined By https://w3id.org/s3n/S3NCore/
3.2.2.5 s3n:Algorithm

a OWL Class

Algorithm - A re-useable algorithm that might be executed multiple times by multiple Systems. It contains a declarative specification of the steps to be carried out to arrive at some result.
Sub class of sosa:Procedure
is Defined By https://w3id.org/s3n/S3NCore/
3.2.2.6 s3n:AlgorithmExecution

a OWL Class

Algorithm Execution - Act of executing an Algorithm.
Restrictions sosa:hasResult MIN 1
sosa:usedProcedure ONLY s3n:Algorithm
sosa:resultTime EXACTLY 1
sosa:hasResult ONLY sosa:Result
is Defined By https://w3id.org/s3n/S3NCore/
3.2.2.7 s3n:Error

a OWL Class

Error - A specific Result that is an error. May be further described in terms of its Cause.
Sub class of sosa:Result
is Defined By https://w3id.org/s3n/S3NCore/
3.2.2.8 s3n:forContext

a OWL Object Property

for context - The context of use of an Algorithm.
Domain Includes s3n:Algorithm
is Defined By https://w3id.org/s3n/S3NCore/
3.2.2.9 s3n:madeAlgorithmExecution

a OWL Object Property

made algorithm execution - Relation between a MicroController and an AlgorithmExecution it made.
Domain Includes s3n:MicroController
Range Includes s3n:AlgorithmExecution
is Defined By https://w3id.org/s3n/S3NCore/
3.2.2.10 s3n:cause

a OWL Object Property

cause - The cause of an Error.
Domain Includes s3n:Error
is Defined By https://w3id.org/s3n/S3NCore/

3.3 S3N-Procedure

This section introduces the specifications for the S3N-Procedure ontology module, that describes algorithms’ features, and capabilities of a micro-controller. It imports S3N-core and SSN-System. It is available at https://w3id.org/s3n/S3NProcedure using content negotiation, or directly in HTML, Turtle, RDF/XML.

3.3.1 Overview

This section introduces the following classes and properties:

3.3.2 Specification

3.3.2.1 s3n:Memory

a OWL Class

Memory - The memory of the MicroController under the defined Conditions.
Sub class of ssn-system:SystemProperty
Restrictions inverse Of ssn-system:hasSystemProperty ONLY inverse Of ssn-system:hasSystemCapability ONLY s3n:MicroController
is Defined By https://w3id.org/s3n/S3NProcedure/
3.3.2.2 s3n:MaximumBandwidth

a OWL Class

Maximum Bandwidth - The maximal bandwidth of the communicating device under the defined Conditions.
Sub class of ssn-system:SystemProperty
Restrictions inverse Of ssn-system:hasSystemProperty ONLY inverse Of ssn-system:hasSystemCapability ONLY s3n:CommunicatingSystem
is Defined By https://w3id.org/s3n/S3NProcedure/
3.3.2.3 s3n:ProcedureFeature

a OWL Class

Procedure Feature - Describes procedure properties such as the duration, computational cost, storage cost, etc. of a Procedure under some specified Conditions such as a size of input. The features specified here are those that affect the Procedure executions.
Sub class of ssn:Property
Restrictions inverse Of s3n:hasProcedureFeature ONLY s3n:Algorithm
s3n:hasProcedureProperty ONLY s3n:ProcedureProperty
ssn-system:inCondition MIN 1
ssn-system:inCondition ONLY ssn-system:Condition
is Defined By https://w3id.org/s3n/S3NProcedure/
3.3.2.4 s3n:ProcedureProperty

a OWL Class

Procedure Property - An identifiable characteristic that represents typical characteristics of the Procedure's executions.
Sub class of ssn:Property
Restrictions inverse Of s3n:hasProcedureProperty ONLY s3n:ProcedureFeature
inverse Of s3n:hasProcedureProperty MIN 1
is Defined By https://w3id.org/s3n/S3NProcedure/
3.3.2.5 s3n:TimeComplexity

a OWL Class

Time Complexity - The complexity in time of the Procedure under the defined Conditions.
Sub class of s3n:ProcedureProperty
Restrictions inverse Of s3n:hasProcedureProperty ONLY inverse Of s3n:hasProcedureFeature ONLY s3n:Algorithm
is Defined By https://w3id.org/s3n/S3NProcedure/
3.3.2.6 s3n:SpaceComplexity

a OWL Class

Space Complexity - The complexity in space of the Procedure under the defined Conditions.
Sub class of s3n:ProcedureProperty
Restrictions inverse Of s3n:hasProcedureProperty ONLY inverse Of s3n:hasProcedureFeature ONLY s3n:Algorithm
is Defined By https://w3id.org/s3n/S3NProcedure/
3.3.2.7 s3n:ComputationalCost

a OWL Class

Computational Cost - The computational cost of the Procedure under the defined Conditions.
Sub class of s3n:ProcedureProperty
is Defined By https://w3id.org/s3n/S3NProcedure/
3.3.2.8 s3n:hasProcedureFeature

a OWL Object Property

has procedure feature - Relation from a Procedure to a ProcedureFeature describing the features of the Procedure under certain Conditions.
Sub property of ssn:hasProperty
is Defined By https://w3id.org/s3n/S3NProcedure/
3.3.2.9 s3n:hasProcedureProperty

a OWL Object Property

has procedure property - Relation from an ProcedureFeature of a Procedure to a ProcedureProperty describing the features of the Procedure.
Sub property of ssn:hasProperty
is Defined By https://w3id.org/s3n/S3NProcedure/

4. Ontology alignment: S3N-Thing

This section introduces the specifications for the S3N Thing ontology module, that describes possible interactions with a Smart-Sensor. It imports S3N-core and TD. It is available at https://w3id.org/s3n/S3NThing using content negotiation, or directly in HTML, Turtle, RDF/XML.

4.1 Alignment between SOSA/SSN and TD

This section provides details on the alignment module that combines the new SOSA/SSN and the TD ontology and formalizes an alignment between them.

4.1.2 Class Alignments

The following classes in SOSA/SSN and TD can be aligned via a subclass relation as follows.

td:Thing subclass of ssn:System
td:InteractionPattern subclass of sosa:Procedure

4.1.3 Property Alignments

Additional alignments from SOSA/SSN to TD properties are defined as follows.

td:interaction sub-property of ssn:implements
td:inputData sub-property of ssn:hasInput
td:outputData sub-property of ssn:hasOutput

4.2 Alignment between S3N-Core and TD

This section provides details on the alignment module that align the module S3N-Core and TD ontology.

4.2.1 Namespaces

The following namespace prefixes are used in the alignment to S3N-Core and TD

Prefix Namespace
s3n: https://w3id.org/s3n/
td: http://www.w3.org/ns/td#/

4.2.2 Class Alignments

The following classes in S3N-Core and TD can be aligned via a subclass relation as follows.

s3n:SmartSensor subclass of td:Thing

A. References

[SOSA/SSN]
Semantic Sensor Network Ontology. Armin Haller; Krzysztof Janowicz; Simon Cox; Danh Le Phuoc; Kerry Taylor; Maxime Lefrançois. 19 October 2017. URL: https://www.w3.org/TR/vocab-ssn/
[TD]
Web of Things (WoT) Thing Description. Sebastian Kaebisch; Takuki Kamiya. 18 January 2018. URL: https://w3c.github.io/wot-thing-description/
[SEAS]
Planned ETSI SAREF Extensions based on the W3C&OGC SOSA/SSN-compatible SEAS Ontology Patterns. Maxime Lefrançois. In Proceedings of Workshop on Semantic Interoperability and Standardization in the IoT, SIS-IoT, Amsterdam, Netherlands, July 2017. URL: http://www.maxime-lefrancois.info/docs/Lefrancois-SIS-IoT2017-Planned.pdf