SlideShare a Scribd company logo
1 of 44
Download to read offline
SPARQL
Un’API per domarli, un’API per trovarli,
un’API per ghermirli e nell'oscurità incatenarli
SPAR...cosa?
SPARQL Protocol and RDF
Query Language
Il linguaggio di interrogazione per grafi RDF
Una sola API, un mondo da esplorare
Le informazioni salvate in un RDF sono
organizzate a grafo
Nei database di tutti i giorni abbiamo a che fare con tabelle
Coi linked data si usano i grafi!
Una query SPARQL naviga il grafo per
rintracciare ciò che le diciamo di cercare
Il nostro compito è tradurre una domanda in
linguaggio naturale in una query SPARQL
Federico
Fellini
Italia
Anita
Ekberg
Marcello
Mastroianni
8½
La dolce
vita
Francia
Il pianista
dbo:director
dbo:director
dbo:country
dbo:country
dbo:country
dbo:starred
dbo:starred
dbo:starred
foaf:knows
dbo:country
Quali sono i film che sono stati girati
in Italia?
Guardiamo nel grafo!
Federico
Fellini
Italia
Anita
Ekberg
Marcello
Mastroianni
8½
La dolce
vita
Francia
Il pianista
dbo:director
dbo:director
dbo:country
dbo:country
dbo:country
dbo:starred
dbo:starred
dbo:starred
foaf:knows
dbo:country
8½
La dolce
vita
Quali sono i film che sono stati girati in Italia?
SELECT ?movie
WHERE {
?movie rdfs:type dbo:Film .
?movie dbo:country dbr:Italia .
}
Quali sono i film che sono stati girati in Italia?
SELECT ?movie
WHERE {
?movie rdfs:type dbo:Film .
?movie dbo:country dbr:Italia .
}
Quali sono i film che sono stati girati in Italia?
SELECT ?movie
WHERE {
?movie rdfs:type dbo:Film .
?movie dbo:country dbr:Italia .
}
Quali sono i film che sono stati girati in Italia?
SELECT ?movie
WHERE {
?movie rdfs:type dbo:Film .
?movie dbo:country dbr:Italia .
}
Quali sono i film che sono stati girati in Italia?
SELECT ?movie
WHERE {
?movie rdfs:type dbo:Film .
?movie dbo:country dbr:Italia .
}
?movie è una variabile
“Tutto ciò”, “ogni cosa
che”
Quali sono i film che sono stati girati in Italia?
SELECT ?movie
WHERE {
?movie rdfs:type dbo:Film .
?movie dbo:country dbr:Italia .
}
Tutte le cose
Di tipo
Film
8½
La dolce
vita
Il pianista
Quali sono i film che sono stati girati in Italia?
SELECT ?movie
WHERE {
?movie rdfs:type dbo:Film .
?movie dbo:country dbr:Italia .
}
Tutte le cose
La cui nazione è
Italia
Italia
dbo:country
?movie dbo:country dbr:Italia
Federico
Fellini
Italia
Anita
Ekberg
Marcello
Mastroianni
8½
La dolce
vita
Francia
Il pianista
dbo:director
dbo:director
dbo:country
dbo:country
dbo:country
dbo:starred
dbo:starred
dbo:starred
foaf:knows
dbo:country
Italia
8½
La dolce
vita
Francia
Il pianista
dbo:country
dbo:country
dbo:country
dbo:country
Italia
8½
La dolce
vita
dbo:country
dbo:country
8½
La dolce
vita
Quali sono i film che sono stati girati in Italia?
SELECT ?movie
WHERE {
?movie rdfs:type dbo:Film .
?movie dbo:country dbr:Italia .
}
Come faccio a scegliere le triple da
usare in una query SPARQL?
Ci sono almeno due modi per capire come
tradurre le domande in linguaggio naturale nei
soggetti-predicati-oggetti presenti in certo grafo
O
ntologia!
Query SPARQL da esplorazione
Quando un’ontologia non è presente o è di
difficile consultazione si può esplorare il grafo
con qualche query SPARQL generica
Quali sono le classi presenti nel grafo?
SELECT DISTINCT ?o
WHERE {
?s rdfs:type ?o
}
Federico
Fellini
Italia
Anita
Ekberg
Marcello
Mastroianni
8½
La dolce
vita
Francia
Il pianista
dbo:director
dbo:director
dbo:country
dbo:country
dbo:country
dbo:starred
dbo:starred
dbo:starred
foaf:knows
dbo:country
Regista AttoreFilm Nazione
Quanto sono utilizzate le classi presenti nel grafo?
SELECT ?o (COUNT (DISTINCT ?s) as ?n)
WHERE {
?s rdfs:type ?o
}
ORDER BY DESC (?n)
Federico
Fellini
Italia
Anita
Ekberg
Marcello
Mastroianni
8½
La dolce
vita
Francia
Il pianista
dbo:director
dbo:director
dbo:country
dbo:country
dbo:country
dbo:starred
dbo:starred
dbo:starred
foaf:knows
dbo:country
Regista AttoreFilm Nazione
21 3 2
...nel nostro esempio...
Regista AttoreFilm Nazione
19.8025.260 106.613 3.361
...su DBpedia...
Quali sono i predicati più utilizzati nel grafo?
SELECT ?p (COUNT(?s) AS ?count )
WHERE {
?s ?p ?o
}
GROUP BY ?p
ORDER BY DESC (?count)
Federico
Fellini
Italia
Anita
Ekberg
Marcello
Mastroianni
8½
La dolce
vita
Francia
Il pianista
dbo:director
dbo:director
dbo:country
dbo:country
dbo:country
dbo:starred
dbo:starred
dbo:starred
foaf:knows
dbo:country
dbo:director
dbo:director
dbo:country
dbo:country
dbo:country
dbo:starred
dbo:starred
dbo:starred
foaf:knows
dbo:country
Sintassi
Tutti la sintassi di SPARQL 1.1 è descritta in:
https://www.w3.org/TR/sparql11-query/
Qualche esempio reale per
prendere confidenza
Facciamo qualche esercizio su endpoint esistenti:
● http://dbpedia.org/sparql
● https://contrattipubblici.org/sparql
Ordinediesecuzione
SPARQL Update
SPARQL può essere utilizzato anche in scrittura.
Si possono modificare grafi RDF con SPARQL!
https://www.w3.org/TR/2013/REC-sparql11-update-20130321/
Query SPARQL federate
Dopo tanta fatica eccoci all’apoteosi dei Linked Data!
Keepintouch!
Made in
alessio.melandri@synapta.it
@AlessioMelandri
https://synapta.it
@synapta
CC-BY

