IBM Agent Building Environment Developer's Toolkit


Appendix C. Glossary


Glossary terms are defined as they are used in the toolkit library.

adapters
Used to relate applications to the agent and its engines, and provide actions that are needed by the agent to carry out its work in the application world. See adapter domain below.

adapter's domain
An adapter tries to represent one part of the outside world to the engines, which is referred to as the adapter's domain. Adapters tell the engines about changes in their domain, answer questions about their domain and perform actions in their domain at the engine's request.

agenda
Internal form of rules used by an engine. This form represents optimizations, rule normalization, and sensor binding. It may involve atom resequencing, therefore logging of inferencing activity by the engine and some engine diagnosics may reflect such reordering.

alarm
Rather then defining their own scheduling system and the accompanying rule editing, other adapters rely on the time adapter to schedule alarms. Alarms are set as a result of rule inferencing. When an alarm fires, it is reflected by an trigger event that is generated by the Time Adapter and can cause other rules to fire.

antecedent-expression of a rule
Logically implies the consequent-expression of the rule. The antecedent and consequent expressions are built from logical atoms.

atom
A part of a rule or fact. Consists of a predicate and a list of terms.

atomicity
Concept of completing a logical operation or defined set of operations without interruption by another asynchronous thread or process. Some form of locking is generally needed to accomplish this.

boolean sensor
A sensor that returns simply true or false. Requires a fully bound term list. Also see sensor.

client
Client is used in the broad sense, to include anyone, anything, or any group on whose behalf specific rule inferencing is done.

collector
An object used to group or collect inferencing material for storage and later retrieval. It usually represents a particular client or user, group of users/clients, or similar logical grouping. Collectors relate to each other hierarchically similar to directories.

conduct set
A named set of inferencing materials, generally a set of rules and optional set of long term facts with the same name as the set of rules. Is associated with a collector where the inferencing material is stored. Can also be associated with a selector that can can cause the conduct set to be applied to a particular trigger event.

consequent-expression of a rule
The part of a rule that "fires" when antecedent-expression (conditional part) of a rule is satisfied (evaluated as true).

derived facts
Atoms that exist in the consequent of a rule that has been fired successfully (is true because the antecedent of the same rule is true), so the atom(s) in the consequent are also true.

effector
An action or service defined by an adapter. Can be used as an atom in the consequent in the consequent of a rule to cause the interpreting engine to invoke the owning adapter to perform the prescribed action/service.

E-mail adapter
Demonstrates how to write and adapter in C++ by providing a basic way to send e-mail.

engines
An agent component that is driven by trigger events from adapters to interpret rules, scripts, or similar instructional material, yielding appropriate actions through effectors and their owning adapters.

event
See trigger events.

event notification
Each adapter watches for significant events in its domain and uses event notifications (trigger events) as input to the engine(s) and their interpretation of rules or similar instructional material.

file adapter
Triggers events based on changes to files and allows manipulation of files to which it has access.

fact
An atom that is used to evaluate or interpret rules to determine the truth of its antecedent expression. See derived facts, short term facts, long term facts, and fact pool.

fact set
A set of facts

fact pool
The collection of all facts for an inferencing episode that are used to evaluate rule antecedents for that inferencing episode. Made up of derived facts, short term facts, and long term facts.

inferencing episode
Inferencing that is initiated and scoped by a particular trigger event. It begins when the trigger event arrives and ends when all of the applicable rules have been evaluated for the current set of facts (fact pool).

HTTP adapter
Triggers events based on use of the World Wide Web.

KIF
Knowledge Interchange Format. For inference engines involves an evolving standard linear format for storing rules and facts.

library
A component that manages the caching and persistent storage of the agent knowledge (intelligence of the agent through which it makes decisions and takes actions on behalf of the client/user.

log-record-sets
A collection of records containing information about what the agent has done for the user. It may involve either engine or adapter activities. A separate log-record-set can be kept for each client or other "Collector" (see collector). It is useful for monitoring of inferencing activity, debugging, accounting, auditing, etc.

non-boolean sensor
A sensor that has least one free variable in its term list and returns sets of values for each binding (by adapter) of the free variables in its term list.

long term facts
Facts that persist beyond the current inferencing episode and are stored persistently.

metadata
Information or attributes that are associated with an object. Standard metadata is system defined and maintained through specialized object methods. User-defined metadata is defined by the application and associated with particular persistent objects to allow the application record its unique interpretation of the associated object and that objects standard attributes.

NNTP adapter
Triggers events based on USENET News actions.

predicate
A symbol for a relation between objects or a property of an object, specifically for the particular object(s) in the term list that follows the predicate in the same atom.

rule editor
Allows for convenient and easy-to-use user interfaces, GUIs, templates, etc. to enter rules and modifiy existing rules. Typically rule editing is oriented to a specific application, affording the user-known terminology and a familiar context for rule formulation.

rule set
A named group of rules that are stored persistently and loaded used for inferencing.

rules
An application-defined logical expression, consisting of antecedent expressions that are evaluated for truth, and consequent expressions that are implied true when the antecedent of the same rule is true.

selector
A symbol that can be associated with inferencing material, e.g. conduct sets such as to condition their applicability to particular event types. A selector is provided (optionally) as part of an event header by the originating adapter. A selector can have a filtering effector on which rules/facts are applied to a trigger event.

sensor
An query honored and defined by an adapter and invoked by an engine. Engine invocation is based on rule evaluation of antecedent atoms that have been designated as sensors.

short term facts
Atoms with bound terms, that are used to validate and/or assist in evaluation of rules, but are not directly a part of the a rule. Short term facts originate from adapters through trigger events or sensors. Unlike long term facts, short term facts are not stored persistently or created through rule editors.

Stock adapter
Demonstrates how to write an adapter in Java by providing a basic way to fetch stock quotes from a web site.

symbols
Part of a rule or fact. Can be a type of term or a predicate.

term
One of a set of optional parts of an atom. They are the objects of the atoms predicate. Terms can be one of several types, such as string and integer.

Time adapter
An adapter that manages alarms. Alarms are set by effectors of rules and cause trigger events to be originated by the Time Adapter when the alarm goes off.

trigger event
An asynchronous event supplied by an adapter to cause inferencing activity by engine(s). It is triggered when the adapter recognizes an interesting activity or event in its domain.

Utility adapter
Used for string manipulation and mathematics.

version management
Serialization of write operations by managing object versions. The version is incremented for each persistent storage change and used to determine if an intervening change has occured before the current change is applied. Supported by the agent Library component.

views
Provides the basis for interaction between the application or user and the agent (including the agent's Library). A type of interaction is the definition of rules to accomplish what the application or user requires the agent to do.


[ Top of Page | Previous Page | Table of Contents ]