Changes Tab

From Protege Wiki

Jump to: navigation, search


Type Tab Widget
Author(s) William Liu, Tania Tudorache, Timothy Redmond
Last Update 2008/01/09
License Mozilla Public License
Homepage Changes Tab website
For Application

Allows users to track and annotate changes to Protege ontologies.


Versions & Compatibility

This section lists available versions of Changes Tab.

Version Compatible with Dependencies
Changes Tab 1.0 Protege-Frames 3.4.4
Protege-OWL 3.4.4
Protege Client-Server 3.4.4

If you click on the button below to add a new version of Changes Tab, you will be asked to define a page title for the new version. Please adhere to the naming convention of Changes Tab X.X.X when you define the new page!


Version Changes in this version
Changes Tab 1.0 no release notes were maintained for this version


The Changes Tab is bundled with the "full" installation of Protege.

Source Code

The source code for the Changes Tab is available in the Protege Subversion repository:


Documentation for the Changes Tab (including how to use this tab in client-server mode) is available in the form of a PDF document:

How to store the Changes and Annotations ontology in a database

If you have an existing changes and annotation ontology (ChAO) associated to your project, then it is probably stored as RDF(S) files. For example, if you enabled the Changes Tab for the pizza.pprj project, then you would see in the pizza folder the following files:


Starting with Protege 3.4 beta 513, it is possible to store the ChAO ontology using the database backend. For this, you only need to convert the existing annotations project to use the "Protege database" backend. Step-by-step guide on the pizza example from above:

  1. Open the annotation_pizza.pprj in Protege
  2. File menu -> Convert Project to Format... select "Protege Database"
  3. Follow the wizard steps. You will need to enter the db table name, driver, url, etc.
  4. Save using the same project name - so override the old pprj file (in the example, annotation_pizza.pprj)

To avoid confusion you can move or delete the old rdfs and rdf files (annotation_pizza.rdfs, annotation_pizza.rdf). This is only an optional step.

The next time you start Protege with the Changes Tab or with Collaborative Protege, it will use the new database backed changes and annotation ontology.

Clean up of the Changes Ontology

Starting with Protege 3.4 beta 129, we have added a new feature available through the Changes menu (which is activated when the ChangesTab is visible). Users are able to delete from the Changes ontology the change instances and/or the annotation instances. The user is also able to create an archive of the current Changes ontology before the delete operation.

This feature is available by going in the Changes Menu -> Clean-up Changes Ontology. The following dialog will come up:

The dialog that comes up when selecting Clean-up Changes ontology from the Changes menu

  • If the user selects Delete annotations - then all the annotations in the Changes ontology will be deleted.
  • If the user selects Delete changes - then all the changes in the Changes ontology will be deleted.
  • If the user selects Archive changes ontology before deleting - then an archive of the current version of the Changes ontology will be created before the deletion takes place. The archive will be saved in a subdirectory of the folder where the Changes ontology resides. The subfolder will have the name "annotation_prjName.parc" (prjName is the name of the main project). Inside this folder multiple archives (from different times) of the Changes ontology may be present. The subfolders of the "parc" folder are named using the date and time of the archival. For example, if the archival of the Changes ontolog of pizza (annotation_pizza.pprj) took place at 2008-03-13 at 10:03:04, then the following folder strcuture will be created:
|___ 2008.03.14_10.03.04

Make sure to save the Changes ontology to make the modifications permanent. You can save the Changes ontology, either from Changes Menu -> Save Changes Ontology, or by saving the domain project (File menu -> Save).

Note: This functionality is available in stand-alone mode. In client-server mode, the "Clean-up changes ontology" will not be available.

Upgrade instructions for ChAO ontology for Protege 3.4.2 release

The Changes and Annotations Ontology (ChAO) format has changed in Protege 3.4.2 release. If you have an existing ChAO project and would like to take advantage of the new collaborative features (archival of notes, setting the status, etc.), then you need to update the ChAO format.

You only need to do the upgrade if you have an existing ChAO project created with older versions of Protege. If you start with a fresh collaborative project in Protege 3.4.2, then no action is needed!

First, MAKE A BACKUP of the existing ChAO!

Case 1. You did not modify the classes in ChAO

Let's say you have an existing ChAO project:

  • myproject_annotations.pprj
  • myproject_annotations.rdfs
  • myproject_annotations.rdf

Here are the upgrade steps:

  1. Replace the myproject_annotations.pprj and the myproject_annotations.rdfs with the changes.pprj and changes.rdfs, respectively, from the Protege 3.4.2 installation folder plugins/edu.stanford.smi.protegex.changes/projects.
  2. Edit in a text editor the myproject_annotations.pprj and replace in the file changes.rdf with myproject_annotations.rdf, and changes.rdfs with myproject_annotations.rdfs.

That's it. Start Collaborative Protege and check that you see in the notes form a checkbox for Archived and a drop-down box for Status.

Case 2. You modified the ChAO classes, or are using the database backend

If you have already modified classes in ChAO or you are using the database backend, then please follow these instructions.

  1. Open the ChAO ontology in standalone Protege
  2. In the ClsesTab, select class Annotation and create a template slot called archived, value type boolean
  3. Create a class Status under :THING (optionally, you can create instances of Status that represent possible values of the status)
  4. Select AnnotatableThing and create a template slot hasStatus, value type Instance, and allowed classes: Status.
  5. In the Forms Tab, select the Annotation class, and use for the hasStatus slot the ComboBoxInstanceWidget.
  6. Save the ontology.

That's it. Start Collaborative Protege and check that you see in the notes form a checkbox for Archived and a drop-down box for Status.

Level of Support

Please post questions about the Changes Tab on the protege-discussion mailing list.

Personal tools