SlideShare a Scribd company logo
1 of 35
PUBLIC
C-GEOSPARQL: STREAMING GEOSPARQL
SUPPORT ON C-SPARQL
ALEXANDER DEJONGHE, FEMKE ONGENAE,
STIJN VERSTICHEL AND FILIP DE TURCK
IDLab - imec - Ghent University
Technologiepark 15, 9052 Zwijnaarde, Belgium
How can we perform
advanced geospatial
querying on location data?
RDF STREAM PROCESSING
None of the current RSP implementations
looked into geospatial querying
C-SPARQL
CQELS
Streaming SPARQL
SPARQLStream
INSTANS
TEF-SPARQL
ETALIS
Sparkwave
GEOSPATIAL SPARQL EXTENSIONS
2 main geospatial SPARQL extensions: GeoSPARQL & stSPARQL
Representation and querying of geospatial data
Geometries can be represented as literals in WKT or GML
Provide topological relationship and analysis functions
GeoSPARQL
OGC standard
RDFS ontology for the representation of features and geometries
stSPARQL
Temporal querying support as well
Aggregate functions and update statements
GEOSPARQL DATA REPRESENTATION
<rdfs:Class rdf:about="http://idlab.ugent.be/caprads/vocab#Ship>
<rdfs:subClassOf rdf:resource="http://www.opengis.net/ont/geosparql#Feature"/>
</rdfs:Class>
<rdf:Description rdf:about="http://idlab.ugent.be/observation/Ob1473441121001">
<rdf:type rdf:resource="http://idlab.ugent.be/caprads/vocab#Ship"/>
<geo:hasGeometry>
<rdf:Description rdf:about="http://idlab.ugent.be/geometry/Ob1473441121001">
<rdf:type rdf:resource="http://www.opengis.net/ont/sf#Point"/>
<geo:asWKT
rdf:datatype="http://www.opengis.net/ont/geosparql#wktLiteral">
POINT(3.75623 51.11656)
</geo:asWKT>
</rdf:Description>
</geo:hasGeometry>
</rdf:Description>
GEOSPARQL DATA REPRESENTATION
<rdfs:Class rdf:about="http://idlab.ugent.be/caprads/vocab#Dock">
<rdfs:subClassOf rdf:resource="http://www.opengis.net/ont/geosparql#Feature"/>
</rdfs:Class>
<rdf:Description rdf:about="http://idlab.ugent.be/caprads/dock/7">
<rdf:type rdf:resource="http://idlab.ugent.be/caprads/vocab#Dock"/>
<rdfs:label>ALPHONSE SIFFERDOK</rdfs:label>
<geo:hasGeometry>
<rdf:Description rdf:about="http://idlab.ugent.be/caprads/dock/geometry/7">
<geo:asWKT
rdf:datatype="http://www.opengis.net/ont/geosparql#wktLiteral">
POLYGON((
3.738457765456154 51.10515195995886,
3.742798181841985 51.108230622291352,
3.742672430350782 51.107629304854242,
3.754549927018328 51.091419165491189,
3.753588158876281 51.08714863292721,
3.753068094801081 51.086997643534836,
3.740756871305498 51.103810902159339,
3.738612180712916 51.105168245434569,
3.738596278408758 51.105172205656523,
3.738473948389711 51.105158967954758,
3.738457765456154 51.10515195995886))
</geo:asWKT>
</rdf:Description>
</geo:hasGeometry>
</rdf:Description>
GEOSPARQL QUERY
SELECT ?ship
WHERE {
?ship rdf:type caprads:Ship .
?ship geo:hasGeometry ?s .
?s geo:asWKT ?sWKT .
?dock rdf:type caprads:Dock .
?dock rdfs:label “ALPHONSE SIFFERDOK” .
?dock geo:hasGeometry ?d .
?d geo:asWKT ?dWKT .
FILTER ( geof:sfWithin ( ?sWKT, ?dWKT) )
}
Look for a ship and its location
Get the geometry of the dock
Check if the ship is in the dock
GEOSPARQL IMPLEMENTATIONS
Rare …
Partially implemented (and extended) in some triple stores
Others have their own geospatial extensions
Parliament
Strabon
GraphDB
Oracle
Spatial and Graph Stardog
Apache Marmotta
CONTINUOUS GEOSPARQL (C-GEOSPARQL)
SELECT ?ship ?name ?sWKT
FROM STREAM <ship_observations> [RANGE 60s STEP 5s ]
FROM <docks>
WHERE {
?ship rdf:type caprads:Ship .
?ship geo:hasGeometry ?s .
?s geo:asWKT ?sWKT .
?p caprads:properties ?p .
?p caprads:shipName ?name .
?dock rdf:type caprads:Dock .
?dock rdfs:label “ALPHONSE SIFFERDOK” .
?dock geo:hasGeometry ?d .
?d geo:asWKT ?dWKT .
FILTER ( geof:sfWithin ( ?sWKT, ?dWKT) )
}
= RDF STREAM PROCESSING + GEOSPARQL
Look for a ship and it location
Get the name of the ship
Get the geometry of the ALPHONSE SIFFERDOCK
Check if the ship is in the dock
Streaming data
Static data
CONTINUOUS GEOSPARQL (C-GEOSPARQL)
SELECT ?ship ?name ?sWKT
FROM STREAM <ship_observations> [RANGE 60s STEP 5s ]
FROM <docks>
WHERE {
?ship rdf:type caprads:Ship .
?ship geo:hasGeometry ?s .
?s geo:asWKT ?sWKT .
?p caprads:properties ?p .
?p caprads:shipName ?name .
?dock rdf:type caprads:Dock .
?dock rdfs:label “ALPHONSE SIFFERDOK” .
?dock geo:hasGeometry ?d .
?d geo:asWKT ?dWKT .
FILTER ( geof:sfWithin ( ?sWKT, ?dWKT) )
}
= RDF STREAM PROCESSING + GEOSPARQL
Look for a ship and its location
Get the name of the ship
Get the geometry of the ALPHONSE SIFFERDOCK
Check if the ship is in the dock
CONTINUOUS GEOSPARQL (C-GEOSPARQL)
DSMS SPARQL
C-SPARQL
Parliament
GeoSPARQL
Index adaptor Query Optimizer
Storage Adaptor
Parliament Storage Manager
C-SPARQL
RSP with modular architecture
Combination of 2 subsystems
Parliament
Open-source triple store
Most complete GeoSPARQL
implementation (?)
CONTINUOUS GEOSPARQL (C-GEOSPARQL)
DSMS SPARQL
C-SPARQL
Parliament
GeoSPARQL
Index adaptor Query Optimizer
Storage Adaptor
Parliament Storage Manager
C-SPARQL
RSP with modular architecture
Combination of 2 subsystems
Parliament
Open-source triple store
Most complete GeoSPARQL
implementation (?)
Jena ARQ
Both systems relay on Jena ARQ for
query evaluation
CONTINUOUS GEOSPARQL (C-GEOSPARQL)
DSMS Parliament
C-SPARQL
PERFORMANCE
3000 2000 1000 500
allShips 53 75 126 167
ShipsInSifferd
ok
548 658 876 1160
ARCHITECTURE
ARCHITECTURE
ARCHITECTURE
ARCHITECTURE
ARCHITECTURE
DEMONSTRATOR
About the port of Ghent
Integration of ship observation with context and background knowledge
Streaming data: AIS Ship observations
Data from MarineTraffic
Recorded data stream available in GeoJSON format
Context: Description of docks, company sites, quays, …
Open data published by the city of Ghent (datatank.gent.be)
Data available in KML format
ARCHITECTURE
DEMONSTRATOR
*.Kml
*.GeoJSON
WRAP UP
Importance of geospatial data will increase
Geospatial data important source of streaming data for RSP
Easy integration of Parliament in C-SPARQL resulted in C-GeoSPARQL
C-GeoSPARQL used for demonstrator implementation
Parliament (file-based) has negative impact on performance
Need for in-memory GeoSPARQL evaluation
Need for better benchmarking
IDLab - imec - Ghent University
Technologiepark 15
9052 Zwijnaarde, Belgium
Alexander.Dejonghe@UGent.be
Project available at:
https://github.com/adejonghe/pog-
demo

