Protege4Views

From Protege Wiki
Jump to: navigation, search

Protege Views

This page contains a summary of the default views provided with Protege 4, 5 and newer, many of which are not visible by default.


Back to Protege User Documentation


Views are the building blocks of the Protege user interface. They can be placed anywhere on any tab and your setup will be persisted across Protege versions.

For notes on how to configure your user interface to include some of these views please see this section in our quick start guide.

Views are to be found in the View menu, and are categorised as below.


General views

Some views are very similar for multiple categories (particularly those for different entity types), and are therefore cross-referenced to here to avoid duplication.

Frame views

P4frameview.png

Many views in the default distribution have a similar look and feel. They are a subtitled or categorised list of elements.

The component used is a frame list and it is discussed here to explain its generic behaviour.

The first thing to notice is that a frame list is broken up into subsections, each with a section header describing the type of items it contains. All sections that can be added to have a + button in the header. This button will provide an editor for creating a new item in the section.

Each item in a frame list will generally represent a single statement(axiom) in the ontology. The buttons on the right hand side allow some standard actions (hover over to see the tooltops):

  • Annotations axiom annotations - this is highlighted with a circle if annotations already exist
  • Remove X delete this statement from the ontology
  • Edit open an editor to change this axiom in some way. An edit can also be performed by double clicking on the item.

A combination of asserted and inferred information can be shown in frame lists. Inferred information is displayed in pale yellow with a dashed border. Inferred axioms cannot be edited or deleted.

If an axiom is asserted, hovering over the item will pop up a tooltip to state which ontology the axiom was asserted in (see right). In addition, axioms that are asserted in the active ontology are highlighted in bold.

By default, there are several actions in an item's context menu to manage where the assertion is made. To access the context menu click the right mouse button (mac users may have to first select the item with the left mouse button). The standard actions are:

  • Switch to defining ontology make the ontology that contains this assertion the active ontology
  • Pull into active ontology move the assertion into the current active ontology
  • Move axiom(s) to ontology move the assertion(s) into a specified ontology

A particular frame list may implement additional actions in this menu.

note to developers: the framelist component is discussed here


Hierarchy views

The primary means of navigating around an ontology is the various hierarchy views that are shown on the left of a tab by default.

Selecting an entity in its tree causes a global selection update (making it possible to go back and forward like a web browser). Other views that can show entities of the same type will refresh to display information pertinent to that entity.

Most trees support drag and drop - the effect of which depends on the type of information shown by the tree.


Annotations views

P4-class-annotations-view.png

See also: Frame views

Classes, properties, individuals, ontologies and even axioms can be annotated. All of the views look and act the same way.

Clicking Add, double clicking on an existing annotation or clicking its edit button opens the editor (below).



Annotation editor

P4-annotation-editor.png

Select an annotation URI from the left (or add your own on in the top section if you want).

