The Frame-Editing Viewer

From either the hierarchy viewer or the relationships viewer (or another frame-editing viewer), it is possible to select a frame for editing. Invoking the Edit command from the Frame menu of either of the other two viewers will cause a Frame-Editing window to pop up. In this viewer, each slot name forms the root of a small tree, with its children being the individual slot values and any slot facets (defaults or constraints) that you wish to display. If the FRS is one that supports annotations on values, annotations will be drawn as children of the appropriate values. Inherited items are distinguished visually from local items, and cannot be edited (but they can be overridden where appropriate).

The kinds of editing commands that are available in this viewer include adding, deleting and editing slots and their values, facets, and annotations. From the frame-editing viewer, you may also recursively bring up new frame-editing viewers for frames and slots in the current display.

Following is an example of a frame editing window. The name of the frame being edited is shown in bold just below the command menus. Slots are listed at the left of the window, with links to their values and facets. Slot and facet names are tagged by the word slot or facet. Slot values appear in a rectangular box. Facet values appear inside an ellipse. Local values are shown inside a bold icon, whereas inherited values are not. In this example, showing the frame 2-KETOGLUTARATE (a biochemical compound), the slot ACID-BASE-VARIANTS has one value, 2-OXOGLUTARIC_ACID, which is a local value. One facet is shown, SLOT-VALUE-TYPE, which constrains values of the slot to be of a certain type. In this case, the facet value is Chemicals, meaning that all values for this slot must be chemicals. The facet value is an inherited constraint. Since in this example we have chosen to show the source of inherited values, we can see that the constraint derives from the slot's definition (the slotunit). If a frame system supports annotations on values, these are shown as children of their associated values. No annotations are shown in this example.

Like the relationships viewer, the frame-editing viewer pops up in a modal fashion: while it is active, no previous viewers will accept commands. To resume the previous browsing or editing activity, you must first close the current frame-editing viewer.

A keyboard shortcut has been provided for selecting a slot. Typing the Space key selects the first slot. Typing the Space key again changes the selection to the next slot, and so on. The Backspace key changes the selection to the previous slot. This facility is useful when you want to iterate over the available slots, adding a value or values for each one, without using the mouse.

Application Commands

The commands Print Display, Copy to Kill Ring, and Help are as in the class hierarchy and frame relationships viewers. The command, Close (Ctrl-q), closes the frame-editing viewer window and returns control to the viewer window from which it was invoked.

Knowledge Base Commands

At the time that this viewer is invoked, a KB should already be open and selected. Thus, only a subset of the commands from the class hierarchy Knowledge Base menu are available in this viewer: Save, Save As, and Revert to Saved, allow you to save the KB, to save the KB to a specified file, and to revert to the last saved version of the KB, respectively.

Frame Commands

While most of the editing commands accessible in the frame-editing viewer apply to parts of frames (slots, values, etc.), these commands act on whole frames. The first three commands in this menu manipulate the frame currently being edited. The last two commands allow a different frame to be edited by invoking a new frame-editing viewer.

Value Commands

Most of the frame-editing commands you will use on a regular basis can be found in this menu. These commands permit you to add, change and delete slot values, facet values and annotation values. Unless stated otherwise, value can refer to a slot value, facet value, or annotation value, even when only slots are explicitly mentioned. Most of these commands require you to select a value node, although some have reasonable defaults implemented if nodes of other types are selected. Two of the commands require you to select a label (slot, facet or annotation label); if a value is selected instead, the command is applied to the parent of the selected node. Some of these commands do not apply to inherited values: if an inherited value is selected, a warning or a menu of alternatives may be given. If a value input by the user is expected to name a frame, and no frame exists by that name, you may be given the option of creating the frame.

Slot commands

The commands listed here enable you to create, change and delete slots and slotunits. In addition to slots, they may also apply to facet and annotation labels. Please be aware that for many frame systems these operations are schema changes, and can affect frames other than just the one currently being edited. They should therefore be used with care. For background information to help you further understand slots and slotunits, see the section Creating Classes and Slots.


A dialog is opened in which the user can specify which slots and facets should be displayed, and whether or not inherited values should include where they were inherited from in the node label. The options for which slots and facets to display are: If the options selected or selected-filled are chosen for either slot or facet display, then upon exiting the dialog, the user is prompted to select from a menu of available slots and/or facets. Selected preferences apply to this frame editing window and all subsequent ones (until the preferences are changed again).


Return to the GKB-Editor Overview page.

Return to the beginning of the GKB User Manual.

Visit the Frame Relationships Viewer page.

Visit the Class Hierarchy Viewer page.

Suzanne M. Paley <>
Last modified: Wed May 28 00:15:28 1997