RFC 2016 (rfc2016) - Page 3 of 21


Uniform Resource Agents (URAs)



Alternative Format: Original Text Document



RFC 2016                Uniform Resource Agents             October 1996


Examples

   As a very simple example, consider the client task of subscribing to
   a mailing list.  There are many mechanisms for providing users with
   information necessary to complete a subscription.  Currently, all
   applications which provide the ability to subscribe to mailing lists
   must contain protocol-aware code to carry out the task once the
   requisite personal data has been solicited from the user.
   Furthermore, any application program that embeds the ability to
   subscribe in its code necessarily limits the set of mailing lists to
   which a client can subscribe (i.e, to those types foreseen by the
   software's creators).  If, instead, there is an agent to which this
   task can be delegated, all applications can make use of the agent,
   and that agent becomes responsible for carrying out the necessary
   interactions to complete the subscription.  Furthermore, that agent
   may be a client to other agents which can supply particular
   information about how to subscribe to new types of mail servers, etc.
   URAs have been explored as an agent technology to address just these
   types of issues.

Relationship to Other Internet Agents

   A number of Internet-aware agent and transportable code systems have
   become popular -- Java [JAVA], TCL [TCL] and Safe-TCL, Telescript
   [TELE], and the TACOMA system [TACOMA], to name a few of them.  To
   understand the scope of the problem that URAs tackle, it is helpful
   to understand how these systems differ from the URA approach.  Some
   of these agent systems, like Java, focus on providing mechanisms for
   creating and distributing (inter)active documents in the World Wide
   Web.  Others, like TACOMA, have more general intentions of providing
   environments for mobile, interacting processes.

   While each of these systems makes its individual contribution to
   solving the transportation, communication, and security issues
   normally associated with agent systems, they yield more objects that
   exist within the Internet information space.  That is, while they may
   permit individual users to have a more sophisticated interaction with
   a particular information resource, they do not address the more
   general Internet problems of naming, identifying, locating resources,
   and locating the same or similar resources again at a later date. It
   is this set of problems that URAs specifically set out to address.

   In order to create these URA objects that encapsulate a set of
   Internet activities, it is necessary to specify their operating
   environment and design structure.  Together, these form an
   experimental architecture for URAs, which can be evaluated in a
   preliminary way through a prototype implementation. The remainder of
   this paper describes such an experimental architecture, and outlines



Daigle, et. al.               Experimental