Glossary of terms


E

events slot is a mechanism used by bond to deliver messages. TODO more ... IMPORTANT !!!

G

migration is a mechanism used by bond to move an object from one resident to another.

K

KQMLKnowledge query manipulation language. A well established, preferred acommunication language for agent systems. Bond uses KQML by default to format all the messages.
Typically, the parameters of a KQML performative (especially :content parameter) are statements written in a specialized language, specified by the :language parameter
TODO MORE

L

bondLoader is a component of the system that allows you to specifiy the name of the classes you want to be loaded. This way the code will have an additional degree of freedom, being able to run methods on objects not specified or available at compiling time. EXAMPLE

M

Messaging Subprotocol is a module that is able to understand and react to messages sent by a party that speaks the same subprotocol. The subprotocol layer is implemented above the communication layer and provides semantic information (meaning) to the objects involved in the communication. Examples TODO ...

Model of the world Is an object that contains data used by the agent

P

probe it is an object that "speaks" a certain messaging protocol.

property - a new object, dynamically added to the object (after the creation). It makes it easy to extend functionality of the object, by enhancing its capabilities with new fields and methods. This is done by creating for each bondObject a hashtable, called values, and by using set and get methods on this hashtable, to add/retrieve the dynamic component objects.

performative - is a component of a message that gives a broad meaning of the message. Example: ask-one (request that needs answer), tell (response to a question) .
Performative is the name given to the KQML messages. There are several classes of performatives:

See all the KQML performatives here TODO : why are they needed. Where did they come from

R

resident - the bondObject that contains all other objects, and registered in teh directory with the alias "Resident"

S

shadow - the abstraction of some remote object. It is used for sending messages to the remote object, by calling the say(bondMessage m, bondObject sender) method. It acts similarly to the stub defined in RMI and CORBA. Shodowns are not registered in the local directory TODO: WHY ???

X

XMLExtensible Markup Language - is ageneral purpose scripting language. An XML text is composed of a block describing the valid rule, by a Document Type Definition (DTD) and a series of potentially embedded elements. Elements are defined by a starting and an ending tag. In the starting tag, a number of parameters can be specified, in the name = value format. This feature allows sets of name-value pairs to be easily translated into XML format.
Example of an XML message:
<?xml encoding="US-ASCII"?>
<!-- Document type definition for Bond messages -->

<!ELEMENT message>
<!ATTLIST message
          performative CDATA #REQUIRED
          content CDATA #REQUIRED
          sender CDATA #REQUIRED
          destination CDATA #REQUIRED
          subprotocol CDATA #REQUIRED
          reply-with CDATA
          in-reply-to CDATA
>