Re: URI versus URI Reference

Michael Mealling wrote:

> >That's the idea, except that I'd go further in the direction I think most people
> >want:
> >
> >    URI-reference = [ absoluteURI | relativeURI ] [ "#" fragment ]
> >    absoluteURI = URI
> >    URI   = scheme ":" ( hier_part | opaque_part )
> >    relativeURI   = ( net_path | abs_path | rel_path ) [ "?" query ]
>
> Hmm... Ok. You just short-circuited mine by just declaring absoluteURI
> to be equal to URI. Same difference (I think)...

The difference is that I define absolute URIs and also make it crystal clear that
URIs and absolute URIs have the same form.   I also remove an asymmetry in your
version.   Purely expository - no substantive difference.

> >I'd also add a couple of sentences of explanation as to what is going on.  In
> >particular:
> >
> >``A relative URI is a syntactic construct that specifies a URI in a manner
> >dependent on the context in which it appears.  A relative URI is not a URI,
> >just as mock turtle soup is not turtle soup.''
>
> Ok....
>
> >Frankly, I think saying that a relative URI is not a URI, as most folks here
> >insist, is counterintuitive.  But if the usage is too deeply embedded to
> >overturn, then the next best thing is to explain that what one considers
> >counterintutive is nonetheless true.
>
> hehe... ok. I consider treating relativeURI as a URI to be counterintuitive
> but intuition is a subjective matter so I'll let that one go. ;-)

I think you're agreeing with me.  Are you?

> >I'd also add the missing definition at the very beginning of Sec 1 of RFC 2396:
> >
> >``A Uniform Resource Identifier (URI) is a compact string of characters that
> >identifies an abstract or physical resource.  A URI is absolute, i.e., its
> >meaning does not depend on the context in which it appears.''
>
> I think that's a little bit too stringent. There are URIs that are
> dependent on their context (the 'news' scheme has to know what your
> nttpserver is set to in order to be disambiguated). I think this would
> be more appropriate:
>
> "A URI is absolute, i.e.; its meaning does not depend on context that
> is not defined as being required for the particular URI scheme in question."
>
> In other words, yes URIs are absolute but a particular URI scheme can
> say what it may need in order to satisfy that criteria...

I think we're converging but we're not there yet.   My definition, I think, is much
simpler and clearer but, as you say, perhaps too stringent.   Can you simplify and
clarify yours?

Paul Abrahams

Received on Friday, 26 May 2000 12:52:58 UTC