Skip to end of metadata
Go to start of metadata
You are viewing an old version of this page. View the current version. Compare with Current  |   View Page History

Semantic Repository for RDF(S) and OWL

Version 6.0

User Guide

Table of Contents


The GraphDB Workbench is a stand-alone GraphDB server with a built-in web-based administration tool. The user interface is similar to the Sesame Workbench webapp, but with more functionality, most importantly in the area of security and user access roles. Unlike Sesame, where separate server and workbench webapps are deployed, the GraphDB Workbench is a fully functional GraphDB server with a SPARQL endpoint.

The GraphDB Workbench can be used to create GraphDB repositories, load and export data, execute SPARQL queries and updates, manage user accounts and control user access roles. The user interface is built using the Forest framework which provides syntax highlighting for SPARQL and other benefits.

The GraphDB Workbench is distributed in several forms, firstly as an executable 'jar' file so that it can be run without any dependency on Tomcat or any other servlet container/application server. It is also packaged as a 'war' file so that it can be deployed alongside other webapps in a servlet container.


Java: JRE 1.7 or higher (JDK 1.7 or higher if using custom rule sets)
Tomcat: Version 7 or higher if deployed as a 'war' file

Contents of the distribution

The GraphDB Workbench comes as a separate war file in the zip distribution and is started by default from the startup scripts. The existing means of deploying GraphDB-SE as described in the [installation section for that distribution] remains unchanged.

Installation, start-up and shutdown

To run the GraphDB Workbench as a standalone server, unzip the distribution zip file and execute the script.
For Mac the command line is:

You can also start the workbench by running the line:

These methods of deployment use an embedded tomcat server which will deploy the war files in sesame_graphdb directory. The GraphDB Workbench is accessed and administered using a web browser. If located on the same machine, use a URL such as the following (assuming the default port number):


When deployed as a 'war' file, the procedure is the same as deploying any other Web application, i.e. the graphdb-workbench-x.y.z.war file must be copied to the servlet container's webapps directory. In order to access the GraphDB Workbench use a browser with a URL similar to the following:


Shutting down the workbench if you are using the embedded tomcat method can be done with Ctrl-c in the console. If started in a servlet container use the appropriate tools, e.g. with Tomcat then the Tomcat server can be stopped or an individual Web application unloaded using the HTML manager tool.

Login and status

After starting, the first page presented will be the login page. The default administrator account information is:

username: admin
password: root

After logging in, the summary page is displayed that shows: version number, license details, currently selected repository (if any) and user name. If no repository is currently selected then the message 'Please select a repository' is displayed. Click this to get to the repository management page.

Changing password

You are recommended to change the root password as soon as you login for the first time. Go to Admin->Users and choose Edit next to your username. Then change your password. See section User administration in the current document.

Invalid GraphDB License

In order to run the GraphDB Workbench application, you need a valid GraphDB license. By default there is an evaluation license included in the distribution but in case you found out that your license had expired, you have to write to Ontotext for a new one. Once obtained, the recommended way of specifying it is with a java system parameter. Just add the following parameter

