Laatst gewijzigd op: 18 juni 2018
Instructies: Gebruik de pijltjestoetsen (←, →, ↑, ↓) om door de presentatie te navigeren. Druk op de ESC toets voor een overzicht.
Onderdelen:
projectie: select ?s ?p ?o
patroon: ?s ?p ?o .
limiet: limit 5
"De
Brug"^^<http://www.w3.org/2001/XMLSchema#string>
is een literal.
<http://www.w3.org/2001/XMLSchema#string>
is het datatype.
URI kunnen worden afgekort met prefix
declaraties.
"De Brug"@nl
is een language-tagged
string. Dit betekent dat "De Brug"
geïnterpreteerd moet worden in het Nederlands
(nl
).
{ A } union { B }
geeft aan dat de de
resultaten van query A
én de resultaten
van query B
willen.
‘a
’ duidt de relatie aan tussen een
instantie en een klasse. ‘a
’ is een
afkorting voor rdf:type
, wat een
afkorting is
voor <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
.
distinct
laat alleen unieke resultaten zien.
‘;
’ is een afkorting die de subject term herhaalt.
rdfs:label
geeft een menselijk
interpreteerbare naam van een ding.
Merk op dat we ?klasse
niet gebruiken in
de projectie (zie volgende query).
We slaan ?klasse
uit de vorige query over.
X/Y
is een property path.
geo:hasGeometry/geo:asWKT
geeft de
Well-Known Text (WKT) representatie van een geometrie.
Merk op dat we verschillende vocabulaires door elkaar
heen gebruiken: rdfs
van W3C
en geo
van OGC.
Openbare ruimtes die ‘Hofstraat’ heten.
Openbare ruimtes die ‘Hofstraat’ heten én hun bijbehorende woonplaats.
Weer ambiguïteit: er zijn heel veel openbare ruimtes die ‘Hofstraat’ heten.
De Hofstraat in Apeldoorn.
(Merk op: er zijn 2 openbare ruimtes; hierover later meer.)
Met property path notatie (/
) slaan we de
niet gebruikte ?woonplaats
over.
Waarom zien we sommige panden dubbel?
Facebook, Google, Bing, BBC, NYT, Renault, Accenture, Deloitte, Wallmart, Getty, NXP, Europeana, Springer, Elsevier, ..only 140chars... https://t.co/oeMRQyDLLt
— Frank van Harmelen (@FrankVanHarmele) October 31, 2017
Schema.org:
Er zijn heel veel andere Linked Datasets op het web.
We kunnen al deze Datasets bevragen met SPARQL.
service <URL> { A }
betekent: voer
query A
uit op SPARQL
endpoint URL
, en voeg de resultaten
samen.
optional { A }
betekent:
voer A
uit, indien mogelijk.
Met name nuttig voor ontbrekende waardes (data op het web is vaak onvolledig).
openbareRuimte | woonplaats |
---|---|
openbare-ruimte:0200300022471548 | woonplaats:2247 |
openbare-ruimte:0200300022471548 | woonplaats:3560 |
woonplaats | status |
---|---|
woonplaats:2247 | begrip:WoonplaatsAangewezen |
woonplaats:2247 | begrip:WoonplaatsIngetrokken |
woonplaats:3560 | begrip:WoonplaatsAangewezen |
Nu hebben we de juiste Apeldoorn.
graph
betekent: voer
query A
uit binnen
deelgraaf URI
.