Re: URI versus URI Reference

Michael Mealling wrote:

> On Thu, May 25, 2000 at 10:39:24AM -0400, Paul W. Abrahams wrote:
> > John Cowan wrote:
> > > Paul W. Abrahams scripsit:
> > >
> > > > Is there an explicit definition of ``the
> > > > strict data type `URI' '' in 2396 that I've missed?
> > >
> > > Seemingly not.  However, 2396 supplies a generic syntax for URIs
> > > and URI references.
> >
> > For URI references, yes.  For URIs, no.  There are no syntax rules with URI
> > on the left side.
>
> Based on the concensus at the time the strict data type 'URI' was
> denoted in the ABNF as the term 'absoluteURI'. The fact that the
> ABNF term isn't called 'URI' was for clarity since that
> simple acronym was used to many times within the ABNF.

That leaves `URI' without a syntactic definition.  The denotation in the first
sentence should have been recorded.

> I.e. the error may be on your part in insisting that since the ABNF
> does not contain the term URI then it doesn't apply here. Indeed it
> does and the question before everyone is, since the XML Namespace
> document attempts to redefine the ABNF term 'URI-Reference' to
> something that specifically violates the ABNF and the semantics the
> document specifies for those terms, what part of the ABNF will
> the next version (if there is a versioning) of the document adhere
> to and not attempt to redefine.
>
> As far as I can tell the ABNF gives you really two useful choices:
> 'URI-reference' or 'absoluteURI'.

Both of those are unambiguous, I agree.  The namespace spec currently uses URI
reference; the alternative of forbidding relative URIs would change it to
`absoluteURI'.

> This leaves you with three choices for moving forward to fix the problem:
> 1) pick one of the two ABNF terms
> 2) say your not using URIs at all
> 3) rewrite 2396.....

Pragmatically, I agree that (1) solves the immediate problem.  But I also believe
that (3) should be done sooner or later, since there are problems with its implicit
assumptions.  As I noted in another message, RFC 1630 introduced the term `complete
URI', and that's probably the right term for something that might be either an
absolute URI or a resolved relative URI.

Paul Abrahams

Received on Thursday, 25 May 2000 12:01:12 UTC