Skip to end of metadata
Go to start of metadata

The vivo.xml (called vivo.model.xml in harvester 1.2 and above) file outlines your vivo configuration. There are several values needing to be set in this file in order for the harvester to harvest into your vivo instance. Most of the is the same parameters that must be passed to the JDBC connector which is utilized to create the connection. The file itself is located in config/models/vivo.xml relative to your harvester base directory.



You have the choice of four options, and should set according to your VIVO database layout:
TDB, SDB, FILE, and RDB. Since version 1.2 VIVO is using SDB by default.

TDB is a non-transactional, faster database solution for use by a single system. It scales well beyond SDB and is simpler to setup. The harvester uses TDB for local temp models.

SDB is a system that uses relational databases for storage of RDF and OWL. It supports many open source and commercial databases including MySQL, PostgreSQL, Oracle 11g, Microsoft SQL server and IBM DB2. It scales to graphs of 100 million triples.

FILE is an xml file that contains data about triples in RDF format.

RDB is a legacy database which supports persistent storage of RDF data in relational databases. It is deprecated.

For more information feel free to check out Jena's website on sources. SDB Store


This parameter is only required for SDB databases. Is should not be entered for RDB. This specifies the layout type of the SDB database. VIVO uses layout2 by default. These layouts are from the JENA library.


This parameter is only required for TDB databases.It indicates the directory location to store the TDB model.


This parameter is only required for FILE databases. It indicates the directory location of the rdf data.


This is where the db driver is specified, should be a jdbc driver like: com.mysql.jdbc.Driver


Specify database type, for example MySQL, H2


The JDBC connection string including port and database name


The username to use for the JDBC connection


The password to use for the JDBC connection


This needs to be the same as defined in your file for your vivo. Should be similar to something like this:


This should be the main vivo model. Since versoin 0.9, vivo is using the as the default model name

Example file

<?xml version="1.0" encoding="UTF-8"?>
  <Param name="type">rdb</Param>
  <Param name="dbClass">com.mysql.jdbc.Driver</Param>
  <Param name="dbType">MySQL</Param>
  <Param name="dbUrl">jdbc:mysql://</Param>
  <Param name="modelName"></Param>
  <Param name="dbUser">USERNAME</Param>
  <Param name="dbPass">PASSWORD</Param>
  <Param name="namespace"></Param>
  <!-- The default name space for UF "", Make sure it matches the -->

Note: The example does not need a dbLayout parameter due to the fact that it is rdb and not sdb.