VocBench Developers Manual

This section provides detailed information for people interested in developing extensions for VocBench or even in modifying the core system. Currently, it contains generic information about the architecture of the system. We will add more details soon.

Building VocBench

VB3 is under active development. Everything related to building the platform is written in the README of the VocBench3 and Semantic Turkey projects. We will copy all the information here after the stable system has been released


VocBench Architecture

The architecture  of VocBench has been designed by following a three-tier approach.


The presentation layer of VocBench 3 is represented by the VB3 web application, built on Angular

Middle Layer: Business Logic

Requests from the VB3 web application are sent to Semantic Turkey, the RDF Data Management platform powering VocBench. Semantic Turkey offers services for RDF Manipulation (with abstractions for OWL ontologies and SKOS thesauri), User Management and Authentication, Project Management etc... platform powering VocBench. More details about its architecture can be found in the development page of that project.

Data Access

Semantic Turkey bases its RDF services on the Eclipse RDF4J framework. The Data Manager component of Semantic Turkey provides high level facilities for management of imports, metadata, etc.. on top of the RDF4J framework. Access to different triple stores is possible, providing that they are capable of supporting RDF4J remote connections and, in case history/validation support is necessary, they implement RDF4J's Sail Stack mechanism


VB3 logs information both server and client side

For ST server logs, pls refer to the documentation of Semantic Turkey.

The logs of the VocBench web application can instead be inspected through the client browser, by activating the console (e.g. CTRL+SHIFT+J on Chrome)

Settings and Preference Management

VB3 distinguishes the following properties:

Settings and Preferences have also defaults that can be set at various levels. For instance, a user can set the default value for a given preference for all projects, so that if that preference is not set for a given project, the default will be applied. Project Managers can also set default project preferences for their managed projects, so that if no preference is set by the user, the project default preference applies

Currently, VocBench 3 offers a preferences page from the user menu (activated from the user icon, topmost-right part of the screen). The settings are instead sparse across the application or through the Project Management pages.

In the future, pages for setting defaults for both system/project settings and preferences will be made available to users. However, it is now possible to set these defaults by editing the Semantic Turkey property files, as specified in the properties section of the ST manual