A library for mapping a data catalog to rdf
Project description
datacatalogtordf
A small Python library for mapping a data catalog to rdf
The library contains helper classes for the following dcat classes:
Other relevant classes are also supported, such as:
- Contact vcard:Kind
The library will map to the Norwegian Application Profile of the DCAT standard.
Usage
Install
% pip install datacatalogtordf
Getting started
from datacatalogtordf import Catalog, Dataset
# Create catalog object
catalog = Catalog()
catalog.identifier = "http://example.com/catalogs/1"
catalog.title = {"en": "A dataset catalog"}
catalog.publisher = "https://example.com/publishers/1"
# Create a dataset:
dataset = Dataset()
dataset.identifier = "http://example.com/datasets/1"
dataset.title = {"nb": "inntektsAPI", "en": "incomeAPI"}
#
# Add dataset to catalog:
catalog.datasets.append(dataset)
# get rdf representation in turtle (default)
rdf = catalog.to_rdf(format="turtle")
print(rdf.decode())
Will produce the following output:
@prefix dcat: <http://www.w3.org/ns/dcat#> .
@prefix dct: <http://purl.org/dc/terms/> .
<http://example.com/catalogs/1> a dcat:Catalog ;
dct:publisher <https://example.com/publishers/1> ;
dct:title "A dataset catalog"@en ;
dcat:dataset <http://example.com/datasets/1> .
<http://example.com/datasets/1> a dcat:Dataset ;
dct:title "incomeAPI"@en,
"inntekstAPI"@nb .
Development
Requirements
% pipx install poetry==1.1.13
% pipx install nox==2022.1.7
% pipx inject nox nox-poetry==0.9.0
Install developer tools
% git clone https://github.com/Informasjonsforvaltning/datacatalogtordf.git
% cd datacatalogtordf
% pyenv install 3.8.12
% pyenv install 3.9.10
% pyenv local 3.8.12 3.9.10
% poetry install
Run all sessions
% nox
Run all tests with coverage reporting
% nox -rs tests
Debugging
You can enter into Pdb by passing --pdb
to pytest:
nox -rs tests -- --pdb
You can set breakpoints directly in code by using the function breakpoint()
.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
datacatalogtordf-3.0.0.tar.gz
(27.4 kB
view details)
Built Distribution
File details
Details for the file datacatalogtordf-3.0.0.tar.gz
.
File metadata
- Download URL: datacatalogtordf-3.0.0.tar.gz
- Upload date:
- Size: 27.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.14 CPython/3.8.10 Linux/5.15.0-1019-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0e6e29e7af136d6cb2a022d744883d3722031bbfd00f890fd1b45f2e8d9d8d56 |
|
MD5 | 50724d99260c0fa6cff9f48d34d20e17 |
|
BLAKE2b-256 | aeb34bff321d086faa28fe46f5a17fd3b5981e2bbdc5f683f631d3caecb81d55 |
File details
Details for the file datacatalogtordf-3.0.0-py3-none-any.whl
.
File metadata
- Download URL: datacatalogtordf-3.0.0-py3-none-any.whl
- Upload date:
- Size: 41.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.14 CPython/3.8.10 Linux/5.15.0-1019-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1829ea143ededf077cc2df041f3f08cdecff1cf470354bb85eca429f262ff70b |
|
MD5 | e621aa1b094135a4a7131b975b88bf43 |
|
BLAKE2b-256 | 8292d13f1b2401e240a3daae006e379cb57bd88d330fb3df850876719f7b5865 |