Evolution of the Smart Spaces Paradigm Toward the Semantic Web of Things

Evolution of the Smart Spaces Paradigm Toward the Semantic Web of Things

DOI: 10.4018/978-1-5225-8973-0.ch007
OnDemand PDF Download:
No Current Special Offers


This chapter describes how the Smart-M3 platform evolved in the direction of supporting web standards (e.g., HTTP and Websockets) to be ready for the (Semantic) Web of Things. The latest step in the Smart-M3 progress is named SEPA (SPARQL Event Processing Architecture). Employing SEPA as a mean for semantic interoperability in the Web of Things means allowing heterogeneous devices to be discovered, accessed, and controlled through a set of SPARQL queries, subscriptions, and updates according to a given ontology. In this chapter, an ontology for the (Semantic) Web of Things is presented. Using web standards solves the issues of interoperability but poses new challenges with respect to the typical constraints of IoT applications.
Chapter Preview


The Web of Things (WoT) is a very recent research area that tries to face the challenges to interoperability posed by the Internet of Things (IoT) through the use of Web Standards (Guinard and Trifa, 2016). Semantic Web of Things (SWoT), is instead the name of the research area investigating the use of Semantic Web technologies in the IoT to face this challenge (Jara et al., 2014). In this Chapter we discuss about the evolution of the Smart-M3 platform (Viola et al., 2016) towards the new scenarios of the WoT and SWoT. The main pillar guiding our research is the ability to seamlessly discover and interact with (physical or virtual) devices, from now on Web Things, despite their heterogeneity. According to (Charpenay, Käbisch, and Kosch, 2016), we will then rely on a Thing Description to state the properties, actions and events exposed by a Web Thing and to solve the problem of discoverability (Guinard and Trifa, 2016) (i.e., discovering new devices in a network).

The Semantic Web of Things, as well as the Internet of Things, should support many different application domains, with very different characteristics. Among these requirements, it is worth mentioning the scaleability, the interoperability and the timeliness of messages. Scalability is essential to permit the seamless growth of an application in terms of devices taking part in a Smart Space as well as in terms of data exchanged by the involved entities without a noticeable degradation of performance. Interoperability at information level is an essential requirement in scenarios that are intrinsically heterogeneous being them developed by different vendors and supporting different protocols. Lastly, SWoT/IoT applications usually require that new data is notified as soon as possible to the interested entities (e.g., let’s consider for example Vehicular Ad-hoc NETworks, also known as VANETs). The Smart-M3 platform (Viola et al., 2016) provides an environment for the development of reactive interoperable applications. Started in 2006 from NOKIA, the development of the Smart-M3 project is now carried on by several Universities in Europe (mainly in Italy, Russia and Finland). Smart-M3 has been successfully employed in vast European Projects like Internet of Energy (Bedogni et al., 2013), Chiron (Vergari et al., 2011), Recocape (Hamza et al., 2014), Arrowhead (D’Elia et al., 2015), and demonstrated its validity and maturity over a wide spread of application domains. Smart-M3 could then represent an ideal building block for the Semantic Web of Things. Nevertheless, a set of requirements should be met. This is the purpose of the latest evolution of the Smart-M3 platform, named SPARQL Event Processing Architecture (SEPA) (Roffia et al., 2018).

The development of the SEPA platform has started in 2016 with the aim of producing a reactive and reliable infrastructure for big data environments, like the Semantic Web of Things. SEPA supports W3C standards for the communication with a SPARQL Endpoint and provides, as also Smart-M3 does, a publish-subscribe interface that is now based on another standard protocol, Websockets (standardized by IETF as RFC 6455). Moreover, SEPA is now able to attach to whatever SPARQL Endpoint, thus allowing for the provision of a subscription mechanism on top of existing endpoints. The first prototype of the SEPA platform was presented at the W3C Web of Things Working and Interest Group meeting (Dusseldorf, July 2017) and later on at the 21st FRUCT Conference (Helsinki, November 2017). The broker of the SEPA platform has been equipped with an ontology to represent and control devices in the Semantic Web of Things, a framework for the automated deployment of Web Things. This Chapter then, describes the core of SEPA and the tools that permit its adoption for the creation of Semantic Web of Things applications.

The rest of the Chapter is organized as follows: in the next Section, the motivation behind an evolution of the Smart-M3 platform is proposed. Then, the next Section, proposes the solutions adopted to face the challenges of the new scenarios. The fourth future research direction are hypothesized, while in the fifth Section conclusions are drawn.

Key Terms in this Chapter

Centralized Hierarchical LUTT (CHLUTT): The third step of the evolution of the LUTT data structure to deal with subscriptions. Differently from LUTT, this is a centralized structure containing all the triple patterns of every running subscriptions. Differently from CLUTT, this is organized in a hierarchical way to reduce the space occupation.

Smart-M3: An open-source software platform that aims to provide a smart spaces infrastructure. It combines the ideas of distributed, networked systems and semantic web. The ultimate goal is to enable smart environments and linking of real and virtual worlds.

Centralized LUTT (CLUTT): The second step of the evolution of the LUTT data structure to deal with subscriptions. Differently from LUTT, this is a centralized structure containing all the triple patterns of every running subscriptions.

Smart Space: A set of communicating nodes and information storages, which has embedded logic to acquire and apply knowledge about its environment and adapt to its inhabitants in order to improve their experience in the environment.

Subscription Processing Unit (SPU): An SPU is a process or thread devoted to the management of subscriptions in a Smart-M3 or SEPA broker.

SEPA: SPARQL Event Processing Architecture. A publish-subscribe architecture built on top of a standard SPARQL endpoint.

Semantic Web of Things (SWoT): The new paradigm involving Semantic Web technologies to control devices in IoT applications.

SPARQL Endpoint: A semantic database hosting an RDF knowledge base and providing read/write access through the SPARQL 1.1 protocol with SPARQL Query and SPARQL Update languages.

Internet of Things (IoT): The internetworking of physical entities represented by devices that enable these entities to collect and exchange data for a achieving a common goal.

Cocktail: Framework designed to simplify the creation, publication, deletion and management of a Web Thing through a set of primitives.

Context Triple Store (CTS): A CTS is one of the possible mechanisms to optimize the processing of subscriptions. If the system is using this optimization, then every SPU manages one CTS. It is a subset of the global knowledge base hosted by the broker and contains only the triples (potentially) of interest for the related subscription.

Thing Description (TD): The profile of a Web Thing containing its description in terms of properties, events and actions.

Web of Things (WoT): The new evolution of the IoT toward the adoption of the standards that made the web popular.

Interaction Pattern: One of the ways to interact with a Web Thing. An interaction pattern can be an action, a property or an event exposed by the Web Thing.

Look-Up Triples Table (LUTT): A data structure employed by some of the Smart-M3 brokers and by SEPA to speed-up the processing of the running subscriptions after a SPARQL update.

Complete Chapter List

Search this Book: