dump-things-server/WHAT_IS_IT.md
Christian Monch d95e28a08d
All checks were successful
Test execution / Test-all (push) Successful in 1m51s
use "inbox" instead of "incoming" in what-is-it
2026-03-20 11:34:15 +01:00

43 lines
2.3 KiB
Markdown

### Dump Things Server
*Dump Things Server* is an implementation of a service that allows to store
and retrieve linked data. It builds the backend for linked-data applications.
Linked-data applications can retrieve data as JSON records or as
[TTL](https://www.w3.org/TR/turtle/) documents from a Dump Things Server.
Multiple *Dump Things Server* currently serve as a backends for
[shacl-vue](https://shacl-vue.psychoinformatics.de/). Data query parameters
support efficient data retrieval.
All data items that are stored on a *Dump Things Server* must be structured according to
a defined schema. Schemata are defined in [LinkML](https://linkml.io).
The server supports multiple collections. Each data items are stored in a
collection. Each collection has a name and an
associated schema. The *Dump Things Server* dynamically reads the respective
schemata and creates validation code for data items. This ensures that only items that
adhere to the schema can be stored in the respective collection.
The *Dump Things Server* supports distributed data acquisition while still
controlling the quality of collection data. This is done be distinguishing
between the curated area of a collection and user-specific inboxes of a collection.
The curated are of a collection represents the "official", high quality,
collection content.
The server allows users to
propose changes to existing data items, or to propose new data items for
inclusion into a collection. All proposals are stored in the inbox of the
respective user. A curation workflow moves proposed changes into the curated
area of a collection.
Curators, i.e., entities with specific privileges, can inspect proposed changes,
accept, modify, or reject them and include them into a collection. This
allows distributed contributions to collection data, while keeping control
over the curated collection content. Curation can be performed by persons or by
automated agents. The *Dump Things Server* provides tools and APIs to support
both options.
The necessary authorization levels for all these operations can be individually
configured on a per-collection basis.
The server supports multiple storage backends, and multiple authentication and
authorization sources. It also supports audit logs that track
time, content, author, and curator for every change to a record.