23
: A Semantic Approach for Ontology Authoring Thorsten Liebig, Olaf Noppens Dept. of Artificial Intelligence University of Ulm D-89069 Ulm Germany Abstract OntoTrack is an ontology authoring tool that combines a graph-based hierarchi- cal layout and instant reasoning feedback within one single view. Currently On- toTrack can handle ontologies with an expressivity almost comparable to OWL Lite. The graphical representation provides an animated and zoomable subsump- tion graph with context sensitive features such as click-able miniature branches or selective detail views, together with drag-and-drop editing. Each editing step is instantly synchronised with an external reasoner in order to provide appropriate graphical feedback about relevant modelling consequences. A recent extention of OntoTrack provides an on-demand textual explanation for subsumption relation- ships between classes. This paper describes the key features of the current implemen- tation and discusses future work, as well as some development issues. OntoTrack can be downloaded at http://www.informatik.uni-ulm.de/ki/ontotrack/. Key words: Ontology development, Semantic Web, Description Logics 1 Introduction High quality ontologies are crucial not only for Semantic Web applications [1]. Unfortunately, the task of building and maintaining mature ontologies turned out to be a difficult task. It is not only non-sophisticated users that are commonly faced with comprehension problems such as the proper use Email addresses: [email protected] (Thorsten Liebig), [email protected] (Olaf Noppens). Preprint submitted to Elsevier Science 1st June 2005

OntoTrack: A semantic approach for ontology authoring

Embed Size (px)

Citation preview

OntoTrack: A Semantic Approach for

Ontology Authoring

Thorsten Liebig, Olaf Noppens

Dept. of Artificial IntelligenceUniversity of Ulm

D-89069 UlmGermany

Abstract

OntoTrack is an ontology authoring tool that combines a graph-based hierarchi-cal layout and instant reasoning feedback within one single view. Currently On-toTrack can handle ontologies with an expressivity almost comparable to OWLLite. The graphical representation provides an animated and zoomable subsump-tion graph with context sensitive features such as click-able miniature branchesor selective detail views, together with drag-and-drop editing. Each editing step isinstantly synchronised with an external reasoner in order to provide appropriategraphical feedback about relevant modelling consequences. A recent extention ofOntoTrack provides an on-demand textual explanation for subsumption relation-ships between classes. This paper describes the key features of the current implemen-tation and discusses future work, as well as some development issues. OntoTrackcan be downloaded at http://www.informatik.uni-ulm.de/ki/ontotrack/.

Key words: Ontology development, Semantic Web, Description Logics

1 Introduction

High quality ontologies are crucial not only for Semantic Web applications[1]. Unfortunately, the task of building and maintaining mature ontologiesturned out to be a difficult task. It is not only non-sophisticated users thatare commonly faced with comprehension problems such as the proper use

Email addresses: [email protected] (Thorsten Liebig),[email protected] (Olaf Noppens).

Preprint submitted to Elsevier Science 1st June 2005

of role hierarchies, the influence of transitive roles on reasoning, or the ef-fect of domain and range restrictions [2]. In an analysis of different efforts offormalizing knowledge by KR experts, it has been shown that a significantamount of system failures were caused due to implicit “modeling conflicts”or a “misunderstanding of the inference algorithm” [3]. Even worse, the effectof those faulty axioms typically remains hidden until the KR system is usedor intensively tested. In order to avoid those modeling problems as early aspossible, the authors of the latter analysis suggest encouraging developmentof interactive tools for building, maintaining and evaluating ontologies.

Obviously, such an ontology authoring tool not only has to provide a con-venient browsing interface or intuitive editing capabilities, but also has tosupport the user in understanding the logical meaning of an ontology. Thelatter distinguishes ontology editors from text editors, but is largely neglectedin current authoring systems. This is rather surprising since the primary pur-pose of an ontology is to specify a semantic model. This model can be “ex-ported” into semantically equivalent but syntactically different representa-tions. In the case of the Web Ontology Language (OWL), an ontology can beserialized into many syntactically varying XML/RDF documents which arenot inter-convertible without considering their semantics. Therefore even themost sophisticated XML editor is at best a second choice for OWL editing.As a consequence, the explicit representation of the semantical consequencesshould become an integral part of any serious ontology authoring tool.

OntoTrack implements such a novel approach using one integrated view forstraightforward browsing, manipulating, and understanding even large OWLontologies. Within this view, ontologies are laid out as directed rooted graphsaccording to their primary structuring relation, the subsumption relationship.OntoTrack provides animated expansion and contraction of class descen-dants, continuous zooming, panning, and uses elaborated layout techniquessuch as click-able miniature branches or selective detail views. At the sametime OntoTrack allows for quite a number of editing features, such asmouse-over anchor buttons and graphical selections, without switching intoa special editing layout. In addition, every single editing step is sent to anexternal reasoner in order to make implicit modeling consequences explicitlyavailable for graphical feedback. OntoTrack has recently been enhancedwith an on-demand component for textual explanation of subsumption be-tween classes. OntoTrack supports a reasonable subset of OWL Lite with-out individuals. The system can read as well as write XML/RDF serializationsof OWL ontologies.

The remainder of the paper is organized as follows. In the following sectionwe first present some related approaches for ontology visualization and edit-ing. Section 3 contains a detailed illustration of our ontology authoring toolOntoTrack. In section 4 we discuss some implementation issues, describe

2

the system architecture as well as current work. We will end with an outlookon possible future extensions.

2 Related Work

Many ontology authoring tools use functionally disjoint interfaces for eitherbrowsing, editing, and reasoning with ontologies. The very first browsing in-terfaces used expand- and contract-lists as shown in Figure 1 (a). Such col-lapsible lists are still found in almost all editing environments, e. g. OilEd [4],OntoEdit [5], Protege [6], WebODE [7], SWOOP [8], and others. From a us-ability perspective, in our opinion those interfaces inherently have substantialdrawbacks concerning search and navigation speed, as well as user orientation[9]. First, the number of visible classes is limited by the screen height requiringscrolling even for medium sized ontologies. For instance, the list representa-