More Related Content

What's hot

Brigadier General Chris Mills, Australian Army, New Approaches to Air Land In...
Brigadier General Chris Mills, Australian Army, New Approaches to Air Land In...Brigadier General Chris Mills, Australian Army, New Approaches to Air Land In...
Brigadier General Chris Mills, Australian Army, New Approaches to Air Land In...
ICSA, LLC
 

What's hot (9)

Tutorial #5 - SACS Basic
Tutorial #5 - SACS BasicTutorial #5 - SACS Basic
Tutorial #5 - SACS Basic
 
Pimp my gc - Supersonic Scala
Pimp my gc - Supersonic ScalaPimp my gc - Supersonic Scala
Pimp my gc - Supersonic Scala
 
Brigadier General Chris Mills, Australian Army, New Approaches to Air Land In...
Brigadier General Chris Mills, Australian Army, New Approaches to Air Land In...Brigadier General Chris Mills, Australian Army, New Approaches to Air Land In...
Brigadier General Chris Mills, Australian Army, New Approaches to Air Land In...
 
Tutorial #4 - SACS Basic
Tutorial #4 - SACS BasicTutorial #4 - SACS Basic
Tutorial #4 - SACS Basic
 
Semantic Parsing with Combinatory Categorial Grammar (CCG)
Semantic Parsing with Combinatory Categorial Grammar (CCG)Semantic Parsing with Combinatory Categorial Grammar (CCG)
Semantic Parsing with Combinatory Categorial Grammar (CCG)
 
