Skip to content

Data Lab

The dataspace metadata catalogue.

The Data Lab is the library card catalogue, not the library. It records what data exists, where it is, in what form, under which licence and how good it is, using the piveau DCAT-AP 3.0 catalogue engine and the 6G-DALI Metadata Application Profile (MAP). It does not store or move the data itself: dataset distributions point at the data through dcat:accessURL / dcat:downloadURL.

Unlike the OEG or the SRM, the Data Lab is not part of the CAMARA Northbound Interface and does not use the DataBus. It is a self-contained stack with its own UI, API and storage, and it authenticates users against the platform Keycloak (realm dataspace).

Data Lab architecture

What it does

  • Register, edit and retrieve dataset, distribution and data-quality metadata, through a REST API or a MAP form in the UI
  • Search the catalogue by keyword and facets (theme, format, licence, keyword, publisher) with no sign-in for public data
  • Host a production catalogue (oop-org) and a staging catalogue (oop-org-staging), plus further public or private catalogues created by stewards
  • Manage catalogue members at reader, contributor or publisher level, and enforce it in piveau itself, so private catalogues stay private even when the hub is called directly
  • Promote submitted datasets from staging to production (a manual steward action in Release 2)

Read in the specs

The Data Lab specification is four documents. Start from the question that matches what you need:

Question Where to read
What does the Data Lab own, and what does it leave out? Overview & Architecture › Scope and Ownership, Overview & Architecture › Boundaries, Implementation & Delivery › Later Releases
What is in the stack? Requirements & Design › Components, ADR-0070
Which interfaces does it expose, and how do I call them? Requirements & Design › External Interfaces, Requirements & Design › Data Lab API Routes, Interface Contract › Worked Examples
Who can do what? Overview & Architecture › Who Sees What, Requirements & Design › Access Control and Security, ADR-0049
How is a dataset described? Requirements & Design › Metadata Model and Identifiers
How is it deployed on Kubernetes? Implementation & Delivery › Kubernetes, ADR-0069
What does not work yet? Implementation & Delivery › Known Gaps, Overview & Architecture › Open Questions

Code and deployment

Repository data-lab (Data Lab API: Python, FastAPI; Data Lab UI: React, TypeScript, Vite)
Version 0.1.0, released separately from the Release 2 pin (ADR-0071)
Images built here data-lab-api and data-lab-admin-ui; everything else is a pinned upstream image
Helm Umbrella chart oop-platform → subchart datalab (chart version 0.1.0), off by default
Dependencies Platform Keycloak with realm dataspace (Keycloak 26.4 or newer); no PostgreSQL or NATS
Try it Data Lab UI on the NodePort 30083, on kind: http://localhost:30083. The management console is at #/admin
Compose compose/docker-compose.yml in the Data Lab repo, with the platform Nginx routing /data-lab/*

To turn it on, follow Deploy with Helm › Optional: Data Lab.