(a) Expand-contract list (b) Spring layout

(c) Hyperbolic tree (d) Tree map

Figure 1. Different visualization techniques for the same sample ontology.

3

tion of Figure 1 (a) is not able to show the complete hierarchy of our exampleontology. Second, because of the tree centered representation, multiple inher-itance needs to be approximated with help of “cloned” classes appearing inthe list of descendants of every superclass. Not surprisingly expand lists areregarded as not suitable for providing a good overview for larger ontologieswithin an evaluation of ontology development tools [10].

A graph-based rendering technique for networks utilize spring-layouts, wherenodes repel each other while edges attract them. This force-directed methodis laid out either as a snapshot, as in OI-Modeller [11], or as a dynamic,interactive net, as in TGVizTab [12], or OntoEdit. Those tools allow for in-cremental graph navigation, as for example expanding or collapsing nodes,or specifying a radius of interest. As can be seen in Figure 1 (b), a springrepresentation places connected nodes close to each other. As a result, evensparsely connected clusters often aggregate to cluttering heaps of nodes. Inaddition, global placement of node clusters is unpredictable over time becauserotation and projection of a graph may change after user interaction.

Hyperbolic trees typically utilize spring-embedding algorithms to positionnodes with respect to their connectivity relationship. This layout techniqueis exemplarily shown in Figure 1 (c), and currently found in two ontologybrowsers: OntoRama [13] and DeLogViz [14]. Both are limited to spanningtrees, and therefore need cloned nodes for visualizing multiple inheritance.Beyond that, hyperbolic tree visualization is based on a mapping of euclidianto hyperbolic geometry typically resulting in translocation of nodes after eachfocus change [15]. In addition, hyperbolic trees have the disadvantage of “fish-eye distortion”, which makes it difficult to read off-center labels. Furthermore,as a heritage of its spring-based layout, node labels are often drawn on top ofeach other.

Another tree-centered visualization technique for ontologies adopt tree maps[16]. Figure 1 (d) shows a nested view representation of our example ontologygiven by the Jambalaya plugin [17] for Protege. Here, the user can zoominto branches of the ontology on mouse click. However, without an additionalnavigation view users often loose orientation after a few focus changes. Theadditionally offered overlay visualization for restrictions or multiple ancestorswith help of edges is also a source of confusion. Beyond that, the depth of anode is hard to grasp without counting the surrounding boxes.

In our opinion, the most natural layout for an ontology is a hierarchical lay-ered graph. For instance, the rooted graph of Figure 2 allows the easy graspthe overall structure of the ontology by equal space requirement in compar-ison to the previous approaches. Furthermore, since graphs natively supportmultiple ancestors, nodes need not be cloned as in the previous tree-centeredapproaches. In addition, according to our personal experience, only the com-

4

Figure 2. Hierarchical, rooted graph of the sample ontology of Figure 1.

bination of graphs together with a strict hierarchical ordering of layers withnodes of the same depth are appropriate for comprehensive ontology visual-ization. The orientation of this ordering (e. g. top-down, left-right) is a matterof personal preference, though. For instance, the graph layout provided byezOWL [18] does not preserve a strict hierarchical ordering by allowing arbi-trary class arrangements. In addition, its representation does not contain thebuilt-in OWL root class (Thing) which makes it difficult to locate those classeswithout an explicit superclass axiom.

The majority of the currently implemented visualization interfaces does notallow for substantial editing and is designed as view-only application or plu-gin. For editing, all mentioned ontology editors use expand and contract listrepresentations for selection of classes or properties, together with predefinedforms and pop-up windows for manipulation in an additional display area. Asa consequence, the definition of a new value restriction may require several(possibly overlapping) pop-up windows for a step-wise specification of the re-spective elements of the restriction. In addition, if editing and visualizationare strictly separated, the user has to choose between an enhanced browsing orfull editing mode, which obviously is a disadvantage for effective and seamlessontology authoring.

Almost all editors offer consistency checks or classification with the help ofan external reasoner. However, these services explicitly have to be activatedby the user. In addition, after classification some editors distinguish betweenthe syntactical and the semantical ontology model and their different visual-izations. Currently, only the SWOOP editor offers instant reasoning feedbackduring editing.

3 OntoTrack: A New Graphical Authoring Tool for OWL Lite-

OntoTrack is a multi-platform Java application combining authoring ofontologies with reasoning about ontologies. As a consequence of its reasoning

5

capabilities, running OntoTrack requires access to an appropriate reasoningsystem before loading or creating a new ontology. Currently OntoTrackprovides a built-in TCP link-up to the highly optimized RACER reasoner[19].

The next subsection specifies the OWL language constructs OntoTrack iscurrently able to handle. For the sake of broad usability and a clear and con-cise graphical representation, we have restricted this language to a “sensible”fraction of OWL Lite, called OWL Lite−. This is followed by a more detailedexplanation of OntoTrack’s browsing, editing, reasoning as well as explain-ing capabilities.

3.1 OWL Lite−: A Sensible Fraction of OWL Lite

OntoTrack is designed to be an authoring tool for ontology languages withan expressivity almost comparable to that of OWL Lite. The expressivity ofOWL Lite is about that of the DL language SHIF(D) [20]. OWL Lite is afraction of OWL DL, aiming to provide a useful subset of language featuresthat are easier to present to naive users and relatively straightforward for tooldevelopers to support [21]. In particular, OWL Lite excludes syntax constructsfor unions, complements, and individuals in descriptions or class axioms. Inaddition, it limits cardinalities to either 0 or 1 and nested descriptions toconcept identifiers. However, these restrictions come with relatively little lossin expressive power. With the help of indirection and multiple definitions fora single class identifier, all of OWL DL can be captured in OWL Lite exceptthose descriptions containing either individuals or cardinalities greater than 1[20].

