Skip to content

"Low-tech" metadata schemas

For many use cases metadata concepts are complex. Producing and consuming such metadata involves sophisticated tooling, which implies a considerable technical threshold for adopting metadata-focused workflows.

The schemas provided here aim to lower this threshold with an approach to expressing rich and semantically precise metadata in relatively simple data structures -- data structures that can be reasonably read from files and processed in scripts with loops and conditionals, rather than requiring databases and specific query languages implemented in targeted libraries.

All schemas are implemented in LinkML, connecting to a rich ecosystem for data modeling, validation, and transformation. LinkML bridges between the worlds of structured data in plain text files, relational databases and knowledge graphs if and when needed, so metadata workflows can stay as simple as possible.

Foundational schema components

The sources for all schemas are on GitHub.

Latest releases

Previous versions

Application schema demonstrators

The following example documents how the provided schema components can be combined in to complete schemes for particular purposes. This demonstrator is not intended to be reusable as a building block for derived schemas.

Deprecated components

Empirical data was a demonstrator of an early schema development. It has been completely superseded the any demonstrator listed above.

Flexible Low-complexity Annotation Technique (FLAT) schema components

These schema componts have deprecated. Their functionality and design aspects have been incorporated in the latest released of the things schema collection.

These FLAT schemas aimed for being maximally lean and orthogonal with respect to other FLAT schema components. This is achieved by reducing the included slots to bare necessities, and by avoiding class inheritance from other (even closely related) concepts. As a result, the FLAT schemas are most suitable for mix-and-match composition of schemas geared towards (meta)data submission systems and form generation. They minimizes the required cognitive complexity for providing complete records in a particular context, by avoiding the forced inclusion of meaningful, but undesired concepts and relationships. This simplification typically comes with the need to further subclass and extend these base concepts for any given application context. The provided demonstrator schemas illustrator this concept.

The deprecated schemas above were built on the following, also deprecated, schema components.

The following examples documented how the FLAT schema components can be combined in to complete schemes for particular purposes.

Knowledge base/graph dump specification

This specification is a companion of the Things schema and its derivatives and extensions. It defines a data structure for dumping arbitrarily complex information, expressed in these data models, in a version-controllable fashion directly on a file-system.

Storage API implementation: dump-things-service

This Python software package provides an HTTP-based API to store and retrieve metadata records. It supports authenticated access to multi-schema, multi-collection API endpoints with built-in validation. The API is fully auto-generated based on a schema built from the schema components available on this site Among the support storage back-ends is plain file-system storage compliant with the dump-things specification .

Check out dump-things-service on PyPI

SHACL-based form generation and metadata editing

This is a VueJS-based browser tool that enabled client-side retrieval, editing, and submitting of metadata records. It auto-builds a customizable UI from SHACL and OWL specifications, such as those provided for the schemas available on this site. Records are consumed and submitted in [Terse RDF Triple Language (Turtle)](https://en.wikipedia.org/wiki/Turtle_(syntax) (supported by, for example, dump-things-service API endpoint).

Check out shacl-vue on GitHub

Acknowledgements

This work was funded, in part, by