This section is for users and system administrators that are unfamiliar with the OWLIM-SE semantic repository software. The information contained in the following pages should be enough to get started with OWLIM-SE, i.e. to install and configure the software so that repository instances can be created and used.
OWLIM-SE is packaged as a Storage and Inference Layer (SAIL) for the Sesame RDF framework. OWLIM-SE can be used in two different ways:
The rest of this section gives detailed step by step instructions for installing and configuring Sesame and OWLIM-SE, leading up to the creation of an OWLIM-SE repository using the Sesame console (a command line script). For more information please check the "doc" folder of the OWLIM-SE distribution zip file.
In most cases, upgrading OWLIM-SE can be achieved simply by replacing the OWLIM and bundled 3rd party jar files. The required version of the Sesame framework for recent OWLIM versions is given in the following table:
Typically, the binary format of the storage files for different versions of BigOWLIM/OWLIM-SE are not compatible. However, storage files created with version 3.1 and upwards will be automatically upgraded when using a later version of OWLIM. However, this is a one-way process and no downgrade facility is provided.
OWLIM will normally be built against the latest version of the Aduna OpenRDF Sesame framework. If using OWLIM with this version then the easiest way to deploy an OWLIM server instance is to copy the re-packaged Sesame Web applications (.war files) in to the Tomcat webapps directory. These can be found in the sesame_owlim directory in the OWLIM distribution ZIP file. These Web applications have been modified as follows:
After deployment, an OWLIM-SE instance can be created using the workbench application as follows:
This longer install process should be used when a different or modified version of Sesame is being used. In this case, all the OWLIM-SE files need to be installed alongside Sesame in a step-by-step process as follows.
A suitable application server must be installed. The examples in this guide assume Apache Tomcat version 6.x is used. Importantly, the user must have sufficient privileges to write to the Tomcat webapps directory and to stop and start the Tomcat daemon.
No part of this guide is intended to supersede the documentation published with these 3rd party software components and the reader is strongly advised to familiarise himself/herself with these.
Assuming that an instance of Tomcat is available, the installation proceeds as follows:
The status of the new repository can be checked using the Sesame workbench. Type the following URL in to a browser:
When running on Fedora linux, Tomcat uses the following directories:
On a machine running Windows, Tomcat uses the following directories:
The Sesame framework is published as a zip file that is installed simply by unzipping it in to the target directory. This directory is called [SESAME_INSTALL] in this guide.
This directory is called [ADUNA_DATA] elsewhere in this guide. It can be overridden by setting a Java system property. When using Tomcat, this can be achieved by setting the JAVA_OPTS environment variable, for example (linux and Windows respectively):
Note that setting this environment variable must be done by the same user that runs the Tomcat server. This may not be the case when using 'sudo' to set up/start Tomcat, for instance when using port numbers below 1024 when it is necessary to run Tomcat with root privileges.
The Sesame server and workbench use logback for logging. The Sesame server logs to:
And the Workbench logs to:
The default log level is INFO, but this can be adjusted after the first run by editing:
There is a note in the Sesame documentation that the simple logging framework for java (slf4j) is used, which implies that a bridge jar for the logging framework OWLIM uses is also required, e.g. SLF4J-to-log4j.jar
This directory will not exist until the Sesame war files have been deployed to the [WEBAPPS] directory AND Tomcat is running. If the war files have been deployed, but the directory does not exist, try restarting Tomcat.
Can not connect the Sesame console to the local Sesame server at http://localhost:8080/openrdf-sesame
Make sure that the Sesame war files have been deployed and that Tomcat is running. Restart Tomcat if necessary.
Make sure that the repository template file [OWLIMSE]/templates/owlim-se.ttl has been copied to the 'templates' subdirectory of the Sesame console's data directory.
The Sesame console can not find the OWLIM-SE jar file. Make sure it was copied from [OWLIMSE]/lib to the Sesame installation folder here: [SESAME]/lib
The Lucene jar file must be copied from the OWLIM-SE distribution to the Sesame server's WEB-INF/lib directory. Restart Tomcat if necessary.
The tools.jar file from the Java Development Kit (JDK) must be on the classpath or alternatively copied to Sesame server's WEB-INF/lib directory.
The maximum heap space must be increased, i.e. Tomcat's Java virtual machine must be allowed to allocate more memory. This can be done by setting the environment variable 'CATALINA_OPTS' to include the desired value, e.g. -Xmx1024m
This section is for users and system administrators that are unfamiliar with the OWLIM-SE Jena adapter. The information contained in the following pages should be enough to get started with this software, i.e. to install and configure an OWLIM-SE repository and access it via the Jena API or Jena compatible tools.
This guide covers installing and configuring the Jena adapter for OWLIM-SE. Required software for this comprises:
No part of this guide is intended to supersede the documentation published with these software components and the reader is strongly advised to familiarise himself/herself with these.
The OWLIM-SE Jena adapter is essentially an implementation of the Jena DatasetGraph interface that provides access to individual triples managed by an OWLIM-SE repository through the Sesame API interfaces.
In this approach, an OWLIM-SE repository is first created and wrapped in a Sesame SailRespository. Then a connection to it is used to instantiate the adapter class SesameDataset. The following example helps to clarify:
and can also be used to evaluate queries through the ARQ engine:
Another approach is to use the Jena assemblers infrastructure to instantiate an OWLIM-SE Jena adapter. For this purpose the required configuration must be stored in some valid RDF serialization format and its contents read into a Jena model. Then the assembler can be invoked to get an instance of the Jena adapter. The following example specifies an adapter instance in N3 format.
The ja:loadClass* statements ensure that the OWLIM-SE Jena adapter factory class file(s) are initialized and plugged into the Jena framework prior to be being invoked. Then #dataset description tells the Jena framework to expect instances of otjena:SesameDataset to be created by this factory. The following example uses such a description stored in the file owlimbridge.n3 to get an instance of the Jena adapter:
After this, the adapter is ready to be used, for example to evaluate some query through the ARQ engine using the same approach described a few paragraphs above.
In order to use a OWLIM-SE repository with the Joseki server one needs only to configure it as a dataset so that the Jena assembler framework is able to instantiate it. An example Joseki configuration file that makes use of such a dataset description could looks like the following. First we describe a service that hosts the dataset:
Then we describe that dataset:
Skip to end of metadata Go to start of metadata