# FAQ¶

Where does the name “OWLIM” (the former GraphDB name) come from?
The name originally came from the term “OWL In Memory” and was fitting for what later became OWLIM-Lite. However, OWLIM-SE used a transactional, index-based file-storage layer where “In Memory” was no longer appropriate. Nevertheless, the name stuck and it was rarely asked where it came from.
What kind of SPARQL compliance is supported?

All GraphDB editions support:

What are the advantages of using solid-state drives as opposed to hard-disk drives?

We recommend using enterprise grade SSDs whenever possible as they provide a significantly faster database performance compared to hard-disk drives.

Unlike relational databases, a semantic database needs to compute the inferred closure for inserted and deleted statements. This involves making highly unpredictable joins using statements anywhere in its indices. Despite utilising paging structures as best as possible, a large number of disk seeks can be expected and SSDs perform far better than HDDs in such a task.

How to find out the exact version number of GraphDB?

The major/minor version and build number are part of the GraphDB distribution .zip file name. The embedded owlim .jar file has the major and minor version numbers appended.

In addition, at start up, GraphDB logs the full version number in an INFO logger message, e.g., [INFO ] 2016-04-13 10:53:35,056 [http-nio-7200-exec-8 | c.o.t.f.GraphDBFreeSchemaRepository] Version: 7.0, revision: -2065913377.

The following DESCRIBE query:

DESCRIBE <http://www.ontotext.com/SYSINFO> FROM <http://www.ontotext.com/SYSINFO>


returns pseudo-triples providing information on various GraphDB states, including the number of triples (total and explicit), storage space (used and free), commits (total and if one is in progress), the repository signature, and the build number of the software.

How to retrieve repository configurations from the RDF4J SYSTEM repository?

When using a LocalRepositoryManager, RDF4J stores the configuration data for repositories in its own SYSTEM repository. A Tomcat instance does the same and there is SYSTEM under the list of repositories that the instance manages.

To see what configuration data is stored in a GraphDB repository, connect to the SYSTEM repository and execute the following query:

PREFIX sys:  <http://www.openrdf.org/config/repository#>
PREFIX sail: <http://www.openrdf.org/config/repository/sail#>

select ?id ?type ?param ?value
where {
?rep sys:repositoryID ?id .
?rep sys:repositoryImpl ?delegate .
?delegate sys:delegate ?impl .
?impl sys:repositoryType ?type .
optional {
?impl sail:sailImpl ?sail .
?sail ?param ?value .
}
# FILTER( ?id = "specific_repository_id" ) .
}
ORDER BY ?id ?param


This will return the repository ID and type, followed by name-value pairs of configuration data for SAIL repositories, including the SAIL type - owlimClusterWorker:Sail for GraphDB.

If you uncomment the FILTER clause, you can substitute a repository ID to get the configuration just for that repository.

Why can’t I use my custom rule file (.pie) - an exception occurred?
To use custom rule files, GraphDB must be running in a JVM that has access to the Java compiler. The easiest way to do this is to use the Java runtime from a Java Development Kit (JDK).
Why can’t I delete a repository?

RDF4J keeps all repositories in the SYSTEM repository and sometimes you will not be able to initialise the repository, so you cannot delete it. You can execute the following query to remove the repository from SYSTEM.

PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX sys: <http://www.openrdf.org/config/repository#>

delete {
?g rdf:type sys:RepositoryContext .
} where {
graph ?g {
?s sys:repositoryID "repositoryID" .
}

?g rdf:type sys:RepositoryContext .
}


Change the repositoryID literal as needed. This removes the statement that makes the context a repository context. Configuration for the repository will be kept intact as well as the data in the storage.