Simulating full negation or disjunction in OWL Lite with the help of gen-eral inclusion axioms (GCIs) and multiple definitions is rather obscure, andobviously conflicts with the design goal of OWL Lite. Those constructs willvery likely rarely occur in real world OWL Lite ontologies. Instead, users willpresumably use OWL DL when it comes to disjunction or negation for a cer-tain application domain. Beyond that, there is no intuitive and unambiguousway for rendering classes with multiple, possibly mixed partial and complete,definitions. We therefore decided to restrict the usage of OWL Lite in a waywe believe was originally intended by the language designers themselves. Thislanguage fragment is called OWL Lite− in the following. In particular, we haverestricted classes to be defined only once in a way that could be equally ex-pressed by one single owl:equivalentClass or rdfs:subClassOf statementover the conjunction of the collection of superclasses and restrictions (i. e. thedefinition of a class A is A v D or A

.= D where A is an atomic name and has

no other definition). As a result, GCIs, full negation and disjunction are not

6

expressible within OWL Lite−.

Within this context, it is worth mentioning that different analyses of onlineavailable ontologies (e. g. [22] or [23]) showed that most users only exploit avery limited set of the available language constructs. More precisely, only avery small fraction of those ontologies would be outside the scope of the OWLLite subset processable with OntoTrack.

3.2 Browsing & Searching

The primary structuring element of ontologies is the subsumption relationshipbetween classes and properties. Consequently, OntoTrack draws an ontol-ogy as a directed acyclic graph with either classes or properties as nodes andthe subsumption relationship as directed edges either in top-down, left-right,bottom-up, or right-left orientation. In this respect, OntoTrack adapts andextends the “node link tree” approach of an application called SpaceTree [15].The drawn hierarchy may vary from the explicitly given subclass statementsof the loaded ontology source document. This is due to OntoTrack’s mostimportant layout principle which imposes the visualization of the subsumptionrelationship as implied by the semantical model of the given ontology axioms.Therefore, by taking the modeling consequences explicitly into account, On-toTrack is sensitive not only to syntactically given, but also to semanticallyimplied subsumption relationships.

Figure 3 shows the OntoTrack application window. It consists solely of amenu bar, a search bar, and a combined browsing and manipulation area.OntoTrack can handle multiple ontologies in parallel, which are accessiblevia corresponding tabs at the bottom of the application window. The ontologydisplayed in Figure 3 is a fraction of a sample generation ontology in top-downorientation. Note that the subsumption paths of the currently selected class(Sister) up to the OWL root class (Thing) are outlined by a darker node back-ground and thicker edges in order to provide an optimal overview concerningdepth and branching.

Unexpanded sub-branches of classes are rendered as triangles of varying length,width, and shading, approximating the depth, branching and number of sub-classes (see class Parent in Figure 3 for an example). If the number of de-scendants is below a user definable threshold, a contracted sub-branch willalternatively be drawn as a miniature graph in order to give an overview of itstopological structure (see Descendant in Figure 3). This idea of different kindsof thumbnails is adapted and extended from the SpaceTree visualization [15].The icons of a miniature graph are expandable on mouse click and show theirclass names via mouse-over tool tip. In addition, the whole ontology layout

7

Figure 3. Upper fraction of a generation ontology with triangle and miniaturesub-branches. Anchor buttons for class Sister show up because of mouse over action.

can continously be zoomed or panned simply by right resp. left mouse-buttonmovements.

The direct descendants of a class are expanded resp. de-expanded in an an-imated fashion on left mouse button click. OntoTrack’s ontology layoutis driven by the expansion direction of the user. The layout strategy aims at“clustering” the descendants of a selected class (locally simulating an ordinarytree representation). This means that an ontology with multiple inheritancemay end up with a different layout for exactly the same set of expanded classes– depending on the user’s expansion order.

As mentioned before, OntoTrack always shows all (even implicit) directsubsumption relationships between classes. However, when dealing with classeswith multiple ancestors, it might be the case that some ancestors are in unex-panded branches. Instead of expanding all those ancestors, OntoTrack willdraw them as click-able thumbnail classes in order to always show the seman-tically correct hierarchy, while minimizing the number of expanded classes atthe same time. Our technique of drawing a thumbnail graph within a stricthierarchical layout is based upon compound graphs [24]. The class names ofall thumbnail classes are displayed when hovering with the mouse over thethumbnail node. As an example, Figure 4 shows three thumbnail ancestorsfor the classes Sister and Brother which appear after expansion of class Sib-

8

Figure 4. Ancestor thumbnails of classes Sister and Brother after expansion of classSibling.

ling. OntoTrack will not expand them by default because of the assumptionthat the user is much more interested in the descendants of Sibling (the useractually asked for) instead of their ancestors.

An auxiliary navigation feature of OntoTrack is the bird’s eye view, whichwill appear in the upper left corner of the workspace only if the ontologyexceeds the available rendering area at its current scale factor. The bird’s eyeview consists of a miniaturized graph of the current ontology expansion andan overlayed rectangle representing the current rendering area. The latter canbe moved via mouse, which will result in a corresponding relocation of theoriginal view.

OntoTrack also implements a string matching search with graphical high-lighting based on the principles of the dynamic query approach [25]. Eachmodification of the search string directly results in an updated highlightingof matching parts of the ontology (expanded or not). Figure 5 shows the sub-string matches for the search string “Grand” within class identifiers. Note thateven thumbnails or triangle sub-branches are highlighted. Optionally, the usercan fan out the ontology, resulting in an expansion of all matching classes viaone click.

