SeSF Working Group - Ontology Documentation

Printer-friendly version

This page lists the results of analysis of tools that could be used to generate Human focused HTML documentation of OWL.

1. Parrot : a RIF and OWL documentation service

URL: http://ontorule-project.eu/parrot/parrot
The OWL ontology used to test the tool is - https://scm.escience.rpi.edu/svn/public/ontologies/VSTO/trunk/vsto.owl

Analysis:

The Parrot tool provides options to upload/add an OWL ontology in four forms - by URI, by direct input, by file upload, by existing report.

The HTML document generated by the tool has four distinct sections: Ontologies, Classes, Properties, Individuals with the number of instances of each of them in brackets. The items in each section are sorted in alphabetical order. The Ontologies, Classes, Properties and Individuals are clearly marked that helps to easily understand which component one is currently looking at. A persistent bottom bar helps one to move from one component to another quickly.

The user-defined class is shown with a clear marker indicating that it's a class, followed by the classname and the label 'OWL Class' in brackets. rdfs:comment property provides a human-readable description of a resource and the much needed capability to annotate an ontology. If classes are annotated with this property (example: DdxDataFile, MetadataService), the comment is shown as a description just below the classname. In addition to the URI of the class, the classes to which the current class is a sub-class, super-class (or) disjoint class is shown in this section.

The properties section is shown with marker 'P' indicating that it's a property and markers 'OP' for Object Property, 'DP' for Data Property and an image for functional property. The markers display links which points to their respective definitions in w3.org. The property definition shows the property URI, it's type, domain and range.

The indviduals(instances) are displayed similar to classes and properties. The individual name follows the individual marker. The URI of the indvidual is followed by individual properties and their respective objects. The annotations for an indivdual are displayed similar to a class.

Though this tool is stand-alone and not available as a plug-in to protege, the generated documentation is very clear. The tool took approximately 10 seconds to generate documentation for this ontology(vsto.owl) of size 138 KB.

2. OWLDoc - plug-ins for the Protege ontology development platform

URL: http://code.google.com/p/co-ode-owl-plugins/wiki/OWLDoc
The OWL ontology used to test the tool is - https://scm.escience.rpi.edu/svn/public/ontologies/VSTO/trunk/vsto.owl

Analysis:

OWLDoc is a Protege plug-in. Download the zip file at http://code.google.com/p/co-ode-owl-plugins/downloads/detail?name=org.co...
The org.coode.browser jar should be copied to the plugins folder under the Protege directory and Protege should be restarted. The plug-in will be found under Tools Menu -> Export OWL Doc. OWLDoc will creae a number of static HTML files in the directory specified by the user.

The index.html shows the contents(classes, (Data|Object|Annotation) properties, Individuals, Datatypes) in the top section of the left pane and the items under each of them in the bottom section of the left pane. The right pane shows information related to the chosen component.

For a class, it shows the URI, its superclasses, sub-classes and disjoint classes. rdfs:label provides a human readable version of a resource's name and rdfs:comment property provides a human-readable description of a resource. These Annotation properties are clearly marked for the classes for which they are defined. The Data properties, Object properties and Individuals show similar information and capability as Parrot.

This tool could be preferred over Parrot for the following reasons. The HTML page which is generated has a Java doc look and feel. It's extremely easy to navigate and the documentation can be generated in a couple of seconds. Moreover, it provides Annotation properties and Datatypes as seperate setions which makes it easy to get a overview of these items. Since it's available as a protege plug-in and has the same layout as a Java doc, it's very easy for any user of protege to quickly generate HTML documentation for their ontology.

3. LODE - Live OWL Documentation Environment

URL: http://www.essepuntato.it/lode

From the webpage, "Live OWL Documentation Environment (LODE) is a service that automatically extracts classes, object properties, data properties, named individuals, annotation properties, general axioms and namespace declarations from an OWL and OWL2 ontology, and renders them as ordered lists, together with their textual definitions, in a human-readable HTML page designed for browsing and navigation by means of embedded links."

The LODE service generates HTML documentation for the ontology, but it couldn't be tested for VSTO ontology since it throws up parser errors. Currently, analyzing why this is the case.

4. jOWL

URL: http://jowl.ontologyonline.org/

The jOWL ontology service is a jQuery plugin that has jQuery, blueprint CSS and javascript dependencies which can be downloaded as a zip file. The configuration file in the html file should be tweaked to point to the desired owl ontology and display the default class. The html provides a tabbed view of classes, objects, properties and SPARQL-DL to run SPARQL queries. From a purely documentation perspective, this solution seems unnecessary since it has dependencies whereas other solutions either run as a protege plug-in (or) generates html documentation without the need for any dependencies.