Gruff: A Grapher-Based Triple-Store Browser for AllegroGraph

"Thanks for writing Gruff - I had just about made the decision to write my own RDF browser and then I found out about Gruff! Gruff is far better and easier to use than anything out there." - M.H., a commercial user

Introduction

The free-form nature of triple-stores offers a lot of flexibility for constructing databases, but that freedom can also make it less obvious how to find arbitrary data for retrieval, error-checking, or general browsing. Gruff is a freely downloadable graphical triple-store browser that attempts to make data retrieval more pleasant and powerful with a variety of tools for laying out cyclical graphs, displaying tables of properties, managing queries, and building queries as visual diagrams.

Use gruff to display visual graphs of subsets of a store's resources and their links. By selecting particular resources and predicates, you can build a visual graph that displays a variety of the relationships in a triple-store. Gruff can also display tables of all properties of selected resources or generate tables with SPARQL queries, and resources in the tables can be added to the visual graph.

New Gruff Features

The paragraphs below describe select features of the latest versions of Gruff. For a complete listing of the new features, see the Release History

New in Version 4: Outline View

There is a new outline view for browsing and editing linked nodes as an indented outline. It is especially useful for viewing hierarchies of nodes such as those using rdfs:subClassOf or skos:narrower predicates, and editing them by shifting nodes around (perhaps while adding new nodes as well). See this tutorial for Building a Hierarchy from Scratch in the Outline View.


Store Editing for Creating and Deleting Triples

See the various commands on the new Edit pull-down menu and on the new right-click pop-up menu in the table view. A property value in the table view can be edited in place or replaced with an existing node that you select in one of several ways. You can create or edit an object "by type", where Gruff will add suggested rows to the table for predicates that other objects of the same type have, and for predicates that define that type as their domain or range. Edits can be undone and redone.

RDFa - Capture From Websites

From Wikipedia: RDFa (or Resource Description Framework - in - attributes) is a W3C Recommendation that adds a set of attribute level extensions to XHTML for embedding rich metadata within Web documents.

New in Gruff is the ability to Load Triples by Extracting Triples from RDFa. With a triple store open, you enter the URI of the web page that holds the triples in RDFa format. You can optionally specify the Named Graph to load the triples into, or use the default graph. You can then display the triples in this version of Gruff.

RDFa Capture Screenshots

Information being extracted from http://www.franz.com.

For a complete listing of the new features in Gruff, see the Release History

Graphical Query View

The View menu has a new Graphical Query View command to switch to the new view (shortcut is E). In this new view you mainly use pop-up menus rather than menu bar commands, by right-clicking the background, nodes, and link lines to see their various context-sensitive menus.

The Graphical Query View allows creating queries as diagrams of nodes and links. A query diagram can include actual objects from the store, which you select as in other views, while other nodes and links represent query variables. Group graph patterns such as UNION and OPTIONAL groups can be laid out as grouper boxes that can be nested to any level, with proper nesting maintained automatically.

Once you've created a query diagram, Gruff will generate either SPARQL or Prolog code for the query. Seeing the generated query text can help you learn to write SPARQL or Prolog queries better. You can also edit the generated text before performing the query. You can save queries either as graphical diagrams or as actual query text, and load them any time later for modification into related queries. You can even generate a visual graph from query results, showing the network of all triples that are comprised of nodes and predicates that are in the query results and the query itself.

Graphical Query View Demonstration

The demonstration video is also available in .wmv format here.

Features

Gruff is an interactive triple-store browser, query manager, and editor that is built on AllegroGraph. Information can be browsed as visual graphs of nodes and link lines that are layed out automatically, and also as tables of properties for particular nodes. Queries can be written textually as SPARQL or Prolog code, or designed graphically as diagrams of nodes and link lines. Data can be created and edited by filling in tables of property values. The various views and tools are tightly integrated to facility rapid browsing, querying, and editing.

The graph view displays a "visual graph" of a subset of the nodes and links that are in the store that you are currently browsing. The nodes are automatically arranged (or "layed out") to make the relationships readable. The layout algorithm specializes in cyclic graphs that are common in triple-stores, which often express many relationships between various objects. The algorithm avoids link lines that pass through unrelated nodes, so that it is easy to spot all of the nodes that are linked with any other node. A node in the graph view is a labeled box that represents a resource or literal in the store. A link is a straight line segment between two nodes that represents one or more of the triples that link those nodes.

