SlideShare une entreprise Scribd logo
1  sur  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

Contenu connexe

Tendances

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
 

Tendances (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
 

Similaire à 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
 

Similaire à 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
 

Dernier

Exploratory Data Analysis - Dilip S.pptx
Exploratory Data Analysis - Dilip S.pptxExploratory Data Analysis - Dilip S.pptx
Exploratory Data Analysis - Dilip S.pptx
DilipVasan
 
一比一原版(Monash毕业证书)莫纳什大学毕业证成绩单如何办理
一比一原版(Monash毕业证书)莫纳什大学毕业证成绩单如何办理一比一原版(Monash毕业证书)莫纳什大学毕业证成绩单如何办理
一比一原版(Monash毕业证书)莫纳什大学毕业证成绩单如何办理
pyhepag
 
一比一原版纽卡斯尔大学毕业证成绩单如何办理
一比一原版纽卡斯尔大学毕业证成绩单如何办理一比一原版纽卡斯尔大学毕业证成绩单如何办理
一比一原版纽卡斯尔大学毕业证成绩单如何办理
cyebo
 
Fuzzy Sets decision making under information of uncertainty
Fuzzy Sets decision making under information of uncertaintyFuzzy Sets decision making under information of uncertainty
Fuzzy Sets decision making under information of uncertainty
RafigAliyev2
 
NO1 Best Kala Jadu Expert Specialist In Germany Kala Jadu Expert Specialist I...
NO1 Best Kala Jadu Expert Specialist In Germany Kala Jadu Expert Specialist I...NO1 Best Kala Jadu Expert Specialist In Germany Kala Jadu Expert Specialist I...
NO1 Best Kala Jadu Expert Specialist In Germany Kala Jadu Expert Specialist I...
Amil baba
 
一比一原版麦考瑞大学毕业证成绩单如何办理
一比一原版麦考瑞大学毕业证成绩单如何办理一比一原版麦考瑞大学毕业证成绩单如何办理
一比一原版麦考瑞大学毕业证成绩单如何办理
cyebo
 
Abortion pills in Dammam Saudi Arabia// +966572737505 // buy cytotec
Abortion pills in Dammam Saudi Arabia// +966572737505 // buy cytotecAbortion pills in Dammam Saudi Arabia// +966572737505 // buy cytotec
Abortion pills in Dammam Saudi Arabia// +966572737505 // buy cytotec
Abortion pills in Riyadh +966572737505 get cytotec
 
一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理
一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理
一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理
pyhepag
 

Dernier (20)

Machine Learning for Accident Severity Prediction
Machine Learning for Accident Severity PredictionMachine Learning for Accident Severity Prediction
Machine Learning for Accident Severity Prediction
 
Exploratory Data Analysis - Dilip S.pptx
Exploratory Data Analysis - Dilip S.pptxExploratory Data Analysis - Dilip S.pptx
Exploratory Data Analysis - Dilip S.pptx
 
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
 
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
 
一比一原版(Monash毕业证书)莫纳什大学毕业证成绩单如何办理
一比一原版(Monash毕业证书)莫纳什大学毕业证成绩单如何办理一比一原版(Monash毕业证书)莫纳什大学毕业证成绩单如何办理
一比一原版(Monash毕业证书)莫纳什大学毕业证成绩单如何办理
 
一比一原版纽卡斯尔大学毕业证成绩单如何办理
一比一原版纽卡斯尔大学毕业证成绩单如何办理一比一原版纽卡斯尔大学毕业证成绩单如何办理
一比一原版纽卡斯尔大学毕业证成绩单如何办理
 
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
 
Fuzzy Sets decision making under information of uncertainty
Fuzzy Sets decision making under information of uncertaintyFuzzy Sets decision making under information of uncertainty
Fuzzy Sets decision making under information of uncertainty
 
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)
 
NO1 Best Kala Jadu Expert Specialist In Germany Kala Jadu Expert Specialist I...
NO1 Best Kala Jadu Expert Specialist In Germany Kala Jadu Expert Specialist I...NO1 Best Kala Jadu Expert Specialist In Germany Kala Jadu Expert Specialist I...
NO1 Best Kala Jadu Expert Specialist In Germany Kala Jadu Expert Specialist I...
 
The Significance of Transliteration Enhancing
The Significance of Transliteration EnhancingThe Significance of Transliteration Enhancing
The Significance of Transliteration Enhancing
 
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
 
Supply chain analytics to combat the effects of Ukraine-Russia-conflict
Supply chain analytics to combat the effects of Ukraine-Russia-conflictSupply chain analytics to combat the effects of Ukraine-Russia-conflict
Supply chain analytics to combat the effects of Ukraine-Russia-conflict
 
一比一原版麦考瑞大学毕业证成绩单如何办理
一比一原版麦考瑞大学毕业证成绩单如何办理一比一原版麦考瑞大学毕业证成绩单如何办理
一比一原版麦考瑞大学毕业证成绩单如何办理
 
Abortion pills in Dammam Saudi Arabia// +966572737505 // buy cytotec
Abortion pills in Dammam Saudi Arabia// +966572737505 // buy cytotecAbortion pills in Dammam Saudi Arabia// +966572737505 // buy cytotec
Abortion pills in Dammam Saudi Arabia// +966572737505 // buy cytotec
 
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
 
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...
 
社内勉強会資料  Mamba - A new era or ephemeral
社内勉強会資料   Mamba - A new era or ephemeral社内勉強会資料   Mamba - A new era or ephemeral
社内勉強会資料  Mamba - A new era or ephemeral
 
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
 
一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理
一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理
一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理
 

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