Skip to main content

DSP-TOOLS is a Python package with a command line interface that helps you interact with a DaSCH service platform (DSP) server.

Project description

DSP-TOOLS version on PyPI Supported Python versions License Ruff uv mypy

DSP-TOOLS Documentation

Installing dsp-tools

To install the latest version, run:

pip3 install dsp-tools

To update to the latest version run:

pip3 install --upgrade dsp-tools

🚨 If your Python version is older than ours, pip will silently install an outdated version of DSP-TOOLS.
DSP-TOOLS requires one of these Python versions:
The most recent version of DSP-TOOLS is

The dsp-tools package provides you with functionalities in the command line to interact with the DSP-API, both remote and locally. Additionally, it contains the xmllib which helps you construct the XML file required for a mass upload.

Where To Start?

dsp-tools provides you with the following core functionalities.

  • Running a Local Stack: If you want to run your own DSP stack locally, take a look here.
  • Data Modelling: There are several ways to create a data model with dsp-tools
    • Take a look at the technical specification for the JSON file.
    • Or take a look at our tool to convert Excel files into the JSON format.
    • You can create a data model on the DSP-APP. To re-use that data model on another server you can use the CLI command described here.
  • Data for Mass-Upload:
    • If you want to create the XML file required for a mass-upload onto DSP, take a look at the xmllib.
    • You can find an in-depth explanation of our XML file format here. Please note, that we recommend to use the xmllib library to create the file as we will ensure interoperability between the DSP-API requirements and your input.
    • If you want to validate and upload your XML file take a look here. Please note, that only DaSCH employees are permitted to upload data on a production server.

List of CLI Commands

The following CLI Commands are available, listed here in alphabetical order.

Command Description Documentation
create Create a project on a server from a JSON file
dsp-tools create project.json
excel2json Create the project definition JSON from Excel files
dsp-tools excel2json excelfolder project.json
excel2lists Create the list section of the project JSON
dsp-tools excel2lists excelfolder lists.json
excel2properties Create the properties section of the JSON
dsp-tools excel2properties properties.xlsx properties.json
excel2resources Create the resource section of the JSON
dsp-tools excel2resources resources.xlsx resources.json
get Retrieve a project definition JSON from a server
dsp-tools get -P 0XXX project.json
id2iri Replace internal IDs with IRIs in an XML file
dsp-tools id2iri new_data.xml id2iri_mapping.json
ingest-files Kick off the ingest process and save the mapping CSV
dsp-tools ingest-files 0XXX
ingest-xmlupload Create resources from XML after files are ingested
dsp-tools ingest-xmlupload data.xml
migration config Create a migration config YAML file
dsp-tools migration config -P 0XXX
migration complete Execute a complete migration
dsp-tools migration complete migration-0XXX.yaml
migration export Download project data from the source server
dsp-tools migration export migration-0XXX.yaml
migration import Import a downloaded export to another server
dsp-tools migration import migration-0XXX.yaml
migration clean-up Clean up local files and server references
dsp-tools migration clean-up migration-0XXX.yaml
old-excel2json Create project definition JSON using the old Excel format
dsp-tools old-excel2json excelfolder project.json
old-excel2lists Create the list section using the old Excel format
dsp-tools old-excel2lists excelfolder lists.json
resume-xmlupload Resume a previously interrupted xmlupload
dsp-tools resume-xmlupload
start-stack Start a local DSP stack
dsp-tools start-stack
stop-stack Stop the local DSP stack
dsp-tools stop-stack
update-legal Update legal metadata in XML files to the new format
dsp-tools update-legal [mandatory options] data.xml
upload-files Upload multimedia files referenced in an XML file
dsp-tools upload-files data.xml
validate-data Validate XML data against a data model on a server
dsp-tools validate-data data.xml
xmlupload Create resources from an XML file on a server
dsp-tools xmlupload data.xml

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

dsp_tools-18.10.0.tar.gz (326.3 kB view details)

Uploaded Source

Built Distribution

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

dsp_tools-18.10.0-py3-none-any.whl (463.6 kB view details)

Uploaded Python 3

File details

Details for the file dsp_tools-18.10.0.tar.gz.

File metadata

  • Download URL: dsp_tools-18.10.0.tar.gz
  • Upload date:
  • Size: 326.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.1 {"installer":{"name":"uv","version":"0.11.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for dsp_tools-18.10.0.tar.gz
Algorithm Hash digest
SHA256 e2b505fd71b6df1631b6e8e83e42db34cbcabb85692ca528de298e5be2756228
MD5 38012fde99aed7934409bb6cc3360f45
BLAKE2b-256 ab39fb69dc41e9c19e09e9095f6526454f8c94c6c60832cf8369b2378a9a8e4c

See more details on using hashes here.

File details

Details for the file dsp_tools-18.10.0-py3-none-any.whl.

File metadata

  • Download URL: dsp_tools-18.10.0-py3-none-any.whl
  • Upload date:
  • Size: 463.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.1 {"installer":{"name":"uv","version":"0.11.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for dsp_tools-18.10.0-py3-none-any.whl
Algorithm Hash digest
SHA256 118e176504dfd2c65124894832928546e3b865e17d7aa02d45f632c4779f899d
MD5 ef74f2cbe64276dca16c1795dfa01dea
BLAKE2b-256 70f3e1a286df0b74a2ebe14b690165115591d42bc797a84295197223c2095242

See more details on using hashes here.

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