- From: Mark Nottingham <mnot@mnot.net>
- Date: Thu, 21 Nov 2002 23:50:44 -0800
- To: "'Mark Nottingham'" <mnot@mnot.net>, "'Graham Klyne'" <GK@ninebynine.org>
- Cc: "'Hrvoje Simic'" <hrvoje.simic@zg.hinet.hr>, <uri@w3.org>
> Not entirely; relative URIs treat path segments and query > components very differently. This indirectly suggested to me > that there might be the concept of a "located resource" which > differs from the more discussed "identified resource". > Thinking about it more, I'm not at all sure that I'm not just > offering guidelines as well; the semantics are determined by > the server alone; it's just that some common conventions are > provided for making URIs more useful, especially when using > them to locate something. After discussing this more offline, 'Semantics' isn't the correct term to use; Graham pointed out that this implies too much. His suggestion was 'processing model', and that seems to capture it very well; When used as a locator, a URI has a processing model that is used (usually to retrieve a representation of the resource). Each URI scheme defines its own processing model that enables location of resources of that type. The question, then, is whether these (not resource-, site- or non-location) processing models are exclusive to the agent that is doing the location. If the query is considered as data to be consumed by the resource, this means that the processing model is effectively distributed; the resource consumes part of the URI as well (which indeed seems to be the case today for most uses of query). Remember that 'Resource' is an abstract concept; it does not have to have a one to one mapping to code on the back end. Therefore, I see no problem with saying that query is data to be consumed by the resource during the process of location; if the resoruce happens to be spread across several back-end facilities on the server, so be it. To summarize, then, the idea is that: * Query is part of the URI for the purposes of identification; every URI with a different query string is a different identifier (just as it is now). * Query is data to be consumed by the resource during the process of location (just as 2396 says). * It is worthwhile to distinguish between URIs and URLs, not because they identify different things, but because these terms can be used to distinguish between different contexts of use - identification vs. location. E.g., Given: http://www.example.com/foo?bar When used as an identifier (URI), the resource is http://www.example.com/foo?bar While, in the context of a locator (URL), the resource located is considered http://www.example.com/foo I realise that this is a largely theoretical problem, in that it doesn't affect how anything actually works; however, it may affect how people think, which is just as, if not more, important.
Received on Friday, 22 November 2002 02:50:54 UTC