This guide walks you through working with dsp-tools on your local computer — from installation to creating and managing data models.
Prerequisites
You need to install Docker before getting started.
Installing DSP-TOOLS
To install dsp-tools, run the following command:
pip3 install dsp-tools
To update dsp-tools to the latest version, run:
pip3 install --upgrade dsp-tools
Starting the Local DSP Stack
Start Docker, then start the local DSP stack:
dsp-tools start-stack
Open http://0.0.0.0:4200/ in your browser.
Log in with:
- Username: root
- Password: test
Creating a Project
- Click the "My account" icon on the right and select "System Administration"
- Click "Create new project"
- Use
0750as a provisional shortcode — once you decide to archive your data at DaSCH, you will receive an official one - Choose a shortname (3–20 characters, only lowercase letters, numbers, and hyphens)
- Choose a title for your project
- Provide a short description in English (and optionally in other languages)
- Add a few keywords
- Click "Submit"
Creating a Data Model
Click "Data model" and choose "Create New."
Set a unique name for the data model, the label, and explain more details in the comment.
Now you can create classes and properties. Please see the Naming Conventions and follow them — if you do so, a documentation of your data model can be created semi-automatically.
For the different types of classes and properties, see the DSP-TOOLS documentation (Data Modelling section).
Representation Types
The following representation types are available for classes:
| Representation | Supported Formats |
|---|---|
| ArchiveRepresentation | ZIP, TAR, GZ, Z, TAR.GZ, TGZ, GZIP, 7Z |
| AudioRepresentation | MP3, WAV |
| DocumentRepresentation | PDF, DOC, DOCX, XLS, XLSX, PPT, PPTX, EPUB |
| MovingImageRepresentation | MP4 |
| StillImageRepresentation | JPG, JPEG, PNG, TIF, TIFF, JP2 |
| TextRepresentation | TXT, CSV, XML, HTM, HTML, XSL, XSD, ODD, RNG, JSON |
Controlled Vocabularies
Controlled vocabularies must be created in the separate "Controlled vocabularies" section. To use them, choose "List" as the property type.
If you have the controlled vocabulary already available in a spreadsheet, you can use the dsp-tools excel2lists command to create the lists, which you can then upload. More information and an Excel template are available in the excel2lists documentation.
Property Configuration
Decide whether a property can have multiple values or is a required field. Nothing can be saved or imported if there is no value for a required property.
Retrieving and Uploading Data Models
Retrieve the data model you created locally (assuming 0750 is the shortcode — replace my-data-model with your chosen name):
dsp-tools get -P 0750 my-data-model.json
For other commands to interact with a server, see the data model CLI documentation.
The data model editor does not yet have the capability to add mappings to reference ontologies such as dcterms, schema, skos, or cidoc-crm. These must be added manually in the JSON file.
Once you have a data model locally, you can upload it to your local DSP stack. Note that there can only be one data model with the same shortcode at a time:
dsp-tools create my-data-model.json
Stopping the Stack
To close the stack and remove everything:
dsp-tools stop-stack