3.3 Ontology Editing

Browsing and editing in OntoTrack is done within one single view. Thisallows for the re-use of already available navigation principles for the taskof building and manipulating ontology definitions. A new sub- or superclass

Figure 5. Match highlighting for string search when querying for class names startingwith “Grand”.

9

Figure 6. Detailed view mode for class Person (amongst others) during specificationof an universal quantification.

can easily be added by using OntoTrack’s anchor mode, for example. Here,click-able triangle buttons appear when hovering with the mouse pointer overa class node (see class Sister in Figure 3). These anchor buttons allow forthe specification of an additional superclass or new subclass via mouse click,and are sensitive with respect to the layout orientation. An existing subclassrelationship can be changed via mouse drag-and-drop, or deleted by selectionand “Del”-key usage as long as this relationship is not implied by other logicalaxioms of the ontology.

In addition, OntoTrack offers further editing functions while in its “de-tailed view” mode. The detailed view mode is activated or deactivated foreach class separately using the mouse-wheel down- resp. up-wards with themouse pointer on the class (alternatively PgDown/PgUp). When activated,OntoTrack uses an UML-style class diagram showing the list of definedproperty restrictions for this class in abstract DL syntax in its bottom com-partment. OntoTrack supports unqualified cardinality restrictions (≤, ≥,= with cardinality 0 or 1), as well as existential and universal (∃, ∀) quan-tifications. A restriction can be deleted by clicking on the round (red) buttonat the right hand side of the corresponding row, and a new restriction can beadded by clicking on the round (green) button at the bottom of the class box.At present, object-, datatype-properties, as well as classes within those restric-tions, are chosen with the help of selection lists. Figure 6 shows a selectionof classes within detailed view mode. Since each compartment of a restric-tion is freely editable, redefinitions (e. g. replacing a property) can easily beperformed without removing the complete restriction statement and adding anew one. In future versions, properties as well as classes may be selectable bymouse click.

Additional editing features such as class deletion or switching between com-plete and partial definitions are accessible via a right mouse button contextmenu. In order to visually distinguish between a complete and a partial class

10

Figure 7. Representation of two equivalent classes. Here, equivalence is impliedbecause of the existential restriction on has-child within both classes and the rangerestriction of this property (see Figure 9).

Figure 8. Detailed view mode for the combined representation of equivalent classesshows explicit subsumption relationship.

definition 1 , we have adopted the UML notation of derived types for completeclass definitions. More precisely, a complete class definition is characterized bya slanted line in the upper left corner of the class box. From the semanticalpoint of view, OntoTrack’s graphical notation is interpreted as follows: aclass is equivalent to (if complete) or a subclass of (if partial) the conjunc-tion of the collection of superclasses and restrictions. Semantically equivalentclasses are displayed within one combined node (see Figure 7), whereas allediting functionality is still available for each class. In addition, a detailedview mode is also available for combined nodes offering further informationabout explicit subsumption definitions (if any) between the equivalent classesas exemplarily shown in Figure 8.

In addition to the class hierarchy view, OntoTrack also provides an analo-gous graphical representation for object- as well as datatype-properties. Here,the root node allows for the selection of object-, datatype-, or both propertytypes to be shown. Different detailed property views allow for manipulation ofglobal domain and range restrictions, global cardinality constraints, as well aslogical characteristics of the property with the help of selection lists or check-boxes. Figure 9 shows an example datatype- as well as the object-propertyhierarchy with different detailed views. Here, both hierarchies are visible asthe corresponding checkboxes in the root node are selected.

1 In OWL Lite− we allow for exactly one definition per class identifier (see subsec-tion 3.1).

11

Figure 9. Property hierarchy showing object-, as well as datatype-properties withexamples of different detailed view modes.

As an extra feature, the property representation can be rendered as a read-only transparent layer onto the class representation and vice versa. The trans-parency rate of the secondary layer is freely adjustable.

3.4 Instant Reasoning Feedback

As mentioned before, OntoTrack is equipped with an interface for inter-action with an external OWL reasoning system. All changes after each edit-ing step (e. g. list selection, subclass manipulation) are immediately sent tothis system. The reasoner will then make all modeling consequences explicitlyavailable. OntoTrack will hand over “relevant” consequences to the userby providing appropriate graphical feedback. These consequences currentlycover subsumption and equivalence between classes, as well as unsatisfiabilityof classes. For example, adding an existential restriction (minimal or exactcardinality restriction with 1 or existential quantification) on a property witha domain restriction will result in a subsumption relationship between theedited class and the property domain. Those updates are also animated in or-der not to confuse the user with a new hierarchy layout in one step. This kindof direct feedback obviously will help users to identify faulty or non-intendedmodeling. As an example, one of the most common modeling errors consistsof using a universal rather than existential quantification, according to [2].The logical consequence of A

.= ∀r.B instead of A

.= ∃r.B are quite different,

however. The former definition implies equivalence, the later a subsumptionrelationship between A and Thing. Instant reasoning feedback would make thisdistinction immediately evident by directly updating the class hierarchy.

Another example is given in Figure 10 which shows a contradiction between arestriction in the class Person and a restriction in the class Sibling. The latterrequires at least one filler for the property has-sibling. In contrast, the car-

12

Figure 10. Contradicting restrictions cause Sibling (and at least all its descendants)to be unsatisfiable.

dinality constraint given in the class Person restricts the number of fillers toexactly zero. As a consequence, Sibling and all subclasses thereof are unsat-isfiable, and therefore outlined in red. Semantically, all unsatisfiable classesare equivalent to the predefined OWL class Nothing. However, Nothing is avery special class and will not be drawn within the class hierarchy in On-toTrack. If it were drawn, the set of unsatisfiable classes would have tobe rendered within one single node. Instead these classes remain within theirprevious taxonomic position in order not to (incidentally) flatten large partsof the hierarchy.

