datasources

(TODO: Document how the datasources system works and how it can be configured. Show the steps for a simple datasource integration.)

The idea is to allow any REST or SPARQL API to be added to a Conzept system and render topics in the sidebar.

Features:

  • Make adding a new datasource as easy as possible, but still flexible in terms of the rendered output.
  • Make the API search results show up in the same style and results paging mechanics, as the other datasources.
  • Let the topic results be augmented from Wikidata (if a Qid is provided for the topic).
  • Have auto-completion work too (if wanted and possible).
  • Allow the user to choose which datasources to use.

use cases

  • Allow for adding extra “data sources” to a Conzept system, so other concepts - beyond Wikipedia and Wikidata - can also be presented.
  • Any organization that wants to use the Conzept user-interface for showing and augmenting their own knowledge base.

status

datasource options for the user
  • Future improvements:
    • Add global search options like: sort-key (relevance, date-asc, date-desc) and media-types filter (text, image, audio, video, 3d, etc.).
    • Indicate when a datasource is “unreachable”.
    • Add hooks for pre- and post-processing of the API data.
    • Add hooks to enrich the API data (with Wikipedia and Wikidata information)
    • Research support for self-hosted, data files used as a datasource: JSON, Parquet, CSV, RDF

adding a new datasource

  1. Add the new datasource to the datasource-configuration file here: src/data/datasources.js
  2. Add a new datasource directory (using the name of the datasource, eg. “gleif”)
  3. Add a new JS file in that directory, implementing the required API access functions, example: src/datasources/gleif/index.js