=Paper=
{{Paper
|id=Vol-1704/paper13
|storemode=property
|title=Advanced UML Style Visualization of OWL Ontologies
|pdfUrl=https://ceur-ws.org/Vol-1704/paper13.pdf
|volume=Vol-1704
|authors=Jūlija Ovčiņņikova,Kārlis Čerāns
|dblpUrl=https://dblp.org/rec/conf/semweb/OvcinnikovaC16
}}
==Advanced UML Style Visualization of OWL Ontologies==
Advanced UML Style Visualization of OWL Ontologies
Jūlija Ovčiņņikova*, Kārlis Čerāns
julija.ovcinnikova@lumii.lv, karlis.cerans@lumii.lv
Institute of Mathematics and Computer Science, University of Latvia
Raina blvd. 29, Riga, LV-1459, Latvia
Abstract. The OWLGrEd ontology editor allows graphical visualization and au-
thoring of OWL 2.0 ontologies using a compact yet intuitive presentation that
combines UML class diagram notation with textual OWL Manchester syntax for
expressions. We describe here the approaches available for ontology presentation
fine tuning within the OWLGrEd editor, namely the ontology visualization op-
tion framework and the editor plug-in mechanism together with concrete plug-
ins aimed to enhance the ontology presenting and editing experience.
Keywords: OWL, OWLGrEd, UML-style ontology visualization, ontology vis-
ualization options
1 Introduction
Presenting OWL ontologies [1] in a comprehensible form is important for ontology
designers and their users alike. The graphical form in general and UML class diagram
notation in particular offers an option of basic visual ontology construct presentation
that allows linking together constructs that are related in the ontology (e.g. an object
property can be depicted as a line connecting its domain and range class boxes). UML
class diagrams need to be extended to cope with full OWL 2.0 construct modeling. This
is solved in different graphical notations in different ways. So, ODM [2], defines a
UML profile for ontology presentation and OWLGrEd [3] and TopBraid Composer [4]
integrate OWL Manchester Syntax [5] for presenting advanced OWL constructs in tex-
tual form. The uniqueness of OWLGrEd lies in its combined ability to lay out an ontol-
ogy that is imported or created in the editor in a compact graphical UML-style form,
and make further manual ontology editing/adjustment. VOWL [6] visualizes ontologies
by another approach using graphical primitives both for object and data property
presentation, so obtaining a more uniform ontology presentation in a dynamic, yet read-
only, graph-like form. The VOWL presentation of the same ontology will also typically
require more graphical elements, than OWLGrEd.
The real strength of ontology presentation in an editor like OWLGrEd comes from
the user’s ability to fine-tune the ontology diagram after its automated rendering to
obtain documentation-ready ontology presentations. Such a fine tuning may involve the
* Supported, in part, by Latvian State Research program NexIT project No.1 “Technologies of
ontologies, semantic web and security”.
136
Advanced UML Style Visualization of OWL Ontologies
diagram object repositioning, as well as its re-structuring up to full ontology editing
facilities available in the tool (including e.g. manual deletion of irrelevant information).
In order to achieve a high quality ontology presentation in the tool, even in the pres-
ence of manual fine tuning options available, the quality of first ontology diagram cre-
ated upon the import of the ontology into the tool still remains very important. Since
the UML diagrams, as well as the OWLGrEd notation allow for different presentations
of the same semantic elements (e.g. a graphical and textual one), and different ontolo-
gies may correspond to different desirable ontology presentation options, we describe
here a re-factored ontology visualization option framework offering a number of
choices that the user can make already before importing the ontology into the tool.
We describe here also a number of OWLGrEd plugins that can be used for diagram
refactoring services, as well as its structural and semantics extensions. This part of work
extends the earlier authors’ work on domain specific ontology visualizations [7,8] (this
paper describes new re-factoring services plug-in, as well as reviews the plug-in mech-
anism and concrete plugin architecture from the ontology visual presentation perspec-
tive). The editor plugins described here are included in the OWLGrEd tool download
and can be activated on-demand for concrete projects. The OWLGrEd editor with pre-
installed configuration, as described here, is available at http://owlgred.lumii.lv/pp.
2 OWLGrEd Notation and Editor
OWLGrEd (http://owlgred.lumii.lv/) provides a graphical notation for OWL 2 [1],
based on UML class diagrams. OWL classes are typically visualized as UML classes,
data properties as class attributes, object properties as association roles, individuals as
objects, cardinality restrictions on association domain class as UML cardinalities, etc.
The UML class diagrams are enriched with new extension notations, e.g. (cf. [3,9]):
fields in classes for equivalent class, superclass and disjoint class expressions writ-
ten in Manchester OWL syntax [5];
fields in association roles and attributes for equivalent, disjoint and super properties
and fields for property characteristics, e.g., functional, transitive, etc.;
anonymous classes containing equivalent class expression but no name;
connectors (as lines) for visualizing binary disjoint, equivalent, etc. axioms;
boxes with connectors for n-ary disjoint, equivalent, etc. axioms;
connectors (lines) for visualizing object property restrictions some, only, exactly, as
well as cardinality restrictions.
Fig. 1 contains a simple demonstration fragment of Latvian Medicine Registries ontol-
ogy [10] in OWLGrEd notation, illustrating the class, data and object property, as well
as subclass, sub-property and object property restriction notation, different ways of dis-
joint classes notations, class-level inline comments and ontology level annotations.
The OWLGrEd tool allows both for ontology authoring (with option to save the on-
tology in a standard textual format) and ontology visualization that includes automated
ontology diagram formation and layouting step, followed by optional manual diagram
fine tuning to obtain the highest quality rendering of the ontology.
137
Advanced UML Style Visualization of OWL Ontologies
treatedIllnessCase IllnessCase <>
IllnessTreatment "Illness case
Person and patient
patient
personID:string ontology
{disjoint} dateOfBirth:dateTime diabPatient {> only
DiabetesTreatment
Fig. 1. Demo fragment of Latvian Medicine Registries Ontology
3 Ontology Visualization Parameters
The UML notation provides several options for presenting its semantic elements in dif-
ferent visual ways. This principle is kept also in OWLGrEd by including both graphical
and textual notations for such semantic elements as subclass relations, object property
relations, annotations and object properties as association roles or as attributes.
The automatic ontology visualization in OWLGrEd by default shall use the graphical
notation, if there is no clear reason for switching to textual one. Fig. 2 shows a larger
fragment of Medicine Registries Ontology in a graphical notation for all object proper-
ties and object property restrictions, and with separate disjoint classes axiom rendering.
treatedIl lnessCase IllnessCase
Person
personID:string patient
treatingD octor dateOfBirth:dateTime diabPatient {> traumaPatient cancerPatient
illnessR egDoctor
Doctor {> only
treatedIl lnessCase only Trauma
MedicalEstablishement <>
estNam e:string
estType :string
treatme ntPlace
IllnessTreatment traumaD iagnosis cancerD iagnosis
treatedD iagnosis {>
diabDia gnosis {> diagnDe scr:string traumaTrDiagnosis {>
personID:string illnessR egDoctor:Docto r treatingD octor:Doctor Diagnosis
dateOfBirth:dateTime illnessD iagnosis:Diagn osis treatme ntPlace:Medica lEstablishemen t diagnCo de:string
patient:Person treatedD iagnosis:Diagn osis diagnDe scr:string
treatedIl lnessCase:Illne ssCase
Trauma {disjoint} {disjoint}
traumaR egDoctor:Doctor{>
cancerTrDiagnosis:Dia gnosis{>
Doctor
Diabetes doctorN ame:string
diabReg Doctor:Doctor{>
{disjoint}
traumaR egDoctor:Doctor{>
cancerR egDoctor:Docto r{>
diabReg Doctor:Doctor{