Open, community-curated, and built on the Tool Registry Framework, integrating Wikidata and TaDiRAH
- powered by
- Wikidata SPARQL Service,
- Wikidata Linked Data Fragments Service
- MediaWiki Action API,
- Comunica
- GatsbyJS with React and GraphQL
- Bootstrap 5
๐ All data grounded in Wikidata, Commons and the TaDiRAH Taxonomy.
- Project structure
- Data fetching and data handling
- Local
gatsby-source-research-tools
plugin- SPARQL
- Triple Pattern Fragment
- GraphQL
- MediaWiki Action API (Wikimedia Commons)
- Local
- Installation
- Locally
- Docker
- Customize the explorer
- Configure sites metadata
- Configures styles
- Issues and development
- Further Reading
Use the concept of Linked Data Fragements
- Not to complex SPARQL Query to not run into RateLimit Error (429)
- Drawbacks of Wikidata REST API:
- Parallel request with e.g.
Promise.all()
is not allowed and will run into 429 error - Sequential requests, on the other hand, take a long time and are therefore not efficient
- you need personal access token for larger requests
- Parallel request with e.g.
- Change into the plugin's directory and create TypeDoc Documentation:
npx typedoc
There a various endpoints available for fetching data from Wikidata
- WDQS - Wikimedia Foundation
- QLever (!) - Uni Freiburg
- Virtuoso
- see website for more information and benchmark tests:
See JS-Libraries
- https://comunica.dev/ (allows federated queries)
- https://zazuko.com/get-started/developers/#further-documentation-support-questions (no federated queries)
npx comunica-sparql https://query.wikidata.org/sparql https://vocabs-downloads.acdh.oeaw.ac.at/vocabs-main/Humanities/TaDiRAH/tadirah.ttl -f ./data/federated-sparql.rq --log-level debug
- Wikidata LDF Server: https://query-main.wikidata.org/bigdata/ldf
- "template" : "https://query-main.wikidata.org/bigdata/ldf{?subject,predicate,object}"
- Image-URLs from Wikidata result in
โ Das Cookie "NetworkProbeLimit" wurde abgelehnt, weil es sich in einem seitenรผbergreifenden Kontext befindet und sein "SameSite" auf "Lax" oder "Strict" gesetzt ist.
- Issue: URL from Wikidata is a Redirect-URL (301) that cause the cookie issue
- when accessing it, Wikimedia may set a session cookie that is blocked by the SameSite setting.
- Fix: Use MediaWiki-API to retrieve the images: https://www.mediawiki.org/wiki/API:Imageinfo
- Images from Commons can be used outside
- Need license requirements: https://commons.wikimedia.org/wiki/Commons:Reusing_content_outside_Wikimedia
Explore the project e.g. schema, nodes, pages etc.
npm run repl
https://www.gatsbyjs.com/docs/reference/gatsby-cli/#repl
- add browser check during the build time to skip: https://www.gatsbyjs.com/docs/debugging-html-builds/#how-to-check-if-window-is-defined
- At the moment react-json-schema-from doesn't support
patternProperties
of Json Schema- see Issue on GitHub: rjsf-team/react-jsonschema-form#1514
- that means we need a workaround here