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