SPARQL

Transcription

SPARQL
SPARQL
Sparql Protocol And RDF Query Language
Spørrespråk for RDF-data
Tripler
Arne – liker – Blåbær
Subjekt – Predikat – Objekt
Tittel nr. 1334517 – har tittel – "Silkehuset" .
Subjekt: Tittel nr. 1334517
Predikat: har tittel
Objekt:
"Silkehuset"
URI – Uniform Resource Identifier
<http://data.deichman.no/resource/tnr_1334517>
<http://purl.org/dc/terms/title>
"Silkehuset" .
<http://data.deichman.no/resource/tnr_1334517>
<http://purl.org/dc/terms/creator>
<http://data.deichman.no/person/x12420100> .
< http://data.deichman.no/person/x12420100 >
<http://xmlns.com/foaf/0.1/name>
"Anthony Horowitz" .
I SPARQL-syntaks må URI-er som skrives fullt ut stå i vinkelklammer (<>)
Navnerom – prefikser
PREFIX
PREFIX
PREFIX
PREFIX
dct:
foaf:
resource:
person:
<http://purl.org/dc/terms>
<http://xmlns.com/foaf/0.1/>
<http://data.deichman.no/resource/>
<http://data.deichman.no/person/>
resource:tnr_1334517
dct:title
"Silkehuset" .
resource:tnr_1334517
dct:creator
person:x12420100 .
person:x12420100
foaf:name
"Anthony Horowitz" .
Typer
PREFIX resource: <http://data.deichman.no/resource/>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX bibo: <http://purl.org/ontology/bibo/>
resource:tnr_1334517
rdf:type
bibo:Document .
resource:tnr_1334517
a
bibo:Document .
Turtle
resource:tnr_1334517
resource:tnr_1334517
resource:tnr_1334517
person:x12420100
person:x12420100
a
dct:title
dct:creator
a
foaf:name
bibo:Document .
"Silkehuset" .
person:x12420100 .
foaf:Person .
"Anthony Horowitz" .
resource:tnr_1334517
dct:title
dct:creator
a
bibo:Document ;
"Silkehuset" ;
person:x12420100 .
person:x12420100
foaf:name
a
foaf:Person ;
"Anthony Horowitz" .
http://goo.gl/hEewgm
http://data.deichman.no/sparql
Angi default graph: http://data.deichman.no/books
SELECT
SELECT [det vi vil vite] WHERE {
[det vi vet] .
}
? markerer variabler
Finn tittelen til boka med tittelnummer 1334517
SELECT ?title WHERE {
resource:tnr_1334517 dct:title ?title .
}
SELECT * gir alle ukjente verdier
Finn tittelen til bok med tittelnummer 1334517
SELECT * WHERE {
resource:tnr_1334517 dct:title ?title .
}
Hva gir dette oss?
SELECT * WHERE {
resource:tnr_1334517 ?p ?o .
}
Finn URI-en til boka som heter "Silkehuset"
SELECT ?book WHERE {
?book dct:title "Silkehuset" .
}
Finn URI-en til boka som heter "Skolespøkelset"
SELECT ?book WHERE {
?book dct:title "Skolespøkelset" .
}
Angi type hvis den er kjent
Finn URI-en til boka som heter "Skolespøkelset"
SELECT ?book WHERE {
?book dct:title "Skolespøkelset" ;
a bibo:Document .
}
SELECT ?book WHERE {
?book dct:title "Samlede dikt" ;
a bibo:Document .
}
LIMIT - Begrenser antall treff
SELECT ?book WHERE {
?book dct:title "Samlede dikt" ;
a bibo:Document .
}
LIMIT 10
OFFSET - Bestemmer startpunkt
SELECT ?book WHERE {
?book dct:title "Samlede dikt" ;
a bibo:Document .
}
OFFSET 10
LIMIT 10
Hva heter forfatteren som skrev boka "Skolespøkelset"?
Typer:
• bibo:Document
• foaf:Person
Predikater:
• dct:title
• dct:creator
• foaf:name
SELECT ?name WHERE {
?book dct:title "Skolespøkelset" ;
dct:creator ?person ;
a bibo:Document .
?person a foaf:Person ;
foaf:name ?name .
}
Hva handler boka som heter "Sightlines" om?
Nødvendige typer:
• bibo:Document
• skos:Concept
Nødvendige predikater:
• dct:title
• dct:subject
• skos:prefLabel
SELECT ?label WHERE {
?book dct:title "Sightlines" ;
dct:subject ?topic ;
a bibo:Document .
?topic a skos:Concept ;
skos:prefLabel ?label .
}
Hva er titlene på bøker som Are Kalvø har skrevet?
Typer:
bibo:Document
foaf:Person
Predikater:
dct:creator
dct:title
foaf:name
SELECT ?title WHERE {
?person foaf:name "Are Kalvø" ;
a foaf:Person .
?book dct:creator ?person ;
dct:title ?title ;
a bibo:Document .
}
ORDER BY – Sorterer treffliste
SELECT ?title WHERE {
?person foaf:name "Are Kalvø" ;
a foaf:Person .
?book dct:creator ?person ;
dct:title ?title ;
a bibo:Document .
}
ORDER BY ?title
DISTINCT – Returnerer unike svar
SELECT DISTINCT ?title WHERE {
?person foaf:name "Are Kalvø" ;
a foaf:Person .
?book dct:creator ?person ;
dct:title ?title ;
a bibo:Document .
}
ORDER BY ?title
SELECT DISTINCT ?work ?title WHERE {
?person foaf:name "Are Kalvø" ;
a foaf:Person .
?work dct:creator ?person ;
dct:title ?title ;
a fabio:Work .
}
ORDER BY ?title
DESCRIBE - Alt om en ressurs
DESCRIBE <http://data.deichman.no/work/x27421700_noed>
Andre bøker av forfatteren
SELECT DISTINCT ?work ?title sql:SAMPLE(?image) WHERE {
resource:tnr_638746 fabio:isManifestationOf ?work .
?work dct:creator ?person ;
a fabio:Work .
?otherWork dct:creator ?person ;
a fabio:Work ;
dct:title ?title .
FILTER (?otherWork != ?work)
OPTIONAL { ?otherWork fabio:hasManifestation [foaf:depiction ?image] . }
}
"Noe som ligner"
SELECT DISTINCT ?similar ?name ?title sql:sample(?image) WHERE {
GRAPH deich:books {
resource:tnr_638746 fabio:isManifestationOf ?work .
}
GRAPH deich:noeSomLigner {
?work deich:similarWork ?similar .
}
GRAPH deich:books {
?similar dct:title ?title ;
dct:creator [foaf:name ?name] ;
a fabio:Work .
OPTIONAL { ?similar fabio:hasManifestation [foaf:depiction ?image] . }
}
}
Prøv og feil
Bli kjent med dataene