Towards a corpus-based typology of clause linkage

An analytical framework and case studies on non-local dependencies

GraphAnno

GraphAnno is a browser-based tool for creating and querying graph-based annotations. Originated as a prototype for our project’s main tool Atomic, it became a program in its own right.

Features

GraphAnno can be used for any kind of graph-based text annotation. The underlying graph model is quite generic, thus enabling graph structures beyond simple trees. Nodes and edges can be annotated with an arbitrary number of attributes in the form of key-values pairs. Also multi-level graphs are supported and are visualized by different colours.

GraphAnno has a browser-based user interface. The program view features a non-interactive display of the annotation graph (zoomed and scrolled by key commands), a display of the text and sentence-specific information, and a command line. Graph building and annotation is done via compact and simple, yet powerful, command line commands.

In addition to creating and display of annotation graphs, GraphAnno provides the possibility to query annotation graphs. In a separate search window, queries for subgraphs can be formulated in a powerful native graph query langague, that enables search for annotated text and graph fragments featuring regular expression-like power.

The matches are highlighted in the graph display and can be exported for further evaluation. The program’s export facilities allow for extracting parameters from the found graph fragments via Ruby code snippets. The extracted data is then written to a CSV file that can be directly used for statistical evaluation.


Fig. 1: GraphAnno’s user interface
Architecture

GraphAnno’s browser interface uses HTML and Javascript (AJAX functionality) with the annotation graph embedded as SVG. The backend is implemented as a Ruby program that implements the graph model, processes the user input and coordinates graph storage (in JSON files), rendering and search. For rendering we use a Javascript port of the graph visualization program Graphviz.

GraphAnno on Github

The GraphAnno code is available on Github; you can also download it as a ZIP file.