This section provides a basic description of the KM language. It is included in this thesis as background information to familiarize the reader with the concepts and terminology associated with knowledge bases. These concepts and terms will appear frequently in the description of KnEd. While this section is necessarily brief, a more detailed discussion of KM can be found in [Acker:92].
KM is a frame-based knowledge representation language that uses slot-and-filler structures [Rich:91]. Its basic representational entity is a frame. Each frame collects information about a concept (e.g. an object or process) and records this information in the values of the slots of the frame. KM is similar to the CODE4 Knowledge Representation Language (CODE4-KR) [Lethbridge:94] and CYC-L [Lenat:90].
Figure 1: A simple frame encoding information about a typical Rose-Plant. Attributes of a Rose-Plant include generalizations, parts, pollinated-by, stages, and symmetry. The values of each attribute are listed after the colon.
For example, the frame in Figure 1 records the following facts:
A Rose-Plant is a type of Flowering-Plant; that is, Flowering-Plant is a generalization of Rose-Plant.
Some of the parts of a Rose-Plant are: root, stem, leaf, corolla, and calyx.
Pollination of the Rose-Plant is aided by insects and hummingbirds.
The stages in the development of a Rose-Plant are: flower-bud, receptive-flower, and mature-flower.
Rose-Plants have radial symmetry.
Figure 2: A frame encoding information about the slot Habitat.
Since it is important to collect information about slots, they are also represented as frames. Figure 2 is an example of the slot Habitat. It records the following information:
Habitat is a type of Slot
The frames to which the slot can be attached must be Biological-Taxons
The values used to fill the slot must be Earth-Regions
The Habitat slot can have multiple values
The inverse of the Habitat slot is Habitat-Of
The values of the Habitat slot can be inherited
The following definitions will be used in the rest of the thesis:
Slot - e.g. Habitat, defines a relationship between two or more concepts
Frame - provides domain knowledge about an object, event, or slot
Assertion - a piece of information consisting of two frames related by a slot.
Value - the value of an assertion, e.g. Leaf is the value of the "Plant part Leaf" assertion.
Attribute - a <slot, value> tuple for a frame, e.g. <parts, Leaf> is an attribute of Rose-Plant