Content uploaded by Nisrine Bnouhanna
Author content
All content in this area was uploaded by Nisrine Bnouhanna on Feb 08, 2021
Content may be subject to copyright.
IoT Thing To Service Semantic Matching
Nisrine Bnouhanna⇤†
Supervised by Rute C. Sofia⇤& Alexander Pretschner⇤†
⇤fortiss - Research Institute of the Free State of Bavaria associated with Technical University of Munich
†Technical University of Munich
Abstract—We propose an automated IoT data source (Thing)
to service semantic matching mechanism that selects an optimal
set of available IoT data sources in order to satisfy service
requirements and needs. The main motivation is to provide a
better use of data captured via IoT data sources. To achieve
this goal, we propose a three-fold approach: (i) modelling
service requirements based on existing service descriptions; (ii)
automating the selection of an optimal set of Things that best
meet the service requirements; (iii) selecting data processing
services that provide additional service requirements.
Index Terms—semantic matching, IoT systems, Things, service
requirement
I. INTRODUCTION
One of the key assets of IoT systems and platforms is
the data captured via IoT devices. However, the utilization
of such data is a challenge due to different aspects related
to interoperability. Smart IoT data sources create high vol-
umes of multi-dimensional data, which has become hard to
process. Moreover, such smart IoT data sources are provided
by different vendors; have different requirements; and are often
mobile [1]. On the other spectrum, IoT services (e.g., home
automation service) are proprietary and are usually associated
with specific IoT data source provided by that same vendor or
by authorized third-parties. Thus, all these aspects increase the
complexity of setting up end-to-end IoT systems and prevent
a better use of the available data.
The main motivation concerns the urgent need to develop
software-based solutions that can support the automated se-
mantic matching of available IoT data sources towards IoT
services, taking into consideration aspects such as the require-
ments of services. Our belief is that in order to contribute to
this challenge a relevant approach is to address the following
3 main goals:
Goal 1: to model service functional and non-functional
requirements based on an existing service description model.
Goal 2: to select an optimal subset of IoT data sources using
semantic matching that best serve the service requirements.
Goal 3: upon selection of such optimal set, to select
data processing services that augment Things with additional
capabilities or compose a new Thing out of multiple available
Things in order to satisfy the service requirements.
II. RESEARCH
A. Service Description
Modeling IoT service requirements is an important element
of this work since the ultimate goal is to build mechanisms that
can meet service requirements on-the-fly. Based on analysing
the most relevant service description models such as OWL-S
[2] and WSDL [3], we found out that these service description
models focus on modeling the service information (description
of the service inputs, outputs, preconditions, and effects), the
service operations (how the service internally operates), and
the service invocations (how to call the service). However,
some aspects are not directly targeted such as the nonfunc-
tional requirements meaning QoS (Quality of Service) & QoE
(Quality of Experience) (e.g., availability, data quality, obser-
vation rate). Hence, the following research question arises:
How to automate the development of service descriptions
taking into account specific service requirements, and QoE
from the user perspective? The aim is not to provide novel
service models nor descriptions; instead, it is to understand and
to contribute to existing service description models. Therefore,
the approach to be taken to answer this research question
is to identify service requirements needed for the purpose
of semantic Thing to service matching, analyze the existing
service description model if they can model these identified
aspects of the service, then, if needed, contribute and extend
the model.
B. Optimum Things Selection
After receiving the service description, the next step of
the IoT Thing to service matching mechanism is to select
the optimum subset of data sources within the available IoT
Things, subset capable of meeting the service requirements
timely and with the required quality level, considering also
non-functional requirements (e.g. availability, data quality).
For instance, an IoT service publishes a request for infor-
mation concerning number of people in a specific location
with high reliability and availability (due to safety require-
ments). The available IoT infrastructure integrates cameras,
occupancy sensors, WiFi, temperature sensor among others.
A first automated selection could include the sensors capable
of providing the number of people in the specified location.
However, other devices (such as cameras, personal phones via
WiFi or Bluetooth) have the potential to provide such result.
In such scenarios, the following research question arise: How
to select an optimal subset of Things from the ones available,
to best meet a specific service requirement?.
The approach is to first discover all available IoT devices,
extract the criteria of IoT device selection based on the service
description model, then using semantic matching identify the
optimum set of IoT data sources that can potentially fulfill the
This is the author's pre-print. Personal use of this material is permitted. Permission from IEEE
must be obtained for all other uses, in any current or future media, including reprinting/
republishing this material for advertising or promotional purposes, creating new collective
works, for resale or redistribution to servers or lists, or reuse of any copyrighted component of
this work in other works.
service needs. It is important to keep in mind that it is not
always one to one mapping between the service requirement
and the IoT data sources. For example, multipurpose sensing
devices such as cameras or smartphones have the potential to
provide several categories of sensed data, e.g. face counting,
face recognition. Such sensed data can be provided only
if combined with the adequate data processing service (see
section II-C), commonly known as perception.
C. Data Processing Service Selection
Service selection and adaptation in the context of IoT is
supported by semantic interoperability or by QoS sensitive
optimization [4]. Relevant in the context of semantic inter-
operability are the efforts developed in W3C. A challenge
remaining is how to select the best combination of data
sources in order to adequately meet QoS or QoE under varying
contexts [5] [6]. Service selection in IoT lacks mechanisms for
service selection based on both functional and non-functional
requirements. Moreover, in this work, service selection is to
be used in combination with the selection of the optimum set
IoT data sources in order to augment Things with additional
capabilities to fulfill a service request. Taking the previous
example, the goal is to select the adequate data processing ser-
vices to use in combination with the selected IoT data sources
to provide the number of people in the requested location with
high reliability and availability (e.g. object detection service,
denoising service). Thus, the research question to be addressed
is: Can the selection of a specific data processing service be
automated to best serve an IoT service?.
III. RELATED WORK
As for IoT data source to service matching, three main
approaches can be found in the literature content-driven and
context-driven approaches, which focus on matching based
on the content and context of the data respectively and the
service-driven approach, which uses service requirements for
matching. However, there is a need to extend the service-
driven approach to include an automatic selection of IoT data
sources as well as data processing services to meet not only
the functional service requirements but also the non-functional
requirements such as QoS and QoE [7].
IV. OUR APPROACH
The proposed approach to increase IoT data utilization and
ease integration between IoT Things and services is to provide
an open-source software-based solution (TSMatch, Figure 1) to
automatically support the matching between service requests
and available Things to establish a semantic data matching
process that:
1) Selects the best ranked optimal subset of the available
IoT data sources, to meet service and user (QoE) re-
quirements.
2) Selects a data processing service that best meets QoS
requirements and matches one of the optimal subset of
IoT data sources.
3) Provides an optimal data matching between data
source(s) and service description.
Fig. 1. A component diagram of the proposed solution
V. R ESEARCH STATUS
Fig. 2. Demonstrator
The work described corresponds
to work developed on the first year
of the doctoral programme (disser-
tation proposal accepted). The cur-
rent focus is on the first research
question related to service require-
ment modeling. In parallel, we are
setting up a demonstrator in the for-
tiss ”Industrial IoT Lab”, illustrated
in Figure 2. The demonstrator is
focused on serving services based
on a Smart Facilities use-case and
illustarting matching based on some
functional and non-functional requirements. It involves various
IoT environmental sensors in place, that are discovered by the
TSMatch component, and upon receiving a service request
via TSMatch App, TSMatch is able to select the IoT devices
capable of answering the request based on aspects such as
required functionality, location, threshold, and sensor data
quality. The demo uses coaty (coaty.io) as a framework for
communication between the various components.
ACKNOWLEDGMENT
This work has received support from the H2020 EFPF
project, grant agreement nr. 825075.
REFERENCES
[1] K. Patel, S. Patel, “Internet of things-IOT: definition, characteristics,
architecture, enabling technologies, application future challenges,”
International journal of engineering science and computing, vol. 6, 2016.
[2] D. Martin, et al.,“Bringing semantics to web services with OWL-S,”
World Wide Web, vol. 10 , 2007.
[3] R. Chinnici, et al. “Web services description language (wsdl) version 2.0
part 1: Core language,” W3C recommendation, vol. 26 , 2007, pp.243–
277.
[4] A. Jula, et al.,“Cloud computing service composition: A systematic
literature review,” Expert systems with applications, vol. 41 , 2014,
pp.3809–3824.
[5] N.B. Mabrouk , et al., “QoS-aware service composition in dynamic ser-
vice oriented environments,” ACM/IFIP/USENIX International Confer-
ence on Distributed Systems Platforms and Open Distributed Processing,
vol. 41 , 2009, pp.123–142.
[6] T. Yu, et al., “Efficient algorithms for Web services selection with end-
to-end QoS constraints,” ACM Transactions on the Web (TWEB), vol.
1, 2007.
[7] B. Xiao, et al., “Edge-based interoperable service-driven information
distribution for intelligent pervasive services,” Pervasive and Mobile
Computing, vol. 40, 2017, pp.359–381.