This walkthrough demonstrates how the FAIR2Adapt access control framework protects research data using machine-readable ODRL policies published as signed nanopublications.
The framework is production-ready¶
Everything here uses the same code, the same encryption, and the same nanopublication infrastructure that protects the Hamburg urban pluvial flood risk dataset in FAIR2Adapt. Only the dataset is synthetic — so the walkthrough is fully reproducible without licensing or privacy concerns.
What you will learn¶
How ODRL access control works¶
Every step that produces a nanopublication creates a signed, immutable, auditable record on the decentralised nanopub network. The provider can prove they published the policy. The consumer can prove they were granted access. Anyone can verify the chain.
Adapting this to your own data¶
This walkthrough uses a synthetic biodiversity dataset, but the framework is data-agnostic. To protect your own research data:
Replace the CSV with your file
Change the
datasetUriin the ODRL policyRe-run the notebooks
No code changes needed. The encryption, key wrapping, DID resolution, and nanopublication signing all work identically regardless of what data you protect.
Prerequisites¶
pip install fair-data-access jupytext jupyter-bookYou also need Python ≥ 3.12 and a working internet connection (for DID resolution and nanopub network queries, if you publish for real).