This documentation covers the latest release of VIVO, version 1.10.x.
If you are able to help contribute to this documentation, please contact
sysadmin at duraspace dot org
Looking for another version? See all documentation.
VIVO represents data as triples. All data is represented and stored in the form subject, predicate, object. All entities are identified by URI. The W3C has developed standards for RDF (Resource Description Framework) for such representations and for various serializations of RDF, including Turtle. If you are unfamiliar with this method for data representation, see the references. A typical VIVO for a large research institution could have well over 10 million triples. The triples are defined using an ontology. The ontology is described here: Ontology Reference Understanding which triples are needed for an analysis can be challenging. The VIVO community is here to help. Questions regarding data and data extraction using the techniques below can be posted to one of the VIVO Google Groups. You may also wish to contact the VIVO providers at your institution who may be able to help with some of the technologies involved.
To get rectangles of data, use SPARQL queries. SPARQL is a simple query language designed for use with triple stores. Use of SPARQL is described here: SPARQL Queries
The entire triple store can be unloaded for use in a local triple store, and for local query. This is recommended for sites wishing to make repeated analyst queries of the data. Community-editions of a triple stores are available with no cost. Stardog is a popular, stable, and free triple store that can be used for this purpose. See http://stardog.com
To unload the triple store to a set of triples, use jena3tools, available here: https://github.com/vivo-project/jenatools
To get data from VIVO on a regular basis, you may wish to work with your VIVO providers to create an API that you can use that will provide required data. The Data Distribution API is designed for this purpose and can be configured to return specified data, including parameterized data via configurable addresses in configurable data formats.
Some applications involve getting data from multiple VIVOs. VIVOs running version 1.10 and above provide a Triple Pattern Fragments endpoint which can be used to rapidly get all triples from a VIVO matching a triple pattern.