Semantic technologies for
the Internet of Things
Institute for Communication Systems (ICS)
University of Surrey
Guildford, United Kingdom
International “IoT 360 Summer School″
October 2015– Rome, Italy
3. Data in the IoT
− Data is collected by sensory devices and also crowd sensing
− It is time and location dependent.
− It can be noisy and the quality can vary.
− It is often continuous - streaming data.
− There are other important issues such as:
− Device/network management
− Actuation and feedback (command and control)
− Service and entity descriptions
6. Semantics and Data
− Data with semantic annotations
− Provenance, quality of information
− Interpretable formats
− Links and interconnections
− Background knowledge, domain information
− Hypotheses, expert knowledge
− Adaptable and context-aware solutions
7. Interoperable and semantically described
data is the starting point to create an
efficient set of actions.
The goal is often to create actionable
8. Wireless Sensor (and Actuator)
- The networks typically run Low Power Devices
- Consist of one or more sensors, could be different type of sensors (or actuators)
“Web of Things”
9. What we are going to study
− The sensors (and in general “Things”) are increasingly being connected
with Web infrastructure.
− This can be supported by embedded devices that directly support IP and
web-based connection (e.g. 6LowPAN and CoAp) or devices that are
connected via gateway components.
− Broadening the IoT to the concept of “Web of Things”
− There are already standards such as Sensor Web Enablement (SWE) set
developed by the Open Geospatial Consortium (OGC) that are widely
being adopted in industry, government and academia.
− While such frameworks provide some interoperability, semantic
technologies are increasingly seen as key enabler for integration of IoT
data and broader Web information systems.
11. Observation and measurement data
How to make the data representations more machine-readable
15, C, 08:15, 51.243057, -0.589444
12. Observation and measurement data
15, C, 08:15, 51.243057, -0.589444
14. Well Formed XML Documents
− A "Well Formed" XML document has correct XML syntax.
− XML documents must have a root element
− XML elements must have a closing tag
− XML tags are case sensitive
− XML elements must be properly nested
− XML attribute values must be quoted
14Source: W3C Schools, http://www.w3schools.com/
15. XML Documents– revisiting the example
− Meaning of XML-Documents is intuitively clear
− due to "semantic" Mark-Up
− tags are domain-terms
− But, computers do not have intuition
− tag-names do not provide semantics for machines.
− DTDs or XML Schema specify the structure of documents, not
the meaning of the document contents
− XML lacks a semantic model
− has only a "surface model”, i.e. tree
16Source: Semantic Web, John Davies, BT, 2003.
17. Semantic Web technologies
− XML provide a metadata format.
− It defines the elements but does not provide any modelling
primitive nor describes the meaningful relations between
− Using semantic technologies to solve these issues.
18. A bit of history
− “The Semantic Web is an extension of the current web in
which information is given well-defined meaning, better
enabling computers and people to work in co-operation.“
(Tim Berners-Lee et al, 2001)
Image source: Miller 2004
19. Semantics & the IoT
−The Semantic Sensor (&Actuator) Web is an
extension of the current Web/Internet in which
information is given well-defined meaning, better
enabling objects, devices and people to work in co-
operation and to also enable autonomous
interactions between devices and/or objects.
20. Resource Description Framework (RDF)
− A W3C standard
− Relationships between documents
− Consisting of triples or sentences:
− <subject, property, object>
− <“Sensor”, hasType, “Temperature”>
− <“Node01”, hasLocation, “Room_BA_01” >
− RDFS extends RDF with standard “ontology vocabulary”:
− Class, Property
− Type, subClassOf
− domain, range
21. RDF for semantic annotation
− RDF provides metadata about resources
− Object -> Attribute-> Value triples or
− Object -> Property-> Subject
− It can be represented in XML
− The RDF triples form a graph
25. Let’s add a bit more structure
26. An instance of our model
27. RDF: Basic Ideas
−Every resource has a URI (Universal Resource Identifier)
−A URI can be a URL (a web address) or a some other kind
−An identifier does not necessarily enable access to a
−We can think of a resources as an object that we want to
28. RDF: Basic Ideas
− Properties are special kind of resources;
− Properties describe relations between resources.
− For example: “hasLocation”, “hasType”, “hasID”, “sratTime”,
− Properties in RDF are also identified by URIs.
− This provides a global, unique naming scheme.
− For example:
− “hasLocation” can be defined as:
− URI: http://www.loanr.it/ontologies/DUL.owl#hasLocation
− SPARQL is a query language for the RDF data.
− SPARQL provide capabilities to query RDF graph patterns along with
their conjunctions and disjunctions.
−The term ontology is originated from philosophy. In
that context it is used as the name of a subfield of
philosophy, namely, the study of the nature of
−In the Semantic Web:
−An ontology is a formal specification of a domain; concepts
in a domain and relationships between the concepts (and
some logical restrictions).
30. Ontologies and Semantic Web
− In general, an ontology describes a set of concepts in a
− An ontology consists of a finite list of terms and the
relationships between the terms.
− The terms denote important concepts (classes of objects) of
− For example, in a university setting, staff members, students,
courses, modules, lecture theatres, and schools are some
31. Web Ontology Language (OWL)
− RDF(S) is useful to describe the concepts and their
relationships, but does not solve all possible requirements
− Complex applications may want more possibilities:
− similarity and/or differences of terms (properties or classes)
− construct classes, not just name them
− can a program reason about some terms? e.g.:
− each «Sensor» resource «A» has at least one «hasLocation»
− each «Sensor» resource «A» has maximum one ID
− This lead to the development of Web Ontology Language or
32. Ontology engineering
− An ontology: classes and properties (also referred to as
− Knowledge base: a set of individual instances of classes and
− Steps for developing an ontology:
− defining classes in the ontology and arranging the classes in a
taxonomic (subclass–superclass) hierarchy
− defining properties and describing allowed values and restriction for
− Adding instances and individuals
33. Basic rules for designing ontologies
− There is no one correct way to model a domain; there are
always possible alternatives.
− The best solution almost always depends on the application that you
have in mind and the required scope and details.
− Ontology development is an iterative process.
− The ontologies provide a sharable and extensible form to represent a
− Concepts that you choose in an ontology should be close to
physical or logical objects and relationships in your domain of
interest (using meaningful nouns and verbs).
34. A simple methodology
1. Determine the domain and scope of the model that you want to design
2. Consider reusing existing concepts/ontologies; this will help to increase
the interoperability of your ontology.
3. Enumerate important terms in the ontology; this will determine what are
the key concepts that need to be defined in an ontology.
4. Define the classes and the class hierarchy; decide on the classes and the
5. Define the properties of classes; define the properties that relate the
6. Define features of the properties; if you are going to add restriction or
other OWL type restrictions/logical expressions.
7. Define/add instances
8. Document your ontology
35. Semantic technologies in the IoT
−Applying semantic technologies to IoT can support:
−effective data access and integration
−reasoning and processing of data
−knowledge extraction (for automated decision making and
36. Sensor Markup Language (SensorML)
The Sensor Model Language
Encoding (SensorML) defines
models and XML encoding to
represent the geometric,
dynamic, and observational
characteristics of sensors and
37. Semantic modelling
− Lightweight: experiences show that a lightweight ontology
model that well balances expressiveness and inference
complexity is more likely to be widely adopted and reused;
also large number of IoT resources and huge amount of data
need efficient processing
− Compatibility: an ontology needs to be consistent with those
well designed, existing ontologies to ensure compatibility
− Modularity: modular approach to facilitate ontology evolution,
extension and integration with external ontologies.
38. Existing models- SSN Ontology
− W3C Semantic Sensor Network Incubator Group’s SSN
ontology (mainly for sensors and sensor networks, platforms
40. SSN Ontology
Ontology Link: http://www.w3.org/2005/Incubator/ssn/ssnx/ssn
M. Compton et al, "The SSN Ontology of the W3C Semantic Sensor Network Incubator Group", Journal of Web Semantics, 2012.
W3C SSN Ontology
makes observations of
Where it is
SSN-XG Ontology Scope
42. What SSN does not model
− Sensor types and models
− Networks: communication, topology
− Representation of data and units of measurement
− Location, mobility or other dynamic behaviours
− Control and actuation
48. Publishing Semantic annotations
− We need a model (ontology) – this is often the easy part for
a single application.
− Interoperability between the models is a big issue.
− Express-ability vs Complexity is a challenge
− How and where to add the semantics
− Where to publish and store them
− Semantic descriptions for data, streams, devices (resources)
and entities that are represented by the devices, and
description of the services.
Source: Toby Jaffey, HyperCat Consortium, http://www.hypercat.io/standard.html
- Servers provide catalogues of resources to
- A catalogue is an array of URIs.
- Each resource in the catalogue is annotated
with metadata (RDF-like triples).
Complex models are (sometimes) good for
publishing research papers….
But they are often difficult to implement and use
in real world products.
53. What happens afterwards is more important
− How to index and query the annotated data
− How to make the publication suitable for constrained
environments and/or allow them to scale
− How to query them (considering the fact that here we are
dealing with live data and often reducing the processing time
and latency is crucial)
− Linking to other sources
54. IoT is a dynamic, online and rapidly
Annotation for the (Semantic) Web
Annotation for the IoT
Image sources: ABC Australia and 2dolphins.com
62. Overall, we need semantic technologies in
the IoT and these play a key role in providing
63. However, we should design and use the
semantics carefully and consider the
constraints and dynamicity of the IoT
64. #1: Design for large-scale and provide tools and APIs.
#2: Think of who will use the semantics and how when
you design your models.
#3: Provide means to update and change the semantic
65. #4: Create tools for validation and interoperability
#5: Create taxonomies and vocabularies.
#6: Of course you can always create a better model,
but try to re-use existing ones as much as you can.
66. #7: Link your data and descriptions to other existing
#8: Define rules and/or best practices for providing the
values for each attribute.
#9: Remember the widely used semantic descriptions
on the Web are simple ones like FOAF.
67. #10: Semantics are only one part of the solution and
often not the end-product so the focus of the design
should be on creating effective methods, tools and APIs
to handle and process the semantics.
Query methods, machine learning, reasoning and data
analysis techniques and methods should be able to
effectively use these semantics.