The Analysis menu: |
This menu contains commands used to analyze
the current KB or selected classes. |
Analyze all KB |
Presents an analysis of the current KB
or the selected frames and all their subclasses. If just frames are being
analysed, all slots, slot values, facets, and facet values are checked
for domain and range compatibility. If the KB is being analyzed, you get
the same analysis for all the local frames in the KB as well as a report
on a number of heuristically interesting aspects of the KB that might identify
bugs or potentially buggy areas. |
Analyze augmented definitions
Not currently applicable because: no roots |
Presents an analysis of the current KB
showing all of the terms that have been augmented beyond thie definitions
in included KBs. This analysis does not identify necessary errors, but
identifies areas in which an upward merge might be useful. For example,
if in KB1 we have the class automobile, and then in KB2, which
includes KB1 we augment the class to give it the slot has-wheel,
then automobile would be flagged in this report. It might be a
good idea to move the slot specification up to KB1. |
Analyze bogus own slot values
Not currently applicable because: no roots |
Presents an analysis of the current KB
showing all of the frame/slot/value triples that might have a type conflict.
This analysis does not necessarily identify errors, though often it does.
It rather identifies areas in which values of slots are not known to
be instances of the types that constraint the slots. Good style generally
dictates that objects be declared to be manifestly of the types that can
be infered from their use. If they aren't then either a type can be added
to the object, or either the type constraint is itself wrong, of the slot
value is wrong. |
Analyze bogus template slot values
Not currently applicable because: no roots |
Presents an analysis of the current KB
showing all of the frame/slot/value triples that might have a type conflict.
This analysis does not necessarily identify errors, though often it does.
It rather identifies areas in which values of slots are not known to
be instances of the types that constraint the slots. Good style generally
dictates that objects be declared to be manifestly of the types that can
be infered from their use. If they aren't then either a type can be added
to the object, or either the type constraint is itself wrong, of the slot
value is wrong. |
Analyze incidence of words
Not currently applicable because: no roots |
Presents an analysis of the current KB
showing the frequency of all words in the names of the frames in the KB.
For example, if we have a class called English-Person, then the tabulation
will have (at least) one count for the word English and one for the word
Person. This is useful because it allows you to scan for frequently used
(sub)terms. These might be areas of interest for merging or cleanup. Only
with words whose frequency is at least 2 are shown. |
Analyze KB cycles
Not currently applicable because: no roots |
Presents an analysis of the current KB
showing all of the taxonomy cycles. For example, if the KB says
(subclass-of dog animal)
(subclass-of animal living-thing)
(subclass-of living-thing dog)
then a cycle will be identified involving the path dog-<animal-<living-thing. |
Analyze missing argument names
Not currently applicable because: no roots |
Presents an analysis of the current KB
showing all of the terms that have missing argument names to relations
and functions. |
Analyze missing doc strings
Not currently applicable because: no roots |
Presents an analysis of the current KB
showing all of the terms that have missing documentation strings. |
Analyze missing frames
Not currently applicable because: no roots |
Presents an analysis of the current KB
showing all of the frames that are missing from the KB. These missing frames
are references to terms that have no apparent definition on the KB. For
example, if the KB says that (mother-of sally mary), but there is no other
reference to Mary in the KB, then Mary will be identified as a missing
frame. |
Analyze missing type constraints
Not currently applicable because: no roots |
Presents an analysis of the current KB
showing all of the relations and functions (including slots and facets)
for which there are any arguments that either have no type constraint or
for which the type constraint is trivially :thing. These constraints
can be supplied by asserting :domain, :range, :slot-value-type,
:nth-domain or similar as appropriate to the KB being edited. |
Analyze redundant superclasses
Not currently applicable because: no roots |
Presents an analysis of the current KB
showing all of the classes that have redundant direct superclasses. This
analysis does not identify errors, but rather identifies areas of possible
confusion or bad style in the KB. For example, if dalmation is
a direct subclass of both dog and animal, and dog
is a subclass of animal, then dalmation, would be flagged.
We might want to remove animal as a superclass, since it is redundant.
If we keep this redundant superclass then any display of the taxonomy will
be needlessly complex. |
Analyze redundant types
Not currently applicable because: no roots |
Presents an analysis of the current KB
showing all of the instances that have redundant direct types. This analysis
does not identify errors, but rather identifies areas of possible confusion
or bad style in the KB. For example, if fido is a direct instance
of both dog and animal, and dog is a subclass
of animal, then fido, would be flagged. We might want
to remove animal as a type, since it is redundant. If we keep
this redundant type then any display of the taxonomy will be needlessly
complex. |
Analyze slot/facet/value compatibility
Not currently applicable because: no roots |
Presents an analysis of the current KB
prograssively looking at all slots on all frames, all values of those slots,
all facets on those slots, and all values of those facets to see if the
slot/facet/value is type-consistent with the KB. |
Analyze trivial instances of :thing
Not currently applicable because: no roots |
Presents an analysis of the current KB
showing all of the classes that are trivially direct instances of the class
:thing, and are not instances of any other classes. There is a
good chance that such instances have not been classified correctly in the
taxonomy. |
Analyze trivial subclasses of :thing
Not currently applicable because: no roots |
Presents an analysis of the current KB
showing all of the classes that are trivially direct subclasses of the
class :thing, and are not subclasses of any other classes. There
is a good chance that such classes have not been classified correctly in
the taxonomy. |
Analyze underconstrained definitions
Not currently applicable because: no roots |
Presents an analysis of the current KB
showing all of the terms that are instances only of non-leaf classes. This
analysis does not identify necessary errors, but identifies areas in which
further elaboration of the instances might be possible. For example, if
fido is only an instance of the class animal, then it
would be flagged. We might want to make fido be a direct subclass
of dog instead. |
Analyze unsatisfied frame references
Not currently applicable because: no roots |
Presents an analysis of the current KB
showing the known frame references within the KB that do not actually match
up with frame definitions.
For example, if an input KB file said only the following:
(define-okbc-frame dog
:frame-type :class
:direct-superclasses (living-thing))
then living-thing may be an unsatisfied frame reference. Unsatisfied
frame references can be fixed using the "Stub out any missing frames" command. |
|
The Class menu: |
This menu contains commands used to manipilate
classes as a whole, and to edit the taxonomic relationships between classes. |
Add prefix
Not currently applicable because: no class selected |
Renames the selected frame(s) and all
subclasses by adding the prefix entered into the name (or pretty name)
typein box if the class in question doesn't have that prefix. The renaming
is restricted to the classes coming from the KBs identified in the KB menu.
This command is sensitive to the KB arg menu. |
Add subclasses
Not currently applicable because: no classes selected |
Adds a set of classes to a class as subclasses.
The first class you select is taken to be the new superclass and all other
classes selected before you select this command will be added as subclasses
to the superclass.
The operation of adding a subclass can also be performed using drag
and drop with the drag operation holding the Shift key down and dragging
each subclass onto the superclass. Not holding the shift key down will
result in a move operation. See here
for details on drag and drop setup. |
Add suffix
Not currently applicable because: no class selected |
Renames the selected frame(s) and all
subclasses by adding the suffix entered into the name (or pretty name)
typein box if the class in question doesn't have that suffix. The renaming
is restricted to the classes coming from the KBs identified in the KB menu.
This command is sensitive to the KB arg menu. |
Add superclasses
Not currently applicable because: no classes selected |
Adds a set of classes to a class as suerclasses.
The first class you select is taken to be the new subclass and all other
classes selected before you select this command will be added as superclasses
to the subclass.
The operation of adding a subclass can also be performed using drag
and drop with the drag operation holding the Shift key down by dragging
the subclass onto each superclass. Not holding the shift key down will
result in a move operation. See here
for details on drag and drop setup. |
Create root class
(name required |
Creates a new class at the root of the
taxonomy. The name of the class should be typed into the Name typein box
along with the pretty name if different from the name. |
Create Subclass
Not currently applicable because: no classes selected |
Creates a new class that is a direct subclass
of the currently selected class(es). The name of the class should be typed
into the Name typein box along with the pretty name if different from the
name. |
Delete class
Not currently applicable because: no class selected |
Deletes the currently selected class.
If it has any direct subclasses, these will be reparented to the direct
superclass(es) of the class being deleted, if there are any.
You can also delete a class if you drag the class to any agenda trash
icon that might be visible in the merger window. See here
for details on drag and drop setup. |
Merge classes
Not currently applicable because: no classes selected |
Merges a number of classes into the same
class. You select any number of classes and when you select this command
all of the classes will be replaced by a single, merged definition that
will appear in all of the places that the original classes appeared. The
resulting class will have the name of the first class you selected unless
you type in a new name into the Name typein box.
Below is an example KB in which a pair of classes have been selected
for merging.
After the Merge Classes command is selected, only one class appears
in both places as is shown below:
|
Move classes
Not currently applicable because: no classes selected |
Moves a set of classes to a class as subclasses,
disconnecting them from any classes of which they are currently direct
subclasses. The first class you select is taken to be the new superclass
and all other classes selected before you select this command will be set
as subclasses of the superclass.
The operation of moving a subclass to a new superclass can also be
performed using drag and drop by dragging each subclass onto the superclass.
Holding the Shift key down will result in an adding operation rather than
a moving operation. See here
for details on drag and drop setup. |
Move classes
Not currently applicable because: no classes selected |
Moves a set of classes to the direct superclasses
of a target class, disconnecting the target class from any other classes
of which it is currently a direct subclass. The first class you select
is taken to be the target class and all other classes selected before you
select this command will be set as the direct superclasses of the target
class.
The operation of moving a target class to a single new superclass can
also be performed using drag and drop by dragging the target class onto
the superclass. Holding the Shift key down will result in an adding operation
rather than a moving operation. See here
for details on drag and drop setup. |
Transmute into metaclass
Not currently applicable because: no classes selected |
Transmutes a class into a metaclass. A
metaclass is a class whose instances are classes. Executing this command
may take a while, since not only must the class be reformulated, but the
system may need to transmute all of the classes instances into classes. |
Remove subclasses
Not currently applicable because: no classes selected |
Removes a set of direct subclasses from
a given superclass. The first class you select is taken to be the superclass
and all other classes selected must be direct subclasses of that superclasses
that you plan to disconnect from the superclass. |
Remove superclasses
Not currently applicable because: no classes selected |
Removes a set of direct superclasses from
a given subclass. The first class you select is taken to be the subclass
and all other classes selected must be direct superclasses of that subclasses
that you plan to disconnect from the subclass. |
Remove prefix
Not currently applicable because: no class selected |
Renames the selected frame(s) and all
subclasses by removing the prefix entered into the name (or pretty name)
typein box if the class in question has that prefix. The renaming is restricted
to the classes coming from the KBs identified in the KB menu.
This command is sensitive to the KB arg menu. |
Remove redundant superclasses in whole
KB |
Removes any redundant direct superclasses
of the selected classes or in the whole KB if no clases are selected. For
example, if dog is a direct subclass of animal and living-thing,
and animal is also a subclass of living-thing, then if
this command were to be applied to dog, then dog would
be unhooked from living-thing.
This command is sensitive to the KB arg menu. |
Remove suffix
Not currently applicable because: no class selected |
Renames the selected frame(s) and all
subclasses by removing the suffix entered into the name (or pretty name)
typein box if the class in question has that suffix. The renaming is restricted
to the classes coming from the KBs identified in the KB menu.
This command is sensitive to the KB arg menu. |
Rename
Not currently applicable because: no class selected |
Renames the selected frame to have the
name (or pretty name) specified in the Name or Pretty name typein boxes
respectively. |
Reverse class arguments
Not currently applicable because: not enough frames selected |
Reverses the order of the selected class
arguments, thereby causing the last argument to become the primary argument.
This is particularly useful if, for example, you want to make all frames
with the names "...-industry" be subclasses of industry.
You can do this by doing a Find on the string "...-industry" to
select all of the candidate subclasses, and then select industry.
If you then use this command, you will be able to use the Add/Move Subclasses
commands and achieve the desired effect. |
Stub out any missing frames
Not currently applicable because: no frames have been loaded |
Checks out all frame references in KB
files that have been loaded to see that there is an appropriate frame definition
for every frame reference. If any frame reference has no associated frame
definition then the system attempts to create a stub frame definition to
satisfy the frame reference. For example, if an input KB file said only
the following:
(define-okbc-frame dog
:frame-type :class
:direct-superclasses (living-thing))
then living-thing may be an unsatisfied frame reference. This
command would cause a stub root class to be created for living-thing. |
|
The Decomposition menu: |
This menu contains commands used to create,
edit and delete decomposition relationships between classes. For example,
using this menu, you can say that Dog and Cat are both
disjoint subclasses of Mammal. |
Add to decomposition
Not currently applicable because: no decompositions selected |
Adds the specified class(es) to the specified
decomposition. the following is an example KB in which we plan to add the
class Human, a subclass of Mammalia to the disjoint decomposition
that currently contains only the class Equus. Notice how the selected
decomposition is highlighted in a brighter green.
The following is the same KB after we have executed the "Add to decomposition"
command.
As we can see, the class Human, is now a member of the disjoint
decomposition along with the class Equus.
A class can also be added to a decomposition by the use of drag and
drop. Simply drag the class onto the decomposition and drop it there. See
here
for details on drag and drop setup.
See also the "Remove from decomposition" command. |
Create disjoint decomposition
Not currently applicable because: not enough frames selected |
Creates a disjoint decomposition out of
a selected set of subclasses of a class. The first class you select is
the owning superclass of the decomposition. All subsequent classes selected
must be direct subclasses of the first class.
Below is an example KB in which we plan to create a disjoint decomposition
between the subclasses Animal and Plant, as a subclass
of Mammalia to the disjoint decomposition that subclasses of Living-Thing.
The following image shows the same KB after we have executed the "Create
disjoint decomposition" command. As we can see, the classes Animal
and Plant are now marked with a green vertical stripe showing
the disjoint decomposition of Living-Thing.
See also the "Create exhaustive decomposition" and "Create partition"
commands. |
Create exhaustive decomposition
Not currently applicable because: not enough frames selected |
Creates an exhaustive decomposition out
of a selected set of subclasses of a class. The first class you select
is the owning superclass of the decomposition. All subsequent classes selected
must be direct subclasses of the first class.
This command is just the same as the "Create disjoint decomposition"
command except that an exhaustive decomposition is created as opposed to
a disjoint one.
See also the "Create partition" command. |
Create partition
Not currently applicable because: not enough frames selected |
Creates a partition (exhaustive, disjoint
decomposition) out of a selected set of subclasses of a class. The first
class you select is the owning superclass of the partition. All subsequent
classes selected must be direct subclasses of the first class.
This command is just the same as the "Create disjoint decomposition"
command except that the decomposition is declared to be disjoint as well.
See also the "Create exhaustive decomposition" command. |
Remove decomposition
Not currently applicable because: no decomposition selected |
Completely removes the selected decomposition
from the KB. The following is an example KB in which we plan to remove
the decomposition of the class Living-Thing into the classes Animal
and Plant. Notice how the selected decomposition if a brighter
colour.
Below, you will see the same KB after we have executed the "Remove
decomposition" command. As we can see, the green bar showing the decomposition
has gone.
See also the "Create disjoint decomposition", "Create exhaustive decomposition",
and "Create partition" commands. |
Remove from decomposition
Not currently applicable because: no decompositions selected |
Removes the selected class(es) from the
selected decomposition. The following is an example KB in which we plan
to remove the class Human, a subclass of Mammalia from
the disjoint decomposition that currently contains it and the class Equus.
Notice how the selected decomposition is highlighted in a brighter
green.
The next image shows is the same KB after we have executed the "Remove
from decomposition" command. As we can see, the class Human, is
now now not a member of the disjoint decomposition along with the class
Equus - it now has no green stripe beside it.
See also the "Add to decomposition" command. |
Subclasses are disjoint
Not currently applicable because: no classes selected |
Creates a disjoint decomposition out of
all of the direct subclasses of a given class. This command is equivalent
to selecting the class and then individually selecting all of its subclasses
and using the "Create disjoint decomposition" command.
See also the "Subclasses are exhaustive" and "Subclasses form a partition"
commands. |
Subclasses are exhaustive
Not currently applicable because: no classes selected |
Creates an exhaustive decomposition out
of all of the direct subclasses of a given class. This command is equivalent
to selecting the class and then individually selecting all of its subclasses
and using the "Create exhaustive decomposition" command.
See also the "Subclasses are disjoint" and "Subclasses form a partition"
commands. |
Subclasses form a partition
Not currently applicable because: no classes selected |
Creates a partition (exhaustive, disjoint
decomposition) out of all of the direct subclasses of a given class. This
command is equivalent to selecting the class and then individually selecting
all of its subclasses and using the "Create partition" command.
See also the "Subclasses are disjoint" and "Subclasses are exhaustive"
commands. |
Upgrade decomposition to partition
Not currently applicable because: no decomposition selected |
Upgrades the selected decomposition, which
is either an exhuastive or a disjoint decomposition into a partition (an
exhaustive disjoint decomposition). |
|
The File menu: |
This menu contains commands that are generally
independent of the content of the KB currently being manipulated, such
as loading and saving the KB, and setting your preferences. |
Bug report |
Gives you a form that allows you to submit
a bug report. |
Close KB.... |
Closes the current KB. The close KB operation
makes the KB completely vanish from the machine and deletes all in-core
representations of it. This does not affect any saved out versions of the
KB. If the KB has been modified, you will be asked to confirm the close
operation like this:
Once the KB has been closed, you will be taken to the KB
selection dialogue . |
Copy subgraph to new KB....
Not currently applicable because: no selected frames |
Takes the taxonomy subtree(s) starting
at the selected class(es) and copies it to a new KB that you specify. This
command is useful for splitting out subparts of a KB prior to merging,
or for export.
This command is sensitive to the KB arg menu. |
Create KB.... |
Takes you to the KB
creation dialogue so that you can create a new KB. KBs of any loaded
OKBC KB-type can be handled by Chimaera.
The KB you create must be one of the KB types known to Chimaera. The
KB type is selected from the menu labelled "Select a KB type:". Picking
a KB type from this menu will take you to the KB creation dialogue, which
looks like this.
You should type in the name for your new KB and select any appropriate
KBs to include from the KB inclusion menu. Once you have created the KB
you will be taken to Chimaera proper, and you will see the new (empty)
kb. If you are creating an Ontolingua ontology, and don't know this
parent KBs to select, you should select the Frame-Ontology. |
Edit preferences.... |
Takes you to the main KSL Network Services
preferences dialogue. You will probably want to pick the Chimaera preference
category. A number of different aspects of the behaviour, look and feel
of Chimaera are controlled by user preferences. |
Home .... |
Takes you to the main KSL Network Services
home page. This will allow you to select other services, such as Ontolingua. |
New window |
Opens a new browser window looking at
the same KB. This command is useful as a means of cloning the current window
state whilst looking at something interesting. If you turn on the drag
and drop features, you will find that this is the best way to get a new
window up and running, since drag operations are interpreted as editing
operations.
See here
for details on drag and drop setup. |
Quit session.... |
Completely terminates your session with
the KSL Network Services. All in-core representations of any KBs you have
will be deleted, so you will be prompted concerning what to do about any
currently modified KBs as follows:
. |
Save KB
Not currently applicable because: (KB is unmodified |
Saves the current KB out to persistent
storage. If you want to change the name of the KB as well, you should use
the "Save KB as...." command. |
Save KB as.... |
Renames the current KB to a new name as
specified by the user, and saves the KB out to persistent storage. When
you select this command you will be prompted for the new name of the KB
as follows:
|
Select KB.... |
Takes you to the KB
selection dialogue so that you can select an existing KB or create
a new KB. KBs of any loaded OKBC KB-type can be handled by Chimaera.
The KB selection dialogue is split into two key parts:
-
The top part is used to create a new KB.
-
The KB you create must be one of the KB types known to Chimaera. The KB
type is selected from the menu labelled "Create a new KB of this type:".
Picking a KB type from this menu will take you to the KB creation dialogue,
which looks like this.
You should type in the name for your new KB and select any appropriate
KBs to include from the KB inclusion menu. Once you have created the KB
you will be taken to Chimaera proper, and you will see the new (empty)
kb.
-
The bottom part is used to select an existing KB
-
The KB you select can be either one that is currently loaded or one that
is to be loaded from the library. Select a row from the table according
to the KB type you want to use. Note that the different KB types will in
general share different libraries, so the KBs that you will be offered
to select or load will in general be different for each KB type. Once you
have made your selection, Chimaera will load the selected KB if necessary,
and take you to Chimaera proper.
|
Upload into current KB.... |
Gives you a dialogue
that will allow you to upload KB sources into the current KB. The sources
you upload can be loaded in a number of different ways from a number of
different points of origin:
-
You can upload a file from your client machine. This file will be selected
from your own file system using a file upload widget. You can also drag
a file into the upload form to achieve the same effect. Note: The first
time you drag a file into Chimaera in a given session you will be given
a security alert like this.
This is to be expected, and we advise that you select the "Grant" option.
See here
for details on drag and drop setup.
-
You can upload from a URL. This must be a URL accessible to the KB merger's
server machine.
-
If you have suitable privileges, you can specify a pathname of a
KB on Chimaera server machine's file system.
-
You can drag a KB reference in from the Ontolingua frame editor, as
long as the frame editor is on the same server as Chimaera.
-
You can enter source forms into the widget labelled "Forms to upload"
In all of these cases, the KB content uploaded must be legal KB source
in one of the input languages understood by Chimaera. These languages are
all shown on the "Language" menu. To get a full specification of the allowed
syntax in the language you select, use the "Describe language" button.
The menu item saying "Will be specified in the file" means that the file
will contain a suitable (in-language lll) form (or forms) to identify
the language.
The name of the source is important because this is used to label the
definitions as they are loaded into Chimaera. The line labelled "Name of
source KB" is used to specify the way in which the frames are to be named.
Most of the time you can ignore this, since files usually have names that
are reasonable, and this will be ised unless the name of the file is overridden
by an (in-kb kkk) form in the file. You can override the name
to be used for the KB you are loading by making the appropriate menu selection
and typing in the desired name. This option is important if you are simply
uploading KB content by pasting it into the "Forms to upload" text box. |
|
The Mode menu: |
This menu contains commands that implement
mode-changing switches. A number of them change the display appearance,
others control the behavior when edits occur. |
Assume that input KBs are clean |
The default behaviour of Chimaera is to
assume that each KB fragment uploaded into it is already thought to be
correct, and that there are not thought to be, for example, multiple frames
representing the same concept, or names that need to be resolved. In some
circumstances, however, this assumption is not appropriate, and the user
will have disabled the default using the "Don't assume that input KBs are
clean" command. This command reenables the default, which means that name
resolution comparison operations will only apply across input file boundaries. |
Don't assume that input KBs are clean |
The default behaviour of Chimaera is to
assume that each KB fragment uploaded into it is already thought to be
correct, and that there are not thought to be, for example, multiple frames
representing the same concept, or names that need to be resolved. In some
circumstances, however, this assumption is not appropriate, and the user
can disabled the default using this command. Selecting this command means
that name resolution comparison operations will apply within input files
as well as across input file boundaries.
See also the "Assume that input KBs are clean" commane. |
Don't filter agendas |
Removes the agenda filter string set by
the "Filtrer Agendas" command. |
Don't remove redundant superclasses
on edit |
Changes the editing mode of Chimaera so
that whenever you perform a taxonomic edit, it does not necessarily remove
any redundant superclasses found. |
Don't sort by KB |
Deselects Sort By KB mode. Selecting this
command will make any the subclasses of the classes that appear in the
indented class display be sorted only by name rather than also primarily
by input KB. |
Edit commands cause agenda advance |
Changes the mode of edit commands so that
if an edit command is invoked whose arguments exectly match the current
name resolution agenda item, then that agenda item is deleted, and the
agenda advances. |
Edit commands don't cause agenda advance |
Changes the mode of edit commands so that
if an edit command it has no effect on the items in the name resolution
agenda. |
Filter agendas (enter string in Name
or Pretty Name box) |
Sets a global filter string for the agenda
operations (Name resolution, Taxonomy traversal and Slot traversal). Only
agenda item containing the specified string as a substring will be shown
in the agenda.
See also the "Don't filter agendas" command. |
Hide name resolution |
Hides the menu and widgets associated
with Name Resolution mode. See also the "Name Resolution", "Forget deleted
name resolution items", and "Delete agenda items mentioning selected" commands. |
Hide roots with no subclasses |
Makes root classes with no subclasses
disappear from the display. A class without any subclasses is shown with
a grayed-out triangle. This command is useful either when doing serious
editing to partially cleaned up taxonomies in which there may be an unreasonable
number of root classes, or when the real roots are not visible due to being
from an included KB.
See also the "Show roots with no subclasses" command. |
Hide slot traversal |
Hides the menu and widgets associated
with Slot Traversal mode. See also the "Slot traversal", "Forget deleted
slot traversal items", and "Delete agenda items mentioning selected" commands. |
Hide slots |
Deselects Show Slots mode. Selecting this
command will make any slots visible in the display disappear. See also
the "Show Slots" command. |
Hide taxonomy traversal |
Hides the menu and widgets associated
with Taxonomy Traversal mode. See also the "Taxonomy traversal", "Forget
deleted taxonomy traversal items", and "Delete agenda items mentioning
selected" commands. |
Name resolution
Not currently applicable because: no classes |
Selects Name Resolution mode. In this
mode, the user is offered a menu with a sorted agenda of candidate classes
in the taxonomy to inspect because of similarities in their names. For
example, when merging a pair of KBs, one might end up with a class called
Cat and a class called Cats which are likely candidates
for a merge. Similarly, the class Cat and the class Wild-Cat
may be worth examining because the latter might be a worthy subclass of
the former.
The following is a view of the user interface before Name Resolution
mode is selected.
The next image is a view of the user interface once Name Resolution
mode has been selected.
Note the new line of widgets appearing just above the rule. The menu
on the right of this line allows random access selection of resolution
candidates. In this case, we have an item selected that tells us that two
classes, Airline-Industry and Airplanes-Industry share
very similar pretty names. These are good candidates for a merge. The display
below the rule has zoomed to show only the classes in question and the
superclasses connecting them to the root of the KB.
The arrow widgets to the left of the menu allow the user to cycle through
the candidates for name resolution, zooming the display to each successive
pair. Selecting the trash icon will persistently delete the current agenda
item. This allows you to remove candidates from further consideration if
you know that they are correct.
See also the "Forget deleted name resolution items", "Delete agenda
items mentioning selected", and "Hide Name Resolution" commands. |
Remove redundant superclasses on edit |
Changes the editing mode of Chimaera so
that whenever you perform a taxonomic edit, it removes any redundant superclasses
found. |
Set name resolution vigor
to [Numeric arg] (current value is 4 |
Sets the vigor of name resolution. The
name resolving algorithm has a number of heuristic components, all of which
can be controlled by this one parameter. The larger the value, the easier
it is for a pair of names to match and thereby appear on the menu. |
Show roots with no subclasses |
Makes root classes that have no subclasses
visible. This is the default. Classes with no subclasses appear with a
grayed-out triangle.
See also the "Hide roots with no subclasses" command. |
Show slots |
Selects Show Slots mode. In this mode,
direct template slots of classes can be seen indented under the classes
to which they are attached. This mode is not generally used when merging
a taxonomy, but is important later on when merging the slots in a merged
taxonomy.
The image below is an example of a taxonomy before Show Slots mode
has been selected.
When the Show Slots mode is selected, triangles appear after classes
indicating those classes that have direct template slots, as shown next:
Opening a slot triangle reveals the slots attached to a class:
|
Slot traversal |
Selects Slot Traversal mode. In this mode,
the user is guided through the taxonomy of the current KB focussing the
user's attention on any classes that have experienced some taxonomic edit
resulting in there being slots from different source files. This gives
the user a valuable checklist to allow the exhaustive traversal of the
KB looking for areas in which slot merges might be performed, or constraints
might be applied.
The following image is a view of the user interface before Slot Traversal
mode has been selected.
next, we see a view of the user interface once Slot Traversal mode
has been selected.
Note the new line of widgets appearing just above the rule. The menu
on the right of this line allows random access selection of traversal candidates.
In this case, we have selected an item for the class Cat, which
is the merge result of a class from each of two input files. The display
below the rule has zoomed to show only the class in question, the superclasses
connecting it to the root of the KB, and the direct slots attached to the
selected class. This class looks like a good candidate for a slot merge.
The arrow widgets to the left of the menu allow the user to cycle through
the candidates for slot traversal, zooming the display to each successive
candidate. Selecting the trash icon will persistently delete the current
agenda item. This allows you to remove candidates from further consideration
if you know that they are correct.
See also the "Forget deleted slot traversal items", "Delete agenda
items mentioning selected", and "Hide slot traversal" commands. |
Sort by KB |
Selects Sort By KB mode. Selecting this
command will make any the subclasses of the classes that appear in the
indented class display be sorted primarily by input KB. |
Taxonomy traversal |
Selects Taxonomy Traversal mode. In this
mode, the user is guided through the taxonomy of the current KB focussing
the user's attention on any classes that have experienced some taxonomic
edit resulting in there being adjacent classes from different source files.
This gives the user a valuable checklist to allow the exhaustive traversal
of the KB looking for areas in which disjointness information might be
added.
The following is a view of the user interface before taxonomy traversal
mode has been selected.
Next, we see a view of the user interface once Taxonomy Traversal mode
has been selected.
Note the new line of widgets appearing just above the rule. The menu
on the right of this line allows random access selection of traversal candidates.
In this case, we have selected an item for the class Economy-Sector,
which is the merge result of a class from each of two input files. The
display below the rule has zoomed to show only the class in question, the
superclasses connecting it to the root of the KB (none in this case because
we are looking at a root class), and the immediate subclasses of the selected
class. This class looks like a good candidate for adding extra disjointness
information.
The arrow widgets to the left of the menu allow the user to cycle through
the candidates for taxonomy traversal, zooming the display to each successive
candidate. Selecting the trash icon will persistently delete the current
agenda item. This allows you to remove candidates from further consideration
if you know that they are correct.
See also the "Forget deleted taxonomy traversal items", "Delete agenda
items mentioning selected", and "Hide taxonomy traversal" commands. |
|
The Slot menu:
(Not currently visible) |
This menu contains commands that affect
the template slots on classes (slots on classes that appear on instances
of those classes). Using this menu you can merge or delete slots. |
Add slots
Not currently applicable because: no classes selected |
Adds a set of slots to a class as direct
template slots. You must select one class and any number of slots. |
Detach slots
Not currently applicable because: no classes selected |
Detaches the selected slots from their
parent class. This detachment process simply removes any explicit attachment
between the slots and the class. If the slots can be inferred to be attached
to the class because they have values or facets, then the slots will still
appear as slots on the class, but if these values or facets are removed,
the slot will vanish. |
Merge slots
Not currently applicable because: no slots selected |
Merges a number of slots into the same
slot. You select any number of slots and when you select this command all
of the slots will be replaced with a single, merged definition that will
appear in all of the places that the original slots appeared. The resulting
slot will have the name of the first slot you selected unless you type
in a new name into the Name typein box.
The following is an example KB in which a pair of slots have been selected
for merging:
After the Merge Slots command is selected, only one slot appears in
both places as shown below: |
Move slots with values and facets
Not currently applicable because: no classes selected |
Moves a collection of slots from one class
to another, taking all slot values, facets and facet values with them.
When the move operation is finished, the selected slots will no longer
be attached to their previous owning classes unless they are attached for
some other reason. |
Set global value type
Not currently applicable because: no slots selected |
Sets the overall value type (range) of
the selected slot(s) to be constrained to be the selected class. For example,
if you select the slot Has-Child and the class Human,
then this means that every value for the slot must be an instance of
the class Human. Note that this is a global constraint on
the Has-Child slot. If this slot were to be used on the class
Dog, values of the slot would be forced to be instances of the
class Human(!).
See also the "Set value type" command for a means of making less sweeping
restrictions. |
Set slot domain
Not currently applicable because: no slots selected |
Sets the domain of the selected slot(s)
to be constrained to the specified class(es). This means that the slot
can only be attached to subclasses of the intersection of the specified
classes. For example, if you select the slot Has-Child and the
class Human, then the use of this command will restrict the slot
so that it can only apply to instances of the class Human, or
subclasses of the class Human.
Note that if you select multiple domain classes, this restricts the
domain of the slot to be the intersection of the classes, not the
union as one might expect. Thus, if you select the slot Has-Child
and then the classes Human and Dog, the only frames that
will be allowed to instantiate this slot will be those that are simultaneously
both humans and dogs. |
Set value type
Not currently applicable because: no slots selected |
Sets the situated value type (:value-type
facet) of the selected slot(s) to be constrained to be the selected class
in the classes to which the slots are attached. For example, if
you select the slot Has-Child attached to the class Human
and select as the class argument the class Human, then this means
that every value for this slot must be an instance of the class Human
for every instance of the class Human or subclass of it. This
says nothing about uses of the Has-Child slot elsewhere in the
KB. For example, the Has-Child in the class Dog is not
restricted to the class Human by the use of this command.
See also the "Set global value type" command. |
Show slot attachments
Not currently applicable because: no slots selected |
Makes visible all classes to which the
selected slot is attached, opening any necessary superclasses in order
to ensure the visibility of the classes. |
|
The View menu: |
This menu contains numerous commands that
broadly control numberous visual aspects of the user interface, such as
selecting display and command modes, and opening and closing classes. |
Add explicit root (enter name in Name
or Pretty Name box) |
Adds an explicit frame or frames to the
set of roots for the display. The roots that are added are taken from the
typin Name or Pretty name text widgets. Wildcards can be
used to add multiple roots simultaneously. This is command is particularly
useful when working on a KB that includes some higher-level KB. Roots for
the KB displayed are generally restricted to the KB being merged itself,
but sometimes this results in a number of classes, whose only superclass
is defined in the included KB, appearing to be roots, when it is not useful
to think of them as such.
The following is an example KB that has a number of apparent root classes
that are actually subclasses of the class Action in an included
KB.
By typing "Action" into the Name widget and selecting this command
we are able to reroot the display as shown next:
As we can see below, numerous former roots are now indented under their
real superclass, Action
When this command is used, the "Close classes with no local subclasses"
command is also automatically invoked. |
Close all visible classes
Not currently applicable because: no roots |
Works through all of the classes visible
on the screen and marks them as closed. The resulting display will have
only the current roots visible, and all of them will be closed. If you
then open any one of these classes that was previously open, you will find
that its subclasses are also closed.
See also the "Classes, start with all closed" preference entry.
Here is an example of the view before this command is selected.
Here is the same KB viewed after this command is selected
|
Close classes with no local subclasses |
Marks as closed all classes that have
no subclasses that are defined in the current KB. That is, if the current
KB includes other KBs, and classes of the included KB are visible, then
this command will close any such classes that do not have at least one
(transitive) subclass in the current KB of interest.
This command is used to exclude irrelevant detail from included KBs. |
Delete agenda items mentioning selected
Not currently applicable because: no selected frames |
Marks as deleted any agenda items from
any agenda (Name resolution, taxonomy traversal or slot traversal) that
mentions no frames other than the selected frames.
This command is useful to eliminate agenda items that refer to frames
in an area of the KB that has been thoroughly inspected. It can be used
fruitfully in combination with the Select visible frames command
to select subtrees that are known to be correct, and then remove all agenda
items for them. |
Deselect all
Not currently applicable because: nothing selected |
Deselects all of the frames that are currently
selected. This is equivalent to clicking on them all individually one-by-one.
This command is sensitive to the KB arg menu. |
Find (enter text in Name or Pretty
Name box) |
Finds a frame or frames in the KB identified
from text that you type into either the Name or Pretty name text widgets.
It then selects the frames matching the text string and makes sure that
they are visible.
The pattern for the frame names may contain "*" (zero-or-more-character)
and "?" (single character) wildcards.
This command is sensitive to the KB arg menu. |
Find more (enter text in Name or Pretty
Name box) |
Finds a frame or frames in the KB identified
from text that you type into either the Name or Pretty name text widgets,
and adds the set of frames found to the current set of selected roots.
The new set of roots are then made visible.
The pattern for the frame names may contain "*" (zero-or-more-character)
and "?" (single character) wildcards.
This command is sensitive to the KB arg menu. |
Forget deleted name resolution items
Not currently applicable because: no deleted items |
Permanently forgets name resolution agenda
items that have been deleted.
The name resolution agenda facility persistently remembers items that
have been deleted either explicitly using the trash can delete command,
or by being deleted en masse using the "Delete agenda items mentioning
selected" command. If for some reason you want to rerun the name resolution
process, irrespective of any items you may have deleted, this command will
reset the name resolver and the agenda will be computed afresh. |
Forget deleted slot traversal items
Not currently applicable because: no deleted items |
Permanently forgets slot traversal resolution
agenda items that have been deleted.
The taxoomy traversal agenda facility persistently remembers items
that have been deleted either explicitly using the trash can delete command,
or by being deleted en masse using the "Delete agenda items mentioning
selected" command. If for some reason you want to rerun the slot traversal
process, irrespective of any items you may have deleted, this command will
reset the slot traverser and the agenda will be computed afresh. |
Forget deleted taxonomy traversal items
Not currently applicable because: no deleted items |
Permanently forgets taxonomy traversal
resolution agenda items that have been deleted.
The taxoomy traversal agenda facility persistently remembers items
that have been deleted either explicitly using the trash can delete command,
or by being deleted en masse using the "Delete agenda items mentioning
selected" command. If for some reason you want to rerun the taxonomy traversal
process, irrespective of any items you may have deleted, this command will
reset the taxonomy traverser and the agenda will be computed afresh. |
Forget explicit roots
Not currently applicable because: no explicit roots specified |
Forgets all root classes explicitly added
by the user.
See the "Add explicit root" command. |
Forget ignored name resolution prefices/suffices
Not currently applicable because: not resolving names |
Forgets all ignored prefices and suffices
during name resolution.
See the "Ignore suffix in name resolution" and "Ignore prefix in name
resolution" commands. |
Forget sources of current KB
Not currently applicable because: no frame sources recorded |
Permanently forgets the sources of any
definitions in the current KB. Chimaera will in general persistently remember
the source of all definitions loaded into it. This is in general useful,
but when a KB has been cleaned up sufficiently for it to be worth considering
all current frames to be part of the "official version" of the KB, this
command can be used to flush the record of all current frames' origins.
The following imageis an example KB with terms loaded from multiple
sources.
Note how the definition for Economic-Sector has two sources
because it is the result of two definitions having been merged.
After this command has been used, the KB appears as follows:
|
Ignore prefix in name resolution (enter
string in name box)
Not currently applicable because: not resolving names |
Sets a filter string for the name resolver
so that if a name in a KB specified in the KB arg menu has the prefix,
the prefix will not be taken into account during name resolution. For example,
if you enter the string "-organization" and your KB contains the term Military-Organization,
then during name resolution this term will match identically to any term
simply spelled Military.
This command is useful if an input KB has a consistent naming
convention that reduces the quality of name matching during name resolution.
See also the Remove Prefix/Suffix commands if you want to make
this change permanent.
This command is sensitive to the KB arg menu. |
Ignore suffix in name resolution (enter
string in name box)
Not currently applicable because: not resolving names |
Sets a filter string for the name resolver
so that if a name in a KB specified in the KB arg menu has the suffix,
the suffix will not be taken into account during name resolution. For example,
if you enter the string "-organization" and your KB contains the term Military-Organization,
then during name resolution this term will match identically to any term
simply spelled Military.
This command is useful if an input KB has a consistent naming
convention that reduces the quality of name matching during name resolution.
See also the Remove Prefix/Suffix commands if you want to make
this change permanent.
This command is sensitive to the KB arg menu. |
Open subclasses of roots
(by [Numeric Arg] levels |
Opens up a selection of subclasses. If
any classes are selected, then the opening operation is rooted at the selected
frames, otherwise it is rooted at the roots of the graph. If a numeric
argument is supplied from the numeric argument menu, then the number of
levels of subclasses selected will be opened. If no numeric argument is
supplied then the default controlled by the "Depth, to open when opening
subclasses" user preference will apply.
This command is sensitive to the KB arg menu. |
Reset roots |
Resets the roots to the display to be
the same as the roots for the KB as a whole. This has the effect of unzooming
a display that has zoomed in on some particular combination of classes.
Note that resetting the roots is orthogonal to the "Forget explicit
roots" command. Extra roots added using the "Add explicit root" command
will still be considered as roots after using this command. |
Select root
Not currently applicable because: no classes selected |
Reroots the display so that the currently
selected classes are considered to be the roots of the display. If the
selected classes are not actually root classes of the KB then their superclasses
will be shown, but without triangles. This command allows the focussing
of the user's attention on a particular subgraph of the taxonomy.
See also the "Reset roots" command.
This command is sensitive to the KB arg menu. |
Select subclasses
Not currently applicable because: no selected frames |
Marks as selected all of the currently
visible subclasses of the selected frames. This is equivalent to clicking
on each visible subclass frame in the display in turn. It is particularly
useful in conjunction with such commands as "Delete agenda items mentioning
selected".
If a numeric argument is supplied then the specified number of
levels of subclasses are opened before being selected. |
Select visible frames |
Marks as selected all of the currently
visible frames. This is equivalent to clicking on each frame in the display
in turn. It is particularly useful in conjunction with such commands as
"Delete agenda items mentioning selected".
This command is sensitive to the KB arg menu. |
|