CanSat 2008: ITESM Mexico City Final Presentation
CanSat 2008: ITESM Mexico City Final PresentationCanSat 2008: ITESM Mexico City Final Presentation
CanSat 2008: ITESM Mexico City Final Presentation
 
Pivot Sampling in Dual-Pivot Quicksort
Pivot Sampling in Dual-Pivot QuicksortPivot Sampling in Dual-Pivot Quicksort
Pivot Sampling in Dual-Pivot Quicksort
 
Formula excel
Formula excelFormula excel
Formula excel
 
Blue Origin: Powered by Rocket Fuel & AWS
Blue Origin: Powered by Rocket Fuel & AWSBlue Origin: Powered by Rocket Fuel & AWS
Blue Origin: Powered by Rocket Fuel & AWS
 

Similar to C-GeoSPARQL: Streaming geospatial support on C-SPARQL

Representing and Querying Geospatial Information in the Semantic Web
Representing and Querying Geospatial Information in the Semantic WebRepresenting and Querying Geospatial Information in the Semantic Web
Representing and Querying Geospatial Information in the Semantic Web
Kostis Kyzirakos
 
Building Scalable Semantic Geospatial RDF Stores
Building Scalable Semantic Geospatial RDF StoresBuilding Scalable Semantic Geospatial RDF Stores
Building Scalable Semantic Geospatial RDF Stores
Kostis Kyzirakos
 
Tutorial ESWC2011 Building Semantic Sensor Web - 04 - Querying_semantic_strea...
Tutorial ESWC2011 Building Semantic Sensor Web - 04 - Querying_semantic_strea...Tutorial ESWC2011 Building Semantic Sensor Web - 04 - Querying_semantic_strea...
Tutorial ESWC2011 Building Semantic Sensor Web - 04 - Querying_semantic_strea...
Jean-Paul Calbimonte
 
