Information Technology Reference
In-Depth Information
rather than anything to do with hypertext (Berners-Lee 1994a). The notion of a
URI can be viewed as a “meta-name,” a name which takes the existing protocol-
specific Internet addresses and wraps them in the name itself, a process analogous
to reflection in programming languages (Smith 1984). Instead of limiting itself to
only existing protocols, the URI scheme also abstracts away from any particular
set of protocols, so that even protocols in the future or non-Internet protocols can be
given a URI; “the web is considered to include objects accessed using an extendable
number of protocols, existing, invented for the web itself, or to be invented in the
future” (Berners-Lee 1994a).
One could question why one would want to name information outside the context
of a particular protocol. The benefit is that the use of URIs “allows different types of
resource identifiers to be used in the same context, even when the mechanisms used
to access those resources may differ” (Berners-Lee et al. 2005). This is an advantage
precisely because it “allows the identifiers to be reused in many different contexts,
thus permitting new applications or protocols to leverage a pre-existing, large, and
widely used set of resource identifiers” (Berners-Lee et al. 2005). This ability to
access with a single naming convention the immense amount of data on the entire
Internet gives an application such as the ubiquitous Web browser a vast advantage
over an application that can only consume application-specific information.
Although the full syntax in Backus-Naur form is given in IETF RFC 3986
(Berners-Lee et al. 2005), a URI can be given as the regular expression URI=
[scheme ":"][hierarchical component] * [ "?" query ]?[ "#"
fragment]? .First,a scheme is a name of the protocol or other naming
convention used in the URI. Note that the scheme of a URI does not determine
the protocol that a user-agent has to employ to use the URI. For example, a
HTTP request may be used on ftp://www.example.org . The scheme of a URI merely
indicates a preferred protocol for use with the URI. A hierarchical component is the
left to right dominant component of the URI that syntactically identifies the resource.
URIs are federated, insofar as each scheme identifies the syntax of its hierarchical
component. For example, with HTTP the hierarchical component is given by
[authority] [//] [":" port]? ["/" path component] * . e
authority is a name that is usually a domain name, naming authority, or a raw
IP address, and so is often the name of the server .However,inURIschemes
like tel for telephone numbers, there is no notion of an authority in the scheme.
The hierarchical component contains special reserved characters that are in HTTP
characters such as the backslash for locations as in a file system. For absolute URIs ,
there must be a single scheme and the scheme and the hierarchical component
must together identify a resource such as http://www.example.com:80/monument/
EiffelTower in HTTP, which signals port 80 of the authority www.example.com
with the path component /monument/EiffelTower . The port authority is
usually left out, and assumed to be 80 by HTTP-enabled clients. Interestingly
enough there are also relative URIs in some schemes like HTTP, where the path
component itself is enough to identify a resource within certain contexts , like that
of a web-page. This is because the scheme and authority itself may have substituted
some special characters that serve as indexical expressions, such as '.' for the current
Search WWH ::




Custom Search