Skip to main content

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

DSP-TOOLS Documentation

Installing dsp-tools

Install uv. On macOS and Linux, run:

curl -LsSf https://astral.sh/uv/install.sh | sh

On Windows, run:

powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

Then run DSP-TOOLS with uvx:

uvx dsp-tools --version

uv downloads the Python version that DSP-TOOLS requires, if your computer does not have it.

uvx keeps using the version of DSP-TOOLS that it downloaded first. To update to the latest version, run:

uvx dsp-tools@latest --version

To use the xmllib in your own scripts, create a uv project in the folder of your scripts and add dsp-tools to it:

uv init
uv add dsp-tools

To update dsp-tools in this project, run:

uv lock --upgrade-package dsp-tools

Then run your scripts with uv run:

uv run my_script.py

🚨 If you do not use uv, make sure that your Python version is not older than the version that DSP-TOOLS requires. Otherwise, the installation can silently give you 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. They use the project admin account of the project.

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

Metadata

Release files for dsp-tools 19.3.1.post3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for dsp-tools 19.3.1.post3
File Size Uploaded Provenance Actions
dsp_tools-19.3.1.post3.tar.gz 390.6 kB Without provenance Details for dsp_tools-19.3.1.post3.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for dsp-tools 19.3.1.post3
File Interpreter ABI Platform Actions
dsp_tools-19.3.1.post3-py3-none-any.whl Python 3 none any Details for dsp_tools-19.3.1.post3-py3-none-any.whl

Total release size: 911.4 kB

Release files / dsp_tools-19.3.1.post3.tar.gz

Download URL dsp_tools-19.3.1.post3.tar.gz
Size 390.6 kB
Tags Source
SHA-256 checksum
How to use checksums
5ea002a9c41d8541f4bcec35a0a184ad8c96f104ed5187f8ac4320d618370899
BLAKE2b-256 checksum
How to use checksums
9d0c17ecf4b51c729606799535825715a12049def51c724f091e48a4cc9df238
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.7 {"installer":{"name":"uv","version":"0.13.7","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}

Release files / dsp_tools-19.3.1.post3-py3-none-any.whl

Download URL dsp_tools-19.3.1.post3-py3-none-any.whl
Size 520.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5f07c1764678d649f36a109b74bf32bd53b204f9ae53f2d4d0547e78e163970a
BLAKE2b-256 checksum
How to use checksums
034241365c5f62c352745bc998f386419d914b5ff049dfa05715454bc2a46c4e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.7 {"installer":{"name":"uv","version":"0.13.7","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}

Security for dsp-tools 19.3.1.post3

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page