The Web emerged in a fundamentally organic process - united by the common vision of a universal information space as articulated by Tim Berners-Lee and others. The idea was historically timely to say the least: it coincided and fueled the information age like no other technology. The original problem the Web attempted to solve has been solved: How to share information across the boundaries of space via a global addressing scheme. Yet the Web is a victim of its own success: due to the Web we suffer from an overload of information, and are in desperate straights to give more structure to this information.
Structuring information on the Web is difficult because most web-pages on the Web are documents in natural language, often laden with images. Despite the best efforts of artificial intelligence and linguistics, computers do not yet understand natural language, much less images.
The Web crucially allowed the linking of web pages, so that webs of information could be formed. Yet these links are all of one type: one can not specify precisely what type of relationship two pieces of information have. This leaves us with one global intertwining net of linked web-pages with almost no order.
The Semantic Web, the next stage in the Web, is supposed to correct this situation. It does this by a few fundamental changes to underlying Web architecture. The global addressing scheme of the URI, instead of being able to address merely documents on the Web, can address anything. Relationships between URIs and types of URIs can be created through the use of the Semantic Web languages such as RDF and OWL, which are capable of expressing any user-defined type of relationship between two URIs, and are given a formal semantics so they can be processed by machines. In theory, this would allow a Web that would provide a higher-level of structure that could both extend the reach of the Web to things beyond web pages and allow richer relationships between things to be modelled on the Web.
In practice, this infrastructure must be built on top of the hypertext web-page. Standards like http find themselves suddenly pointing to things like "My Siberian Husky" or "New York City" as opposed to an image of my Siberian husky or a web-page providing tourist information about New York City. This has led to considerable, and seemingly unending, confusion within the Web as the philosophy and standards of the old-fashioned hypertext Web are upgraded to deal with the Semantic Web. The aim of this paper is to provide a clear and concise description of these differences, and to provide a well-grounded terminology for talking about the thorny issues of identity and reference on the Web.
In essence, one reason Web works because using a web protocol like http(Hypertext Transfer Protocol), one can from a client send a request to a server to do an operation such as HTTP GET for a given URI and dereference something, often a web-page. However, this very basic feature of the Web is bedeviled by a question: "What is the range of the HTTP dereference function?" In other words, what do URIs identify? In theory this question has been solved by the W3C TAG's AWWW: URIs refer to anything. Upon inspection, the official definition is actually circular: "We do not limit the scope of what might be a resource...it is used in a general sense for whatever might be identified by a URI." The question then arises that if a resource is just anything that could theoretically be with a identified URI, is there anything that can not be identified? It would seem not. This view is given by the AWWW as "our use of the term resource is intentionally more broad. Other things, such as cars and dogs ... are resources too." However, referring to a web-page and the car in my garage are similar acts, but they are not exactly the same. The essential difference is this: in the first case on the Web we have physical, connected, access to the Web-page, while in the second case if we are using the Semantic Web to refer to my car, we only the ability to refer to my car by a URI name, and this has no direct, connected, or physical access. When one uses a URI as a name there is a disconnect, as the thing named may not be on the Web.
The division between representation and resource existed but was not explicitly stated, and definitely not noticed by, most of the users of the original hypertext Web. URLs seem to be originally meant to identify the location of representations, such as HTML web-pages, or possibly sets of representations. In theory, through content negotiation a news website could communicate with your browser and determine where you live and then serve your local news. This rather simple example shows that the relationship between resource and representation can not be one-to-one.
With the advent of the Semantic Web, the problem of httpRange-14 comes up precisely because a URI can be used to refer to anything, not just web pages. To be more precise, the issue comes up because URIs can refer to things that are not "on the Web" and so do not necessarily have a Web-accessible representation. Despite of this, these things that are "not on the Web" are fundamentally "on the Web" in another sense, since they can be reasoned about by the Semantic Web. The crucial point is what does "on the Web" mean? To answer that question we must pursue the historical chain of events from URL to URN to URI.
Uniform Resource Locations (URL) did not suffer from the httpRange-14 issue, unlike their nearly identical brethren URIs. Unlike URIs, URLs identified a specific type of thing: a location, which is a physical place. This location was assumed to be on the Web. By "on the Web," something that is physically connected to the Web. A URL denotes a location on some web-server which serves representations (HTML document, music file to download, whatever) to visiting web clients. A location can be connected to the Web because it - even after endless redirection - in a physical place.
Take a mundane example: my address. An address is a just a location that has an addressee that can (usually) be found at that location, and there exists a specified system for finding the location of an address. This allows multiple locations to be ordered in a way that humans can navigate easily, such as in street addresses (or machines in the case of IP addresses). In the case of my address, and if one wants to find me, they can try to looks for at the location of my address - and I'm sometimes not there, so my address can give the person trying to find me a metaphysical 404 error. A location can, and should, give you direct, connected, physical access to the thing at the location. URLs are used as names of locations, and sending at HTTP GET (or POST, or HEAD, and so on) to a server requires the server if possible to go to the location and physically access the thing at the location, usually by copying it and sending a copy to your computer. Or sending a very real 404 error.
Hope is not lost for those hunting the elusive resource. A functional resource can be defined as the set of all possible operations and representations (or errors) that the operations on a given resource at a point in time return. The actual operations allowed by an agent are defined a priori by HTTP. This principle may seem to stand in contradiction to the general principle of URI ownership, in which the resource is defined by the owner. However, this has always been a controversial and often misunderstood statement, for the owner does not in reality determine a metaphysical resource. If the owner of the URI "http://wwww.example.org/moon/" returns a representation of green cheese while the owner believed that the resource was "the moon," one could not fault the users for believing that the resource was "green cheese." In an act of Web solipsism, the owner cannot by some introspective mental verdict determine the resource without physically effecting the nature of the representations the users. In fact, the owner determines the resource precisely because they control the representations of the resource. The owner, by communicating via representations to the users, can make clear the "state of resource." Therefore, while the owner of resource determines the possible representations, it is the user that determines the operation they may choose to perform. The functional definition of a resource is simply the closet empirical proof we have of the existence and nature of a resource. Whether the state of the resource, and so the nature of the resource itself, is communicated, depends both on the ability of the owner to provide representations and the user to interpret them.
Something could be found on the Web if it physically and causally connected to the Web. By "connected" we mean exactly that: the movement of particles on one end of the wire can be traced directly to the movement of particles on the other end of the wire. One would imagine anything "on the Web" could be encoded into bits and transferred over the Web. However, this is only "on the Web" the Web in the strongest sense: as in things that can always and in their totalityon the Web. A thing can be only on the Web sometimes, or only partially on the Web, or only rarely on the Web. By our definition, if it could not be removed from the Web without loss of its functionality. One can imagine a whole range of possibilities, from being "strongly" on the Web (all the time) to "weakly" on the Web (occasionally). Thus, both documents and servers are "on the Web", and humans are not "on the Web" in a weak sense since they only interacted directly with the Web indirectly through typing on keyboards. Things like the Eiffel Tower or Louis XVI are definitely "not on the Web" on the Web, since Louis XVI is long gone and cannot at any point directly connect physically to the Web, while the Eiffel Tower is only represented on the Web, but no physically sending any bytes to anyone itself. The Eiffel Tower is composed not of bytes, but of steel.
This brings us to "representations" on the Web. What is the
difference between something merely having a representation on the
Web and something being fully on the Web? Rephrasing Brian Smith:
Some thing is on the Web such that if the Web itself was
destroyed, that thing would also be destroyed. If not, it's not
fully on the Web. If someone destroyed the Web, this would not
damage me if I were being denoted by a URI, but my homepage at that
URI would be up in smoke if that what's people were using to refer
to me by. I am not on the Web in a strong sense, but my
homepage sure is. There are lots of middling cases: my computer is
weakly on the Web, more so than myself. If my httpd daemon
went down and my computer could no longer access the Web, or the
Web itself collapsed, the computer qua computer still exists, but
the computer qua Web server went up in smoke with the rest of the
Web. One good question yet to be answered when are humans on the
Web in a strong sense? Would it require our credit card details to
be in an chip beneath our skin with a URI, and wireless internet
monitoring us with a GPS that sent messages over the Internet?
Those examples seem also too simplistic and extreme. Still, what is
the difference between a something being represented on the
Web and being on the Web? One necessary but not nearly
sufficient condition for "representation" would be that a thing
X
represents another thing Y
if you can
destroy thing X
and thing Y
remains
unscathed. Representations qua representations are on the Web,
and would be destroyed if the Web was destroyed. However, what
they represent would not be destroyed, unless what the
representation represented also was on the Web.
Before going any further, we have to distinguish two different uses
of the word "representation." The first is the use of
"representation" as it is used artificial intelligence, cognitive
science, and philosophy. In this use, a representation is something
that "denotes" or "is about" something else, although often
additional requirements are put on exactly what type of things the
representation or its denotation may be. This will be called
"representationAI." The second use is the use of
"representation" as used by REST (The Representational State
Transfer web architecture theory of Roy Fielding), where a
representation can be whatever that a URI returns from a HTTP
request. This will be called a "representationREST". A
representationREST, unlike a
representationAI, does not necessarily refer to or
denote any other thing - although it might! The two definitions are
not the same, but not mutually exclusive either. So, the difference
between "on the Web" and "not on the Web" is also a test of both
types of representation. A representationAI can qua
representationAI be entirely on the Web if what it
represents is also on the Web. Lots of representations, such an
analog photo on my desk, are not on the Web at all. In another
case, a picture of me on the Web is on the Web qua itself but not
on the Web qua me, because it denotes me, not something on the Web.
If the Web was destroyed, it would only destroy the bytes of the
representationAI, not necessarily what the
representation denoted. The moon would of course still be there. Also,
representationsAI may have
layers of representationAI, as one representation may
denote other representationsAI, leading to all sorts of
interesting chains of reference. However,
representationsREST are by definition on the Web, and
would be destroyed if the Web was destroyed, at least as the
possible objects of HTTP operations. This is because
representationsREST are defined precisely as the bytes
that are sent over the Web. One could argue that copies of them
archived to a computer might survive. However, those copies would
no longer be representationsREST qua the Web, but just
whatever they are without the Web being involved. This argument
does reveal that both sorts of representation are functional
categories that are dependent on their context, as something is
never a representationREST without being on the Web (or
in some parallel universe, another system that implements REST).
Something is never a representationAI without
something being represented.