RFC 2016 (rfc2016) - Page 2 of 21
Uniform Resource Agents (URAs)
Alternative Format: Original Text Document
RFC 2016 Uniform Resource Agents October 1996 distancing the necessary access incantations from the client, the notion of a Uniform Resource Agent (URA) was created. The evolution of Internet information systems has been characterized by building upon successive layers of encapsulated technologies. Machine address numbers were devised, and then encapsulated in advertised machine names, which has allowed the evolution of the Domain Name System (DNS) [RFC 1034, RFC 1035]. Protocols were developed for accessing Internet resources of various descriptions, and then uniform mechanisms for specifying resource locations, standardized across protocol types, were developed (URLs) [RFC 1738]. Each layer of Internet information primitives has served as the building blocks for the next level of abstraction and sophistication of information access, location, discovery and management. The work described in this paper is an experimental system designed to take another step in encapsulation. While TCP/IP protocols for routing, addressing, etc, have permitted the connection and accessibility of a plethora of information services on the Internet, these must yet be considered a diverse collection of heterogeneous resources. The World Wide Web effort is the most successful to date in attempting to knit these resources into a cohesive whole. However, the activity best-supported by this structure is (human) browsing of these resources as documents. The URA initiative explores the possibility of specifying an activity with the same kind of precision accorded to resource naming and identification. By focusing on activities, and not actions, URAs encapsulate resource access mechanisms based on commonality of information content, not protocol similarity. An invoker -- human or otherwise -- may delegate an entire set of tasks to a fully-instantiated URA. The nature of the tasks is completely specified by the agent, because it encapsulates knowledge about relevant Internet resources and the information required in order to access them. In this way, URAs insulate invokers from the details of Internet protocols while allowing them to carry out high- level Internet activities (such as searching a set of web pages and news groups relevant to a given topic). Also, by formally specifying a high-level Internet activity in an agent, the same activity can be repeated at a later date by the same invoker, someone else or even another agent. Moreover, the agent object may easily be modified to carry out another related task. More detail describing the underlying philosophy of this particular approach can be found in [IIAW95]. Daigle, et. al. Experimental



