We use sheet2rdf and OntoStack to create and serve ROCK-N-ROLL control vocabulary.
This repository hosts automatic workflow, executed by means of Github actions, and underlying shell and python scripts which:
- Fetches Google Sheet from Google Drive and stores is at
xlsxandcsvfiles - Converts fetched sheet to machine-actionable and FAIR RDF vocabulary using xls2rdf
- Tests the resulting RDF vocabulary using qSKOS
- Commits conversion results and tests logs to this repository
- and deploy RDF vocabulary to OntoStack to be served to humans and machines
This workflow is an extension of excel2rdf.
OntoStack is a set of orchestrated micro-services configured and interfaced such that they can intake vocabularies and resolve their terms and RDF properties upon requests either by humans or machines.
Some of OntoStack micro-services are:
- Jena Fuseki a graph database
- SKOSMOS a web-based SKOS browser acting as a front-end for the vocabularies persisted by the graph database
- Træfik an edge router responsible for proper serving of URL requests
In case you want to use sheet2rdf in your own work you need to:
-
Follow gsheets Quickstart and generate client_secrets.json and storage.json
-
Create following Github secrets:
- DB_USER: user name of Jena Fuseki user account that has privilages to PUT RDF vocabulary to the database
- DB_PASS: password of for the above account
- FILE_NAME: file name that will be used when converting Google sheet to
.ttl(RDF),.xlsx, and.csvfiles. - GRAPH: graph in the database under which the above RDF vocabulary should be stored.
- SHEET_ID: unique ID of the sheet that will be fetched from Google drive.
- SPARQL_ENDPOINT: endpoint to which RDF vocabulary is PUT.
- STORAGE: content of storage.json
- CLIENT: content of client.json
This work is licensed under Apache 2.0 License