More Related Content

What's hot

What's hot (7)

ViT (Vision Transformer) Review [CDM]
ViT (Vision Transformer) Review [CDM]ViT (Vision Transformer) Review [CDM]
ViT (Vision Transformer) Review [CDM]
 
Neo4j Data Loading with Kettle
Neo4j Data Loading with KettleNeo4j Data Loading with Kettle
Neo4j Data Loading with Kettle
 
How Kafka Powers the World's Most Popular Vector Database System with Charles...
How Kafka Powers the World's Most Popular Vector Database System with Charles...How Kafka Powers the World's Most Popular Vector Database System with Charles...
How Kafka Powers the World's Most Popular Vector Database System with Charles...
 
C++ to java
C++ to javaC++ to java
C++ to java
 
An Efficient Language Model Using Double-Array Structures
An Efficient Language Model Using Double-Array StructuresAn Efficient Language Model Using Double-Array Structures
An Efficient Language Model Using Double-Array Structures
 
Faster R-CNN
Faster R-CNNFaster R-CNN
Faster R-CNN
 
Faster R-CNN: Towards real-time object detection with region proposal network...
Faster R-CNN: Towards real-time object detection with region proposal network...Faster R-CNN: Towards real-time object detection with region proposal network...
Faster R-CNN: Towards real-time object detection with region proposal network...
 

Viewers also liked

Facebook イベント機能活用法
Facebook イベント機能活用法Facebook イベント機能活用法
Facebook イベント機能活用法
oksmz-fm
 

Viewers also liked (20)

Introduzione ai Linked Data
Introduzione ai Linked DataIntroduzione ai Linked Data
Introduzione ai Linked Data
 
Stack tecnologico Per Linked Data
Stack tecnologico Per Linked DataStack tecnologico Per Linked Data
Stack tecnologico Per Linked Data
 
Pres. Synapta - Tirocini curricolari PoliTO 2017
Pres. Synapta - Tirocini curricolari PoliTO 2017Pres. Synapta - Tirocini curricolari PoliTO 2017
Pres. Synapta - Tirocini curricolari PoliTO 2017
 
ContrattiPubblici.org - Seminario ANCI - Roma - SAA2017
ContrattiPubblici.org - Seminario ANCI - Roma - SAA2017ContrattiPubblici.org - Seminario ANCI - Roma - SAA2017
ContrattiPubblici.org - Seminario ANCI - Roma - SAA2017
 
Progetto Linked Open Data del CoBiS
Progetto Linked Open Data del CoBiSProgetto Linked Open Data del CoBiS
Progetto Linked Open Data del CoBiS
 
TellMeQuality
TellMeQualityTellMeQuality
TellMeQuality
 
Alessandria - Dati Aperti: alla ricerca di efficienza e trasparenza.
Alessandria - Dati Aperti: alla ricerca di efficienza e trasparenza.Alessandria - Dati Aperti: alla ricerca di efficienza e trasparenza.
Alessandria - Dati Aperti: alla ricerca di efficienza e trasparenza.
 
