Repository Configuration Template - How It Works¶
The diagram below provides an illustration of an RDF graph that describes a repository configuration:

Often, it is helpful to ensure that a repository starts with a
predefined set of RDF statements - usually one or more schema graphs.
This is possible by using the graphdb:imports
property. After start-up,
these files are parsed and their contents are permanently added to the repository.
In short, the configuration is an RDF graph, where the root node is of
rdf:type rep:Repository
, and it must be connected through the
rep:RepositoryID
property to a Literal that contains the human
readable name of the repository. The root node must be connected via the
rep:repositoryImpl
property to a node that describes the
configuration.
- GraphDB repository
The type of the repository is defined via the
rep:repositoryType
property and its value must begraphdb:SailRepository
to let RDF4J know what the desired Sail repository implementation is. Then, a node that specifies the Sail implementation to be instantiated must be connected through thesr:sailImpl
property. To instantiate GraphDB, this last node must have a propertysail:sailType
with the valuegraphdb:Sail
- the RDF4J framework will locate the correctSailFactory
within the applicationclasspath
that will be used to instantiate the Java implementation class.
The namespaces corresponding to the prefixes used in the above paragraph are as follows:
rep: <http://www.openrdf.org/config/repository#>
sr: <http://www.openrdf.org/config/repository/sail#>
sail: <http://www.openrdf.org/config/sail#>
graphdb: <http://www.ontotext.com/trree/graphdb#>
All properties used to specify the GraphDB configuration parameters use the
graphdb:
prefix and the local names match up with the configuration parameters, e.g., the value of the
ruleset
parameter can be specified using the
graphdb:ruleset
property.