This Repository is used to create Baserow tables for creating ARCHE Metadata. It creates the following tables:
- Classes (All available vocabs:ARCHE classes like: Project, TopCollection, Collection, etc.)
- Properties (All available vocabs:ARCHE properties like: hasTitle, hasDescription, etc.)
- Vocabs (All available vocabularies from vocabs.acdh.oeaw.ac.at.)
- Project (A table linked to all other tables for creating ARCHE constants project metadata.)
- Persons (A table for creating ARCHE constants person metadata.)
- Organizations (A table for creating ARCHE constants organization metadata.)
- Places (A table for creating ARCHE constants places metadata.)
- Login to Baserow and create a new workspace for a project. In this workspace, create a new database and note the database ID.
- Then create a new API token in Baserow.
- Fork this repository and add the API token to the secrets of the Github repository as
BASEROW_TOKEN
. - Add more secrets for the user as
BASEROW_USER
and password asBASEROW_PW
. - Trigger the workflow manually. This will require the input of the Baserow Database ID you want to use.
- Requires the same Github secrets as above.
- Trigger the workflow manually. This will require the input of the Baserow Database ID you want to use and the ARCHE project Name = TopCollection name in format
my-project-identifier
.
Make sure enviroment variables are set for Baserow (see .secret.example
):
BASEROW_USER
(Baserow username)BASEROW_PW
(Baserow password)BASEROW_TOKEN
(Baserow API token)BASEROW_DB_ID
(Baserow Database ID)
Then run the following commands:
python -m venv venv # create a virtual environment
source venv/bin/activate # activate the virtual environment
pip install -r requirements.txt # install python dependencies
python scripts/arche2json.py # create json files from ARCHE Schema
python scripts/vocabs2json.py # create json files from vocabs.acdh.oeaw.ac.at
python scripts/arche2baserow.py # upload json files to baserow to create tables
- Requires the same environment variables as above.
- Additional environment variable:
PROJECT_NAME
(ARCHE project Name = TopCollection name in formatmy-project-identifier
)
Then run the following commands:
python -m venv venv # create a virtual environment
source venv/bin/activate # activate the virtual environment
pip install -r requirements.txt # install python dependencies
python scripts/baserow_dump.py # fetch data from baserow and denormalized it
python scripts/arche_constants.py # create ttl file from denormalized data
── RDF
└── arche_constants.ttl