Skip to content

Vocabulary definition for the European Union Agency for Railways

License

Notifications You must be signed in to change notification settings

julianrojas87/era-vocabulary

Repository files navigation

era-vocabulary

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/

Run WITH Docker

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:

  1. Make sure to have a recent version of Docker installed.

  2. Build the Docker image:

    docker build -t era-vocabulary ./
  3. 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.

Deploy WITHOUT Docker

To directly build this application you need to install first:

Then follow the next steps:

  1. Clone this repository:

    git clone https://github.com/julianrojas87/era-vocabulary.git
  2. 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 in public/:

    cd public
    rm -rf *

    Now continue to the next step.

  3. Generate the Widoco documentation:

    ./generate-docs.sh

    The resulting sources will be placed in the public/doc folder.

  4. Publish the Web page. In this example we use Node.js's npx utility and http-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.

See also

  1. Data mappings for generating the ERA Knowledge Graph, defined using the RML mapping language.
  2. SPARQL query interface for the ERA Knowledge Graph.
  3. TPF query interface for the ERA Knowledge Graph, based on the Linked Data Fragments approach and powered by Comunica.

Issues

We welcome issues and enhancement requests that follow these guidelines:

  1. 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.
  2. Please label your issues using the corresponding version tag. For example, using the label v0.9.0.

Contributing

For contributions we follow the "fork-and-pull" Git workflow:

  1. Fork this repository on GitHub.
  2. Clone the project in your local machine.
  3. Commit the changes to your own branch.
  4. Push your changes back up to your own fork.
  5. 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.