IN THE NEAREST FUTURE I HOPE TO EXTEND THIS README, BUT I ANYWAY REALLY RECOMMEND YOU TO READ Eclipse READMES.
This software was tested on the next software/hardware configuration:
Dell Latitude 820 (PIII Mobile 1.13G,. 512 Mb, NVidia GeForce2 Mobile)
Windows XP SP1, IE 6.0, Java 2 SE 1.4.1
Attention: Java 1.4.1 or later is required. This
product uses some specific features of 1.4.1. API such as string regular
expressions and support of URI specification.
Thus you won't be able to run / recompile DL-workbench on older Java without
making the significant changes.
Next operating systems were tested on runability:
Currently we haven't tested the system on Linux or other Unix-based systems, however there shall be no problems with them in case corresponding Eclipse 2.1 distributed is used from http://www.eclipse.org.
Eclipse version 2.1 was used for creation of DL-workbench. Thus if you install Eclipse by yourself, you shall download Eclipse version 2.1 or later (or to upgrade your Eclipse-compatible software with 2.1 runtime plug-ins)
Java 1.4.1 or later shall be installed on your computer in case if you don't have it yet.
First package includes Eclipse 2.1 Win32 basic runtime in addition to the
DL-workbench. This package allows to start the minimal Eclipse configuration
needed for DL-workbench. In case if you don't have any Eclipse-compatible
environment installed on your computer, just take this package. Other eclipse
modules (Java development or others) can be downloaded from
here.
Installation of this package is very simple. You just have to unpack ZIP file to
any location preserving the directories structure. Once it's done, go to <UNZIPPING_FOLDER>/eclipse
and run eclipse.exe.
This kind of packaging presumes that you already have Eclipse 2.1 or any compatible application installed (IBM WebSphere 5.0, IBM's Rational XDE for Java, etc.). Just unpack the DL-workbench archive to the directory containing "eclipse" directory. DL-workbench plug-ins will be automatically captured by Eclipse plug-in systems next time you restart Eclipse.
To start the application, run eclipse.exe from installation directory.
Since we didn't spent many times for installation procedure yet, here you
will probably need to do some steps.
Some words for people who are familiar with Eclipse concepts: DL-workbench
SHIQ editor is implemented as an Eclipse perspective called "DL-workbench SHIQ
editor perspective". Activation of this perspective will activate all the
necessary modules. <ECLIPSE_DIR>/ontologies folder contains the example of the
Eclipse project that contains several sample DAML files. Just import this
project into the workbench.
If you're not familiar with Eclipse environment, you will have to perform the next set of actions. You shall do them normally only once, however if some time you feel that DL-workbench is not started for some reason while starting the Eclipse, do them again.
Thus:
We hope that the future installation procedure will do these steps automatically.
After you've started the application, expand the Ontologies folder in Ontology files panel and double click on mad_cows2.daml file.
As you can notice, all the files that were within the Ontology direcory are
automatically loaded. That's the first principle of DL-worikbench. Once you
import / create / open a DAML file, it's captured by the environment and its
ontology is inserted into the common repository. IN order to unload some
ontologies, delete a file from eclipse project (it doesn't mean that you have to
delete it from the disk)
Next picture shows the main window of DL-workbench:

This is how the main window looks like.
Left side of the window contains two views: File view and namespace view. File fiew gives you a tree representation of ontological elements within files
Namespace view provides you with separation of ontological elements loaded from DAML files according to their namespaces.
Attention: In the first version of DL-workbench there is no ontology merging algorithm. Thus if you load two similar ontologies, the properties of elements will be simply added into corresponded elements. For instance if you load class http://www.opencascade.com#X that has a subclass http://www.daml.org#Y from one file and a class http://www.opencascade.com#X that has a subclass http://www.semanticweb.org#Z from another file, at the end you'll get a class X that has two subclasses Y and Z and is assotiated to the last loaded file.
At the bottom of the screen you can find a property view. This view displays primitive properties of any selected elements (name, desription, file, namespace, number of elements in a container).
At the right side you have a taxonomy view. This element is SHIQ specific. When you select a SHIQ concept or an object property, its taxonomy is dynamically rebuild in two ways (all parents and all children).
Attention: If you have a huge ontology loaded (10000 classes with complex inheritance), I really advise you not to use this view and just to close it. Update of UI trees with 10000 elements takes a lot of times.
At the center you have the editor of DAML files. This editor seems to be intuitive enough. When double clicking on a file or a namespace, you receive a list of elements that are inside the file or namespace container. You can remove elements from it or add new ones either by creation or by drag and drop from other places. Normally many elements support drag and drop. Just try to use it. Normally the next rule applies: you can drag when it's allowed by the DL-workbench rules. If you can't drop something somewhere it's most probable, that it's simply impossible within the model.
Every element within the DL-workbench has a set of properties associated. Moreover, Any element IS a set of properties defined using the DL-workbench metamodel. The names of properties shall be quite clear for people familiar with description logics. The picture below shows the list of properties of a concept A displayed in a namespace view after expanding of A's tree. Here for example we can see, that A as every other concept has a STRING Description property that is empty, a STRING name property that is "A" a STRING namespace property that is "http:..ontos-r-us/abc", a string source URL property that defines a file path from where A was read. Other properties are defined as lists of other entities. For example "Dependees" is a list of DL-workbench elements that depends on this element. "Depends on" property gives the list of elements that have this element as dependee.

Double clicking on some element you start the edition of this element. Edition of elements allows just to edit the same properties in a more convenient way.
Below you can see a picture of a concept editor that displays most of these properties using UI controls allowing edition of elements.

In case if some property is not appearing for edition, it means that this property is read only and can't be modified by the end user. For example the list of dependent objects is rendered automatically and can't be changed by the end user.
As we can see on the picture above, the property "Super concepts" of A concept contains one element that is T. Normally super concepts are represented as an intersection of other concepts. There are several ways to fill the list. First way is to create all the elements before modifying this list and to select them using "Select..." button. Other way is to create elements on fly using "C", "E", "R", etc. buttons. They will consequently create new Concept (with a proposal to choose a new name, namespace and file to store it), expression, restriction and OneOf set. See below the list of possible objects of DL-workbench SHIQ editor. Each list always contains a set of operations that can only be applied to this property type (depending on what type does the property have).
In case if the element edited is not an element that is directly stored in some file (expression for instance), another way is used for an edition of such element.

An above picture shows that when creating such non-persisted element, a floating panel occurs on top of the main Eclipse window proposing the edition of a set of properties dedicated to an expression.
Restrictions, binary individuals, OneOf clauses and other elements can be edited/created using this way.
The following types of ontological entities exist within the framework:
- a SHIQ
concept
- a SHIQ
datatype: Integer, String, Float or boolean.
- an object
property
- a
datatype property
- a
unary individual (individual of a concept)
- a
disjoint union axiom
- a disjoint
union axiom
-
subsumption axiom
- a
disjointess axiom
- one of a set
of individuals
-
restruction
- unary
expression
-
binary individual (a pair of unary individuals with a property.
Please follow the SHIQ logic description for these terms and their use. We tried to assure, that SHIQ editor complies with SHIQ description logic. However if you find any problems, just drop me an email.
Removal of any element from editor will cause only the removal from a corresponded property. To delete an element completely, use Namespace view or files view. In this case the dependencies of the model will be checked before removal and in case if there are dependent objects, its list will be given to a user.
A file, folder, project or namespace can be completely removed using the same views.
Attention: In case if you remove a file, its default namespace will be removed also. The same if you remove a namespace, its default file will be removed. In case if you made a mistake, please go to Eclipse "Navigator" view, select a project and use "Restore from Local History" command to recover a file. In case if you mistakenly removed an element from a file, just remove this file from a project withouit saving and add it again. Eclipse will force rereading of a file.
Ontology menu that belongs to the DL-workbench proposes two commands:

New DAML file will create a new DAML file within a specified Eclipse project.
Check satisfaibility With Racer will call reasoner and pass selected entities for verification. See the next section on how to connect the DIG reasoner. Reasoner receives only the elemnets you've selected somewhere within a framework. Thus if you select just one concept only the concept and its properties will be checked. If you select all the files, every concept from every file will be checked, etc.
Nowadays the user interface of DL-workbench supports just the satisfability
check by DIG compatible reasoner. This will be extended as soon as we well use
these within our research.
In order to use the reasoner with Dl-workbench, you shall download a third party
reasoner such as RACER or FaCT (we didn't test this distribution with FaCT, but
we hope, that DIG specifciation was implemented correctly).
In case if the DIG interface is run on its standard http://localhost:8080 address, the reasoner will be found first time you try to use it. If no you'll have to change the properties of DL-workbench.
For this go to Eclipse Window > Preferences menu and find SHIQ editor tab. You'll see the next screen:

DIG reasoner URL allows you to set up the host for the reasoner.
DIG reasoner port allows to set a port number that is dedicated to DIG reasoner.
RACER path value is used to give the path to the racer.exe ( "racer" on UNIX platforms). In case if racer.exe exist on this path, racer will be automatically started during the DL-workbench startup with above specified URL and port number. When DL-workbench stops, racer that was started by DL-workbench will be killed automatically.
If you have any problems with reasoners, please send me an email: Mikhail Kazakov
Several bugs are still present within the DL-workbench:
I'll publish them later. As soon as I get some impressions from you.
(C) 2003, Mikhail Kazakov, Open Cascade S.A.