Note that the last edited class is not necessarily the (only) one which poten-tially will become inconsistent. OntoTrack will therefore query its reasonerfor conflicting or equivalent definitions in any part of the ontology after eachediting step. Concerning the example shown in Figure 10, it can be seen thatthere is at least one unsatisfiable descendant of Parent (the correspondingsub-branch triangle is colored red).

3.5 On-Demand Explaining

Providing feedback on the logical consequences of recent user changes helpsusers to check for imprecise, redundant or faulty modeling. Important conse-quences with respect to an ontology authoring tool are subsumption, equiv-alence and unsatisfiability. These consequences often depend on logical inter-relations of nested definitions, which themselves may depend on other defi-nitions. As a result, most consequences are not easily traceable or intuitiveto non-experienced users. Current reasoning systems provide no or only lim-ited support for explanation of logical consequences. 2 OntoTrack’s mostrecent extention is a prototypical facility for an on-demand explanation ofsubsumption between classes. The user can invoke an explanation by using aright mouse-button context menu while over a subsumption link. Our explana-tion generator is an external component and uses a tableaux-style algorithm.

2 The Classic system is a notable exception here [26].

13

Figure 11. Explanation of a subsumption relationship within our example ontology.

It will generate a quasi-natural language explanation compiled from text pat-terns which correspond to applied rules of the underlying tableaux proof. Thisapproach is based on the work of Borgida et. al. [27] which we have extendedto a more expressive language [28]. We built our own system, since currentlyavailable tableaux reasoners potentially capable of handling OWL are eithernot available as source code or are based on highly optimized algorithms noteasily extensible for explanation generation.

Currently, this component is able to generate explanations within unfoldableALEHFR+ ontologies, i. e. ontologies with unique acyclic definitions (negationand disjunction comes implicitly due to the refutation strategy of the tableauxproofs). Note that this explanation facility does not aim to replace the externalcore reasoning component and will only be activated on user request.

Figure 11 shows the textual explanation of the subsumption relationship be-tween Person-with-Nephews and Uncle-or-Aunt. Definitions which are relevantto the given explanation are also shown in Figure 11.

14

Figure 12. A modified fraction of the IEEE SUMO ontology [30] with more than 60classes expanded and a bird’s eye view in the upper left corner.

4 Implementation Issues and Current Work

A recent analysis of online available ontologies [22] showed that most ontolo-gies contain more than one hundred classes. Upcoming ontologies very likelywill consist of several hundreds of classes, presumably referencing dozens ofother ontologies. Obviously, performance and scalability of ontology authoringtools are a key issue for user acceptance and wide adoption of Semantic Webtechniques. We have chosen Piccolo [29] as our graphical library for Onto-Track, which has proven to be sufficiently fast and reliable even for largenumbers of graphical objects. Piccolo is a Java2D graphical interface toolkitsupporting animation and zooming, as well as providing a view model withmultiple cameras and layers, etc. Our implementation of OntoTrack’s visu-alization components also adopts the “node link tree” approach of SpaceTree[15], which itself uses the Piccolo toolkit. SpaceTree makes use of elaboratedlayout techniques to dynamically zoom and lay out tree branches in an ani-mated fashion. Figure 12 shows that OntoTrack’s layout technique is evensuitable to depict the overall structure of ontologies with more than 60 classes.

As illustrated in Figure 13, we applied the well-known model-view-controllerparadigm [31] to OntoTrack in order to strictly separate the graphical rep-resentation and the internal model. This paradigm also allows for the seam-less integration of additional components such as our on-demand explanationcomponent described in section 3.5. The core ontology model is based on the

15

ONTOTRACK

load

store

update

change

browsing

editing

OW

L L

ite¯

onto

logi

es

Reasoner(e.g. RACER,LOOM, Pellet)

On-demand Explainer

explainask/

asktell/

Jena 2.1

Ontology model

Piccolo

Graphicalrepresentation

Figure 13. OntoTrack system architecture.

Jena 2.1 [32] RDF API and parser functionality. We have enriched this modelwith a high-level event notification mechanism needed for propagating changesto the views or to the external reasoner representations. Furthermore, this ap-proach allows us to easily plug-in different reasoner systems or non-standardreasoning services. Our most elaborated reasoner link-up uses RACER viaKRSS syntax [33] over TCP. We are currently implementing interfaces forPellet [34] and LOOM [35].

OntoTrack is sensitive to logical consequences and therefore a very reasoning-intensive application. 3 This requires an ontology API offering a high levelpublish-subscriber mechanism on the reasoner side about logical implied con-sequences concerning TBox, as well as ABox changes. Otherwise each appli-cation (most notably our graphical view) would be responsible for requestingall changes it is interested in. Unfortunately, none of the currently availablereasoning systems supports a publish-subscriber mechanism for TBox reason-ing. We were therefore forced to implement the requester approach which, asexpected, turned out to be difficult for a couple of reasons. For example, inorder to become aware of a new subsumption relationship due to a recentlyadded property restriction, OntoTrack needs to query the reasoner aboutdirect superclasses for almost all classes of the ontology in turn. 4 Instead ofquerying for all possible changes with respect to a specific consequence foreach editing step, we would like to have an event-triggered publish-subscribe

3 Besides ontology authoring tools, we expect further reasoning intensive applica-tion in the future.4 One could of course narrow this set to those classes that also have an explicit orinherited restriction on that particular property or a subproperty thereof. But thisrequires explicit knowledge about inherited restrictions or subproperties, which inturn may result in additional queries.

16

mechanism on the reasoner side [36]. Another problem is concerned with in-cremental reasoning and retraction of definitions. Since handling incrementaladditions to a knowledge base is still unknown [37], complete reclassificationafter each user interaction is necessary.