Geographica: A Benchmark for Geospatial RDF Stores - ISWC 2013
Geographica: A Benchmark for Geospatial RDF Stores - ISWC 2013Geographica: A Benchmark for Geospatial RDF Stores - ISWC 2013
Geographica: A Benchmark for Geospatial RDF Stores - ISWC 2013
Kostis Kyzirakos
 
Yokohama Art Spot meets SPARQL
Yokohama Art Spot meets SPARQLYokohama Art Spot meets SPARQL
Yokohama Art Spot meets SPARQL
Fuyuko Matsumura
 
Demoiselle Spatial Latinoware 2011
Demoiselle Spatial Latinoware 2011Demoiselle Spatial Latinoware 2011
Demoiselle Spatial Latinoware 2011
Rafael Soto
 

Similar to C-GeoSPARQL: Streaming geospatial support on C-SPARQL (20)

Geographica: A Benchmark for Geospatial RDF Stores
Geographica: A Benchmark for Geospatial RDF StoresGeographica: A Benchmark for Geospatial RDF Stores
Geographica: A Benchmark for Geospatial RDF Stores
 
Representing and Querying Geospatial Information in the Semantic Web
Representing and Querying Geospatial Information in the Semantic WebRepresenting and Querying Geospatial Information in the Semantic Web
Representing and Querying Geospatial Information in the Semantic Web
 
Building Scalable Semantic Geospatial RDF Stores
Building Scalable Semantic Geospatial RDF StoresBuilding Scalable Semantic Geospatial RDF Stores
Building Scalable Semantic Geospatial RDF Stores
 
SRAdb Bioconductor Package Overview
SRAdb Bioconductor Package OverviewSRAdb Bioconductor Package Overview
SRAdb Bioconductor Package Overview
 
Functional manipulations of large data graphs 20160601
Functional manipulations of large data graphs 20160601Functional manipulations of large data graphs 20160601
Functional manipulations of large data graphs 20160601
 
LocationTech Projects
LocationTech ProjectsLocationTech Projects
LocationTech Projects
 
Semantic Variation Graphs the case for RDF & SPARQL
Semantic Variation Graphs the case for RDF & SPARQLSemantic Variation Graphs the case for RDF & SPARQL
Semantic Variation Graphs the case for RDF & SPARQL
 
Intro to Apache Spark and Scala, Austin ACM SIGKDD, 7/9/2014
Intro to Apache Spark and Scala, Austin ACM SIGKDD, 7/9/2014Intro to Apache Spark and Scala, Austin ACM SIGKDD, 7/9/2014
Intro to Apache Spark and Scala, Austin ACM SIGKDD, 7/9/2014
 
Scala 20140715
Scala 20140715Scala 20140715
Scala 20140715
 
Tutorial ESWC2011 Building Semantic Sensor Web - 04 - Querying_semantic_strea...
Tutorial ESWC2011 Building Semantic Sensor Web - 04 - Querying_semantic_strea...Tutorial ESWC2011 Building Semantic Sensor Web - 04 - Querying_semantic_strea...
Tutorial ESWC2011 Building Semantic Sensor Web - 04 - Querying_semantic_strea...
 
The Semantics of SPARQL
The Semantics of SPARQLThe Semantics of SPARQL
The Semantics of SPARQL
 
SSN-TC workshop talk at ISWC 2015 on Emrooz
SSN-TC workshop talk at ISWC 2015 on EmroozSSN-TC workshop talk at ISWC 2015 on Emrooz
SSN-TC workshop talk at ISWC 2015 on Emrooz
 
Geographica: A Benchmark for Geospatial RDF Stores - ISWC 2013
Geographica: A Benchmark for Geospatial RDF Stores - ISWC 2013Geographica: A Benchmark for Geospatial RDF Stores - ISWC 2013
Geographica: A Benchmark for Geospatial RDF Stores - ISWC 2013
 
SWRL2SPIN: Converting SWRL to SPIN
SWRL2SPIN: Converting SWRL to SPINSWRL2SPIN: Converting SWRL to SPIN
SWRL2SPIN: Converting SWRL to SPIN
 
