From Protege Wiki
Getting Started with Protege 4.x OWL
This page contains instructions for getting started with the OWL editor in Protege 4.x.
Back to Protege4UserDocs
Protege 4.0 is an OWL ontology development environment. This quick start guide forms part of the P4 user documentation and is designed to get you up and running with the tool.
In just a few minutes you should be able to install Protege, load an ontology, navigate around it, use a reasoner to classify it and configure the interface to your taste.
If you haven't already done so, you need to download and install Protege 4.0 from the Protege website. If you are a new user, please go to the main download page and register first, which helps us to track the number of Protege users: http://protege.stanford.edu/download/download.html.
If you are an existing user, you can proceed directly to the downloads page: http://protege.stanford.edu/download/registered.html#p4.
Note: On the main download page, you will also find links to a release notes page for each new build of Protege 4.0, as well as a link to the location of the source code.
Install & Run Protege
Once you have navigated to the installer page, click the "Download Installer for <xxx-platform>" button to run the installer:
Run Protege from the location where you installed shortcuts or from the Protege installation directory specified during the installation process. On a Windows machine, you can double-click the Protege executable file (Protege.exe), or use the run batch file (run.bat). If you choose to use the batch file, please make sure the JAVA_PATH variable is set correctly. On the Mac there will be a Protege.app, or you can run using one of the scripts. Note: by default, Protege 4.0 is configured to run in a fairly small memory footprint ~200MB. To get optimum performance, you can change this using our instructions on setting the heap size.
You will now be presented with the Welcome screen from which you can create a new ontology or open an existing ontology from your local machine or from the Web. We can start by opening an existing ontology. Note: once you have opened or saved an ontology, it will be easily available to click on in the "Open Recent" box.
Download the pizza ontology from http://www.co-ode.org/ontologies/pizza (the unclassified version in RDF syntax will work as an example).
Select Open OWL ontology from the Welcome screen and find the
pizza.owl file on your filesystem.
You will now be presented with the main Protege workspace, which opens by default to the Active Ontology tab. This tab shows an overview of the pizza ontology, including metrics on its contents, annotations about the ontology as a whole, and other imported ontologies (if any imports exist). The drop-down on the toolbar displays the currently active ontology, that is to say, the one into which all edits take place. When working on a single ontology this concept of the active ontology is not a concern.
Now switch to the Entities Tab.
The Entities tab is the workhorse of the ontology editor. From this location, you can explore all of the classes, properties, and individuals in an ontology. As you may have already noticed, each tab is made up of several views which can be resized, removed, floated, split, and layered (more about views later). The selection model is global: when a class, property or individual is selected in the trees on the left-hand side, the right pane changes to display the selection immediately. In addition, most views implement hypertext navigation so that links can be followed easily regardless of which view you are using. Opening up the hierarchies and selecting a class or property displays the appropriate description on the right. Backward and forward navigation is possible with the left and right arrow buttons in the toolbar, which act just like a Web browser.
Another easy way to navigate around the contents of an ontology is to perform a search.
The find box in the toolbar
performs a global search over any named entity in an ontology.
In addition, the hierarchy views
have their own find dialogs
(first, click anywhere in the view to give it focus, then
Ctrl-F on Windows,
Command-F on Mac).
Reasoning with your ontology is one of the most commonly performed activities and Protege 4.1 comes with a built-in reasoner called HermiT. To classify your ontology, open the Reasoner menu and select HermiT, which will automatically classify your ontology. After the reasoner finishes classifying, an additional sub tab appears on the Entites tab to show the inferred class hierarchy. Unsatisfiable classes appear in red under Nothing and everything else appears in the hierarchy under their inferred superclasses. The asserted class hierarchy is still available, stacked under the asserted one.
There are other reasoners available for Protege 4.1, including Pellet and FaCT++. These reasoners are available for download from the File | Check for plugins... menu item.
Investigate other tabs
- OWLViz - requires installation of Graphviz before anything will be visible. This tab shows a graphical representation of the class subsumption hierarchy. A full description of OWLViz is available in the OWLViz manual.
- DL Query - requires the ontology to have been classified before it will return results. An arbitrary class description can be entered and the reasoner is queried for the sub/super classes, inferred members, etc., depending on what is selected.
Each tab is made up of multiple views - each with its own perspective on the ontology, or just one aspect of the ontology (like the last selected class).
Views can be stacked on top of each other, in which case you will see additional tabs for exposing them.
Examples of this are the usage views that are by default on the Entities, Classes, Properties and Individuals tabs. Select the tab to make the view visible.
All of the views that are on tabs by default and many more that aren't are listed in the Views menu. You can add and remove views to create you own custom interfaces (see below).
Reconfigure the User Interface
Reconfiguring the user interface is easy! Adding and removing tabs and views is possible through the Tabs and View menus. Try removing the Classes and Properties tabs to unclutter the screen. Try adding a view to the Entities tab:
- Switch back to the Entities Tab
- Select a class to make sure the Selected Entity view is showing class views.
- Select Window | Views | Class Views | Asserted Superclass Hierarchy. Now, when you float over the editor, a blue outline shows where the new view will be dropped - either on top of, above, below, left, or right of each of the current views.
- When happy with the position, click the left mouse button to drop the view (if you want to cancel this operation just click somewhere on the toolbar instead).
- The superclass tree view is now visible (the tree shows the "upside-down" version of the subclass tree, using the current class as the root).
All changes will be saved when Protege is properly shut down (or the save can be forced by selecting "Save current layout" in the Window menu).
Position the new view over the top of an existing one:
Drop the new view over the top of an existing one - the result is a stack:
Position the new view below an existing one:
Drop the new view below an existing one - the result is another split (surrounding views are resized to fit):
Human Readable Entity Names
Many ontologies use meaningless identifiers as the names of classes, properties and individuals. If your class hierarchy just looks like a mess of numbers or other computer-generated rubbish, but you have labels for each entity, you can ask Protege to use these labels instead.
- Select File | Preferences.
- Select the Renderer tab of the preferences dialog.
- Choose Render entities using annotation values.
- Where labels are provided, Protege will now display these in all views. If a label is missing it will continue to show the entity's ID.
- The annotation that is getting used to render the label (as well as the language) can be selected by pressing the Annotations... button.
The current renderer selected will be preserved next time you open Protege to save this step in the future.
Please also see this note about naming and rendering of entities.
screenshot of entity rendering preferences
To familiarise yourself more with the tool and its capabilities you could read through more of the Protege 4 user documentation.
Or try our fast and dirty guide to building a pizza ontology in 10 minutes.