OntoTrack’s prototypical explanation facility is currently implemented inCommonLisp as an external component parallel to the reasoning system. Inorder to avoid redundant computation, it is desirable to combine reasoningand explaining within one system component in the future. Beyond that, weplan to enhance the explanation presentation with additional mouse-enabledfeatures and different levels of detail information.

Current work also focuses on further editing features. Comments, labels andontology header information are imported, as well as exported correctly, butare not editable in OntoTrack at the moment. We are also working on theintegration of further editing and searching facilities such as regular expres-sion search or undo operations. Such an undo functionality can be added toOntoTrack by providing an additional history component listening to allontology changes and an undo-controller for user interaction. In a first step thisfunctionality could be realized by collecting all high-level ontology changes. Amore optimized component would obviously cooperate more tightly with thereasoner in order to prevent unnecessary reclassification steps when switchingto a previous state of the ontology.

We will also extend OntoTrack’s support for properties by providing ad-ditional consistency checks. For instance, properties appearing in cardinalityconstraints are not allowed to be transitive [38].

5 Future Work

5.1 Ontology authoring

Support for cross ontology references between different definitions is also apoint of further investigations and is still under discussion within the WebOntology Working Group [39]. In a first naive approach our plan was to drawa superclass from a different ontology as a thumbnail ancestor using a dashedsubsumption link (in order to distinguish between local and external ances-tors). In the case of selecting such an ancestor, the corresponding ontologyshould be loaded and expanded up to the referred class in a new tab of On-toTrack. Unfortunately, this functionality carries some problems regardingimport statements and referencing mechanisms of OWL/RDF. For example,OWL allows for the distribution of a class specification across multiple defini-

17

tions in various RDF documents. It is even possible to define a class bearing avirtual URI not related to any of the defining documents. Now, when referringto this class from elsewhere, its corresponding definition cannot be found at theURI implied by the class ID. In other words, we can not infer the location of adefinition from its URI reference. Beyond that, the meaning of the referencedontology entity can only be taken into account when importing those docu-ments, containing RDF triples about this entity. Note that importing RDFtriples via an ontology import statement is not the same as referencing them.Furthermore, the notion of an ontology, by specifying an ontology header withowl:Ontology, is an additional but optional structuring concept within OWL.In fact, the relationship between class/property descriptions and an ontologyis unclear. More complex, even if it is optional or may appear more than oncein a document, an ontology header is the only way to import other documents.This means that a serious OWL authoring tool needs to carefully distinguishbetween documents, ontologies and references.

Another serious issue of general future research is concerned with debuggingof ontologies not developed from scratch within OntoTrack. Here standardinference services provide only little help to resolve inconsistencies in logicallyincoherent ontologies. In [40] a new reasoning service for pinpointing logicalcontradictions within ALC ontologies has been introduced. A similar method-ology would obviously be helpful within OntoTrack.

Recently novel inference services intended to support the building of an ontol-ogy have been developed (see sec. 6.3 in [41] for a summary). One interestingservice consists of the matching of class patterns against class descriptions inorder to find already defined classes with a similar structure. Another approachtries to create class definitions by generalizing one or more user-given ABoxassertions. In order to support the bottom-up construction of an ontology, thenon-standard inference service of computing the least common subsumer (e. g.as in [42]) is of benefit. In a bottom-up approach, a user could select two ormore classes which are generalized into a single new class (the least commonsubsumer).

In addition to the ontology scheme, future work will also be concerned withthe visualization and manipulation of individuals in OntoTrack, either withthe help of an additional visualization component optimized for this purpose(e. g. as in [43]), or embedded within our current hierarchy-based layout.

It turned out that property hierarchies are often flat hierarchies concerning tothe inheritance relationship. In the near future, we will study further visualiza-tion and navigation improvements (such as fish-eye menus and context+focustechniques) for our ontology browsing and editing paradigm, especially for usewith flat and less structured hierarchies.

18

5.2 System Evaluation

OntoTrack is not a research prototype anymore but still under develop-ment. Therfore, OntoTrack has not been extensively evaluated yet. How-ever, some of the underlying browsing principles have been benchmarked in aset of experiments comparing three tree-based browsing tools (MS Explorer, aHyperbolic tree browser, and SpaceTree) [15]. This comparison showed someperformance advantages for the SpaceTree approach concerning tasks such asfirst-time node finding, listing all ancestors of a node, or differentiate betweenbranches with varying numbers of nodes. These results may serve as an in-dicator with respect to navigation, user orientation and editing performanceof OntoTrack in comparison with other editing tools. However, in order tohave some qualitative results concerning average navigation, especially fromthe ontology authoring’s point of view, we plan to conduct a controlled exper-iment in the near future.

6 Conclusion

The broad adoption of Semantic Web technology strongly depends on theavailability of convenient and flexible tools for browsing, editing, and evaluat-ing ontologies. A clear presentation, intuitive editing abilities, and subsidiaryreasoning services are key properties of ontology editors suitable even for userswithout deep logical background. Traditional expand and contract style inter-faces, template based editing forms, or tree-centered visualizations inherentlyhave substantial drawbacks in this respect. In our opinion, none of these layouttechniques is well suited for typical ontology browsing tasks such as comparingdifferent expansion paths concerning level depth or common ancestors. To ourknowledge, there is currently no appropriate tool for displaying the overallstructure of more than 60 directly editable classes together with additional in-formation about unsatisfiable classes, selective detail information and searchresults, as is shown in Figure 12.

Our new graphical ontology authoring tool OntoTrack combines navigationand direct manipulation in one single hierarchical view, together with instantreasoning feedback and rudiments of an explanation component. We have pro-posed a semantic-oriented ontology visualization integrating enhanced resultsof research in the field of HCI (such as zoomable interfaces, thumbnail pre-views and dynamic) with aspects of ontology authoring. We see OntoTrackas a first step towards an easy-to-use interactive ontology editor, even fornon-experienced users and especially large ontologies.

