W3C home > Mailing lists > Public > www-rdf-interest@w3.org > February 2004

Re: pound sign vs. slash as final URI delimiter

From: Patrick Stickler <patrick.stickler@nokia.com>
Date: Thu, 19 Feb 2004 10:26:24 +0200
Message-Id: <4DDC98B1-62B5-11D8-BAE4-000A95EAFCEA@nokia.com>
Cc: www-rdf-interest@w3.org
To: "ext Thomas B. Passin" <tpassin@comcast.net>

On Feb 17, 2004, at 15:37, ext Thomas B. Passin wrote:

> Patrick Stickler wrote:
>> I strongly advise avoiding the use of fragment identifiers.
>> See further comments/arguments below...
> ...
>> http://example.com/foo HTTP/1.1
>> and since <http://example.com/foo#bar> can denote an entirely
>> different resource than <http://example.com/foo>, this can result
>> in misunderstanding between the client and server if the server
>> is expected to do something in terms of the resource denoted
>> by <http://example.com/foo#bar> rather than the resource denoted
>> by <http://example.com/foo>.
> I think that the whole concept of using fragids would work fairly well 
> if you adopt this picture - ...

Yes. That could work. But...

IMO, fragids are not really REST-ful. URIrefs with fragids are
'second class' URIs since you can't directly interact with
representations of whatever resources they denote using GET,
PUT, etc. Fragids are useful, as are (other) XPath expressions,
for locating structural components of representation content,
and I don't expect URIrefs with fragids to go away. However,
using URIrefs with fragids to denote resources results in
those resources being treated as 'second class' on the web
(at least insofar as interaction via such URIs is concerned).

I think a far more general, scalable, and consistent approach
would simply be to avoid the use of URIrefs with fragids, using
'first class' URIs for all resources, and simply GET'ing
representations of those resources without any post-processing.

In addition, express in RDF the relationships between that
resource and other resources (e.g. such as between a term and
the vocabularies it belongs to, etc.) and if you want to
discover that knowlege, then simply MGET a description of
that resource and traverse the semantic web with additional
MGETs until you've collected all the knowledge you need/want.

E.g. http://sw.nokia.com/VOC-1/Vocabulary

(go ahead, click on it ;-)

Ultimately, this should be a matter of architecture, not of
"best practice", IMMHO. And users should be made aware of the
fact that URIrefs with fragids are not treated equally with
URIs without fragids (or even treated well) by web agents; so
if they think their resource is a 'first class' resource (and
IMO, all vocabulary terms most definitely are first class)
then they shouldn't use URIrefs with fragids.




Patrick Stickler
Nokia, Finland
Received on Thursday, 19 February 2004 03:29:09 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 5 February 2014 07:14:58 UTC