Yokohama Art Spot meets SPARQL
Yokohama Art Spot meets SPARQLYokohama Art Spot meets SPARQL
Yokohama Art Spot meets SPARQL
 
20191107 breizh data_day
20191107 breizh data_day20191107 breizh data_day
20191107 breizh data_day
 
Introduction To PostGIS
Introduction To PostGISIntroduction To PostGIS
Introduction To PostGIS
 
Demoiselle Spatial Latinoware 2011
Demoiselle Spatial Latinoware 2011Demoiselle Spatial Latinoware 2011
Demoiselle Spatial Latinoware 2011
 
[DSC 2016] 系列活動:李泳泉 / 星火燎原 - Spark 機器學習初探
[DSC 2016] 系列活動:李泳泉 / 星火燎原 - Spark 機器學習初探[DSC 2016] 系列活動:李泳泉 / 星火燎原 - Spark 機器學習初探
[DSC 2016] 系列活動:李泳泉 / 星火燎原 - Spark 機器學習初探
 
RSP-QL*: Querying Data-Level Annotations in RDF Streams
RSP-QL*: Querying Data-Level Annotations in RDF StreamsRSP-QL*: Querying Data-Level Annotations in RDF Streams
RSP-QL*: Querying Data-Level Annotations in RDF Streams
 

Recently uploaded

一比一原版(Monash毕业证书)莫纳什大学毕业证成绩单如何办理
一比一原版(Monash毕业证书)莫纳什大学毕业证成绩单如何办理一比一原版(Monash毕业证书)莫纳什大学毕业证成绩单如何办理
一比一原版(Monash毕业证书)莫纳什大学毕业证成绩单如何办理
pyhepag
 
一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理
一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理
一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理
pyhepag
 
Data Analytics for Digital Marketing Lecture for Advanced Digital & Social Me...
Data Analytics for Digital Marketing Lecture for Advanced Digital & Social Me...Data Analytics for Digital Marketing Lecture for Advanced Digital & Social Me...
Data Analytics for Digital Marketing Lecture for Advanced Digital & Social Me...
Valters Lauzums
 
Exploratory Data Analysis - Dilip S.pptx
Exploratory Data Analysis - Dilip S.pptxExploratory Data Analysis - Dilip S.pptx
Exploratory Data Analysis - Dilip S.pptx
DilipVasan
 
一比一原版麦考瑞大学毕业证成绩单如何办理
一比一原版麦考瑞大学毕业证成绩单如何办理一比一原版麦考瑞大学毕业证成绩单如何办理
一比一原版麦考瑞大学毕业证成绩单如何办理
cyebo
 
一比一原版纽卡斯尔大学毕业证成绩单如何办理
一比一原版纽卡斯尔大学毕业证成绩单如何办理一比一原版纽卡斯尔大学毕业证成绩单如何办理
一比一原版纽卡斯尔大学毕业证成绩单如何办理
cyebo
 

Recently uploaded (20)

2024 Q1 Tableau User Group Leader Quarterly Call
2024 Q1 Tableau User Group Leader Quarterly Call2024 Q1 Tableau User Group Leader Quarterly Call
2024 Q1 Tableau User Group Leader Quarterly Call
 
Generative AI for Trailblazers_ Unlock the Future of AI.pdf
Generative AI for Trailblazers_ Unlock the Future of AI.pdfGenerative AI for Trailblazers_ Unlock the Future of AI.pdf
Generative AI for Trailblazers_ Unlock the Future of AI.pdf
 
一比一原版(Monash毕业证书)莫纳什大学毕业证成绩单如何办理
一比一原版(Monash毕业证书)莫纳什大学毕业证成绩单如何办理一比一原版(Monash毕业证书)莫纳什大学毕业证成绩单如何办理
一比一原版(Monash毕业证书)莫纳什大学毕业证成绩单如何办理
 
