Visualizing OWL Ontologies with CropCircles
CropCircles is a new visualization technique that we are applying to the problem of understanding and navigating through large class graphs, such as is found in many Web Ontologies.
You can find a preliminary implementation of a CropCircles based browser (christened "The MotherShip") in the latest nightly build (WebStart version available) of Swoop. There is also a paper (accepted in End User Semantic Web Interaction WS @ ISWC2005).
An controlled experiment showing CropCircles is fairly effective in topological tasks when compared to existing, well-known techniques: Taowei David Wang, Bijan Parsia. CropCircles: Topology-Sensitive Visualization of OWL Class Hiearchies. In Proceedings of the 5th International Semantic Web Conference (ISWC), Athens, GA, 2006.
Flying The MotherShip
To Fly the MotherShip from Swoop, please following these directions.
- Load an ontology (selecting Koala from the bookmarks menu is a good starting place)
- From the Advanced menu, select Fly the MotherShip.
- If your ontology has e-connected components, each e-connected ontology will be connected by edges. (The same happens if you have imports, but we are rethinking this approach, as imports and e-connections are very different semantically ).
- You can toggle Draw content of the node (default is on) to show the structure of
the class tree. Turn it off if you need just to see the e-connected
structure, or if you need to rearrange the node layout manually without
redrawing the content all the time (click picture to see the entire
Showing contents Hiding contents
Both classes and partitions are represented as circles. Partitions are always the outermost circle and are red, blue, or green with arrows between them. Red circles depends on other circles. Blue circles do are only depended upon. Green ones are not connected with others.
You can hover over a circle to see a tool tip with the class it represents, or you can select a circle and see it highlighted in the CropCircles display and its class name and immediate children in the class list. Double clicking on an item of that list drills down the class hierarchy. Above that list pane there are forward and back buttons. The upper list allows you to toggle the display of partitions to help unclutter the view. Finally, you can do a substring search on the URIs of classes. The results are displayed in the class list and highlighted in CropCircles in blue.
For quick zoom/pan, you can double click on any circle to zoom and center. You can also double click on the white background to zoom out to see the entire graph.
We've gotten this far in about three months from the first basic notion. So there are plenty of issues! The spacing of layout is very wasteful. The layout heuristics estimate the size of each node in the worst-case scenario, and thus will almost always give an overestimate. You cannot get back into the normal Swoop display by clicking on a node. It would be nice to be able to check on how each class is being defined. The interactive performance degrades when viewing tens of thousands of classes. Some optimization could be nice.
There are other issues, but we're working through them. Comments and suggestions welcome, and should be directed to the Swoop mailing list for the time being. We think CropCircles is very promising for ontology browsing tasks. They are also pretty and fun...how often do you hear THAT about something related to ontologies?
See the paper for details. TreeMaps are probably the closest thing, and are quite neat in their own right.
There is also an attempt to create a 'circular treemap', pebble maps.
Thus far, just the authors of the paper (Bijan Parsia, Taowei Wang, and Jennifer Golbeck) have worked on CropCircles. CropCircles were invented by Bijan Parsia and Taowei Wang. Evren Sirin wrote the first version of the E-Connection visualizer using the JUNG library. Bernardo Cuenca-Grau developed the partitioning algorithm, implementation (with Aditya Kalyanpur), and first two panes of the Partitioning Summary window.