SlideShare a Scribd company logo
Department of Informatics
TripleWave: a step towards
RDF Stream Processing on the
Web
Daniele Dell’Aglio
dellaglio@ifi.uzh.ch http://dellaglio.org @dandellaglio
Galway, 16.12.2016
An (incomplete) overview of the RSP/SR research
IMaRS
STARQL
DynamiTE
TROWL
EuropeMapfromWikipedia
StreamRule
StarCITY
SPARKWAVE
LARS
Key
Daniele Dell'Aglio - TripleWave 2/28
Connecting RSPs on the Web
Morph
Streams
CSPARQL
Etalis
TrOWL
Stream
Rule
CQELS
How far are we?
• Working prototypes/systems
• Formal models for RSPs and reasoning
• Minimal agreements: standards, serialization, interfaces
Daniele Dell'Aglio - TripleWave 3/28
Looking for minimal agreements: the RSP
Community group
Research work
Many Papers
PhD Theses
Datasets
Prototypes
Benchmarks
RDF Streams
Stream Reasoning
Complex Event Processing
Stream Query Processing
Stream Compression
Semantic Sensor Web
Manytopics
Tonsofwork
http://www.w3.org/community/rsp
W3C RSP Community Group
Effort to our work on RDF stream processing
discuss
standardize
combine
formalize
evangelize
Daniele Dell'Aglio - TripleWave 4/28
W3C RSP Documents
https://www.w3.org/community/rsp/
http://streamreasoning.github.io/RSP-QL/RSP_Requirements_Design_Document/
Use cases
Implementations
State of the Art
Challenges & issues
Requirements
Design principles
• RDF Stream model
• RDF Stream query language
Abstract syntax RDF Streams
Daniele Dell'Aglio - TripleWave 5/28
But...
W3C RSP set some foundations and requirements, but:
• Standard protocols and exchanging mechanisms for
RDF stream are missing.
• We need generic and flexible solutions for making RDF
streams available and exchangeable on the Web.
Daniele Dell'Aglio - TripleWave 6/28
TripleWave
TripleWave is an open-source
framework for creating and publishing
RDF streams over the Web.
Triple
Wave
how?input?
RDF Stream
what is it?
Daniele Dell'Aglio - TripleWave 7/28
TripleWave’s RDF streams
TripleWave should exploit and be compatible to
existing standards and recommendations
• The data model should be compatible with the abstract
model defined by the W3C RSP CG
• The output format compatible with RDF
Daniele Dell'Aglio - TripleWave 8/28
TripleWave serialization format
In TripleWave, an RDF stream is an (infinite) ordered
sequence of time-annotated data items (RDF graphs)…
... serialized in JSON-LD
[{ "@graph": {
"@id": "http://.../G1",
{"@id": "http://.../a",
"http://.../isIn": {"@id":"http://.../rRoom"}}
},{ "@id": "http://.../G1",
"generatedAt":"2016-16-12T00:01:00"
}
},
{ "@graph": {
"@id": "http://.../G2",
{"@id": "http://.../b",
"http://.../isIn": {"@id":"http://.../rRoom"}}
},{ "@id": "http://.../G2",
"generatedAt":" 2016-16-12T00:03:00"
}
},…
G1
G2
G3
{:a :isIn :rRoom}
{:b :isIn :bRoom}
{:c :talksIn :rRoom,
:d :talksIn :bRoom}
S
3
5
1
t
Daniele Dell'Aglio - TripleWave 9/28
Building TripleWave
Triple
Wave
how?input?
RDF Streams
Daniele Dell'Aglio - TripleWave 10/28
Spreading the RDF streams
TripleWave must be able to provide the stream to
RDF Stream Processing engines (query
processors and reasoners) through the Web.
• HTTP
• HTTP chunk
• Web sockets
• MQTT (upcoming)
Daniele Dell'Aglio - TripleWave 11/28
TripleWave Stream Descriptor
TripleWave must provide information about how
to access the stream
• TripleWave exposes an RDF description of the RDF
stream
• RDF Stream Descriptor (sGraph)
• It contains:
• The identifier of the stream
• Data item samples (see next slide)
• A description of the schema
• The location of the stream endpoint (e.g. WebSocket URL)
Daniele Dell'Aglio - TripleWave 12/28
TripleWave Stream Descriptor - Example
Daniele Dell'Aglio - TripleWave 13/28
TripleWave Stream Descriptor - Example
Daniele Dell'Aglio - TripleWave 13/28
Building TripleWave
Triple
Wave
input?
RDF Streams
(Web socket |
HTTP-chunk |
etc.)
RDF Stream
Descriptor
Daniele Dell'Aglio - TripleWave 14/28
Feeding TripleWave
TripleWave should support a variety of data
sources.
• RDF dumps with temporal information
• RDF with temporal information exposed through
SPARQL endpoints
• Streams available on the Web
Daniele Dell'Aglio - TripleWave 15/28
From RDF to RDF streams
Converts RDF stored in files/SPARQL endpoints
• Containing some time information
… into an RDF stream
• continuous flow of RDF data
• ordered according the original timestamps
• the time between two items is preserved
Use Cases
• Evaluation, testing and benchmarking
• Simulation systems
Daniele Dell'Aglio - TripleWave 16/28
From Web stream to RDF stream
Consumes an existing Web stream…
• through connectors
… and converts it into an RDF Stream
• Each data item is lifted to RDF
Use Cases
• Querying and reasoning
• Data integration
Web
Service Connector TW Core
Web Service API
Daniele Dell'Aglio - TripleWave 17/28
From Web stream to RDF stream
Convertion is made through R2RML
• Mappings to convert each data item in RDF
Example: map a field
{
“userUrl”:”foo”
}
rr:predicateObjectMap [
rr:predicate schema:agent;
rr:objectMap [ rr:column "userUrl"] ];
{
"https://schema.org/agent": {"@id": ”foo"},
}
Daniele Dell'Aglio - TripleWave 18/28
From Web stream to RDF stream
Convertion is made through R2RML
• Mappings to convert each data item in RDF
Example: map a field with template
{
“time”:”value”
}
rr:subjectMap [
rr:template ”something {time}”
{
“@id”:”something value”
}
Daniele Dell'Aglio - TripleWave 19/28
From Web stream to RDF stream
Convertion is made through R2RML
• Mappings to convert each data item in RDF
Example: add a new constant field
rr:predicateObjectMap
[ rr:predicate rdf:type; rr:objectMap
[ rr:constant schema:UpdateAction]];
{
"http://www.w3.org/1999/02/22-rdf-syntax-ns#type":
{"@id": "https://schema.org/UpdateAction"}
}
Daniele Dell'Aglio - TripleWave 20/28
Building TripleWave
Replay
Conversion to
RDF Stream
R2RML
Mappings
Live Non-RDF Streams
JSON
RDF
Time-annotated
RDF datasets
Finite RDF
substreams
Replay Loop
Triple
Wave RDF Streams
(Web socket |
HTTP-chunk |
etc.)
RDF Stream
Descriptor
Daniele Dell'Aglio - TripleWave 21/28
Implementing TripleWave
TripleWave is a NodeJS Web Application
• NodeJS is a JavaScript runtime built on Chrome's V8 JavaScript
engine.
TripleWave is open source
• Released with a Apache 2.0 licence
• Source code available at:
https://github.com/streamreasoning/TripleWave
Daniele Dell'Aglio - TripleWave 22/28
TripleWave Architecture
Web API
Transform
Stream
Graph
Stream
Connector
Stream
Datagen
Stream
Scheduler
Stream
Web
Service
SPARQL
Endpoint
File
R2RML
Mapping
Conversion
Daniele Dell'Aglio - TripleWave 23/28
TripleWave Architecture
Web API
Transform
Stream
Graph
Stream
Connector
Stream
Datagen
Stream
Scheduler
Stream
Web
Service
SPARQL
Endpoint
File
R2RML
Mapping
Replay
Replay loop
Daniele Dell'Aglio - TripleWave 23/28
Consuming TripleWave RDF Stream - Push
The TripleWave stream can be consumed via push by
extending the RSP service framework1
1https://github.com/streamreasoning/rsp-services
TripleWave
RSP-
Service
C-SPARQL
Register the stream, the query
and the observers
Connect to the
RDF stream
descriptor
Connect to the
RDF stream
endpoint Declare the stream, the query
and the observers
Inject the stream
Daniele Dell'Aglio - TripleWave 24/28
Show cases
Three demos have been deployed to show the capabilities
of the system.
Wikipedia changes stream conversion.
http://131.175.141.249/TripleWave-transform/sgraph
Endlessly replay as a stream the Linked Sensor Data
dataset.
http://131.175.141.249/TripleWave-endless/sgraph
Endlessly replay as a stream the LDBC social graph dataset.
http://131.175.141.249/TripleWave-ldbc/sgraph
Daniele Dell'Aglio - TripleWave 25/28
Find more...
• Andrea Mauri, Jean-Paul Calbimonte, Daniele Dell’Aglio, Marco
Balduini, Marco Brambilla, Emanuele Della Valle, Karl Aberer:
TripleWave: Spreading RDF Streams on the Web. Resource Paper
at International Semantic Web Conference 2016.
• Andrea Mauri, Jean-Paul Calbimonte, Daniele Dell’Aglio, Marco
Balduini, Emanuele Della Valle, Karl Aberer: Where Are the RDF
Streams?: On Deploying RDF Streams on the Web of Data with
TripleWave. Poster at International Semantic Web Conference
2015.
• A special thanks to Jean-Paul Calbimonte and Andrea Mauri for
supplying me parts of the today slides
Daniele Dell'Aglio - TripleWave 26/28
Conclusions
RDF streams are getting a momentum
• Several active research groups
• Prototypes, methods and applications
TripleWave shows that it is possible to exchange RDF
streams over the Web
• It uses standard technologies
• It feeds C-SPARQL (and soon CQELS)
There is a potential huge value in putting together the
results we are obtaining
Daniele Dell'Aglio - TripleWave 27/28
Thank you! Questions?
TripleWave: a step towards RDF Stream
Processing on the Web
http://streamreasoning.github.io/TripleWave
Daniele Dell’Aglio
dellaglio@ifi.uzh.ch
http://dellaglio.org
@dandellaglio
Daniele Dell'Aglio - TripleWave 28/28

More Related Content

What's hot

Graph Database Meetup in Seoul #1. What is Graph Database? (그래프 데이터베이스 소개)
Graph Database Meetup in Seoul #1. What is Graph Database? (그래프 데이터베이스 소개)Graph Database Meetup in Seoul #1. What is Graph Database? (그래프 데이터베이스 소개)
Graph Database Meetup in Seoul #1. What is Graph Database? (그래프 데이터베이스 소개)
bitnineglobal
 
An overview of methods for data anonymization
An overview of methods for data anonymizationAn overview of methods for data anonymization
An overview of methods for data anonymization
arx-deidentifier
 
The Role of Data Lakes in Healthcare
The Role of Data Lakes in HealthcareThe Role of Data Lakes in Healthcare
The Role of Data Lakes in Healthcare
Perficient, Inc.
 
Hands on Explainable Recommender Systems with Knowledge Graphs @ RecSys22
Hands on Explainable Recommender Systems with Knowledge Graphs @ RecSys22Hands on Explainable Recommender Systems with Knowledge Graphs @ RecSys22
Hands on Explainable Recommender Systems with Knowledge Graphs @ RecSys22
GiacomoBalloccu
 
Data platform architecture principles - ieee infrastructure 2020
Data platform architecture principles - ieee infrastructure 2020Data platform architecture principles - ieee infrastructure 2020
Data platform architecture principles - ieee infrastructure 2020
Julien Le Dem
 
1 introduction databases and database users
1 introduction databases and database users1 introduction databases and database users
1 introduction databases and database users
Kumar
 
Data Lake - Multitenancy Best Practices
Data Lake - Multitenancy Best PracticesData Lake - Multitenancy Best Practices
Data Lake - Multitenancy Best Practices
CitiusTech
 
Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks.pdf
Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks.pdfRetrieval-Augmented Generation for Knowledge-Intensive NLP Tasks.pdf
Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks.pdf
Po-Chuan Chen
 
LinkML Intro July 2022.pptx PLEASE VIEW THIS ON ZENODO
LinkML Intro July 2022.pptx PLEASE VIEW THIS ON ZENODOLinkML Intro July 2022.pptx PLEASE VIEW THIS ON ZENODO
LinkML Intro July 2022.pptx PLEASE VIEW THIS ON ZENODO
Chris Mungall
 
RDF data model
RDF data modelRDF data model
RDF data model
Jose Emilio Labra Gayo
 
Towards an Open Research Knowledge Graph
Towards an Open Research Knowledge GraphTowards an Open Research Knowledge Graph
Towards an Open Research Knowledge Graph
Sören Auer
 
Neo4j - Cas d'usages pour votre métier
Neo4j - Cas d'usages pour votre métierNeo4j - Cas d'usages pour votre métier
Neo4j - Cas d'usages pour votre métier
Neo4j
 
Graph Analytics with ArangoDB
Graph Analytics with ArangoDBGraph Analytics with ArangoDB
Graph Analytics with ArangoDB
ArangoDB Database
 
What is data engineering?
What is data engineering?What is data engineering?
What is data engineering?
yongdam kim
 
"Hadoop and Data Warehouse (DWH) – Friends, Enemies or Profiteers? What about...
"Hadoop and Data Warehouse (DWH) – Friends, Enemies or Profiteers? What about..."Hadoop and Data Warehouse (DWH) – Friends, Enemies or Profiteers? What about...
"Hadoop and Data Warehouse (DWH) – Friends, Enemies or Profiteers? What about...
Kai Wähner
 
OLAP on the Cloud with Azure Databricks and Azure Synapse
OLAP on the Cloud with Azure Databricks and Azure SynapseOLAP on the Cloud with Azure Databricks and Azure Synapse
OLAP on the Cloud with Azure Databricks and Azure Synapse
AtScale
 
Using an employee knowledge graph for employee engagement and career mobility
Using an employee knowledge graph for employee engagement and career mobilityUsing an employee knowledge graph for employee engagement and career mobility
Using an employee knowledge graph for employee engagement and career mobility
Neo4j
 
Introduction to RDF & SPARQL
Introduction to RDF & SPARQLIntroduction to RDF & SPARQL
Introduction to RDF & SPARQL
Open Data Support
 
Ontology quality, ontology design patterns, and competency questions
Ontology quality, ontology design patterns, and competency questionsOntology quality, ontology design patterns, and competency questions
Ontology quality, ontology design patterns, and competency questions
Nicola Guarino
 
Presto At Arm Treasure Data - 2019 Updates
Presto At Arm Treasure Data - 2019 UpdatesPresto At Arm Treasure Data - 2019 Updates
Presto At Arm Treasure Data - 2019 Updates
Taro L. Saito
 

What's hot (20)

Graph Database Meetup in Seoul #1. What is Graph Database? (그래프 데이터베이스 소개)
Graph Database Meetup in Seoul #1. What is Graph Database? (그래프 데이터베이스 소개)Graph Database Meetup in Seoul #1. What is Graph Database? (그래프 데이터베이스 소개)
Graph Database Meetup in Seoul #1. What is Graph Database? (그래프 데이터베이스 소개)
 
An overview of methods for data anonymization
An overview of methods for data anonymizationAn overview of methods for data anonymization
An overview of methods for data anonymization
 
The Role of Data Lakes in Healthcare
The Role of Data Lakes in HealthcareThe Role of Data Lakes in Healthcare
The Role of Data Lakes in Healthcare
 
Hands on Explainable Recommender Systems with Knowledge Graphs @ RecSys22
Hands on Explainable Recommender Systems with Knowledge Graphs @ RecSys22Hands on Explainable Recommender Systems with Knowledge Graphs @ RecSys22
Hands on Explainable Recommender Systems with Knowledge Graphs @ RecSys22
 
Data platform architecture principles - ieee infrastructure 2020
Data platform architecture principles - ieee infrastructure 2020Data platform architecture principles - ieee infrastructure 2020
Data platform architecture principles - ieee infrastructure 2020
 
1 introduction databases and database users
1 introduction databases and database users1 introduction databases and database users
1 introduction databases and database users
 
Data Lake - Multitenancy Best Practices
Data Lake - Multitenancy Best PracticesData Lake - Multitenancy Best Practices
Data Lake - Multitenancy Best Practices
 
Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks.pdf
Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks.pdfRetrieval-Augmented Generation for Knowledge-Intensive NLP Tasks.pdf
Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks.pdf
 
LinkML Intro July 2022.pptx PLEASE VIEW THIS ON ZENODO
LinkML Intro July 2022.pptx PLEASE VIEW THIS ON ZENODOLinkML Intro July 2022.pptx PLEASE VIEW THIS ON ZENODO
LinkML Intro July 2022.pptx PLEASE VIEW THIS ON ZENODO
 
RDF data model
RDF data modelRDF data model
RDF data model
 
Towards an Open Research Knowledge Graph
Towards an Open Research Knowledge GraphTowards an Open Research Knowledge Graph
Towards an Open Research Knowledge Graph
 
Neo4j - Cas d'usages pour votre métier
Neo4j - Cas d'usages pour votre métierNeo4j - Cas d'usages pour votre métier
Neo4j - Cas d'usages pour votre métier
 
Graph Analytics with ArangoDB
Graph Analytics with ArangoDBGraph Analytics with ArangoDB
Graph Analytics with ArangoDB
 
What is data engineering?
What is data engineering?What is data engineering?
What is data engineering?
 
"Hadoop and Data Warehouse (DWH) – Friends, Enemies or Profiteers? What about...
"Hadoop and Data Warehouse (DWH) – Friends, Enemies or Profiteers? What about..."Hadoop and Data Warehouse (DWH) – Friends, Enemies or Profiteers? What about...
"Hadoop and Data Warehouse (DWH) – Friends, Enemies or Profiteers? What about...
 
OLAP on the Cloud with Azure Databricks and Azure Synapse
OLAP on the Cloud with Azure Databricks and Azure SynapseOLAP on the Cloud with Azure Databricks and Azure Synapse
OLAP on the Cloud with Azure Databricks and Azure Synapse
 
Using an employee knowledge graph for employee engagement and career mobility
Using an employee knowledge graph for employee engagement and career mobilityUsing an employee knowledge graph for employee engagement and career mobility
Using an employee knowledge graph for employee engagement and career mobility
 
Introduction to RDF & SPARQL
Introduction to RDF & SPARQLIntroduction to RDF & SPARQL
Introduction to RDF & SPARQL
 
Ontology quality, ontology design patterns, and competency questions
Ontology quality, ontology design patterns, and competency questionsOntology quality, ontology design patterns, and competency questions
Ontology quality, ontology design patterns, and competency questions
 
Presto At Arm Treasure Data - 2019 Updates
Presto At Arm Treasure Data - 2019 UpdatesPresto At Arm Treasure Data - 2019 Updates
Presto At Arm Treasure Data - 2019 Updates
 

Similar to Triplewave: a step towards RDF Stream Processing on the Web

Connecting Stream Reasoners on the Web
Connecting Stream Reasoners on the WebConnecting Stream Reasoners on the Web
Connecting Stream Reasoners on the Web
Jean-Paul Calbimonte
 
RDF Stream Processing Models (SR4LD2013)
RDF Stream Processing Models (SR4LD2013)RDF Stream Processing Models (SR4LD2013)
RDF Stream Processing Models (SR4LD2013)
Daniele Dell'Aglio
 
Graph Analytics in Spark
Graph Analytics in SparkGraph Analytics in Spark
Graph Analytics in Spark
Paco Nathan
 
SFScon 2020 - Peter Hopfgartner - Open Data de luxe
SFScon 2020 - Peter Hopfgartner - Open Data de luxeSFScon 2020 - Peter Hopfgartner - Open Data de luxe
SFScon 2020 - Peter Hopfgartner - Open Data de luxe
South Tyrol Free Software Conference
 
GraphX: Graph analytics for insights about developer communities
GraphX: Graph analytics for insights about developer communitiesGraphX: Graph analytics for insights about developer communities
GraphX: Graph analytics for insights about developer communities
Paco Nathan
 
Sustainable queryable access to Linked Data
Sustainable queryable access to Linked DataSustainable queryable access to Linked Data
Sustainable queryable access to Linked Data
Ruben Verborgh
 
TripleWave: Spreading RDF Streams on the Web
TripleWave: Spreading RDF Streams on the WebTripleWave: Spreading RDF Streams on the Web
TripleWave: Spreading RDF Streams on the Web
Andrea Mauri
 
RDF Stream Processing and the role of Semantics
RDF Stream Processing and the role of SemanticsRDF Stream Processing and the role of Semantics
RDF Stream Processing and the role of Semantics
Jean-Paul Calbimonte
 
Triplestore and SPARQL
Triplestore and SPARQLTriplestore and SPARQL
Triplestore and SPARQL
Lino Valdivia
 
A Little SPARQL in your Analytics
A Little SPARQL in your AnalyticsA Little SPARQL in your Analytics
A Little SPARQL in your Analytics
Dr. Neil Brittliff
 
Linked Data Notifications for RDF Streams
Linked Data Notifications for RDF StreamsLinked Data Notifications for RDF Streams
Linked Data Notifications for RDF Streams
Jean-Paul Calbimonte
 
July Clojure Users Group Meeting: "Using Cascalog with Palo Alto Open Data"
July Clojure Users Group Meeting: "Using Cascalog with Palo Alto Open Data"July Clojure Users Group Meeting: "Using Cascalog with Palo Alto Open Data"
July Clojure Users Group Meeting: "Using Cascalog with Palo Alto Open Data"
Paco Nathan
 
Semantic Web
Semantic WebSemantic Web
Semantic Web
hardchiu
 
Streaming Day - an overview of Stream Reasoning
Streaming Day - an overview of Stream ReasoningStreaming Day - an overview of Stream Reasoning
Streaming Day - an overview of Stream Reasoning
Riccardo Tommasini
 
Culture Geeks Feb talk: Adventures in Linked Data Land
Culture Geeks Feb talk: Adventures in Linked Data LandCulture Geeks Feb talk: Adventures in Linked Data Land
Culture Geeks Feb talk: Adventures in Linked Data Land
val.cartei
 
HKOSCon18 - Chetan Khatri - Scaling TB's of Data with Apache Spark and Scala ...
HKOSCon18 - Chetan Khatri - Scaling TB's of Data with Apache Spark and Scala ...HKOSCon18 - Chetan Khatri - Scaling TB's of Data with Apache Spark and Scala ...
HKOSCon18 - Chetan Khatri - Scaling TB's of Data with Apache Spark and Scala ...
Chetan Khatri
 
RDF Stream Processing: Let's React
RDF Stream Processing: Let's ReactRDF Stream Processing: Let's React
RDF Stream Processing: Let's React
Jean-Paul Calbimonte
 
Ks2008 Semanticweb In Action
Ks2008 Semanticweb In ActionKs2008 Semanticweb In Action
Ks2008 Semanticweb In Action
Rinke Hoekstra
 
Transient and persistent RDF views over relational databases in the context o...
Transient and persistent RDF views over relational databases in the context o...Transient and persistent RDF views over relational databases in the context o...
Transient and persistent RDF views over relational databases in the context o...
Nikolaos Konstantinou
 
On the need for a W3C community group on RDF Stream Processing
On the need for a W3C community group on RDF Stream ProcessingOn the need for a W3C community group on RDF Stream Processing
On the need for a W3C community group on RDF Stream Processing
PlanetData Network of Excellence
 

Similar to Triplewave: a step towards RDF Stream Processing on the Web (20)

Connecting Stream Reasoners on the Web
Connecting Stream Reasoners on the WebConnecting Stream Reasoners on the Web
Connecting Stream Reasoners on the Web
 
RDF Stream Processing Models (SR4LD2013)
RDF Stream Processing Models (SR4LD2013)RDF Stream Processing Models (SR4LD2013)
RDF Stream Processing Models (SR4LD2013)
 
Graph Analytics in Spark
Graph Analytics in SparkGraph Analytics in Spark
Graph Analytics in Spark
 
SFScon 2020 - Peter Hopfgartner - Open Data de luxe
SFScon 2020 - Peter Hopfgartner - Open Data de luxeSFScon 2020 - Peter Hopfgartner - Open Data de luxe
SFScon 2020 - Peter Hopfgartner - Open Data de luxe
 
GraphX: Graph analytics for insights about developer communities
GraphX: Graph analytics for insights about developer communitiesGraphX: Graph analytics for insights about developer communities
GraphX: Graph analytics for insights about developer communities
 
Sustainable queryable access to Linked Data
Sustainable queryable access to Linked DataSustainable queryable access to Linked Data
Sustainable queryable access to Linked Data
 
TripleWave: Spreading RDF Streams on the Web
TripleWave: Spreading RDF Streams on the WebTripleWave: Spreading RDF Streams on the Web
TripleWave: Spreading RDF Streams on the Web
 
RDF Stream Processing and the role of Semantics
RDF Stream Processing and the role of SemanticsRDF Stream Processing and the role of Semantics
RDF Stream Processing and the role of Semantics
 
Triplestore and SPARQL
Triplestore and SPARQLTriplestore and SPARQL
Triplestore and SPARQL
 
A Little SPARQL in your Analytics
A Little SPARQL in your AnalyticsA Little SPARQL in your Analytics
A Little SPARQL in your Analytics
 
Linked Data Notifications for RDF Streams
Linked Data Notifications for RDF StreamsLinked Data Notifications for RDF Streams
Linked Data Notifications for RDF Streams
 
July Clojure Users Group Meeting: "Using Cascalog with Palo Alto Open Data"
July Clojure Users Group Meeting: "Using Cascalog with Palo Alto Open Data"July Clojure Users Group Meeting: "Using Cascalog with Palo Alto Open Data"
July Clojure Users Group Meeting: "Using Cascalog with Palo Alto Open Data"
 
Semantic Web
Semantic WebSemantic Web
Semantic Web
 
Streaming Day - an overview of Stream Reasoning
Streaming Day - an overview of Stream ReasoningStreaming Day - an overview of Stream Reasoning
Streaming Day - an overview of Stream Reasoning
 
Culture Geeks Feb talk: Adventures in Linked Data Land
Culture Geeks Feb talk: Adventures in Linked Data LandCulture Geeks Feb talk: Adventures in Linked Data Land
Culture Geeks Feb talk: Adventures in Linked Data Land
 
HKOSCon18 - Chetan Khatri - Scaling TB's of Data with Apache Spark and Scala ...
HKOSCon18 - Chetan Khatri - Scaling TB's of Data with Apache Spark and Scala ...HKOSCon18 - Chetan Khatri - Scaling TB's of Data with Apache Spark and Scala ...
HKOSCon18 - Chetan Khatri - Scaling TB's of Data with Apache Spark and Scala ...
 
RDF Stream Processing: Let's React
RDF Stream Processing: Let's ReactRDF Stream Processing: Let's React
RDF Stream Processing: Let's React
 
Ks2008 Semanticweb In Action
Ks2008 Semanticweb In ActionKs2008 Semanticweb In Action
Ks2008 Semanticweb In Action
 
Transient and persistent RDF views over relational databases in the context o...
Transient and persistent RDF views over relational databases in the context o...Transient and persistent RDF views over relational databases in the context o...
Transient and persistent RDF views over relational databases in the context o...
 
On the need for a W3C community group on RDF Stream Processing
On the need for a W3C community group on RDF Stream ProcessingOn the need for a W3C community group on RDF Stream Processing
On the need for a W3C community group on RDF Stream Processing
 

More from Daniele Dell'Aglio

Distributed stream consistency checking
Distributed stream consistency checkingDistributed stream consistency checking
Distributed stream consistency checking
Daniele Dell'Aglio
 
On web stream processing
On web stream processingOn web stream processing
On web stream processing
Daniele Dell'Aglio
 
On a web of data streams
On a web of data streamsOn a web of data streams
On a web of data streams
Daniele Dell'Aglio
 
On unifying query languages for RDF streams
On unifying query languages for RDF streamsOn unifying query languages for RDF streams
On unifying query languages for RDF streams
Daniele Dell'Aglio
 
RSEP-QL: A Query Model to Capture Event Pattern Matching in RDF Stream Proces...
RSEP-QL: A Query Model to Capture Event Pattern Matching in RDF Stream Proces...RSEP-QL: A Query Model to Capture Event Pattern Matching in RDF Stream Proces...
RSEP-QL: A Query Model to Capture Event Pattern Matching in RDF Stream Proces...
Daniele Dell'Aglio
 
Summary of the Stream Reasoning workshop at ISWC 2016
Summary of the Stream Reasoning workshop at ISWC 2016Summary of the Stream Reasoning workshop at ISWC 2016
Summary of the Stream Reasoning workshop at ISWC 2016
Daniele Dell'Aglio
 
On Unified Stream Reasoning
On Unified Stream ReasoningOn Unified Stream Reasoning
On Unified Stream Reasoning
Daniele Dell'Aglio
 
On Unified Stream Reasoning - The RDF Stream Processing realm
On Unified Stream Reasoning - The RDF Stream Processing realmOn Unified Stream Reasoning - The RDF Stream Processing realm
On Unified Stream Reasoning - The RDF Stream Processing realm
Daniele Dell'Aglio
 
Querying the Web of Data with XSPARQL 1.1
Querying the Web of Data with XSPARQL 1.1Querying the Web of Data with XSPARQL 1.1
Querying the Web of Data with XSPARQL 1.1
Daniele Dell'Aglio
 
Augmented Participation to Live Events through Social Network Content Enrichm...
Augmented Participation to Live Events through Social Network Content Enrichm...Augmented Participation to Live Events through Social Network Content Enrichm...
Augmented Participation to Live Events through Social Network Content Enrichm...
Daniele Dell'Aglio
 
An experience on empirical research about rdf stream
An experience on empirical research about rdf streamAn experience on empirical research about rdf stream
An experience on empirical research about rdf stream
Daniele Dell'Aglio
 
RDF Stream Processing Models (RSP2014)
RDF Stream Processing Models (RSP2014)RDF Stream Processing Models (RSP2014)
RDF Stream Processing Models (RSP2014)
Daniele Dell'Aglio
 
A Survey of Temporal Extensions of Description Logics
A Survey of Temporal Extensions of Description LogicsA Survey of Temporal Extensions of Description Logics
A Survey of Temporal Extensions of Description Logics
Daniele Dell'Aglio
 
IMaRS - Incremental Materialization for RDF Streams (SR4LD2013)
IMaRS - Incremental Materialization for RDF Streams (SR4LD2013)IMaRS - Incremental Materialization for RDF Streams (SR4LD2013)
IMaRS - Incremental Materialization for RDF Streams (SR4LD2013)
Daniele Dell'Aglio
 
Ontology based top-k query answering over massive, heterogeneous, and dynamic...
Ontology based top-k query answering over massive, heterogeneous, and dynamic...Ontology based top-k query answering over massive, heterogeneous, and dynamic...
Ontology based top-k query answering over massive, heterogeneous, and dynamic...
Daniele Dell'Aglio
 
On correctness in RDF stream processor benchmarking
On correctness in RDF stream processor benchmarkingOn correctness in RDF stream processor benchmarking
On correctness in RDF stream processor benchmarking
Daniele Dell'Aglio
 
An Ontological Formulation and an OPM profile for Causality in Planning Appli...
An Ontological Formulation and an OPM profile for Causality in Planning Appli...An Ontological Formulation and an OPM profile for Causality in Planning Appli...
An Ontological Formulation and an OPM profile for Causality in Planning Appli...
Daniele Dell'Aglio
 
P&MSP2012 - Maven
P&MSP2012 - MavenP&MSP2012 - Maven
P&MSP2012 - Maven
Daniele Dell'Aglio
 
P&MSP2012 - Version Control Systems
P&MSP2012 - Version Control SystemsP&MSP2012 - Version Control Systems
P&MSP2012 - Version Control Systems
Daniele Dell'Aglio
 
P&MSP2012 - Unit Testing
P&MSP2012 - Unit TestingP&MSP2012 - Unit Testing
P&MSP2012 - Unit Testing
Daniele Dell'Aglio
 

More from Daniele Dell'Aglio (20)

Distributed stream consistency checking
Distributed stream consistency checkingDistributed stream consistency checking
Distributed stream consistency checking
 
On web stream processing
On web stream processingOn web stream processing
On web stream processing
 
On a web of data streams
On a web of data streamsOn a web of data streams
On a web of data streams
 
On unifying query languages for RDF streams
On unifying query languages for RDF streamsOn unifying query languages for RDF streams
On unifying query languages for RDF streams
 
RSEP-QL: A Query Model to Capture Event Pattern Matching in RDF Stream Proces...
RSEP-QL: A Query Model to Capture Event Pattern Matching in RDF Stream Proces...RSEP-QL: A Query Model to Capture Event Pattern Matching in RDF Stream Proces...
RSEP-QL: A Query Model to Capture Event Pattern Matching in RDF Stream Proces...
 
Summary of the Stream Reasoning workshop at ISWC 2016
Summary of the Stream Reasoning workshop at ISWC 2016Summary of the Stream Reasoning workshop at ISWC 2016
Summary of the Stream Reasoning workshop at ISWC 2016
 
On Unified Stream Reasoning
On Unified Stream ReasoningOn Unified Stream Reasoning
On Unified Stream Reasoning
 
On Unified Stream Reasoning - The RDF Stream Processing realm
On Unified Stream Reasoning - The RDF Stream Processing realmOn Unified Stream Reasoning - The RDF Stream Processing realm
On Unified Stream Reasoning - The RDF Stream Processing realm
 
Querying the Web of Data with XSPARQL 1.1
Querying the Web of Data with XSPARQL 1.1Querying the Web of Data with XSPARQL 1.1
Querying the Web of Data with XSPARQL 1.1
 
Augmented Participation to Live Events through Social Network Content Enrichm...
Augmented Participation to Live Events through Social Network Content Enrichm...Augmented Participation to Live Events through Social Network Content Enrichm...
Augmented Participation to Live Events through Social Network Content Enrichm...
 
An experience on empirical research about rdf stream
An experience on empirical research about rdf streamAn experience on empirical research about rdf stream
An experience on empirical research about rdf stream
 
RDF Stream Processing Models (RSP2014)
RDF Stream Processing Models (RSP2014)RDF Stream Processing Models (RSP2014)
RDF Stream Processing Models (RSP2014)
 
A Survey of Temporal Extensions of Description Logics
A Survey of Temporal Extensions of Description LogicsA Survey of Temporal Extensions of Description Logics
A Survey of Temporal Extensions of Description Logics
 
IMaRS - Incremental Materialization for RDF Streams (SR4LD2013)
IMaRS - Incremental Materialization for RDF Streams (SR4LD2013)IMaRS - Incremental Materialization for RDF Streams (SR4LD2013)
IMaRS - Incremental Materialization for RDF Streams (SR4LD2013)
 
Ontology based top-k query answering over massive, heterogeneous, and dynamic...
Ontology based top-k query answering over massive, heterogeneous, and dynamic...Ontology based top-k query answering over massive, heterogeneous, and dynamic...
Ontology based top-k query answering over massive, heterogeneous, and dynamic...
 
On correctness in RDF stream processor benchmarking
On correctness in RDF stream processor benchmarkingOn correctness in RDF stream processor benchmarking
On correctness in RDF stream processor benchmarking
 
An Ontological Formulation and an OPM profile for Causality in Planning Appli...
An Ontological Formulation and an OPM profile for Causality in Planning Appli...An Ontological Formulation and an OPM profile for Causality in Planning Appli...
An Ontological Formulation and an OPM profile for Causality in Planning Appli...
 
P&MSP2012 - Maven
P&MSP2012 - MavenP&MSP2012 - Maven
P&MSP2012 - Maven
 
P&MSP2012 - Version Control Systems
P&MSP2012 - Version Control SystemsP&MSP2012 - Version Control Systems
P&MSP2012 - Version Control Systems
 
P&MSP2012 - Unit Testing
P&MSP2012 - Unit TestingP&MSP2012 - Unit Testing
P&MSP2012 - Unit Testing
 

Recently uploaded

The Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptxThe Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptx
operationspcvita
 
Mutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented ChatbotsMutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented Chatbots
Pablo Gómez Abajo
 
Apps Break Data
Apps Break DataApps Break Data
Apps Break Data
Ivo Velitchkov
 
"Scaling RAG Applications to serve millions of users", Kevin Goedecke
"Scaling RAG Applications to serve millions of users",  Kevin Goedecke"Scaling RAG Applications to serve millions of users",  Kevin Goedecke
"Scaling RAG Applications to serve millions of users", Kevin Goedecke
Fwdays
 
Dandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity serverDandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity server
Antonios Katsarakis
 
High performance Serverless Java on AWS- GoTo Amsterdam 2024
High performance Serverless Java on AWS- GoTo Amsterdam 2024High performance Serverless Java on AWS- GoTo Amsterdam 2024
High performance Serverless Java on AWS- GoTo Amsterdam 2024
Vadym Kazulkin
 
Biomedical Knowledge Graphs for Data Scientists and Bioinformaticians
Biomedical Knowledge Graphs for Data Scientists and BioinformaticiansBiomedical Knowledge Graphs for Data Scientists and Bioinformaticians
Biomedical Knowledge Graphs for Data Scientists and Bioinformaticians
Neo4j
 
Essentials of Automations: Exploring Attributes & Automation Parameters
Essentials of Automations: Exploring Attributes & Automation ParametersEssentials of Automations: Exploring Attributes & Automation Parameters
Essentials of Automations: Exploring Attributes & Automation Parameters
Safe Software
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
Jakub Marek
 
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectorsConnector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
DianaGray10
 
"What does it really mean for your system to be available, or how to define w...
"What does it really mean for your system to be available, or how to define w..."What does it really mean for your system to be available, or how to define w...
"What does it really mean for your system to be available, or how to define w...
Fwdays
 
Northern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
Northern Engraving | Modern Metal Trim, Nameplates and Appliance PanelsNorthern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
Northern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
Northern Engraving
 
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
Jason Yip
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
Hiroshi SHIBATA
 
Principle of conventional tomography-Bibash Shahi ppt..pptx
Principle of conventional tomography-Bibash Shahi ppt..pptxPrinciple of conventional tomography-Bibash Shahi ppt..pptx
Principle of conventional tomography-Bibash Shahi ppt..pptx
BibashShahi
 
PRODUCT LISTING OPTIMIZATION PRESENTATION.pptx
PRODUCT LISTING OPTIMIZATION PRESENTATION.pptxPRODUCT LISTING OPTIMIZATION PRESENTATION.pptx
PRODUCT LISTING OPTIMIZATION PRESENTATION.pptx
christinelarrosa
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
Chart Kalyan
 
Nordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptxNordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptx
MichaelKnudsen27
 
Demystifying Knowledge Management through Storytelling
Demystifying Knowledge Management through StorytellingDemystifying Knowledge Management through Storytelling
Demystifying Knowledge Management through Storytelling
Enterprise Knowledge
 
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-Efficiency
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-EfficiencyFreshworks Rethinks NoSQL for Rapid Scaling & Cost-Efficiency
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-Efficiency
ScyllaDB
 

Recently uploaded (20)

The Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptxThe Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptx
 
Mutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented ChatbotsMutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented Chatbots
 
Apps Break Data
Apps Break DataApps Break Data
Apps Break Data
 
"Scaling RAG Applications to serve millions of users", Kevin Goedecke
"Scaling RAG Applications to serve millions of users",  Kevin Goedecke"Scaling RAG Applications to serve millions of users",  Kevin Goedecke
"Scaling RAG Applications to serve millions of users", Kevin Goedecke
 
Dandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity serverDandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity server
 
High performance Serverless Java on AWS- GoTo Amsterdam 2024
High performance Serverless Java on AWS- GoTo Amsterdam 2024High performance Serverless Java on AWS- GoTo Amsterdam 2024
High performance Serverless Java on AWS- GoTo Amsterdam 2024
 
Biomedical Knowledge Graphs for Data Scientists and Bioinformaticians
Biomedical Knowledge Graphs for Data Scientists and BioinformaticiansBiomedical Knowledge Graphs for Data Scientists and Bioinformaticians
Biomedical Knowledge Graphs for Data Scientists and Bioinformaticians
 
Essentials of Automations: Exploring Attributes & Automation Parameters
Essentials of Automations: Exploring Attributes & Automation ParametersEssentials of Automations: Exploring Attributes & Automation Parameters
Essentials of Automations: Exploring Attributes & Automation Parameters
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
 
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectorsConnector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
 
"What does it really mean for your system to be available, or how to define w...
"What does it really mean for your system to be available, or how to define w..."What does it really mean for your system to be available, or how to define w...
"What does it really mean for your system to be available, or how to define w...
 
Northern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
Northern Engraving | Modern Metal Trim, Nameplates and Appliance PanelsNorthern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
Northern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
 
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
 
Principle of conventional tomography-Bibash Shahi ppt..pptx
Principle of conventional tomography-Bibash Shahi ppt..pptxPrinciple of conventional tomography-Bibash Shahi ppt..pptx
Principle of conventional tomography-Bibash Shahi ppt..pptx
 
PRODUCT LISTING OPTIMIZATION PRESENTATION.pptx
PRODUCT LISTING OPTIMIZATION PRESENTATION.pptxPRODUCT LISTING OPTIMIZATION PRESENTATION.pptx
PRODUCT LISTING OPTIMIZATION PRESENTATION.pptx
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
 
Nordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptxNordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptx
 
Demystifying Knowledge Management through Storytelling
Demystifying Knowledge Management through StorytellingDemystifying Knowledge Management through Storytelling
Demystifying Knowledge Management through Storytelling
 
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-Efficiency
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-EfficiencyFreshworks Rethinks NoSQL for Rapid Scaling & Cost-Efficiency
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-Efficiency
 

Triplewave: a step towards RDF Stream Processing on the Web

  • 1. Department of Informatics TripleWave: a step towards RDF Stream Processing on the Web Daniele Dell’Aglio dellaglio@ifi.uzh.ch http://dellaglio.org @dandellaglio Galway, 16.12.2016
  • 2. An (incomplete) overview of the RSP/SR research IMaRS STARQL DynamiTE TROWL EuropeMapfromWikipedia StreamRule StarCITY SPARKWAVE LARS Key Daniele Dell'Aglio - TripleWave 2/28
  • 3. Connecting RSPs on the Web Morph Streams CSPARQL Etalis TrOWL Stream Rule CQELS How far are we? • Working prototypes/systems • Formal models for RSPs and reasoning • Minimal agreements: standards, serialization, interfaces Daniele Dell'Aglio - TripleWave 3/28
  • 4. Looking for minimal agreements: the RSP Community group Research work Many Papers PhD Theses Datasets Prototypes Benchmarks RDF Streams Stream Reasoning Complex Event Processing Stream Query Processing Stream Compression Semantic Sensor Web Manytopics Tonsofwork http://www.w3.org/community/rsp W3C RSP Community Group Effort to our work on RDF stream processing discuss standardize combine formalize evangelize Daniele Dell'Aglio - TripleWave 4/28
  • 5. W3C RSP Documents https://www.w3.org/community/rsp/ http://streamreasoning.github.io/RSP-QL/RSP_Requirements_Design_Document/ Use cases Implementations State of the Art Challenges & issues Requirements Design principles • RDF Stream model • RDF Stream query language Abstract syntax RDF Streams Daniele Dell'Aglio - TripleWave 5/28
  • 6. But... W3C RSP set some foundations and requirements, but: • Standard protocols and exchanging mechanisms for RDF stream are missing. • We need generic and flexible solutions for making RDF streams available and exchangeable on the Web. Daniele Dell'Aglio - TripleWave 6/28
  • 7. TripleWave TripleWave is an open-source framework for creating and publishing RDF streams over the Web. Triple Wave how?input? RDF Stream what is it? Daniele Dell'Aglio - TripleWave 7/28
  • 8. TripleWave’s RDF streams TripleWave should exploit and be compatible to existing standards and recommendations • The data model should be compatible with the abstract model defined by the W3C RSP CG • The output format compatible with RDF Daniele Dell'Aglio - TripleWave 8/28
  • 9. TripleWave serialization format In TripleWave, an RDF stream is an (infinite) ordered sequence of time-annotated data items (RDF graphs)… ... serialized in JSON-LD [{ "@graph": { "@id": "http://.../G1", {"@id": "http://.../a", "http://.../isIn": {"@id":"http://.../rRoom"}} },{ "@id": "http://.../G1", "generatedAt":"2016-16-12T00:01:00" } }, { "@graph": { "@id": "http://.../G2", {"@id": "http://.../b", "http://.../isIn": {"@id":"http://.../rRoom"}} },{ "@id": "http://.../G2", "generatedAt":" 2016-16-12T00:03:00" } },… G1 G2 G3 {:a :isIn :rRoom} {:b :isIn :bRoom} {:c :talksIn :rRoom, :d :talksIn :bRoom} S 3 5 1 t Daniele Dell'Aglio - TripleWave 9/28
  • 11. Spreading the RDF streams TripleWave must be able to provide the stream to RDF Stream Processing engines (query processors and reasoners) through the Web. • HTTP • HTTP chunk • Web sockets • MQTT (upcoming) Daniele Dell'Aglio - TripleWave 11/28
  • 12. TripleWave Stream Descriptor TripleWave must provide information about how to access the stream • TripleWave exposes an RDF description of the RDF stream • RDF Stream Descriptor (sGraph) • It contains: • The identifier of the stream • Data item samples (see next slide) • A description of the schema • The location of the stream endpoint (e.g. WebSocket URL) Daniele Dell'Aglio - TripleWave 12/28
  • 13. TripleWave Stream Descriptor - Example Daniele Dell'Aglio - TripleWave 13/28
  • 14. TripleWave Stream Descriptor - Example Daniele Dell'Aglio - TripleWave 13/28
  • 15. Building TripleWave Triple Wave input? RDF Streams (Web socket | HTTP-chunk | etc.) RDF Stream Descriptor Daniele Dell'Aglio - TripleWave 14/28
  • 16. Feeding TripleWave TripleWave should support a variety of data sources. • RDF dumps with temporal information • RDF with temporal information exposed through SPARQL endpoints • Streams available on the Web Daniele Dell'Aglio - TripleWave 15/28
  • 17. From RDF to RDF streams Converts RDF stored in files/SPARQL endpoints • Containing some time information … into an RDF stream • continuous flow of RDF data • ordered according the original timestamps • the time between two items is preserved Use Cases • Evaluation, testing and benchmarking • Simulation systems Daniele Dell'Aglio - TripleWave 16/28
  • 18. From Web stream to RDF stream Consumes an existing Web stream… • through connectors … and converts it into an RDF Stream • Each data item is lifted to RDF Use Cases • Querying and reasoning • Data integration Web Service Connector TW Core Web Service API Daniele Dell'Aglio - TripleWave 17/28
  • 19. From Web stream to RDF stream Convertion is made through R2RML • Mappings to convert each data item in RDF Example: map a field { “userUrl”:”foo” } rr:predicateObjectMap [ rr:predicate schema:agent; rr:objectMap [ rr:column "userUrl"] ]; { "https://schema.org/agent": {"@id": ”foo"}, } Daniele Dell'Aglio - TripleWave 18/28
  • 20. From Web stream to RDF stream Convertion is made through R2RML • Mappings to convert each data item in RDF Example: map a field with template { “time”:”value” } rr:subjectMap [ rr:template ”something {time}” { “@id”:”something value” } Daniele Dell'Aglio - TripleWave 19/28
  • 21. From Web stream to RDF stream Convertion is made through R2RML • Mappings to convert each data item in RDF Example: add a new constant field rr:predicateObjectMap [ rr:predicate rdf:type; rr:objectMap [ rr:constant schema:UpdateAction]]; { "http://www.w3.org/1999/02/22-rdf-syntax-ns#type": {"@id": "https://schema.org/UpdateAction"} } Daniele Dell'Aglio - TripleWave 20/28
  • 22. Building TripleWave Replay Conversion to RDF Stream R2RML Mappings Live Non-RDF Streams JSON RDF Time-annotated RDF datasets Finite RDF substreams Replay Loop Triple Wave RDF Streams (Web socket | HTTP-chunk | etc.) RDF Stream Descriptor Daniele Dell'Aglio - TripleWave 21/28
  • 23. Implementing TripleWave TripleWave is a NodeJS Web Application • NodeJS is a JavaScript runtime built on Chrome's V8 JavaScript engine. TripleWave is open source • Released with a Apache 2.0 licence • Source code available at: https://github.com/streamreasoning/TripleWave Daniele Dell'Aglio - TripleWave 22/28
  • 26. Consuming TripleWave RDF Stream - Push The TripleWave stream can be consumed via push by extending the RSP service framework1 1https://github.com/streamreasoning/rsp-services TripleWave RSP- Service C-SPARQL Register the stream, the query and the observers Connect to the RDF stream descriptor Connect to the RDF stream endpoint Declare the stream, the query and the observers Inject the stream Daniele Dell'Aglio - TripleWave 24/28
  • 27. Show cases Three demos have been deployed to show the capabilities of the system. Wikipedia changes stream conversion. http://131.175.141.249/TripleWave-transform/sgraph Endlessly replay as a stream the Linked Sensor Data dataset. http://131.175.141.249/TripleWave-endless/sgraph Endlessly replay as a stream the LDBC social graph dataset. http://131.175.141.249/TripleWave-ldbc/sgraph Daniele Dell'Aglio - TripleWave 25/28
  • 28. Find more... • Andrea Mauri, Jean-Paul Calbimonte, Daniele Dell’Aglio, Marco Balduini, Marco Brambilla, Emanuele Della Valle, Karl Aberer: TripleWave: Spreading RDF Streams on the Web. Resource Paper at International Semantic Web Conference 2016. • Andrea Mauri, Jean-Paul Calbimonte, Daniele Dell’Aglio, Marco Balduini, Emanuele Della Valle, Karl Aberer: Where Are the RDF Streams?: On Deploying RDF Streams on the Web of Data with TripleWave. Poster at International Semantic Web Conference 2015. • A special thanks to Jean-Paul Calbimonte and Andrea Mauri for supplying me parts of the today slides Daniele Dell'Aglio - TripleWave 26/28
  • 29. Conclusions RDF streams are getting a momentum • Several active research groups • Prototypes, methods and applications TripleWave shows that it is possible to exchange RDF streams over the Web • It uses standard technologies • It feeds C-SPARQL (and soon CQELS) There is a potential huge value in putting together the results we are obtaining Daniele Dell'Aglio - TripleWave 27/28
  • 30. Thank you! Questions? TripleWave: a step towards RDF Stream Processing on the Web http://streamreasoning.github.io/TripleWave Daniele Dell’Aglio dellaglio@ifi.uzh.ch http://dellaglio.org @dandellaglio Daniele Dell'Aglio - TripleWave 28/28