Protege 4.1 Beta Release Notes
Protege 4.1 Beta
We strongly recommend that users of the 4.0.* series of Protege upgrade to this latest 4.1 beta release. The Protege 4.0.2 release does not provide complete support for the OWL 2 language specification.
-- Protege 4.1 beta is fully conformant with the OWL 2.0 language specification, which is a W3C recommendation as of October 27, 2009.
-- Protege 4.1 beta has an automatic update mechanism for distributing new features and bug fixes. This mechanism allows us to be more responsive to issues reported on the Protege 4 mailing list, and will result in faster progress toward a formal release.
-- We've expanded and improved upon Protege's distribution formats:
-- The OS X community now has the option to download Protege in the application bundle format.
-- The platform-independent installer program is redesigned for use on multi-user operating systems. Administrators can install a single, read-only copy of Protege on systems with many users sharing system access.
Protege 4.1 beta is based on version 3.2.2 of the OWL API, which has some incompatibilities with previous versions of the the OWL API. Consequenctly, plug-ins developed for Protege 4.1 will not be backwards compatible with Protege 4.0.*. We strongly recommend that new development be done against the 4.1 version of Protege as this is the focus of future work.
The contents of the release notes section describe changes relative to Protege 4.0.2 and Protege 4.1 alpha.
Build 218 -- February 25, 2011
- Implemented a small change to make saving OWL ontologies more robust.
- It is now possible to add annotation values that are IRIs that do not correspond to any known entity.
- Made a small configuration change to fix a serious performance problem with the OS X application bundle.
Build 217 -- February 18, 2011
Please note that the Manchester OWL Syntax is now discouraged as a format for saving the entire ontology as certain axioms cannot be represented in this format and are lost during save operations.
- Upgraded Protege to use version 3.2.2 of the OWL API.
- Added support to the OntoGraf visualization plug-in to export the current visible graph into a DOT language format file. Thanks go to Sean Falconer for this contribution.
- 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.
- 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.
- Added an explanation facility for why classes are disjoint.
- In previous builds, if a user edited a general class axiom (GCI) in the "General class axioms" view in such a way that it became a regular class axiom, the resulting regular class axiom disappeared from the GCIs view. This mistakenly gave the impression that the edit to the GCI was unsuccessful. Going forward, Protege will present a dialog after completion of an 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).
- Axiom annotations are no longer lost when an axiom is changed.
- 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 ontology reload feature.
- Fixed a problem with the OS X application bundle format, which prevented it from loading on some platforms.
Build 213 -- October 26, 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.
Build 209 -- September 3, 2010
- A new version of the OWL API (3.1.0) was released with several improvements and bug fixes. We've updated Protege to be in line with this latest release. Unfortunately, this transition introduced some incompatibilities for plug-in developers. We don't anticipate that these incompatibilities will be too difficult to resolve.
- Added a basic explanation feature. Many inferred assertions will have a question mark icon nearby. Click on the icon and a simple explanation dialog appears.
- The manner in which reasoners are started has been simplified. The usage model is a bit different than in previous versions of Protege 4, which may take some getting used to. Selecting the reasoner and choosing to classify the ontology are now divided into separate steps. New reasoner preferences have also been added, including fine-grained control of what classification steps take place during a classify operation.
- The Protege startup process has been 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.
- 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.
- Fixed a bug that caused new users to have their font inadvertently set by the renderer preferences panel.
- The inferred class hierarchy now synchronizes with other views.
- The class members list view is now aware of imports.
- Imports of anonymous ontologies no longer fail.
Build 206 -- July 30, 2010
- Fixed a problem with the platform-independent installer program that caused broken application bundle files on the Mac OS.
- The asserted and inferred class hierarchies are now synchronized for class selection.
Build 203 -- June 28, 2010
- Fixed a serious data loss bug that occurred when users double-clicked on OWL files to open in Protege.
- Fixed some bugs in the refactor menu.
- Fixed an issue with the rendering preferences that was making it difficult to see ontologies rendered with rdfs:label.
- Bundling a new version of HermiT (1.2.4), which has the following bug fixes:
- bottomObjectProperty encoding corrected
- blocking cache cached inactive nodes under single blocking
- correct INF/-INF parsing for doubles
- no empty node sets in case the next node in the property hierarchy has only inverses
- improved property instance retrieval
- new disjunction ordering strategy
- negative object property assertion encoding no longer requires nominals
- command line outputs full IRIs instead of abbreviated ones with HermiT's prefixes
- apply changes in non-buffering mode only when needed for a query
- data values are stored also with their lexical form
- new data property classification
Build 200 -- June 16, 2010
- Users now have more control over the ontology repository mechanism (XML Catalog). In order to grant more user control, we had to rename ontology repositories from catalog.xml to catalog-v001.xml. All automatic updates of this file by Protege, e.g., scans of directories to determine possible imports, are now optional.
- The OntoGraf visualization plug-in is now bundled with the default installation. OntoGraf is accessible as a tab via the Tabs menu, or as a view via the Views | Class views menu. Thanks go to Sean Falconer for this contribution.
- 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.
- Assertions that an individual has a certain type can now be deleted from the class description panel for said type.
- Fixed a bug that in some cases caused a case-insensitive search to be case-sensitive.
- Fixed a problem with the platform independent 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.
- Modified the platform independent 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.