SR4LD 2014

a project with a background image

Tutorial on Stream Reasoning for Linked Data

October 19th/20th, 2014
Riva del Garda, Trentino, Italy
Collocated with the 13th International Semantic Web Conference (ISWC 2014)

Abstract Motivation Program Prerequisite knowledge The team of presenters References


The goal of the Stream Reasoning for Linked Data tutorial is twofold: to (1) introduce scalable reasoning and querying techniques to SW researchers as powerful tool to make use of linked data and large-scale ontologies, and to (2) present interesting research problems for SW that arise in reasoning with highly dynamic data streams [DCvF09,RPZ10a]. The tutorial consists of five parts. It will begin with an introduction of linked data streams, as well as reasoning using the Semantic Web standard ontology language OWL 2. The second part will introduce semantic processing of data streams explained using C-SPARQL, a continuous extension of SPARQL for querying RDF streams and RDF graphs. The third part will provide an overview of ontology-based access to data streams through query rewriting to Stream Processing Engines and using stream-to-ontology mappings. The fourth part of the tutorial is a hands-on session on tools and systems related to the previous parts. The fith part of the tutorial will present other stream reasoning techniques for RDFS and OWL2-RL. The last part will wrap up the tutorial and present an overview of the open challenges.


Nowadays, more and more dynamic information is becoming available to decision makers in the form of continuous data streams. These data streams occur in a variety of modern applications, such as network monitoring, traffic engineering, sensor networks, RFID tags, microposts, telecom records, Web logs, click-streams, etc. Processing these continuous flows of information and reasoning taking into account ontological knowledge is certainly one of the key challenges for semantics in the future Internet. While reasoners scale up in the classical, static domain of ontological knowledge, reasoning upon rapidly changing information has received attention only very recently. The combination of reasoning techniques with data streams gives rise to Stream Reasoning, a high impact research area that has already started to produce results that are relevant for both the semantic and data processing communities. This tutorial aims at introducing different existing approaches for reasoning and querying over data streams, and providing the audience with an overview of techniques and tools that can be used for this purpose. The contents of this tutorial can be relevant for ISWC attendees as it focuses in two of the main tasks in semantic data processing, reasoning and querying, in the context of streaming data that is ubiquitous in a large number of applications on the Web.


First part: 9.00 - 10.30

Introduction to Stream Reasoning (30 min) [slides]

The first session gives an overview of the Stream Reasoning research area, covering:

  • Challenges, and how existing systems (DSMS/CEP, Semantic Web) address them
  • Scope of Stream Reasoning research area
  • Existing Systems (quick introduction and high-level comparison)

RSP extensions for RDF and SPARQL (60 min) [slides]

This session covers:

  • RDF and SPARQL extensions to manage streaming data
  • Overview of RDF model extensions (single timestamped RDF, double-timestamped RDF, etc.)
  • Quick recap on SPARQL and SPARQL continuous extensions (e.g. windows, S2R operators, sequencing, followed-by operator)
  • Overview of existing systems w.r.t. models presented above

Coffee Break: 10:30 - 11:00

Second part: 11.00 - 12.30

An overview of Stream Reasoning (30 min) [slides]

This session covers:

  • Problem definition and challenges
  • Full goal drive approaches on each snapshot
  • Materialization of each snapshot in a stream
  • Query rewriting based approaches
  • the DReD approach for incremental maintenance of materialisations

C-SPARQL Engine: A RDF Stream Processing system for the Continuous Extension of SPARQL (C-SPARQL) with Naive Stream Reasoning support (30m) [slides]

This session presents an overview of extensions of SPARQL for querying and naively reasoning on dynamic data streams using the Continuous-SPARQL (C-SPARQL) Engine [BBC + 10b]. This session covers:

  • Overview of the C-SPARQL language and supported entailment regimes
  • Overview of the C-SPARQL Engine with Naive Stream Reasoning support
  • Practical examples of continuous social media analysis using C-SPARQL and the C-SPARQL Engine under RDFS entailment regime

MorphStream: Ontology-based streaming data access (30m) [slides]

This session presents an overview of extensions of MorphStream [CCG10] for querying existing data streams running on different types of Stream Processing Engines. This session covers:

  • Overview of query rewriting and ontology-based access to streams.
  • Semantic processing data streams delegating to stream processing engines with R2RML mappings.
  • Practical examples of semantic sensor network querying using MorphStream [CCG10,CJCA12]

Lunch break 12:30 - 13:30

Third part: 13:30 - 15:30

Hands on session (120m) [slides1, slides2, slides3]

  • C-SPARQL Engine Hands on Session
  • MorphStream Hands on Session

Coffee break 15:30 - 16:00

Fourth part: 16:00 - 18:00

IMaRS: Incremental Materialization for RDF Streams (30m) [slides]

This session presents IMaRS, a variation of DRed for the incremental maintenance of the window materializations. This session covers:

  • Optimization techniques for incrementally maintaining materializations when changes are caused by streaming data
  • Practical examples of continuous social media analysis

Other Stream Reasoning approaches (60 min) [slides]

This session covers:

  • Stream reasoning and complex event processing in ETALIS [ARFS12]
  • Sparkwave: Continuous Schema-Enhanced Pattern Matching over RDF Data Streams [KCF12]
  • Approximate stream reasoning for OWL2-DL [RPZ10a,RPZ10b]
  • Efficient RDF stream reasoning with GPUs [LUQ14]

Wrap-up and conclusions (30 min) [slides]

This session covers:

  • Achievements of existing approaches w.r.t. Stream Reasoning Challenges
  • Open problems and a revised Stream Reasoning research agenda
  • Open Q/A

Prerequisite knowledge

Basic knowledge in Semantic Web may allow better following the tutorial and gaining more benefits from it.

The team of presenters