2.3 Queries voor SPARQL - StefanGerrits2/Frontend-Applications GitHub Wiki
Ik heb 4 queries met SPARQL geschreven om alle verschillende soorten categorieën speelgoed op te halen met de bijbehorende data.
Zo ziet een van mijn queries eruit:
PREFIX dc: <http://purl.org/dc/elements/1.1/>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX dct: <http://purl.org/dc/terms/>
PREFIX edm: <http://www.europeana.eu/schemas/edm/>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
SELECT
?obj
?title
?type
(SAMPLE(?img) as ?img)
?originLabel
?cultureLabel
?time
?size
?materialLabel
WHERE {
?obj edm:isRelatedTo <https://hdl.handle.net/20.500.11840/termmaster1832> .
?obj edm:object <https://hdl.handle.net/20.500.11840/termmaster12646> .
?obj dc:title ?title .
?obj dc:type ?type .
?obj edm:isShownBy ?img .
?obj dct:spatial ?origin .
?obj dct:extent ?size .
?origin skos:prefLabel ?originLabel .
?obj dct:medium ?material .
?material skos:prefLabel ?materialLabel .
OPTIONAL { ?obj dct:created ?time } .
OPTIONAL { ?obj dc:subject ?culture } .
OPTIONAL { ?culture skos:prefLabel ?cultureLabel } .
FILTER langMatches(lang(?title), "ned")
} LIMIT 50
- Met
PREFIX
wordt er simpelweg een afkorting gemaakt voor de plekken waar de informatie vandaan kan komen. - Met
SELECT
selecteer ik welke variabelen ik terug wil krijgen. - Met
WHERE
Haal ik alle data op:
- Eerst selecteer ik de variabele.
- Dan roep ik de plek op waar de informatie staat met de afkorting.
- Dan sla ik de data op in een variabele.
- Met
OPTIONAL
hoeft de gevraagde data er niet altijd te zijn. ALS de informatie er is, dan wil ik deze ook graag terug hebben. Als de informatie er niet is, wil ik alsnog het object terugkrijgen met de informatie die er wel is. - Met
FILTER
filter ik specifiek op Nederlandse titels. - Met
LIMIT
geef ik een limiet op hoeveel objecten ik terug wil krijgen.