As we mentioned earlier, general message passing among agents in the UMDL is supported by insisting that the agents follow the standard conventions of our KQML-based protocol with associated performatives. The performatives are used to tell the agent what the message is about (e.g. recommend-one, ask-about, reply, error) and provide a basic level of interaction. Inside the KQML message, however, we can include strings written in the agent's task language. This is a language specific to the agent and tailored for its domain.
The content of queries to a TPA must be in the Task Description Language (TDL), which is currently a list of argument-value pairs specifying different parameters of the task, plus a query given in a (currently) simplified version of SQL. The query specifies the type of content that the user is interested in and the specific information about the collections that he wishes to receive. For example, a task to find collections for a user to investigate can be characterized by features of the query (e.g. topic(s), dates, keywords, level of presentation) and features of the search process (e.g. the maximum time that can be spent doing it, number of collections to return). At its simplest, a query planning TPA must be able to forward the features of the query to the Registry Agent, and return the results back to the sender. Our query planning TPA is envisaged to do much more, however, and already has added functionality such as:
We are currently trying to expand the language to include more information about the user. The plan is for the UIA to gather a profile of the user either by having her fill out a questionnaire, by monitoring her behavior, or by using defaults. This profile will include the user's preferences with respect to the type of medium and format she prefers (e.g. papers in html format), the conceptual level at which she usually searches (e.g. introductory, scholarly), what level she is at (e.g. juvenile, student, adult), etc. The TPA will use this information to make better decisions when trying to achieve the user's task.
Next: TPA knowledge Up: Task Planner Agent Previous: TPA architecture