Wikipedia:GLAM/Koninklijke Bibliotheek en Nationaal Archief/Topstukken/Hergebruik/Wikidata
Nieuws | Over onze samenwerking met Wikimedia | Projecten | Evenementen & bijeenkomsten | KPIs | Archief (2013-2014) | Alle pagina's |
Topstukken | Alba amicorum | Algemeen Letterkundig Lexicon |
Home | Overzichten van topstukken | Wikipedia-artikelen | Hergebruik (werk in uitvoering) | Publicaties, presentaties etc. | Meehelpen |
Wikimedia Commons (beelden) | Wikidata (data) | Wikipedia (teksten) | Github | Voorbeelden |
Hergebruik KB topstukken via Wikidata
bewerkenhttps://nl.wikipedia.org/wiki/Sjabloon:Code
API
bewerken8 Een (basis)titellijst van alle topstukken opvragen in json en xml (API-call) - https://query.wikidata.org/sparql?query=select%20%3Fitem%20%3FitemLabel%20%0Awhere%20{%0A%20%20%3Fitem%20p%3AP195%20%3Fst%20.%0A%20%20%3Fst%20ps%3AP195%20wd%3AQ1526131%20.%0A%20%20%3Fst%20pq%3AP2868%20wd%3AQ29188408%0A%20%20%20%20%20%20%20%20SERVICE%20wikibase%3Alabel%20{%20bd%3AserviceParam%20wikibase%3Alanguage%20%22nl%22.%20}%0A}&format=json
SPARQL
bewerken# Vind topstukken uit de collectie van de Koninklijke Bibliotheek Nederland
SELECT DISTINCT ?topstuk ?topstukLabel
WHERE {
# het ding is onderdeel van de collectie van de KB, en heeft daarbinnen de rol 'topstuk'
?topstuk (p:P195/ps:P195) wd:Q1526131; p:P195 [pq:P2868 wd:Q29188408].
SERVICE wikibase:label { bd:serviceParam wikibase:language "nl". }
}
ORDER BY ?topstukLabel
Probeer deze SPARQL query op Wikidata
Programmertalen
bewerkenPython
bewerken# pip install sparqlwrapper
# https://rdflib.github.io/sparqlwrapper/
import sys
from SPARQLWrapper import SPARQLWrapper, JSON
endpoint_url = "https://query.wikidata.org/sparql"
query = """# Vind topstukken uit de collectie van de Koninklijke Bibliotheek Nederland
SELECT DISTINCT ?topstuk ?topstukLabel
WHERE {
# het ding is onderdeel van de collectie van de KB, en heeft daarbinnen de rol 'topstuk'
?topstuk (p:P195/ps:P195) wd:Q1526131; p:P195 [pq:P2868 wd:Q29188408].
SERVICE wikibase:label { bd:serviceParam wikibase:language "nl". }
}
ORDER BY ?topstukLabel"""
def get_results(endpoint_url, query):
user_agent = "WDQS-example Python/%s.%s" % (sys.version_info[0], sys.version_info[1])
# TODO adjust user agent; see https://w.wiki/CX6
sparql = SPARQLWrapper(endpoint_url, agent=user_agent)
sparql.setQuery(query)
sparql.setReturnFormat(JSON)
return sparql.query().convert()
results = get_results(endpoint_url, query)
for result in results["results"]["bindings"]:
print(result)
PHP
bewerkenJavaScript
bewerkenHTML embed
bewerkenDatadumps
bewerken- Je kunt die zelf op maat aanvragen via https://wdumps.toolforge.org/ Uileg op https://wdumps.toolforge.org/about
Kan een aantal uren/dagen duren afh serverbelasting en grootte van de aangevraagde dump