You can annotate using:

  • Constant a data value (typed or untyped). If untyped, then you can specify a language.
  • Individual an existing named individual from the ontology (you can even create one in the editor
  • Property values an anonymous individual (one that can have properties itself, but is not visible outside the ontology - arguably they should only be visible in this editor)


Usage views

For classes, properties and individuals the usage view shows anywhere in the active ontologies that references the currently selected entity.

P4-object-property-usage.png

Usage is sorted by referencing entity (where possible) and all expressions are hyperlinked for easy navigation.

This can be particularly useful for finding out how much a particular entity is used in an ontology, or when you want to know where a class has been used as the filler of a restriction for example.

There are additional filters also available to reduce the results:

  • this axioms that pertain to the current selection and are likely to be easily visible in other views. eg when p is selected, functional(p) is hidden unless the this box is checked
  • disjoints the number of disjoints can be large (particularly if they are pairwise) and are often not helpful in understanding the use of a property/class so are hidden unless this box is checked
  • named sub/superclasses (for classes only) this information is easily read off the class hierarchy and a large number of subclasses clutters the usage view so they are hidden unless this box is checked


Views by category

Class views

Asserted class hierarchy

Assertedclasshierarchy.png

Also see Hierarchy Views

The asserted class hierarchy view is one of the primary navigation devices for named OWL classes.

The tree shows the subclass hierarchy that can be obtained from subClassOf assertions in the ontology. Children nodes in the tree are subsumed by their parent nodes. Any classes that do not have an asserted superclass will show up directly under owl:Thing (the root). For convenience, the tree also performs some trivial inferences to allow defined classes to appear in the hierarchy. Classes that have been asserted to be equivalent show up together on the appropriate node in the tree. Cycles are detected and removed.

Classes will show up multiple times in the tree if they have more than one asserted named superclass.

Primitive classes are shown with a simple circle icon. Defined classes are shown with an equivalence symbol in their icon.

Dragging and dropping classes in the hierarchy will cause subclass relations to change (the old subclass relation will be removed and a new one added).


Inferred class hierarchy

Also see Hierarchy Views

Similar to the Asserted class hierarchy but using the reasoner to provide a complete view.

The inferred class hierarchy will be empty unless a reasoner has been selected and the ontology successfully classified.

By default, after classification, the inferred class hierarchy will be brought forward if it is hidden behind another view (as it is by default).

To avoid confusion, it has been made easy to recognise this view by its pale yellow background and the fact that it contains an additional class owl:Nothing not shown in the asserted class hierarchy. In OWL Nothing is defined as the empty set - a class that is unsatisfiable. Classes that have been inferred to be unsatisfiable will be marked in red and shown as children of Nothing.

Description

Classdescription.png

See also: Frame views

The class description view is the core of the class editor.

The sections are

  • Equivalent classes each entry specifies a named class or expression that is equivalent to the current selected class
  • Superclasses each entry specifies a named class or expression that is a superclass of the current selected class
  • Inferred anonymous superclasses protege searches all ancestors of the selected class and accumulates all of their anonymous superclasses which are then displayed in this section
  • Members each entry specifies an individual that has this class as its type in a class assertion axiom
  • Disjoint classes each entry specifies a single disjoint statement. A disjoint statement can contain 2 or more classes (the current selected class is removed from the list for clarity)

Adding or editing Equivalent classes or Superclasses invokes a dialog that contains multiple editors. The editors range from a simple tree from which a class can be picked, to restriction creators that help produce simple restrictions with a named filler, to a fully functioning expression editor. The editor set is pluggable so developers can add further tool support.

The Disjoint classes editor gives the choice of a class hierarchy on which multi-select can be performed, or an expression editor where multiple values can be entered by comma separating them.

Additional entries in the context menu include:

  • Convert selected rows to defined class build an intersection using the selected superclasses and make this class equivalent to the intersection (removing the superclass assertions)
  • Create new defined class make a new defined class that is equivalent to the selected class
  • Create closure axiom (if the assertion is subclassOf(p some A)) accumulate all fillers of superclass some restrictions on p (say A, B and C). Add a new superclass - p only (A or B or C) to close the property p.


Annotations

See Annotations views

Usage

See Usage views

Asserted superclass hierarchy

Also see Hierarchy Views

The asserted superclass hierarchy is an inverted tree. With the currently selected class as its root, all children in the tree are asserted superclasses of their parent, right back to owl:Thing at each leaf node.

This can be useful in tracking where multiple superclasses have been asserted (considered bad modelling practice).

Inferred superclass hierarchy

Also see Hierarchy Views

Similar to the Asserted superclass hierarchy but using the reasoner to provide a complete view.

General class axioms

Generalclassaxioms.png

See also: Frame views

The General class axioms view displays class axioms that cannot be directly associated with a named class.

eg A and (p some B) subClassOf B and (q some C)

It will show:

  • Equivalent class axioms containing no named classes
  • Subclass axioms where the subclass is anonymous
  • Disjoint axioms containing named classes

Adding any other axioms in this view will not show up but cause them to be visible in the class description view when the appropriate class is selected. ie you can enter A subClassOf p some B but it will show up in the description of A, not in this view.

OWLViz

A graphical tool for visualising and exploring the class hierarchy.

See OWLViz

Anonymous defined classes

An experimental feature not currently available. See this page about anonymous class support

Anon classes view.png



Object property views

Object properties

Obj-prop-hierarchy.png Inf-obj-prop-hierarchy.png

Also see Hierarchy Views

Displays the hierarchy of data properties based on subPropertyOf assertions.

Inferred object property hierarchy

Also see Hierarchy Views

Once the reasoner has classified this view will show the computed object property hierarchy.

Easily distinguishable from the asserted hierarchy as this has a yellow background.


Description

Objectpropdescriptionview.png

See also: Frame views

Contains the following sections:

  • Domains (intersection) if an individual is the subject of a relation using this property then it must be a member of this class. Multiple entries are treated as an intersection
  • Ranges (intersection) if an individual is the object of a relation using this property then it must be a member of this class. Multiple entries are treated as an intersection
  • Equivalent object properties each entry is equivalent to this property
  • Super properties this property is a subproperty of each entry in this section
  • Inverse properties this property is the inverse of each entry in this section
  • Disjoint properties multiselect can be used in the editor to create a disjoint set including this property
  • Property chains Allow transitivity across multiple properties. For the currently selected property prop3, the editor syntax is prop1 o prop2 [o ...] -> prop3 which means if a prop1 b and b prop2 c then a prop3 c.


Characteristics

For a description of property characteristics please see w3c OWL property characteristics.

Domains and ranges

Domains and ranges have been merged in the description view, but this view is still available.

Usage

See Usage views

Annotations

See Annotations views


Data property views

Data properties

Also see Hierarchy Views

Displays the hierarchy of data properties based on subPropertyOf assertions.

Description

See also: Frame views

Very much the same as the Object property description view but range is defined as a datatype and has the appropriate editor and there are no inverses or property chains on data properties.

Characteristics

The only property characteristic available to data properties is functional

Annotations

See Annotations views

Usage

See Usage views

Domains and ranges

Now merged into the data property description view.



Individual views

Individuals

Individuals by class

Description

See also: Frame views

Annotations

See Annotations views

Usage

See Usage views

Members list

Property assertions

See also: Frame views

Misc views

Axiom annotations

Inline view for viewing/editing axiom annotations. See axiom annotations for more information.

P4-axiom-annotation-view.png


Query

Better known as DLQuery.

Dl-query-equip-blur.png


Selected entity

The basis for the entities tab.

This view contains other views and follows the current selection, whether this is a class. property or individual.

The default layout for each entity type can be seen in the entities tab - you can completely change these and they will be preserved.


Manchester syntax entity rendering

Coming in build 105. Manchester syntax rendering for the currently selected entity (for easy cut and paste).

Man-syntax-entity-view.png



Ontology views

Annotations

See Annotations views

DL metrics

Explanation

Inferred axioms

See also: Frame views

Navigation subject

Navigation view

Ontology metrics

Rules

See also: Frame views


Imported ontologies

OWLViz imports graph


Manchester syntax rendering

OWL functional syntax rendering

OWL/XML rendering

RDF/XML rendering

FaCT++ Rendering

Back to Protege User Documentation