VOWL: Visual Notation for OWL Ontologies

Specification of Version 1.0 - 28 January 2013


Latest version: http://purl.org/vowl/spec/

This version: http://purl.org/vowl/spec/v1/

Authors: Stefan Negru and Steffen Lohmann


Abstract

The Visual Notation for OWL ontologies (VOWL - pronounced "vowel" [vou-uh l]) provides graphical representations for elements of the Web Ontology Language (OWL). It allows for an integrated view on ontologies that visualizes classes (circles) along with their individuals (sections in the circles) and property relations (connecting lines and arrows).


Table of Contents

  1. Visual Layers
  2. Visual Notation
  3. Example
  4. Acknowledgments
  5. References

Visual Layers [back to top]

VOWL distinguishes between three layers that may be visualized:

Familiarity with OWL 1 and/or OWL 2 is recommeded before using this notation. More information on the visual notation and related work can be found in Negru & Lohmann 2013.


Visual Notation [back to top]

The notation is based on four types of graphical elements:

Table 1 provides an overview of the graphical representations for the different OWL elements (formatted as Scalable Vector Graphics (SVG)). Note that some of the elements are from RDF Schema (RDFS) – they are included in the notation, as they are reused in OWL.

Table 1. Graphical representations of OWL elements
Element Graphical representation Description
owl:Class Class Label Circle with round label (rdfs:label) in the middle. Classes from imported ontologies are displayed entirely in gray (incl. the label background).
owl:Thing Thing Simple circle with label Thing.
Individuals, enumerations (e.g. owl:oneOf) Class Label 3 instances + 2 inferred instances Individuals are visualized as sections of the circle that represents the class the individuals belong to.
owl:ObjectProperty, owl:DatatypeProperty Domain Range Object Property Range Domain Datatype Property Line or arc annotated with the label of the property. The label's background color indicates the type of the property (object or datatype property).
rdfs:subClassOf, rdfs:subPropertyOf Property [Subproperty] or Dotted line/arc with an unfilled arrow head at the end pointing to the superclass or superproperty. Subproperties having the same domain and range as their superproperties can alternatively be listed in square brackets within the label of the superproperty.
rdfs:domain, rdfs:range Domain Range Property Arrow starting at the domain and pointing to the range. Datatype properties do not need an arrow, as they are always directed to the literal or data value.
owl:inverseOf Property Inverse Property Domain Range Line/arc with arrow heads at both ends and annotated with the label of the property and its inverse counterpart. Filled arrow heads at the end of the labels indicate the direction of the properties (i.e. their range).
owl:disjointWith Dashed line/arc with \\ symbol as label.
owl:FunctionalProperty, owl:InverseFunctionalProperty, owl:TransitiveProperty Domain Range Functional Property F Domain Range Inverse Functional Property InvF Domain Range Transitive Property T Object property representation with an F for functional properties, InvF for inverse functional properties, and T for transitive properties on top of the property label.
owl:SymmetricProperty Class Label Symmetric Property Object property representation with identical domain and range, i.e. start and end point of the arrow is the same class.
owl:cardinality, owl:minCardinality, owl:maxCardinality Domain Range Cardinality Property min:1 max:1 Exact, minimal, and/or maximal cardinality constraints are written above the property label.
owl:equivalentClass Class Label, Equivalent Class Label

Colored ring around a class. The labels of equivalent classes are shown as comma-separated list in the label, each colored in the same font as the corresponding ring.

