Protege Changelog

What's new in Protege 5.0.0

May 25, 2016
  • This release offers enhancements and improvements in search, annotation viewing & editing, hierarchy viewing, ontology loading & saving, accessibility, logging and performance, as well as general user inferface improvements. It also contains two new bundled plugins, "Cellfie" and the "SWRL Tab". Finally, Protege 5.0.0 now uses the OWL API version 4.2.5 and Java 8.
  • Further details are available at https://github.com/protegeproject/protege-distribution/releases/tag/protege-5.0.0.

New in Protege 5.0.0 Beta 17 (Apr 25, 2015)

  • This release provides the option to download Protégé with a Java Runtime Environment. Users should pick the release that is specific for their platform. Updated Protege installation instructions at: http://protegewiki.stanford.edu/wiki/Install_Protege5
  • New functionality:
  • Added "Reload" menu item to the File menu. Select "Reload" from the File menu or press Ctrl+Shift+R (or Cmd+Shift+R on a Mac) to reload the active ontology. If the ontology has been modified but not saved then a warning is shown. (#152)
  • Other changes:
  • The Protege GitHub repository no longer contains jars for felix and equinox. These are now pulled from Maven Central. (#157, #158 and #159)

New in Protege 5.0.0 Beta 12 (Jul 24, 2014)

  • Removed the Java "-server" option from the Protege run scripts. This option caused the run scripts to fail on systems that only have a JRE installed vs. a JDK (#51).

New in Protege 5.0.0 Beta 10 (May 30, 2014)

  • Enhancements:
  • Moved the Protege Desktop source code to GitHub to allow for easier collaboration with developers outside of Stanford.
  • Moved the Protege Desktop build system to Maven to standardize the build process.
  • Upgraded to Java 7.
  • Upgraded to the latest version of the OWL API (v3.5.0).
  • The search functionality has been significantly improved to search annotation values, display names, entity IRIs, and logical axioms (previously only display name was searched).
  • The Individuals tab now filters the list of individuals displayed based on the selected class in the class hierarchy (#1).
  • The UI no longer allows specification of owl:real as the type for a literal (#37).
  • Entering a number into the OWLConstantEditor now parses the value and chooses the correct datatype if no datatype was specified (#42).
  • Exporting DisjointClasses axioms is no longer enabled by default, as this can be an expensive operation (#43).
  • Auto-update only checks for updates once per day, rather than checking for updates every time Protege launches (#45).
  • The Active Ontology tab now shows ontology metrics by default (#46).
  • Renamed labels in the DL Query tab plug-in to be clearer and more standard (#1)
  • Definition annotation properties are now listed after label annotation properties, making the Annotations view more user-friendly for the bio-ontology community (#47).
  • Added the ability to view axiom annotations inline (accessible via View -> Display axiom annotations inline). Previously, it was necessary to click the @ symbol to bring up a separate dialog for viewing inline axiom annotations (#50).
  • Added an option to toggle rendering of annotation datatypes in the Annotations view (accessible via View -> Display datatypes on annotation values).
  • Bug Fixes:
  • The inferred object property hierarchy no longer displays owl:bottomObjectProperty as a leaf of every node (#9).
  • Selecting classes in the class hierarchy will only request directly inferred individuals from the reasoner. Previously, Protege requested both direct and indirect inferred individuals, which caused performance issues with larger ontologies (#15).
  • Fixed a bug in the auto-update functionality that caused exceptions when encountering plug-ins with invalid version numbers (#18).
  • Fixed a typo in the DL metrics view (#20).
  • Modified the UI of the Automatic Update dialog to prevent display of an unnecessary trailing '.' character on plug-in version numbers (#23).
  • Fixed an issue that occasionally caused a NullPointerException when opening ontologies (#34).
  • Fixed an issue that occasionally caused the Continue button to remain disabled on the Export Inferred Axioms dialog (#36).

New in Protege 4.3.0 Build 304 (Apr 10, 2014)

  • Bug Fixes:
  • Fixed a bug in the code generator that in some cases caused deletion of a user's home directory. Java code generation is accessible from Tools | Generate Protege-OWL Java Code.

New in Protege 4.2 Build 265 Beta (Mar 16, 2012)

  • Improved the user interface for the Active Ontology tab so that the ontology name and version are much more prominent, thereby encouraging users to set versions when appropriate.
  • Launching the Protege application now opens an empty ontology instead of a welcome screen. This is part of a broader effort to align Protege's behavior with common document editing tools, e.g., opening Microsoft Word presents users with a blank document.
  • Added support for Java code generation. Available from Tools | Generate Protege-OWL Java Code.
  • Protege no longer requires administrative privileges to run on Windows machines. Please note the exception that downloading new plug-ins will still require Protege to be run in administrative mode.

New in Protege 4.1 Build 239 (Mar 16, 2012)

  • Enhancements:
  • Bundling the new OntoGraf visualization plug-in with the default installation. OntoGraf is accessible as a tab via the Window | Tabs menu, or as a view via the Window | Views | Class views menu. Thanks go to Sean Falconer for this contribution.
  • Protege's ontology repository mechanism is now implemented according to the XML Catalogs specification from the OASIS open standards group.
  • Added a basic explanation feature. Many inferred assertions now have a clickable question mark icon nearby, which will display a simple explanation dialog.
  • The manner in which reasoners are started was simplified. Selecting the reasoner and choosing to classify the ontology are now divided into separate steps. New reasoner preferences were also added, including fine-grained control of what classification steps take place during a classify operation.
  • Bundling an updated version of the OWL API (3.2.3).
  • Simplified and consolidated some of the menu items in the main menu bar.
  • Made rendering preferences much quicker to access via the new "View" menu, e.g., View | Render by name, View | Render by label.
  • Axiom annotations are now displayed in axiom tooltips.
  • Added support for the disjoint union axiom.
  • When parsing errors occur, Protege closes all file handles. Users of the Windows platform can now edit malformed ontologies in external applications, then reload the ontologies in Protege without having to close the Protege application. This already worked on other non-Windows platforms.
  • Dublin Core annotation properties are no longer included by default in new ontologies. If users want Dublin Core annotation properties, we recommend you import protege-dc.owl.
  • Modified the user interface of the dialog for creating/editing annotations to disable the "Lang" combo box if a type other than plain literal is selected.
  • Users can now enter inverse object properties when adding object property disjoint or equivalent axioms.
  • After a user runs a reasoner, Protege will now display inferred same individuals and disjoint classes. The display of inferred disjoint classes is turned off by default.
  • If a user edits a general class axiom (GCI) in the "General class axioms" view in such a way that it became a regular class axiom, Protege will present a dialog after completion of the edit to notify the user that the GCI is now a regular class axiom and will be displayed in the appropriate view (not the GCIs view).
  • Assertions that an individual has a certain type can now be deleted from the class description panel for said type.
  • The asserted and inferred class hierarchies are now synchronized for class selection.
  • The class members list view is now aware of imports.
  • Protege now lets you specify the prefixes that are used in an ontology.
  • Protege now uses a recursive search starting at the working directory to find on-disk versions of ontologies to import.
  • Provided new user interface mechanisms to give users the ability to edit ontology repositories from within Protege.
  • Added explanation support for the DLQuery plug-in.
  • It is now possible to add annotation values that are IRIs that do not correspond to any known entity.
  • The merge ontologies functionality no longer includes the merged ontologies as imports.
  • Modified the installer program to add a new item to the program group on Windows called "Protege (advanced start)". Clicking on this program group item will launch Protege using the "run.bat" file in the root directory of the Protege installation.
  • Bug Fixes:
  • Axiom annotations are no longer lost when an axiom is changed.
  • Fixed a NullPointerException that occurred when using the imports wizard to import anonymous ontologies.
  • Fixed a problem where the create class hierarchy tool (Tools | Create class hierarchy...) did not respect the preference that new entities should be created with a particular URI.
  • Made qualified name rendering consistent when a user moves between ontologies in a workspace. This is done by calculating a merged prefix name to prefix map for the entire workspace that doesn't change when switching active ontologies.
  • Declarations are no longer copied from imported ontologies to importing ontologies on save.
  • Fixed a bug that allowed Protege to create empty disjoint/equivalent axioms. These axioms asserted that a class, object property, or data property was disjoint or equivalent to something, but no other entity was mentioned. A similar problem existed for same and distinct individuals.
  • Fixed the misspelling of the NMTOKEN data type.
  • Removed extra owl:topObjectProperty and owl:topDatatypeProperty super-property when creating new properties.
  • Fixed a relative URL problem that prevented users from moving an ontology repository (in the form of a catalog.xml file) from one directory or machine to another.
  • Fixed a rarely occurring bug where files with international character sets were not being correctly saved.
  • Made several improvements and fixes to the process of exporting inferred axioms, including a progress monitor, improved performance of the inferred disjoint classes, and better management of the OWL reasoner.
  • Fixed a problem where Protege was making the facet value for a data restriction, e.g., int[>= 3], have the string type rather than the appropriate type, which caused trouble with reasoner plug-ins.
  • The application startup process was significantly improved. Previously, some users were getting exceptions when they started multiple instances of Protege, and had problems when running different versions of Protege at the same time.
  • Fixed a bug that caused new users to have their font inadvertently set by the renderer preferences panel.
  • Imports of anonymous ontologies no longer fail.
  • Fixed a serious data loss bug that occurred when users double-clicked on OWL files to open in Protege.
  • Fixed an issue with the rendering preferences that was making it difficult to see ontologies rendered with rdfs:label.
  • Fixed a bug that caused the list of active ontologies to be incomplete in some cases.
  • Fixed a bug that prevented SWRL built-ins with variable numbers of arguments from being used.
  • Fixed a bug that in some cases caused a case-insensitive search to be case-sensitive.
  • Fixed a problem with the installer that caused empty program groups on Windows 7.
  • Fixed a problem that prevented the uninstaller from working properly on 64-bit Windows 7 machines.
  • Fixed a problem with the installer program that caused broken application bundle files on the Mac OS.
  • Made a small configuration change to fix a serious performance problem with the OS X application bundle.

New in Protege 4.1 Build 213 Beta (Dec 23, 2010)

  • Fixed a rarely occurring bug where files with international character sets were not being correctly saved.
  • Made several improvements and fixes to the process of exporting inferred axioms, including a progress monitor, improved performance of the inferred disjoint classes, and better management of the OWL reasoner.
  • Fixed a problem where Protege was making the facet value for a data restriction, e.g., int[>= 3], have the string type rather than the appropriate type, which caused trouble with reasoner plug-ins.
  • The import mechanism now searches recursively through folders for imports by default.
  • Provided new UIs to give users the ability to edit ontology repositories from within Protege.
  • Fixed a relative URL problem that prevented users from moving an ontology repository (in the form of a catalog.xml file) from one directory or machine to another.
  • Added explanation support for the DLQuery plug-in.
  • Bundling a new version of the HermiT reasoner (1.3.1).
  • Fixed the misspelling of the NMTOKEN data type.
  • Removed extra owl:topObjectProperty and owl:topDatatypeProperty super-property when creating new properties.
  • The merge ontologies functionality no longer includes the merged ontologies as imports.