Home >> Media Group >> Research >> ViPER
Downloads -- Documentation -- Developers -- Discussion
LAMP     The Language and Media Processing Laboratory

Chronicle Specification

The Chronicle bean presents a visual representation of a set of temporally qualified (or comparably qualified) objects and a developer-defined model of how they should be arranged. It currently relies on the viper.api.time package, indicating that this package should perhaps be moved to a neutral location (part of a more generic utilities jar that all others in the viper project require).

The Data Model

There are two major elements of the Data model: the graph, and the interpretation. The TimeLineDataModel offers access to the graph, including selecting nodes by label. The interpretation is what is seen by the bean, through the ChronicleModel interface.

The ChronicleModel interface offers a link into the graph, with the getRoot. It also provides access to the current focus, i.e. the location of the portal, and the major moment - the location of the tick.

The View

The display uses a Piccolo view, and each timeline (node in the graph) may have its own display. Each timeline is given a rectangular space to develop its view.

Overlays

There are several overlays that may be useful: names for the timelines, markers, the rules, ordering constraint links (a la tqes), and buttons for exploring the graph (like tree expander nodes). There is a marker model included for drawing lines across the timeline that indicate something about a certain moment in time, and allow the user to modify them (for example, the current moment of interest - the tick).

Rules

Markers

User Interaction

The user interacts at two levels: with the view of the chronicle as a whole (including zooming and selecting the major moment) and interacting with the individual time lines or overlay objects.