owl:unionOf Dashed line/arc with ∪ symbol as label.
owl:intersectionOf Dashed line/arc with ∩ symbol as label.
owl:complementOf Dashed line/arc with ¬ symbol as label.
Literals, data types and values Literal Rectangle containing the literal, data type or value.
owl:DeprecatedClass Class Label Class representation colored in dark gray (with white label background).
owl:DeprecatedProperty Domain Range property Object/datatype property representation colored in dark gray.
owl:equivalentProperty {property1, property2} Labels of equivalent properties are listed in curly brackets.
rdfs:comment, rdfs:seeAlso, rdfs:isDefinedBy label Inverted literal representation (i.e. black rectangle with white font).
owl:sameAs individual1 sameAs individual2 Inverted literal representation listing the labels of the individuals connected with the keyword `sameAs'.
owl:imports, owl:versionInfo, owl:priorVersion, owl:BackwardCompatibleWith and owl:incompatibleWith Title: Ontology vocabulary About: URI reference Description: This is an example regarding the info box. area where elements like owl:imports, owl:versionInfo, owl:priorVersion, owl:BackwardCompatibleWith and owl:incompatibleWith might be placed Text in an infobox complementing the visualization.

The basic set operations owl:intersectionOf, owl:unionOf and owl:ComplementOf define new (anonymous) classes to describe the union, intersection, or complement of other classes, and are thus represented as circles. The circles contain the corresponding Description Logic (DL) symbols (∪,∩, ¬).

Elements such as owl:Ontology, owl:differentFrom, owl:AllDifferent, owl:distinctMembers, owl:Restriction, owl:onProperty, owl:allValuesFrom, owl:someValuesFrom, owl:hasValue, owl:AnnotationProperty, owl:OntologyProperty, and owl:DataRange (rdfs:datatype in OWL 2) serve as containers for other elements or define constraints for populating the ontology. They are not graphically represented by the visual notation.

The size of the circles is determined by the number of incoming and outgoind property relations (the more relations, the larger the circle). The class representation of owl:Thing has a fixed size, as it usually does not carry particular domain information. It is recommended to use multiple representations of owl:Thing to not give this element an importance in the visualization that it does not deserve.

If certain classes, properties, or individuals do not have an rdfs:label, it is recommended to display a part of the URI as label (e.g. the characters that follow the last slash or number sign).


Example [back to top]

Figure 1 depicts the visual representation of the Conceptual Layer of the Friend of a Friend (FOAF) vocabulary (version 0.98) as an illustration of VOWL.

demo conceptual view VOWL FOAF ontology
Figure 1. Visual Representation of the Conceptual Layer of the FOAF ontology (version 0.98).

Figure 2 visualizes the Integrated Layer of the Friend of a Friend (FOAF) vocabulary using the VOWL notation and some sample data. The sample data consists of 28 individuals that are distributed on the FOAF classes as follows: 5 x Person, 7 x Document, 5 x Image, 2 x Group, and 9 x Organization. Though all these individuals are represented as sections in the circles, the property relations of only one selected individual are shown (namely, "Jane Doe"). The FOAF profile of that individual in RDF/XML syntax is as follows:

<rdf:RDF
 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
 xmlns:foaf="http://xmlns.com/foaf/0.1/">
<foaf:Person rdf:ID="janedoe">
  <foaf:name>jane doe </foaf:name>
  <foaf:title>Mrs. </foaf:title>
  <foaf:givenname>jane </foaf:givenname>
  <foaf:family_name>doe </foaf:family_name>
  <foaf:nick> jane </foaf:nick>
  <foaf:mbox rdf:resource="mailto:janedoe@example.com"/>
  <foaf:homepage rdf:resource="www.example.com/janedoe"/>
  <foaf:depiction rdf:resource="janedoe.jpg"/>
  <foaf:workplaceHomepage rdf:resource="www.work.com/janedoe"/>
  <foaf:knows>
   <foaf:Person>
    <foaf:name>john doe </foaf:name>
    <foaf:mbox rdf:resource="mailto:johndoe@xample.com"/>
   </foaf:Person>
  </foaf:knows>
</foaf:Person>
</rdf:RDF>
demo integrated view VOWL FOAF ontology
Figure 2. Visual Representation of the Integrated Layer of the FOAF ontology (with sample data).

The visual representations of the example are also available in SVG format: Conceptual Layer and Integrated Layer.


Acknowledgments [back to top]

This work was partially supported by the European Social Fund in Romania, under the responsibility of the Managing Authority for the Sectorial Operational Program for Human Resources Development 2007-2013 (grant POSDRU/107/1.5/S/78342).


References [back to top]

Negru, S. and Lohmann, S.: A Visual Notation for the Integrated Representation of OWL Ontologies. Proceedings of the 9th International Conference on Web Information Systems and Technologies (WEBIST '13). SciTePress 2013; pp. 308-315 [BibTex]