to the java process that is responsible for the workbench deployment(tomcat's file or our script). Look at How to setup graphdb license for other methods.

Managing repositories

The repository management page is accessed using the menu bar Admin->Repositories. This will display a list of available repositories and their locations as well as the permissions that the logged on user has for each repository.

Adding a location

Before you add a repository to the application, you have to define the location where you want the repository to be added. To do this, a location must be entered for identifying the GraphDB Workbench instance (or directory on the current machine):

  1. From admin-repositories click on "Add Location"
  2. Enter the URL to a sesame location
  3. Optionally specify credentials for the sesame location(user and password)
  4. Optionally add JMX Connection parameters(url and credentials) - this allows you to monitor and manage JMX features of the remote sesame/graphdb location
The JMX connection url is of the form

and the remote process should be started to allow remote JMX connections. Something like hte following should work

It is possible to use the current interface for creating and accessing a repository on another GraphDB Workbench instance (on another machine) or at a different location on the same machine.

Adding a repository

A GraphDB Workbench instance always has at least two repositories: the SYSTEM repository that holds the Sesame repository configurations and the security repository that holds user accounts and access rights. They are not visible in the Repositories window.
To create a new repository, click 'add repository'. This will display the configuration page for the new repository where a new, unique ID must be entered. The rest of the parameters are described in the [OWLIM-SE configuration section] of the OWLIM v54 documentation.

A repository can be selected, i.e. made 'current' by clicking the 'connect' button next to a repository. Subsequent import, export and query evaluation functions will operate against this repository.

Loading data into a repository

After creating and connecting to a repository the following steps can be used to load data. Note that loading data is a two stage process: the data files are first loaded to the server and from there loaded in to GraphDB:

  1. Pick a repository to work with from "Repositories in selected location" list and click "Connect"
  2. Some text on the top of the screen will say "Current repository is REPOSITORY_NAME, located in LOCATION_PATH"
  3. To load data use the menu bar DATA->Import and choose a file (.rdf, .n3, .nt, .trig, and .trix) - as each file is selected it is added to the list in this page. The files you want to load should be stored in a folder, called "owlim-impex" in your computer home directory - HOME/owlim-impex. The Max file size is 50.0 MB.
  4. After the files have been selected, click "Start Upload" for individual files or "Upload All" to load all of them
  5. When the upload is finished a "Load Data" button will appear for each successfully uploaded file. Press this to load files individually or use the "Load All" button for multiple files. After loading a message is displayed with a link to the query page.

If you want to load a large amount of data, one solution would be to convert the RDF data into a line-based RDF format (e.g. N-triples) and then split it into many smaller files (e.g. using the unix command 'split'). This would allow each file to be uploaded separately using either the console or the workbench application.

Executing queries

Access the SPARQL pages using the menu bar SPARQL->Query. Above the query editing text area а query template can be accessed and selected. Clicking on it will populate the text-area with a SPARQL query that can be edited in place. The query can be freely edited (with syntax highlighting) and namespaces can be added very easily by accessing the list of known namespaces next to the query template.

A check-box is provided that allows the execution of the query over all RDF statements or just explicit statements. Another check-box controls whether equivalent URIs are expanded. This relates to the use of owl:sameAs and causes the automatic addition of the pseudo-graph FROM <> to the query. This is described in the [special query behaviour section of the OWLIM v54 user guide].

The query is executed by clicking the 'Submit' button, where the results are presented in the results page.

Results page

The results page will show the response for your query:

From the results page it is possible to download results as JSON, XML, CSV, or TSV. It is also possible to provide an alternative view of query results by 'viewing as exhibit'. This allows the results to be sorted on each column and provides a summary of values found in each column.

Executing updates

SPARQL updates can be executed from the update page by accessing the menu bar SPARQL->Update. This behaves in a similar way to the query page, except that different templates are available for inserting and deleting statements, as well as loading and dropping named graphs. After executing an update the page is updated with a message about the success of the update, but no results page is shown.

Also similar to the query page, namespaces can easily be added to the query by accessing the list of known namespaces from the list about the text-area.

Example: deleting all triples from the default graph. Copy the following statement and run it from the update page:

DELETE { ?s ?p ?o }
WHERE { ?s ?p ?o }

You can see the result of an update above the text-area.

Exporting data

Data can be exported in several ways and formats.

Exporting repository or graphs

From the menu bar select DATA->Export and the data export page will provide options for exporting the whole repository (in several different formats) or specific named graphs (in the same variety of formats). Just click the appropriate format and the download will begin:


Exporting query results

SPRQL query results can be exported to JSON, XML, CSV, or TSV from the query results page:

Exporting resources

From the resource description page, it is possible to export the RDF triples that make up the resource description to JSON, JSON-LD, RDF-XML, N3/Turtle and N-Triples:

Adding new resource

To add new resource to the repository go to DATA->Add new resource. It opens a window, where you write the URI of this new resource. Then you can add, change or delete the properties of this new resource.

When you are ready you save the new resource to the repository.

Changing a resource

You can also change the properties of an already stored resource. Click on the Edit button next to the resource namespace. Then you can add, change or delete the properties of this resource.

Note that you can not change or delete the inferred statements. For more information, see the [FAQ section] of the GraphDB v54 documentation.

User administration

User management is accessed from the menu bar ADMIN->Users. This page displays a list of users and the number of repositories they have access to. It is also possible to disable security for the entire GraphDB Workbench instance by clicking the 'disable/enable' button, i.e. all users (even anonymous ones) have read/write access to all repositories.

Clicking 'create new user' or 'edit' allows a user's properties to be edited.

This includes setting their role and the read/write permission to each repository. The password can also be changed here. ANd there is also an option to delete a user.

User Roles are:

  • User - user that can read and write according to his permissions for each repository.
  • Admin - user with full access including creating, editing, deleting users.
  • Information Extraction Expert - user with access only to add new resource page.
  • Search Configuration Expert - user user with full access, except for Repositories and Users management.


In addition to the standard GraphDB command line parameters, the GraphDB Workbench can be controlled with additional parameters as follows. These should be of this form -Dparam=value

Parameter Default Description
app.cors.enable false enable cross-origin resource sharing true control the display of build date and revision
app.maxConnections 15 set the maximum number of concurrent connections to an owlim instance
impex.dir ${user.home}/owlim-impex/ change the location of the file import folder
jetty.port 8080 set the jetty port <none> connect to the specified location for repositories
resource.language 'en' (English) set the default language with which to filter results displayed in resource exploration
resource.limit 100 set the limit for the number of statements displayed in the resource view page
security.enabled true enable/disable security
sparql.limit 100 set the limit for the number of rows of SPARQL query results displayed in the query results page
sparql.equivalence false enable result expansion over equivalent URIs for SPARQL queries when using the query page
Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.