社内勉強会資料  Mamba - A new era or ephemeral
社内勉強会資料   Mamba - A new era or ephemeral社内勉強会資料   Mamba - A new era or ephemeral
社内勉強会資料  Mamba - A new era or ephemeral
 
Machine Learning for Accident Severity Prediction
Machine Learning for Accident Severity PredictionMachine Learning for Accident Severity Prediction
Machine Learning for Accident Severity Prediction
 
Easy and simple project file on mp online
Easy and simple project file on mp onlineEasy and simple project file on mp online
Easy and simple project file on mp online
 
AI Imagen for data-storytelling Infographics.pdf
AI Imagen for data-storytelling Infographics.pdfAI Imagen for data-storytelling Infographics.pdf
AI Imagen for data-storytelling Infographics.pdf
 
一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理
一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理
一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理
 
Artificial_General_Intelligence__storm_gen_article.pdf
Artificial_General_Intelligence__storm_gen_article.pdfArtificial_General_Intelligence__storm_gen_article.pdf
Artificial_General_Intelligence__storm_gen_article.pdf
 
Data Analytics for Digital Marketing Lecture for Advanced Digital & Social Me...
Data Analytics for Digital Marketing Lecture for Advanced Digital & Social Me...Data Analytics for Digital Marketing Lecture for Advanced Digital & Social Me...
Data Analytics for Digital Marketing Lecture for Advanced Digital & Social Me...
 
Data Visualization Exploring and Explaining with Data 1st Edition by Camm sol...
Data Visualization Exploring and Explaining with Data 1st Edition by Camm sol...Data Visualization Exploring and Explaining with Data 1st Edition by Camm sol...
Data Visualization Exploring and Explaining with Data 1st Edition by Camm sol...
 
2024 Q2 Orange County (CA) Tableau User Group Meeting
2024 Q2 Orange County (CA) Tableau User Group Meeting2024 Q2 Orange County (CA) Tableau User Group Meeting
2024 Q2 Orange County (CA) Tableau User Group Meeting
 
Pre-ProductionImproveddsfjgndflghtgg.pptx
Pre-ProductionImproveddsfjgndflghtgg.pptxPre-ProductionImproveddsfjgndflghtgg.pptx
Pre-ProductionImproveddsfjgndflghtgg.pptx
 
Slip-and-fall Injuries: Top Workers' Comp Claims
Slip-and-fall Injuries: Top Workers' Comp ClaimsSlip-and-fall Injuries: Top Workers' Comp Claims
Slip-and-fall Injuries: Top Workers' Comp Claims
 
Exploratory Data Analysis - Dilip S.pptx
Exploratory Data Analysis - Dilip S.pptxExploratory Data Analysis - Dilip S.pptx
Exploratory Data Analysis - Dilip S.pptx
 
Atlantic Grupa Case Study (Mintec Data AI)
Atlantic Grupa Case Study (Mintec Data AI)Atlantic Grupa Case Study (Mintec Data AI)
Atlantic Grupa Case Study (Mintec Data AI)
 
basics of data science with application areas.pdf
basics of data science with application areas.pdfbasics of data science with application areas.pdf
basics of data science with application areas.pdf
 
一比一原版麦考瑞大学毕业证成绩单如何办理
一比一原版麦考瑞大学毕业证成绩单如何办理一比一原版麦考瑞大学毕业证成绩单如何办理
一比一原版麦考瑞大学毕业证成绩单如何办理
 
一比一原版纽卡斯尔大学毕业证成绩单如何办理
一比一原版纽卡斯尔大学毕业证成绩单如何办理一比一原版纽卡斯尔大学毕业证成绩单如何办理
一比一原版纽卡斯尔大学毕业证成绩单如何办理
 
Webinar One View, Multiple Systems No-Code Integration of Salesforce and ERPs
Webinar One View, Multiple Systems No-Code Integration of Salesforce and ERPsWebinar One View, Multiple Systems No-Code Integration of Salesforce and ERPs
Webinar One View, Multiple Systems No-Code Integration of Salesforce and ERPs
 

