The contents of this page describe changes relative to the 3.3.1 release of Protégé.
Build 130 -- April 21, 2008
General
- This build was generated with a new version of InstallAnywhere, which fixes an exception
(java.lang.NumberFormatException: For input string: "0-b19") being thrown when users try to install Protege.
Changes in Protégé-OWL
- The display of inferred types in the Individuals tab can be now configured to a) show all types
(default), or b) show direct types only. Instructions for configuring the second option are
available on our Wiki.
- There is a new option available for code generation to include prefixes in the generated Java names. This option
is configurable via Code | Generate Protege-OWL Java Code... | Include prefixes in generated Java names.
Build 128 -- March 7, 2008
Changes & Bug Fixes in Protégé-OWL
- Fixed a bug for the conversion of owl:differentFrom in the implementation of the direct Pellet reasoner
that caused an error message to be displayed at reasoning time:
"Error at synchronization:edu.stanford.smi.protegex.owl.model.DefaultOWLAllDifferent".
- Removed a warning from the console when using the triples view for individuals.
- Fixed a bug in the OWLDateWidget that was preventing users from being able to change the value of the date.
Build 127 -- March 3, 2008
Changes in Core Protégé
- Archive and Revert functionality now works for database projects. "Archive" will create a
copy of the current version of the ontology in a new database table. "Revert" will override the
current table with the contents of a previously versioned table.
(Please note: this is not yet working for PostgreSQL - we are working on a
fix for this).
- The list of display slots in the Forms tab is now sorted alphabetically.
Changes & Bug Fixes in Protégé-OWL
- Fixed a bug for the conversion of owl:differentFrom in the implementation of the direct Pellet reasoner.
- Fixed a bug that caused type information to be lost for some inferred data property values.
- Upgraded to Jena 2.5.4
Changes in Collaborative Protégé
- The search results panel on the Search tab now contains an additional button to show the annotated
entity from the user ontology.
Changes in HTML Chat (also part of Collaborative Protégé)
- The ChatTab plug-in now supports text in HTML format (Bold, Italics, Underline, Strikethrough). Hyperlinks
to Web pages can be followed by clicking on them in the chat window.
- Users are able to reference (in a chat message) an internal entity from the ontology by using the
syntax @'EntityName' (e.g., @'Pizza'). Clicking on the internal link will bring up a window showing the
ontology entity.
- The ChatTab now displays a list of the users that are online.
Additional documentation and a user's guide is
available on our Wiki.
Build 126 -- February 14, 2008
Changes & Bug Fixes in Core Protégé, Standard Extensions
- Added support in the client-server version of Protégé for loading projects from HTTP addresses.
- Fixed a bug in the graph widget that was causing nodes to be drawn behind the palette when users
added exisiting instances to the graph.
Changes & Bug Fixes in Protégé-OWL
- Added a
getIndividualDirectTypes method to the reasoning interface (ProtegeReasoner)
for getting the direct inferred types of an individual.
- Bug fix for "Compute inferred types" for the Pellet implementation of the direct reasoner
(available in the GUI via the context menu) to return all the types of an individual rather than just
the direct types.
- Bug fix for the DIG rendering of
owl:AllDifferentFrom.
- Bug fix for the
getURIForResourceName method of the OWLModel interface
for client-server mode.
Build 125 -- December 20, 2007
Changes & Bug Fixes in Protégé-OWL
- Modified the SWRLTab and the
SWRL Jess Bridge to support
inference over larger ontologies.
- Added additional operators to the
temporal built-in library.
- SWRL system classes are now hidden from the user interface by default.
- Made some performance improvements for ontology entities creation for large ontologies.
Changes in Standard Extensions
- Fixed a bug with complex links in the graph widget that was only occurring in Protégé's client-server mode. The first time users
drew a complex link between two nodes, the link disappeared, and only reappeared after clicking away from the graph and coming back.
- Fixed two bugs in the graph widget that were only occurring with graphs from included projects:
- The graph widget's "Remove Selected Instances" button is no longer enabled on graphs from included projects.
- Users are no longer able to create new nodes and links on graphs from included projects.
Build 122 -- December 7, 2007
Changes & Bug Fixes in Core Protégé, Protégé-Frames
- A full API for accessing information in the
Metaproject,
which is used to configure the Protégé server, is now available in the
edu.stanford.smi.protege.server.metaproject package.
- Two new slot widgets called "EditorPane" and "EditorPanePlain" have been added to the standard distribution. These widgets
allow rendering and editing of slot values as HTML text, which facilitates the inclusion of links as part of a slot value. Documentation is
available on the Wiki:
http://protegewiki.stanford.edu/index.php/EditorPanePlain
http://protegewiki.stanford.edu/index.php/EditorPane
- Added support in Protégé's client-server mode for included forms and browser text for Frames projects. The forms for
included projects are now also visible in the including project. This was a limitation in previous versions of Protégé.
- The position information for nodes in the graph widget that is stored in included projects is now available in
including projects. This was a limitation in previous versions of Protégé.
Changes & Bug Fixes in Protégé-OWL
- Fixed a bug in the integrated reasoner that caused some consistent ontologies to be reported as inconsistent. The current version does
not provide support for reasoning with SWRL rules.
- Added support for searching of OWL entities using synonym properties, which can be any annotation property that takes a literal as a value.
Configuration for the search synonym properties is accessible in the OWL menu under Preferences -> Searching.
- Fixed the display of symmetric, transitive, and inverse functional properties that do not have owl:ObjectProperty as a declared type.
- Added support in the native writer for SWRL rules.
Changes in DataMaster
- Version 1.2.1 of DataMaster fixes a bug
caused by calling jumping methods (like last(), beforeFirst(), etc.) on FORWARD_ONLY ResultSets returned by some databases
(like Oracle) when queried for primary keys. This version also contains some improvements for more general JDBC driver compatibility.
Build 120 -- November 17, 2007
This build contains an important change to the Protégé-OWL editor, which is the ability to connect directly to the Pellet reasoner.
Previously, Protégé-OWL only supported connections to an external DIG reasoner. This change includes modifications to the user interface
and the Protégé-OWL API, which are detailed in the following two sections:
UI Changes
- Reasoning functionality is now accessible through the new "Reasoning" menu, which allows users to select
from a list of available reasoners. The current choices in this menu are "DIG Reasoner" and "Pellet 1.5.1 (direct)".
All reasoning actions such as consistency checking, classification, etc., will work with the selected reasoner.
- It is now possible to query the inferred property values of an individual. This can be done by right-clicking on an individual in the
Individuals tab and selecting "Get inferred property values" from the context menu.
API Changes
- The old ProtegeOWLReasoner reasoner interface has been deprecated and the new ProtegeReasoner interface should be used instead. Documentation
for accessing the reasoner programmatically using the new interface is
available on the Wiki.
- A new plug-in type called a "Reasoner Plug-in" has been introduced that allows developers to plug other reasoners into
Protégé-OWL. Currently, there are four implementations of the reasoner plug-in: 1) Jena reasoner, 2) DIG reasoner, 3) Pellet reasoner
accessed through the Jena API, and 4) Pellet reasoner accessed through the OWL-API. We have made the DIG reasoner and the Pellet reasoner accessed
through OWL-API available through the user interface via the Reasoning menu. Documentation for developing a reasoner plug-in is
available on the Wiki.
- The
protege-pellet.jar file in the edu.stanford.smi.protegex.owl.inference.pellet folder contains
a programmatically accessible Protégé-OWL to OWL-API converter. This allows developers to obtain an OWL-API model from a Protégé-OWL model.
The model is a snapshot and not a synchronized (live) copy and the limitations of the conversions are documented in the Javadoc for OWLAPIConverter.
We would like to thank clark&parsia for providing an important part of the
converter code.
Please note: when using the direct Pellet reasoner with large ontologies, we recommend that users increase the allocation for
Protégé-OWL's heap size because Protégé-OWL and Pellet will share the same memory space. In the event that you get an
OutOfMemory exception during reasoning, Protégé-OWL will try to recover, but we do not recommend that you try to save your file after
this type of exception.
Other Changes
Protégé-OWL users who use rdf:label to represent class names now have the ability to put spaces and other characters in class names.
In the past, the restriction editor was not very friendly to such users because it could not parse expressions such as "hasTopping some
My Favorite Type of Topping". We have modified the grammars used by the restriction editors so that names with spaces can be quoted.
For example, the expression above can be represented as "hasTopping some 'My Favorite Type of Topping'".
Build 110 -- November 8, 2007
Changes & Bug Fixes in Protégé-OWL
- Ontologies with SWRL rules no longer need to explicitly import swrl.owl and swrlb.owl, so the use of SWRLTab-generated
OWL files with other tools and reasoners should be easier
- Fixed a bug in sqwrl:count built-in,
which caused it to produce inconsistent counts.
- Extended and fixed some bugs in the
SWRL mathematical expressions built-in library.
- Improved performance of the SWRL editor when it is used with large ontologies
- Implemented negative operators in the SWRLTab
temporal built-in library.
- Fixed a bug that prevented users from adding an owl:equivalentProperty to another property in the Protégé-OWL user interface.
This can now be done in the Properties Tab:
- switch the Annotations table to the triples view
- click on the "Add existing resource as value" icon
- select the owl:equivalentProperty property
- The PropertiesTab now comes up correctly even if an ontology contains properties that are both datatype and object properties (making the
ontology OWL Full). This limitation previously effected the display of properties of the FOAF vocabulary.
Changes in Collaborative Protégé
- Users can now configure which collaborative tabs (annotations, changes, chat, search, etc.) they would like to have displayed.
Configuration is accessible from the Collaboration | Configure menu item. See the documentation section on Collaborative
Protégé for more information:
http://protege.stanford.edu/doc/collab-protege/index.html#Configure.
Changes in Standard Extensions
- Fixed a bug in the graph widget. When nodes were removed rather than deleted from the graph, the slot that users designated to hold
transitions was not being updated.
Build 108 -- October 24, 2007
Changes & Bug Fixes in Protégé-OWL
- Updated the query built-ins to SQWRL Built-In Library.
This
update requires that ontologies using the existing SWRL query library must change the prefix of their query built-ins from
'query' to 'sqwrl' when they upgrade to the latest beta. The operation of the built-ins in the new library is identical to the
superseded library. However, the new library has a number of new built-ins that expand the power of queries and more will be added
over the next few months.
- Added a new XML Query Built-In Library.
SQWRL queries can now work directly on XML documents.
- Added a new Mathematical Expression Parser Built-In Library.
This library allows complex mathematical expressions to be used in SWRL rules or SQWRL queries.
- Updated the SWRL Built-In Bridge API. This will require a very minor change to existing libraries implemented using this bridge:
Java built-in implementations now take a
list of BuiltInArgument rather than Argument objects.
- Fixed a problem that caused some widgets in the Individuals tab to be disabled. Users were not able to add new values to properties attached
to individuals.
- In the Individuals tab, searches are now performed using the browser text of the individuals.
Build 104 -- September 21, 2007
Changes & Bug Fixes in Core Protégé, Protégé-Frames
- Made two changes that improved the performance of the Instances tab:
- Added the ability to disable the display of instance counts in the Class Hierarchy pane. Normally,
Protégé displays the number of instances for each class in the class hierarchy in parenthesis next to the
class name. This was causing problems when users clicked on a class with thousands of subclasses because calculating the number of
instances for each of the subclasses was taking too much time. To disable the display of instance counts, go to Project | Configure... |
Options and check the box next to "Suppress Instance Count Display".
- The pane in the Instance Browser that displays instances of a particular class is now
multithreaded. If a user selects a class that has thousands of instances, viewing those instances in
the Instance Browser is much faster.
- Users can now pass arguments to Protégé's main method in the form of
-propMyProp=MyValue, where -prop
is the prefix for all property-value assignments. These properties are accessible in the same way as properties from the protege.properties file.
- Added some utility methods in SystemUtilities for getting system properties.
- When exporting a Protégé-Frames project to OWL, users now have the option of choosing the native OWL writer rather than the
default Jena writer. Please note that there is a known limitation if using the native writer: Protégé-Frames projects that
contain PAL constraints are not exported correctly. If your project has PAL constraints, please continue to use the default writer.
Changes & Bug Fixes in Protégé-OWL
- The Protégé-OWL Java Code Generator now generates
getXXXProperty methods on Factory classes.
- Added a method in the OWLModel interface for creating simple annotation properties.
- Added support in the Properties tab user interface for creating simple annotation properties.
- Fixed a bug related to saving the inferred hierarchy.
- Filtered out the SWRL and SWRLB entities from the DIG translation, which caused some reasoners to report warnings or errors.
- Made the Help menu more user friendly:
- Combined the "About Protégé..." and "Protégé-OWL Version Info..."
menu items into one item called "About Protégé-OWL...". The dialog that results from choosing this menu item no longer
has any Protégé-Frames specific text, such as the link to the protege-discussion mailing list.
- Added an item that links to the "Getting Started with Protégé-OWL" page on the Protégé website.
- Added an item that links to the Protégé-OWL FAQ page on the Protégé website.
- Implemented a fix for DIG's translation of boolean properties. Thanks go to Thomas Russ for suggesting the fix.
- Several minor bug fixes in Protégé-OWL's SWRL support.