We also see OntoTrack as a platform for further tasks such as cooperative

19

ontology construction, ontology merging and alignment, or ontology evalua-tion. Currently, we are adding a plugin architecture to OntoTrack whichallows for the extension of our application with different reasoning services,additional visualizations, as well as allowing third-party plugins.

This contribution attempts to inspire the Semantic Web community in twoways. Concerning research, we hope to stimulate the development of non-standard inference services and incremental reasoning systems. On the userside, we aim to motivate even non-experienced domain experts to build, un-derstand and use ontologies more widely in order to push the Semantic Webfrom academia to industry.

References

[1] F. Baader, I. Horrocks, U. Sattler, Description Logics as Ontology Languagesfor the Semantic Web, in: D. Hutter, W. Stephan (Eds.), Festschrift in honorof Jorg Siekmann, LNAI, Springer, 2005, pp. 228–248.

[2] A. Rector, N. Drummond, M. Horridge, J. Rogers, H. Knublauch, R. Stevens,H. Wang, C. Wroe, OWL Pizzas: Practical Experience of Teaching OWL-DL: Common Errors & Common Patterns, in: Proceedings of the EuropeanConference on Knowledge Acquistion (EKAW04), LNCS, Springer Verlag,Northampton, England, 2004, pp. 63–81.

[3] N. S. Fiedland, P. G. Allen, M. Witbrock, G. Matthews, N. Salay, P. Miraglia,J. Angele, S. Stab, D. Israel, V. Chaudhri, B. Porter, K. Barker, P. Clark,Towards a Quantitative, Plattform-Independent Analysis of KnowledgeSystems, in: Proceedings of the Ninth International Conference on Principles ofKnowledge Representation and Reasoning, AAAI Press, Whistler, BC, Canada,2004, pp. 507–514.

[4] S. Bechhofer, I. Horrocks, C. Goble, R. Stevens, OilEd: a Reason-able OntologyEditor for the Semantic Web, in: Proceedings of the German conference onArtificial Intelligence, KI2001, no. 2174 in LNAI, Springer Verlag, 2001, pp.396–408.

[5] Y. Sure, S. Stab, J. Angele, OntoEdit: Guiding Ontology Development byMethodology and Inferencing, in: Proceedings of the Confederated InternationalConferences CoopIS, DOA and ODBASE 2002, no. 2519 in LNCS, SpringerVerlag, 2001, pp. 1205–1222.

[6] J. Gennari, M. A. Musen, R. W. Fergerson, W. E. Grosso, M. Crubezy,H. Eriksson, N. F. Noy, S. W. Tu, The Evolution of Protege: An Environment forKnowledge-Based Systems Development, Tech. Rep. SMI-2002-0943, StanfordUniversity (2002).

20

[7] J. C. Arpırez, O. Corcho, M. Fernandez-Lopez, A. Gomez-Perez, WebODE: aScalable Workbench for Ontological Engineering, in: Proceedings of the FirstInternational Conference on Knowledge Capture (K-CAP 2001), ACM Press,Victoria, BC, Canada, 2001, pp. 6–13.

[8] A. Kalyanpur, B. Parsia, J. Hendler, A Tool for Working with Web Ontologies,Journal on Semantic Web and Information Systems 1 (1) (2005) 36–49.

[9] T. Liebig, O. Noppens, OntoTrack: Fast Browsing and Easy Editing of LargeOntologies, in: Proceedings of the 2nd International Workshop on Evaluationof Ontology-based Tools (EON2003), Sanibel Island, USA, 2003, pp. 47–56.

[10] P. Lambrix, M. Habbouche, M. Perez, Evaluation of ontology development toolsfor bioinformatics, Journal of Bioinformatics 19 (12) (2003) 1564–1571.

[11] D. Oberle, A. Eberhart, S. Staab, R. Volz, Developing and managing softwarecomponents in an ontology-based application server, in: H.-A. Jacobsen(Ed.), Middleware 2004, ACM/IFIP/USENIX 5th International MiddlewareConference, Toronto, Ontario, Canada, Vol. 3231 of LNCS, Springer, 2004, pp.459–478.

[12] H. Alani, TGVizTab: An Ontology Visualisation Extension for Protege, in:Proceedings of the Workshop on Visualization Information in KnowledgeEngineering, Sanibel Island, Florida, USA, 2003.

[13] P. W. Eklund, N. Roberts, S. P. Green, OntoRama: Browsing an RDF Ontologyusing a Hyperbolic-like Browser, in: The First International Symposium onCyberWorlds (CW2002), Theory and Practices, IEEE press, Tokyo, Japan,2002, pp. 405–411.

[14] B. Hu, N. Shadbolt, Visualising a DL Knowledge Base with DeLogViz, in:Proceedings of the International Workshop on Description Logics (DL2003),Rome, Italy, 2003, pp. 224–228.

[15] C. Plaisant, J. Grosjean, B. B. Bederson, SpaceTree: Supporting Explorationin Large Node Link Tree, Design Evolution and Empirical Evaluation, in:Proceedings of the IEEE Symposium on Information Visualization (INFOVIS2002), Boston, USA, 2002, pp. 57–64.

[16] B. S. Benjamin B. Bederson, M. Wattenberg, Ordered and quantum treemaps:Making effective use of 2D space to display hierarchies, ACM Transactions onGraphics 21 (4) (2002) 833–854.

[17] M.-A. Storey, M. Musen, J. Silvia, C. Best, N. Ernst, Fergerson, N. Noy,Jambalaya: Interactive visualization to enhance ontology authoring andknowledge acquisition in Protege, in: Proceedings of the Workshop onInteractive Tools for Knowledge Capture (K-CAP 2001), Victoria B.C., Canada,2001.

