Vocabulary definition for the European Union Agency for Railways. The vocabulary documentation is built using the Widoco toolset.
Online documentation for this vocabulary is available at https://data-interop.era.europa.eu/era-vocabulary/
This application has been dockerized to facilitate its deployment. We use a multi-stage approach to build a container that publishes a build of this Web application via a NGINX instance.
To deploy this container follow these steps:
-
Make sure to have a recent version of Docker installed.
-
Build the Docker image:
docker build -t era-vocabulary ./
-
Start the application:
docker run -p ${PORT}:80 era-vocabulary
Replace
${PORT}
for the TCP port where you want to run the application. Once the container is running you can access these resources:- The vocabulary documentation at
http://localhost:${PORT}/era-vocabulary/index-en.html
. - The reference data at
http://localhost:${PORT}/era-vocabulary/era-skos
.
- The vocabulary documentation at
To directly build this application you need to install first:
Then follow the next steps:
-
Clone this repository:
git clone https://github.com/julianrojas87/era-vocabulary.git
-
Normally the latest built version of the Widoco documentation is already available within the repository in the
public
folder. If you want to deploy this version then skip to step 4, otherwise proceed to delete all the files and folders inpublic/
:cd public rm -rf *
Now continue to the next step.
-
Generate the Widoco documentation:
./generate-docs.sh
The resulting sources will be placed in the
public/doc
folder. -
Publish the Web page. In this example we use Node.js's
npx
utility andhttp-server
for this, but you may choose to publish the static files otherwise (e.g. directly via NGINX).cd public/doc npx http-server --cors -p ${PORT}
Replace
${PORT}
for the TCP port where you want to run the application. Once the application is running you may access the following resources:- The vocabulary documentation at
http://localhost:${PORT}/index-en.html
. - The reference data at
http://localhost:${PORT}/era-skos.ttl
.
- The vocabulary documentation at
- Data mappings for generating the ERA Knowledge Graph, defined using the RML mapping language.
- SPARQL query interface for the ERA Knowledge Graph.
- TPF query interface for the ERA Knowledge Graph, based on the Linked Data Fragments approach and powered by Comunica.
We welcome issues and enhancement requests that follow these guidelines:
- Issues opened in this repository should concern the ERA vocabulary definitions. For issues related to the ERA Knowledge Graph, please refer to the data mappings repository.
- Please label your issues using the corresponding version tag. For example, using the label
v0.9.0
.
For contributions we follow the "fork-and-pull" Git workflow:
- Fork this repository on GitHub.
- Clone the project in your local machine.
- Commit the changes to your own branch.
- Push your changes back up to your own fork.
- Submit a Pull request to the dev branch so we can review your changes.
NOTE: Make sure to merge the latest "upstream" version before submitting a pull request.