Skip to end of metadata
Go to start of metadata
This documentation is NOT for the latest version of GraphDB.

Latest version - GraphDB 7.1

GraphDB Documentation

Next versions

GraphDB 6.2
GraphDB 6.3
GraphDB 6.4
GraphDB 6.5
GraphDB 6.6
GraphDB 7.0
GraphDB 7.1

Previous versions

[OWLIM 5.4]
[OWLIM 5.2]
[OWLIM 5.1]
[OWLIM 5.0]
[OWLIM 4.4]
[OWLIM 4.3]
[OWLIM 4.2]
[OWLIM 4.1]
[OWLIM 4.0]

Semantic Repository for RDF(S) and OWL

Version 6.0

User Guide

Table of Contents


The GraphDB Workbench is a our recommended web-based administration tool. The user interface is similar to the Sesame Workbench webapp, but with more functionality. Here are some of the additional features:

  • Query monitoring with the possibility to kill a long running query
  • Better SPARQL editor based on
  • Connectors administration(only present in the enterprise edition)

Of course GraphDB Workbench can be used to create GraphDB repositories, load and export data, execute SPARQL queries and updates. The user interface is built using the Forest framework ready to use, bug free components.

The GraphDB Workbench can be found in the distribution as a separate war file. The war file can be deployed with the startup script in the distribution or deployed in a dedicated application server.


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

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 if security is enabled

If you start the workbench with -Dsecurity.enabled=true, the first page presented will be the login page. The default administrator account information is:

username: admin
password: root

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.

Index page

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.

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

If we were unable to detect the sesame server(i.e. it is not deployed in the same application server) you will have to connect to the sesame server manually. To do this:

  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 the resources on the external location and do query monitoring
For now there is no possibility to manage the graphdb cluster setup through the workbench even if you add jmx connection parameters
The JMX connection url is of the form

and the remote process should be started to allow remote JMX connections. Something like the 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

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.

Selecting a repository

You can make a repository the default connected repository in the repositories view by clicking the 'connect' button next to a repository

another way(recommended) is to use the dropdown in the top right corner. This will allow you easily change repository while running queries, importing, exporting data in other views.

Loading data into a repository

We provide two ways of importing files in the currently selected repository. Both can be accessed from Data->Import menu item in the workbench

Basic data load

The limitation of this method is that it supports files that are smaller than 50.0 MB.

Loading data from the Upload files tab is a two stage process: the data files are first uploaded to the workbench and from there loaded in to GraphDB:

  1. Click on Select files to upload and browse a file to upload
  2. After the files have been selected, click "Start Upload" for individual files or "Upload All" to load all of them
  3. 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. You will be asked to select a method to load your data:
    1. SPARQL - import the data in the default context without a base url
    2. Advanced - provides more options for the import process

Impex method

The impex method allows you to load files with arbitrary size. It has the limitation that the files must be put(symbolic links are supported) in a specific directory(by default ${user.home}/owlim-impex/. Look at the impex.dir system parameter if you want to tweak the directory location. The directory will be scanned recursively and all files with semantic mime type will be visible in the impex tab.

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

SPARQL 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

The user administration is disabled by default. If you want to enable it, run the workbench with -Dsecurity.enabled=true

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.