Progetto Linked Open Data del CoBiS di Torino
Progetto Linked Open Data del CoBiS di TorinoProgetto Linked Open Data del CoBiS di Torino
Progetto Linked Open Data del CoBiS di Torino
 
#sod14 - ok, è un endpoint SPARQL non facciamoci prendere dal panico
#sod14 - ok, è un endpoint SPARQL non facciamoci prendere dal panico#sod14 - ok, è un endpoint SPARQL non facciamoci prendere dal panico
#sod14 - ok, è un endpoint SPARQL non facciamoci prendere dal panico
 
Lodlive - browsing the web of data
Lodlive - browsing the web of dataLodlive - browsing the web of data
Lodlive - browsing the web of data
 
#culta15 - Requisiti e tecnologie: i Linked Open Data per il Cultural Heritage
#culta15 - Requisiti e tecnologie: i Linked Open Data per il Cultural Heritage#culta15 - Requisiti e tecnologie: i Linked Open Data per il Cultural Heritage
#culta15 - Requisiti e tecnologie: i Linked Open Data per il Cultural Heritage
 
Lodview goes LAM — giving data a new shape
Lodview goes LAM — giving data a new shapeLodview goes LAM — giving data a new shape
Lodview goes LAM — giving data a new shape
 
Gephi
GephiGephi
Gephi
 
Facebook イベント機能活用法
Facebook イベント機能活用法Facebook イベント機能活用法
Facebook イベント機能活用法
 
Tutorial tldz
Tutorial tldzTutorial tldz
Tutorial tldz
 
Ingenieria romana
Ingenieria romanaIngenieria romana
Ingenieria romana
 
Marca personal Dario Cassa
Marca personal Dario CassaMarca personal Dario Cassa
Marca personal Dario Cassa
 
El corazón
El corazónEl corazón
El corazón
 
modified form of drawer compacted sand filter
modified form of drawer compacted sand filtermodified form of drawer compacted sand filter
modified form of drawer compacted sand filter
 
La trombosis
La trombosisLa trombosis
La trombosis
 

More from Synapta

More from Synapta (9)

Premio pa sostenibile e resiliente 2020 - ContrattiPubblici.org - Synapta PPT
Premio pa sostenibile e resiliente 2020  - ContrattiPubblici.org - Synapta PPTPremio pa sostenibile e resiliente 2020  - ContrattiPubblici.org - Synapta PPT
Premio pa sostenibile e resiliente 2020 - ContrattiPubblici.org - Synapta PPT
 
Festival della Tecnologia - panel Open data: bene comune - 2019-11-09
Festival della Tecnologia - panel Open data: bene comune - 2019-11-09Festival della Tecnologia - panel Open data: bene comune - 2019-11-09
Festival della Tecnologia - panel Open data: bene comune - 2019-11-09
 
Analisi della qualità dei dati di ContrattiPubblici.org
Analisi della qualità dei dati di ContrattiPubblici.orgAnalisi della qualità dei dati di ContrattiPubblici.org
Analisi della qualità dei dati di ContrattiPubblici.org
 
Data Quality: misurazione della corruzione sul grafo dei contratti pubblici i...
Data Quality: misurazione della corruzione sul grafo dei contratti pubblici i...Data Quality: misurazione della corruzione sul grafo dei contratti pubblici i...
Data Quality: misurazione della corruzione sul grafo dei contratti pubblici i...
 
Sound Archives and Musical Instrument Collections
Sound Archives and Musical Instrument CollectionsSound Archives and Musical Instrument Collections
Sound Archives and Musical Instrument Collections
 
Pilota CoBiS Linked Data - presentazione MAB
Pilota CoBiS Linked Data - presentazione MABPilota CoBiS Linked Data - presentazione MAB
Pilota CoBiS Linked Data - presentazione MAB
 
CoBiS Linked Open Data Project - IRCDL 2018
CoBiS Linked Open Data Project - IRCDL 2018CoBiS Linked Open Data Project - IRCDL 2018
CoBiS Linked Open Data Project - IRCDL 2018
 
CoBiS Linked Open Data - presentazione finale del progetto pilota
CoBiS Linked Open Data - presentazione finale del progetto pilotaCoBiS Linked Open Data - presentazione finale del progetto pilota
CoBiS Linked Open Data - presentazione finale del progetto pilota
 
Marco Berlot - Qualità dati - Lunch Nexa
Marco Berlot - Qualità dati - Lunch NexaMarco Berlot - Qualità dati - Lunch Nexa
Marco Berlot - Qualità dati - Lunch Nexa
 

SPARQL: un API per ghermire dati