Loading
Release 0.1.0: OOP Data Lab catalogue stack with UI, API and private catalogues
First release (v0.1.0) of the OOP Data Lab, the dataspace metadata catalogue for an OOP deployment. Merges develop into main. Tag v0.1.0 after merge.
It is a DCAT-AP 3.0 catalogue engine (piveau-hub) with a search index, a triple store and a web UI. It describes datasets, their distributions and their data-quality results per the 6G-DALI Metadata Application Profile (MAP). The catalogue records what data exists, where it is, in what form, under which licence and how good it is. It does not store or move the data files.
Data Lab is versioned independently of the OOP release pin (ADR-0071).
What's in this release
Catalogue stack (compose/)
- hub-repo, hub-search, Elasticsearch, two Virtuoso stores (main and shadow, one unified image) and the Data Lab UI and API, run with Docker Compose.
- The dataspace-ui is pinned to the real public GHCR image.
Data Lab API (api/, FastAPI)
- Catalogue lifecycle and the catalogue-to-group role mapping.
- Private catalogues through piveau access control v2.
- Validates its own writes against MAP in code.
Data Lab UI (admin-ui/, React + TypeScript + Vite)
- Public pages: faceted dataset search, catalogue and dataset pages, no sign-in.
- Management console (
#/admin): catalogues (public or private), members as reader, contributor or publisher, datasets (create and edit through a MAP form, delete, promote staging → production).
Catalogue model
- Two catalogues per deployment:
oop-org(production, public) andoop-org-staging(submissions awaiting review). Stewards may create more. - Promotion from staging to production is a manual steward action (UC-DL-07).
Identity and ingress
keycloak/has thedataspacerealm export for the UI, API and piveau access-control clients (Keycloak 26.4+).nginx/has the/data-lab/*route family for the platform Nginx.- Standalone profile with shared ingress and IAM (ADR-0049), and Kubernetes deployment support in the NGINX and Keycloak configuration.
Try it locally
./local/local-up.shstarts the stack with a throwaway Keycloak and test users (steward,alice,bob)../local/local-down.shstops it.local/e2e.pychecks the whole stack, including that private data stays private when the hub and search are called directly.bootstrap/creates the two catalogues.examples/has sample MAP datasets.scripts/has a smoke test and re-index.
CI and docs
- CI tests the components and publishes branch-tagged images.
- Deployment and operations guides in
docs/. - Apache License 2.0.
Known limits
- The piveau profile mode is off, because it breaks indexing in hub-search 5.3.11.
- The vendored MAP SHACL shapes are staged but not enforced. The Data Lab API validates its own writes, and direct hub writes are not validated.
- Promotion staging → production is manual.
- Requirement status and gaps are in the architecture spec (
data-lab/, ADR-0049, ADR-0070, ADR-0071).
Checks
- CI green (component tests, image build)
-
./local/local-up.shandpython3 local/e2e.pypass - Deploys through the platform Helm chart (Data Lab chart 0.1.0)
Release steps
- Merge to
main. - Tag
v0.1.0on the merge commit.``
Edited by Dimitrios Gogos