Vocabularies Management in GitHub Repository

The controlled vocabularies for the DAWE NRM protocols were originally created and managed in various different spreadsheets on Google Drive. This provided a fast and easy way to produce controlled vocabularies by domain experts who are not familiar with RDF and SKOS.

Now that we have reached a stage where bulk of the vocabularies are in maintenance and refinement, we no longer require the use of spreadsheets. The process of downloading the spreadsheets from Google Drive and transforming them into RDF adds additional burden and complexity that are no longer necessary or beneficial.

The new vocabulary management proposal is to generate the current state of the vocabularies as static RDF Turtle files in the git repository in individual directories and files. This structure will provide easy navigation and maintenance using a traditional software engineering practice with version control systems. Tests in the form of SHACL shapes and Python scripts will automatically run on each Pull Request made to the repository. Each Pull Request will provide an opportunity for each team member to review the changes before merging into the main branch. Any issues related to the vocabularies should be documented as a GitHub Issue.

GitHub Actions (CI/CD) will run tests on each Pull Request. On Each GitHub Release, GitHub Actions will automatically deploy the state of the vocabularies to TERN’s GraphDB and ARDC’s Research Vocabularies Australia (RVA). Versioning will adhere to semver for both GitHub releases and also releases to RVA.

Vocabularies review process

Domain experts will be able to easily review the controlled vocabularies once everything is in GitHub. A domain expert can view, browse and review the controlled vocabularies via TERN’s http://linkeddata.tern.org.au website and for each item, there will be a direct link to the file in the GitHub repository. A domain expert will be able to edit the vocabulary directly using GitHub’s user-interface, create a new pull request and submit it for review.

Example: Propose changes by creating a PR directly from the GitHub user-interface

 

We at TERN acknowledge the Traditional Owners and Custodians throughout Australia, New Zealand and all nations.
We honour their profound connections to land, water, biodiversity and
culture and pay our respects to their Elders past, present and emerging.

TERN is supported by the Australian Government through the National Collaborative Research Infrastructure Strategy, NCRIS.