The table view displays a table of all of the properties of a single node, which is known as "the displayed node". You can browse from that node to linked nodes in the usual hyperlink way, and edit the property values. Each row of the table represents a single triple that's in the store.

The query view displays a view where you can do a SPARQL or Prolog query and see the results in a table. Nodes in the results table can then be viewed in detail in the table view, or added as nodes to the graph view. To do a query, first decide whether you want to do a SPARQL query or a Prolog query, and select the corresponding radio button at the upper left.

The graphical query view allows devising a query "visually" as a diagram. This is done by arranging node boxes and link lines that represent triple patterns in the query, where the triples patterns can contain variables as well as actual objects that are in the store. A hierarchy of group graph patterns can also be specified be wrapping nested grouper boxes around sets of nodes. General and specialized filters can be specified as well. A SPARQL or Prolog query can then be automatically generated from the diagram and executed as usual in the query view.

Gruff can also be used programmatically, and can be built into a standalone application. This allows calling Gruff functions to build a visual graph with more complete programmatic control.

Video Tutorials

(Flash recordings, best viewed full screen)

Title Download Length
Demonstration using life sciences linked data video 15 minutes
Overview of Functionality video 4 min., 19 sec.
The Four Basic Approaches video 2 min., 38 sec.
Creating and Opening a Triple Store video 2 min., 58 sec.
Displaying a Starter Node video 3 min., 2 sec.
Adding Nodes Linked by Particular Predicates video 2 min., 50 sec.
Adding Arbitrary Linked Nodes video 3 min., 48 sec.
Managing a Larger Layout video 3 min., 53 sec.
Doing SPARQL Queries video 3 min., 4 sec.
The Legend, Saving Layout States,
and Finding Paths
video 3 min., 59 sec.
Documentation
Downloads

  Download Gruff for AllegroGraph 4

Gruff for AllegroGraph 4 requires a separate Download and Install of AllegroGraph 4.x for 64-bit Linux on a seperate 64-bit Linux server. To install AllegroGraph 4.x on a 64-bit enabled Windows or Mac OS X machine, please use the AllegroGraph 4.x VM Ware Virtual Machine. NEW: Use client-server Gruff with Hosted AllegroGraph.

Platform Download System Requirements
64-bit Linux Gruff v4.0.17-AG4.9 glibc 2.4 or later, GTK 2.8 or later
32-bit Linux Gruff v4.0.17-AG4.9 glibc 2.4 or later, GTK 2.8 or later
64-bit Mac OS X Gruff v4.0.17-AG4.9 Mac OS X 10.5 or later.
32-bit Mac OS X Gruff v4.0.17-AG4.9 Mac OS X 10.5 or later.
64-bit Windows Gruff v4.0.17-AG4.9 Windows XP or later
32-bit Windows Gruff v4.0.17-AG4.9 Windows XP or later

  Download Gruff for AllegroGraph 3.3

Download Includes AllegroGraph 3.3 (No Additional Download Required):

Platform Download System Requirements
64-bit Linux Gruff v4.0.17 for Linux x86-64 glibc 2.4 or later, GTK 2.8 or later
32-bit Linux Gruff v4.0.17 for Linux x86 glibc 2.3 or later, GTK 2.6 or later
64-bit Windows Gruff v4.0.17 for Windows 64-bit 64-bit Windows XP, Vista, 7, Server 2003/2008
32-bit Windows Gruff v4.0.17 for Windows Windows XP, Vista, 7, Server 2003/2008
64-bit Mac OS X Gruff v4.0.17 for Mac OS X 64-bit Mac OS X 10.5 or later.
32-bit Mac OS X Gruff v4.0.17 for Mac OS X Mac OS X 10.5 or later.

Data files

Gov N-triples data file: gov.ntriples.bz2 or gov.ntriples.zip.

Actors N-triples data file: actors.ntriples.bz2 or actors.ntriples.zip.

Installation

Unpack the files. On Windows run gruff.exe, and on Linux run gruff. The documentation is in the file doc.html.

Release History
Copyright © 2012 Franz Inc., All Rights Reserved | Privacy Statement
Delicious Google Buzz Twitter