C-GeoSPARQL: Streaming geospatial support on C-SPARQL

  • 1. PUBLIC C-GEOSPARQL: STREAMING GEOSPARQL SUPPORT ON C-SPARQL ALEXANDER DEJONGHE, FEMKE ONGENAE, STIJN VERSTICHEL AND FILIP DE TURCK IDLab - imec - Ghent University Technologiepark 15, 9052 Zwijnaarde, Belgium
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13. How can we perform advanced geospatial querying on location data?
  • 14. RDF STREAM PROCESSING None of the current RSP implementations looked into geospatial querying C-SPARQL CQELS Streaming SPARQL SPARQLStream INSTANS TEF-SPARQL ETALIS Sparkwave
  • 15. GEOSPATIAL SPARQL EXTENSIONS 2 main geospatial SPARQL extensions: GeoSPARQL & stSPARQL Representation and querying of geospatial data Geometries can be represented as literals in WKT or GML Provide topological relationship and analysis functions GeoSPARQL OGC standard RDFS ontology for the representation of features and geometries stSPARQL Temporal querying support as well Aggregate functions and update statements
  • 16. GEOSPARQL DATA REPRESENTATION <rdfs:Class rdf:about="http://idlab.ugent.be/caprads/vocab#Ship> <rdfs:subClassOf rdf:resource="http://www.opengis.net/ont/geosparql#Feature"/> </rdfs:Class> <rdf:Description rdf:about="http://idlab.ugent.be/observation/Ob1473441121001"> <rdf:type rdf:resource="http://idlab.ugent.be/caprads/vocab#Ship"/> <geo:hasGeometry> <rdf:Description rdf:about="http://idlab.ugent.be/geometry/Ob1473441121001"> <rdf:type rdf:resource="http://www.opengis.net/ont/sf#Point"/> <geo:asWKT rdf:datatype="http://www.opengis.net/ont/geosparql#wktLiteral"> POINT(3.75623 51.11656) </geo:asWKT> </rdf:Description> </geo:hasGeometry> </rdf:Description>
  • 17. GEOSPARQL DATA REPRESENTATION <rdfs:Class rdf:about="http://idlab.ugent.be/caprads/vocab#Dock"> <rdfs:subClassOf rdf:resource="http://www.opengis.net/ont/geosparql#Feature"/> </rdfs:Class> <rdf:Description rdf:about="http://idlab.ugent.be/caprads/dock/7"> <rdf:type rdf:resource="http://idlab.ugent.be/caprads/vocab#Dock"/> <rdfs:label>ALPHONSE SIFFERDOK</rdfs:label> <geo:hasGeometry> <rdf:Description rdf:about="http://idlab.ugent.be/caprads/dock/geometry/7"> <geo:asWKT rdf:datatype="http://www.opengis.net/ont/geosparql#wktLiteral"> POLYGON(( 3.738457765456154 51.10515195995886, 3.742798181841985 51.108230622291352, 3.742672430350782 51.107629304854242, 3.754549927018328 51.091419165491189, 3.753588158876281 51.08714863292721, 3.753068094801081 51.086997643534836, 3.740756871305498 51.103810902159339, 3.738612180712916 51.105168245434569, 3.738596278408758 51.105172205656523, 3.738473948389711 51.105158967954758, 3.738457765456154 51.10515195995886)) </geo:asWKT> </rdf:Description> </geo:hasGeometry> </rdf:Description>
  • 18. GEOSPARQL QUERY SELECT ?ship WHERE { ?ship rdf:type caprads:Ship . ?ship geo:hasGeometry ?s . ?s geo:asWKT ?sWKT . ?dock rdf:type caprads:Dock . ?dock rdfs:label “ALPHONSE SIFFERDOK” . ?dock geo:hasGeometry ?d . ?d geo:asWKT ?dWKT . FILTER ( geof:sfWithin ( ?sWKT, ?dWKT) ) } Look for a ship and its location Get the geometry of the dock Check if the ship is in the dock
  • 19. GEOSPARQL IMPLEMENTATIONS Rare … Partially implemented (and extended) in some triple stores Others have their own geospatial extensions Parliament Strabon GraphDB Oracle Spatial and Graph Stardog Apache Marmotta
  • 20. CONTINUOUS GEOSPARQL (C-GEOSPARQL) SELECT ?ship ?name ?sWKT FROM STREAM <ship_observations> [RANGE 60s STEP 5s ] FROM <docks> WHERE { ?ship rdf:type caprads:Ship . ?ship geo:hasGeometry ?s . ?s geo:asWKT ?sWKT . ?p caprads:properties ?p . ?p caprads:shipName ?name . ?dock rdf:type caprads:Dock . ?dock rdfs:label “ALPHONSE SIFFERDOK” . ?dock geo:hasGeometry ?d . ?d geo:asWKT ?dWKT . FILTER ( geof:sfWithin ( ?sWKT, ?dWKT) ) } = RDF STREAM PROCESSING + GEOSPARQL Look for a ship and it location Get the name of the ship Get the geometry of the ALPHONSE SIFFERDOCK Check if the ship is in the dock Streaming data Static data
  • 21. CONTINUOUS GEOSPARQL (C-GEOSPARQL) SELECT ?ship ?name ?sWKT FROM STREAM <ship_observations> [RANGE 60s STEP 5s ] FROM <docks> WHERE { ?ship rdf:type caprads:Ship . ?ship geo:hasGeometry ?s . ?s geo:asWKT ?sWKT . ?p caprads:properties ?p . ?p caprads:shipName ?name . ?dock rdf:type caprads:Dock . ?dock rdfs:label “ALPHONSE SIFFERDOK” . ?dock geo:hasGeometry ?d . ?d geo:asWKT ?dWKT . FILTER ( geof:sfWithin ( ?sWKT, ?dWKT) ) } = RDF STREAM PROCESSING + GEOSPARQL Look for a ship and its location Get the name of the ship Get the geometry of the ALPHONSE SIFFERDOCK Check if the ship is in the dock
  • 22. CONTINUOUS GEOSPARQL (C-GEOSPARQL) DSMS SPARQL C-SPARQL Parliament GeoSPARQL Index adaptor Query Optimizer Storage Adaptor Parliament Storage Manager C-SPARQL RSP with modular architecture Combination of 2 subsystems Parliament Open-source triple store Most complete GeoSPARQL implementation (?)
  • 23. CONTINUOUS GEOSPARQL (C-GEOSPARQL) DSMS SPARQL C-SPARQL Parliament GeoSPARQL Index adaptor Query Optimizer Storage Adaptor Parliament Storage Manager C-SPARQL RSP with modular architecture Combination of 2 subsystems Parliament Open-source triple store Most complete GeoSPARQL implementation (?) Jena ARQ Both systems relay on Jena ARQ for query evaluation
  • 25. PERFORMANCE 3000 2000 1000 500 allShips 53 75 126 167 ShipsInSifferd ok 548 658 876 1160
  • 31. DEMONSTRATOR About the port of Ghent Integration of ship observation with context and background knowledge Streaming data: AIS Ship observations Data from MarineTraffic Recorded data stream available in GeoJSON format Context: Description of docks, company sites, quays, … Open data published by the city of Ghent (datatank.gent.be) Data available in KML format
  • 34. WRAP UP Importance of geospatial data will increase Geospatial data important source of streaming data for RSP Easy integration of Parliament in C-SPARQL resulted in C-GeoSPARQL C-GeoSPARQL used for demonstrator implementation Parliament (file-based) has negative impact on performance Need for in-memory GeoSPARQL evaluation Need for better benchmarking
  • 35. IDLab - imec - Ghent University Technologiepark 15 9052 Zwijnaarde, Belgium Alexander.Dejonghe@UGent.be Project available at: https://github.com/adejonghe/pog- demo