Skip to main content

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
mapping config Create a mapping YAML config file
dsp-tools mapping config -P 0XXX --ontology my-onto
mapping update Replace external ontology mappings from an Excel file
dsp-tools mapping update 0XXX-my-onto-mapping.yaml
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

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.19.0.post1.tar.gz (352.2 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.19.0.post1-py3-none-any.whl (497.5 kB view details)

Uploaded Python 3

File details

Details for the file dsp_tools-18.19.0.post1.tar.gz.

File metadata

  • Download URL: dsp_tools-18.19.0.post1.tar.gz
  • Upload date:
  • Size: 352.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","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.19.0.post1.tar.gz
Algorithm Hash digest
SHA256 886aef742fe06328b184ba895e11eb3796d326ab6c6f04de28e3a556ec929e81
MD5 8c94388f0c6cb5e5aadc9584a10cb3cc
BLAKE2b-256 45b71191f969139507a812228ba0f27ed30ca1055127c2fd8963fd63621e4886

See more details on using hashes here.

File details

Details for the file dsp_tools-18.19.0.post1-py3-none-any.whl.

File metadata

  • Download URL: dsp_tools-18.19.0.post1-py3-none-any.whl
  • Upload date:
  • Size: 497.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","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.19.0.post1-py3-none-any.whl
Algorithm Hash digest
SHA256 3ec3f5522350167a64b65ee142e918e4d204babf98e49f3daf247c4cfdb30e6b
MD5 5dcfd36da9ab5dfbe779dc2a3945856b
BLAKE2b-256 8ae939ca0eca37cbe0373ea1e1157804a066a4eb6fea9ede7aa8da7db3a90a98

See more details on using hashes here.

Release history Release notifications | RSS feed

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