PreprintPDF Available
Preprints and early-stage research may not have been peer reviewed yet.

Abstract and Figures

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 threefold approach: (i) modeling 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.
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
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.
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?.
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].
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-
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
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 ( as a framework for
communication between the various components.
This work has received support from the H2020 EFPF
project, grant agreement nr. 825075.
[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–
[4] A. Jula, et al.,“Cloud computing service composition: A systematic
literature review,” Expert systems with applications, vol. 41 , 2014,
[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.
ResearchGate has not been able to resolve any citations for this publication.
Full-text available
Internet of Things (IoT)-based Intelligent Pervasive Service (IPS) systems face increasing pressure from the massive amounts of heterogeneous data generated; the heterogeneity hinders interoperability between data resources and IPSs, making data sharing inefficient and making it difficult to satisfy the needs and fulfill requirements of the IPSs. In response, this article proposes a method of interoperable service-driven information distribution on the edge side to enhance the service-level interoperability with feature-level interoperability by self-adapting data sharing according to the service needs, which will also help to release incremental data pressure and provide better data privacy by conducting service-driven and relevance-based data sharing.
Full-text available
This document describes the Web Services Description Language Version 2.0 (WSDL 2.0), an XML language for describing Web services. This specification defines the core language which can be used to describe Web services based on an abstract model of what the service offers. It also defines the conformance criteria for documents in this language.
Conference Paper
Full-text available
QoS-aware service composition is a key requirement in Service Oriented Computing (SOC) since it enables fullling complex user tasks while meeting Quality of Service (QoS) constraints. A challenging issue towards this purpose is the selection of the best set of services to compose, meeting global QoS constraints imposed by the user, which is known to be a NP-hard problem. This challenge becomes even more relevant when it is considered in the context of dynamic service environments. Indeed, two specic issues arise. First, required tasks are fulfilled on the fly, thus the time available for services' selection and composition is limited. Second, service compositions have to be adaptive so that they can cope with changing conditions of the environment. In this paper, we present an efficient service selection algorithm that provides the appropriate ground for QoS-aware composition in dynamic service environments. Our algorithm is formed as a guided heuristic. The paper also presents a set of experiments conducted to evaluate the efficiency of our algorithm, which shows its timeliness and optimality.
Full-text available
A key element to realizing the Semantic Web is developing a suitably rich language for encoding and describing Web content. Such a language must have a well defined semantics, be sufficiently expressive to describe the complex interrelationships and constraints between Web objects, and be amenable to automated manipulation and reasoning with acceptable limits on time and resource requirements. A key component of the Semantic Web services vision is the creation of a language for describing Web services. DAML-S is such a language it is a DAML+OIL ontology for describing Web services that a coalition of researchers created with support from DARPA.
Service-Oriented Architecture (SOA) provides a flexible framework for service composition. Using standard-based protocols (such as SOAP and WSDL), composite services can be constructed by integrating atomic services developed independently. Algorithms are needed to select service components with various QoS levels according to some application-dependent performance requirements. We design a broker-based architecture to facilitate the selection of QoS-based services. The objective of service selection is to maximize an application-specific utility function under the end-to-end QoS constraints. The problem is modeled in two ways: the combinatorial model and the graph model. The combinatorial model defines the problem as a multidimension multichoice 0-1 knapsack problem (MMKP). The graph model defines the problem as a multiconstraint optimal path (MCOP) problem. Efficient heuristic algorithms for service processes of different composition structures are presented in this article and their performances are studied by simulations. We also compare the pros and cons between the two models.
Internet of things-IOT: definition, characteristics, architecture, enabling technologies, application future challenges
  • K Patel
  • S Patel
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.