Page tree
Skip to end of metadata
Go to start of metadata

The Vitro-based editing tool ("VitroLib") extends Vitro, the open source ontology and instance editor that provides the ontology-agnostic semantic application underpinning VIVO, the researcher profiling system.  VitroLib generates content display and content editing interfaces based on BIBFRAME, Bibliotek-o which extends BIBFRAME, and related ontologies. Like VIVO, VitroLib is a full-scale application built on top of the Vitro core, but customized for original cataloging in RDF. 

We used the VitroLib prototype to experiment with cataloging in linked data using the Afrika Bambaataa Collection at Cornell and also set up instances for use in the ARM workshop and to implement ArtFrame-specific metadata application profiles.

What is Vitro?

Vitro is a general-purpose web-based ontology and instance editor with customizable public browsing. Vitro was originally developed at Cornell University, and is used as the core of the popular research and scholarship portal, VIVO. Vitro is an integrated ontology editor and semantic web application implemented as a Java web application that runs in a Tomcat servlet container. With Vitro, you can: create or load ontologies in the Web Ontology Language (OWL) format; edit instances and relationships; build a public web site to display your data; and search your data with Apache Solr.

How does VitroLib extend or customize Vitro?

Similar to how VIVO adds VIVO ontology-specific customizations for information display and entry, VitroLib adds customizations for the display and addition of BIBFRAME and related ontology information.  Being ontology-agnostic, Vitro can support the display and editing of BIBFRAME data, but we opted to explore more usable design that could support catalogers in their workflow than that provided by Vitro which is better suited for an audience that has greater familiarity with ontology editing tools.  Furthermore, we refactored code responsible for integrating vocabulary lookups from VIVO into the Vitro layer and wrote implementations for looking up Questioning Authority sources. We also explored how to enable more client-side configuration of property-specific customizations.

Development and Design Process

The design and development of the VitroLib prototype was a collaborative effort that spanned multiple institutions and roles.  Early on, we recognized the need for using a user-centered design approach to understand how catalogers approach their tasks and how to support those tasks using a new underlying model and a new interface.  We were fortunate in being able to tap into cataloger knowledge using multiple approaches from informal conversations, focused meetings, usability evaluations, and hands-on experiments with the prototype.  We'd like to thank all the catalogers who participated in meetings or usability evaluations including the catalogers at Cornell, Harvard, Princeton, Columbia, and Stanford.  Thanks also to all those who attended our VitroLib conference calls. The sections below include links to more information about the process and lessons learned from our iterative approach to design.

The development process of VitroLib focused on creating custom editing and display interfaces using Vitro's built-in RDF editing and management processes.  We quickly realized that much customization would be needed and focused the initial part of our development process on enabling client-side configuration of custom editing forms (where Vitro traditionally uses server-side configuration).  We uses this streamlined approach to generate all the custom editing forms used in the prototype.  In addition, for the HipHop collection, we relied on feedback from Cornell catalogers to identify core fields that could be used in the initial work/instance/item creation form.  When the opportunity to specify how the ontology should actually behave arrived in the form of SHACL metadata application profiles, we constructed a process for querying and translating those profiles into VitroLib configuration for display and editing.  Further details on the streamlined customizations and SHACL translation can be found linked in the sections below.

Setup and Installation

The GitHub code repository is available here: Github code repository . A series of VitroLib tutorials are available on YouTube which cover setup and installation and Vitro features that are available in VitroLib.  Some additional details are available here.

Architectural Overview and Customizations

VitroLib development included streamlining of custom forms as well as integrating Questioning Authority lookups and experiments with Linked Data Notifications.  An overview of the architecture and these customizations is included here.

Usability and User Experience: Lessons Learned

Certain higher level patterns emerged from cataloger feedback and the usability testing we conducted.  These lessons are discussed here.

Walking through the UI

Screenshots showing an example of using VitroLib to create a new work, instance, and item are included here.

VitroLib and SHACL

Our work for translating SHACL into VitroLib configuration is discussed here.

Harvard's use of VitroLib for FGDC and HFA

Related publications and presentations

Here is a list of VitroLib-related presentations. 

Publications and presentations related to LD4L-Labs can be found here.





  • No labels