Version 4 (modified by pichota, 13 years ago) (diff)


Form Based Annotations

In Kaukolu, you can annotate arbitrary character sequences of a wiki page's body with an RDF class of your choice (the annotation's concept class). That way, not only the page itself gets enriched with semantics, but also arbitrary contents down to the granularity of a single character. Annotations are not only represented by their concept class, but also using additional information such as their author, their time of creation and an optional comment or description.

Usage Information

While annotations can be created programmatically, we have also created a dynamic HTML form that can be used to create annotations manually on a wiki page. Besides selecting the desired class from a tree containing all loaded ontologies, the process has been extended to restrict the selection complexity depending on previously created annotations.

Basic Usage

In order to create an annotation, select the text you want to annotate, press the right mouse button and select 'Create Annotation', as depicted here:

This will bring up the dialog which allows you to select the concept for the annotation and enter additional information such as the parameters used to instantiate the concept class as well as the optional comment. For demonstrating purposes, a license ontology used to describe software licenses has been loaded into the repository; these classes serve as possible annotation concepts here. However, any RDFS class in the underlying repository is a possible target for being used with an annotation. Click 'Create' to submit the form and create the annotation.

After the page has reloaded, you will see the list of annotations for the currently active page on the left hand side. Each box corresponds to one annotation, and selecting it will make the web browser scroll smoothly to the annotated part of the wiki page and highlight the respective character sequence. The selected concept has been automatically instantiated with the arguments you provided in the form, and appears as statements in the 'Relations' box.

Creating Drawings

Technical Aspects

Some words on the technical aspects: The annotation form is realized using the DOJO JavaScript toolkit. The concept tree is not hard coded, but is built dynamically (and incrementally when expanding tree nodes), and served to the DOJO panel as a JSON object. The right hand side of the form is also being built dynamically. Whenever the user selects a concept from the tree, the repository is queried for the corresponding RDF class and its properties. This information is then used to create HTML form objects that take the input arguments. Requests are posed asynchronously, i.e. using AJAX-style interaction and are backed by Java servlets.


See the source code documentation for implementation details:

Attachments (7)

Download all attachments as: .zip