[18] S. Oh, M. Chung, ezOWL Protege plugin, http://iweb.etri.re.kr/ezowl/.

21

[19] V. Haarslev, R. Moller, RACER System Description, in: Proceedings ofthe International Joint Conference on Automated Reasoning (IJCAR’2001),Springer Verlag, Siena, Italy, 2001, pp. 701–705.

[20] I. Horrocks, P. F. Patel-Schneider, F. van Harmelen, From SHIQ and RDF toOWL: The making of a web ontology language, Journal of Web Semantics 1 (1)(2003) 7–26.

[21] S. Bechhofer, F. van Harmelen, J. Hendler, I. Horrocks, D. L. McGuinness,P. Patel-Schneider, L. A. Stein, OWL Web Ontology Language Reference, W3CRecommendation (February 2004).

[22] C. Tempich, R. Volz, Towards a benchmark for Semantic Web reasoners – ananalysis of the DAML ontology library, in: Proceedings of the 2nd InternationalWorkshop on Evaluation of Ontology-based Tools (EON2003), Sanibel Island,USA, 2003, pp. 1–12.

[23] F. van Harmelen, The Complexity of the Web Ontology Language, IEEEIntelligent Systems 17 (2) (2002) 71–72.

[24] K. Sugiyama, K. Miscue, Visualization of Structural Information: AutomaticDrawing of Compound Digraphs, IEEE Transactions on Systems, Man, andCybernetics 21 (4) (2000) 876–892.

[25] B. Shneiderman, Dynamic queries for visual information seeking, IEEE Software11 (6) (1994) 70–77.

[26] D. L. McGuinness, A. Borgida, Explaining Subsumption in Description Logics,Tech. Rep. LCSR-TR-228, Dept. of Computer Sciences, Rutgers University(September 1994).

[27] A. Borgida, E. Franconi, I. Horrocks, D. McGuinness, P. F. Patel-Schneider,Explaining ALC subsumption, in: Proceedings of the International Workshopon Description Logics (DL1999), 1999, pp. 37–40.

[28] T. Liebig, M. Halfmann, Explaining Subsumption in ALEHFR+ TBoxes,in: Proceedings of the 2005 International Workshop on Description Logics(DL2005), Edinburgh, UK, 2005, to appear.

[29] B. Bederson, J. Grosjean, J. Meyer, Toolkit Design for Interactive StructuredGraphics, Tech. Rep. CS-TR-4432, University of Maryland (January 2002).

[30] I. Niles, A. Pease, Towards a Standard Upper Ontology, in: Proceedings ofthe 2nd International Conference on Formal Ontology in Information Systems(FOIS-2001), Ogunquit, Maine, USA, 2001, pp. 2–9.

[31] R. J. Erich Gamma, Richard Helm, J. Vlissides, Design Pattern - Elements ofReusable Object-Oriented Software, Addison-Wesley, 1995, Ch. Observer, pp.293–303.

[32] J. J. Carroll, I. Dickinson, C. Dollin, D. Reynolds, A. Seaborne, K. Wilkinson,Jena: Implementing the Semantic Web Recommendations, in: Proceedings ofthe 13th International World Wide Web Conference (WWW2004), New York,NY, USA, 2004, pp. 74–83.

22

[33] P. Patel-Schneider, B. Swartout, Description-Logic Knowledge RepresentationSystem Specification, working Version (Draft) (November 1993).

[34] B. Parsia, E. Sirin, Pellet: An OWL DL Reasoner, in: Poster Proceedings of the3rd International Semantic Web Conference (ISWC), Hiroshima, Japan, 2004,pp. 57–58.

[35] R. M. MacGregor, A Deductive Pattern Matcher, in: Proceedings of the SeventhNational Conference on Artificial Intelligence, (AAAI 88), AAAI Press, SaintPaul, Minnesota, USA, 1988, pp. 403–408.

[36] T. Liebig, H. Pfeifer, F. von Henke, Reasoning Services for an OWL AuthoringTool: An Experience Report, in: Proceedings of the 2004 InternationalWorkshop on Description Logics (DL2004), Whistler, BC, Canada, 2004, pp.79–82.

[37] R. Moller, V. Haarslev, The Description Logic Handbook, Cambridge UniversityPress, 2003, Ch. Description Logics Systems, pp. 282–305.

[38] U. S. Ian Horrocks, S. Tobies, Practical Reasoning for Expressive DescriptionLogics, in: Proceedings of 6th International Conference on Logic forProgramming and Automated Reasoning (LPAR’99), no. 1705 in LNCS,Springer Verlag, 1999, pp. 161–180.

[39] Mail-Archives, W3C Web Ontology Working Group,http://lists.w3.org/Archives/Public/www-webont-wg/ (2004).

[40] S. Schlobach, R. Cornet, Non-Standard Reasoning Services for the Debuggingof Description Logic Terminologies, in: Proceedings of the EighteenthInternational Joint Conference on Artificial Intelligence (IJCAI 03), MorganKaufmann, Acapulco, Mexico, 2003, pp. 355–362.

[41] F. Baader, R. Kusters, F. Wolter, The Description Logic Handbook, CambridgeUniversity Press, 2003, Ch. Extensions to Description Logics, pp. 219–261.

[42] F. Baader, B. Sertkaya, A.-Y. Turhan, Computing the Least Common Subsumerw.r.t. a Background Terminology, in: Proceedings of the 2004 InternationalWorkshop on Description Logics (DL2004), Whistler, BC, Canada, 2004, pp.11–20.

[43] C. Fluit, M. Sabou, F. van Harmelen, Handbook on Ontologies inInformation Systems, Springer Verlag, 2004, Ch. Supporting User Tasks throughVisualisation of Light-weight Ontologies, pp. 414–432.

23