iseal-core/README-dev.md

1.4 KiB

Technical Documentation

This document provides technical information about various workflows related to updating and editing the schema and documentation site.

About This Project

The ISEAL Core Metadata Set is maintained primarily in CSV format. This decision was made to maintain a balance between being human and machine readable. Currently the project consists of:

  • The ISEAL Core Metadata Set, which lives in data/iseal-core.csv
  • The FSC® extension, which lives in data/fsc.csv

From the CSV we use a series of Python scripts to create the RDF (TTL) representations of the schema as well as the HTML documentation site. All of this is automated using GitHub Actions (see .github/workflows) whenever there is a new commit in the repository.

General Requirements

  • Python 3.8+
  • Node.js 12+ and NPM

Python Setup

Create a Python virtual environment and install the requirements:

$ python3 -m venv virtualenv
$ source virtualenv/bin/activate
$ pip install -r requirements.txt

Then run the utility scripts to parse the schemas:

$ ./util/generate-hugo-content.py -i ./data/iseal-core.csv --clean -d
$ ./util/generate-hugo-content.py -i data/fsc.csv -d

Node.js Setup

To generate the HTML documentation site:

$ cd site
$ npm install
$ npm run build