Skip to main content

Extension automatically generating csvw metadata for uploaded textual tabular data.

Project description

Tests

ckanext-csvtocsvw

Extension automatically generating csvw metadata for uploaded textual tabular data. It uploads the data of the first table documented into a datastore for the source csv file. should be used as replacement for datapusher

Requirements

Needs a running instance of the CSVToCSVW Application. Point at it through env variables. Also needed is a Api Token for an account with the right privaledges to make the background job work on private datasets and ressources.

CKANINI__CKANEXT__CSVTOCSVW_URL=http://${CSVTOCSVW_HOST}:${CSVTOCSVW_APP_PORT}
CKANINI__CKANEXT__CSVTOCSVW__CKAN_TOKEN=${CKAN_API_TOKEN}

You can set the default formats to annotate by setting the env variable CSVTOCSVW_FORMATS for example

CKANINI__CKANEXT__CSVTOCSVW__FORMATS="csv txt asc"

else it will react to the following formats: "csv", "txt", "asc", "tsv"

If you need to process files that are not hosted through https (CKAN is not ssl configured), you can disable ssl verification

CKANINI__CKANEXT__CSVTOCSVW__SSL_VERIFY=False

Purpose

Reacts to CSV files uploaded. DEFAULT_FORMATS are "csv; txt" It creates two to sites for each resource.

  • /annotate creates CSVW annotation file for a CSV in json-ld format named <csv_filename>-metadata.json, uploades table-1 to ckan datastore o u can explorer it with recline views
  • /transform utilizes CSVW metadata to transform the whole content of the csv file to rdf, output is <csv_filename>.ttl The plugins default behavior includes a trigger to csv file uploads, so it runs annotation automatically on upload. The transformation is a bonus feature and outputs standard tabular data as mentioned in the CSVW documentation of the W3C. It must be triggered manually.

Compatibility with core CKAN versions:

CKAN version Compatible?
2.9 and arlier not tested
2.10 yes
2.11 yes
  • "yes"
  • "not tested" - I can't think of a reason why it wouldn't work
  • "not yet" - there is an intention to get it working
  • "no"

Installation

To install the extension:

  1. Activate your CKAN virtual environment, for example:
. /usr/lib/ckan/default/bin/activate
  1. Use pip to install package
pip install ckanext-csvtocsvw
  1. Add csvtocsvw to the ckan.plugins setting in your CKAN    config file (by default the config file is located at    /etc/ckan/default/ckan.ini).

  2. Restart CKAN. For example, if you've deployed CKAN with Apache on Ubuntu:

sudo service apache2 reload

Developer installation

To install ckanext-csvtocsvw for development, activate your CKAN virtualenv and do:

git clone https://github.com/Mat-O-Lab/ckanext-csvtocsvw.git
cd ckanext-csvtocsvw
python setup.py develop
pip install -r dev-requirements.txt

Tests

To run the tests, do:

pytest --ckan-ini=test.ini

License

AGPL

Acknowledgments

The authors would like to thank the Federal Government and the Heads of Government of the Länder for their funding and support within the framework of the Platform Material Digital consortium. Funded by the German Federal Ministry of Education and Research (BMBF) through the MaterialDigital Call in Project KupferDigital - project id 13XP5119.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ckanext_csvtocsvw-1.0.1.tar.gz (35.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ckanext_csvtocsvw-1.0.1-py3-none-any.whl (39.0 kB view details)

Uploaded Python 3

File details

Details for the file ckanext_csvtocsvw-1.0.1.tar.gz.

File metadata

  • Download URL: ckanext_csvtocsvw-1.0.1.tar.gz
  • Upload date:
  • Size: 35.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for ckanext_csvtocsvw-1.0.1.tar.gz
Algorithm Hash digest
SHA256 c9391573312b8fe7730aae563847751f234bbc197764ca1ef314763fca68d830
MD5 e22a04fd08d472b4a4eb741afc5d8955
BLAKE2b-256 85dd399d8d31c85b17ee398d6ada8ae4ea58cfc740749ef9cecb0158ed6af056

See more details on using hashes here.

Provenance

The following attestation bundles were made for ckanext_csvtocsvw-1.0.1.tar.gz:

Publisher: pypi.yml on Mat-O-Lab/ckanext-csvtocsvw

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ckanext_csvtocsvw-1.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for ckanext_csvtocsvw-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 1ec604e9ff4794151828a47351474d510d929683a4619173dad2eea625ddb20a
MD5 390622d058d7024a7def76bf75c61e3d
BLAKE2b-256 5e3a8afe87bdfe25696cd8aa4294ae78c84858051ae25465c67da8f6b973099c

See more details on using hashes here.

Provenance

The following attestation bundles were made for ckanext_csvtocsvw-1.0.1-py3-none-any.whl:

Publisher: pypi.yml on Mat-O-Lab/ckanext-csvtocsvw

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page