Subject: RE: Relative URI references

From: "David Orchard" <[email-masked]>
Date: Fri, 30 Jul 2004 10:27:54 -0700

Sam,

Scheme specific comparisons of URIs already happen.  Rfc 2616 has
section 3.2.3 which describes http specific URI comparison algorithms.

Cat's already out of the bag.

Dave

> -----Original Message-----
> From: [email-masked] [mailto:owner-atom-
> [email-masked]] On Behalf Of Sam Ruby
> Sent: Thursday, July 29, 2004 2:58 PM
> To: Dare Obasanjo
> Cc: Atom Syntax
> Subject: Re: Relative URI references
> 
> 
> Dare Obasanjo wrote:
> 
> >
> > --- Sam Ruby <[email-masked]> wrote:
> >
> >>>I note that there are neither xml:base nor a
> >>http-header Location: to
> >>>establish what the base URI is, and since that
> >>same resource can be fetched
> >>>from both these URLs...
> >>>
> >>>    http://intertwingly.net/blog/index.atom
> >>>    http://www.intertwingly.net/blog/index.atom
> >>>
> >>>that means the <id>s in your feed can be
> >>different.
> >>
> >>Good point.  At a minimum, that is worthy of an
> >>informative note.
> >
> > This seems like an excellent reason to ban relative
> > URIs in atom:id elements. Or are aggregator
> > implementers expected to do perform scheme specific
> > URI comparisons when checking to see if two entries
> > are identical?
> 
> I think that you are asking an orthogonal question.
> 
> It is the possibility of ids being in schemes like HTTP that would
> introduce the possibility of scheme specific URI comparisons, not the
> ability for URIs to be expressed as being relative to xml:base.
> 
> - Sam Ruby

---

From: Sam Ruby <[email-masked]>
Date: Fri, 30 Jul 2004 14:08:03 -0400

> Cat's already out of the bag.

To put this in context, you are stating that the "or" clause that Dare 
mentions below is satisfied:

http://www.imc.org/atom-syntax/mail-archive/msg08066.html

I have seen a number of objections raised to relative URIs in id 
elements.  Each time, it seems to me that the objection was really to 
something else, and we wandered off into whether that objection was valid.

There does seem to be a general consensus that the use of http scheme 
and relative URIs are error prone and SHOULD (in the RFC 2119) sense of 
this word be avoided.  I'm uneasy with that in both cases, but would be 
willing to go along if that was the consensus.  MUST NOT in either case 
seems wrong.

- Sam Ruby

---

From: Dare Obasanjo <[email-masked]>
Date: Fri, 30 Jul 2004 11:16:18 -0700 (PDT)

> > Cat's already out of the bag.

I'm not sure what this statement has to do with
anything. No one is disputing that scheme specific
comparisons already exist. The point is that it is
infeasible to expect clients to know every scheme
specific comparison so you can't create a technology
that can utilize any URI scheme AND creates situations
where scheme specific comparisons should be made.

Why else do you think the XML namespaces
recommendation specifies that namespace names are to
be compared character by character instead of
according to the algorithm of the specified scheme? 

> willing to go along if that was the consensus.  MUST

Why do you keep focusing this argument on HTTP. The
consensus I've seen is that there relative URIs in IDs
are a bad idea. You are the only one on this list so
far sticking up for them. I've seen lots of +1 against
them since this topic began. The cost/benefit of this
feature is too skewed to make this a worthwhile
addition to Atom. 

=====
THINGS TO DO IF I BECOME AN EVIL OVERLORD #25
No matter how well it would perform, I will never construct any sort of machinery which is completely indestructible except for one small and virtually inaccessible vulnerable spot.

__________________________________
Do you Yahoo!?
Yahoo! Mail Address AutoComplete - You start. We finish.
http://promotions.yahoo.com/new_mail

---

From: Sam Ruby <[email-masked]>
Date: Fri, 30 Jul 2004 14:38:41 -0400

> feature is too skewed to make this a worthwhile

If we decide that IDs are to be compared byte for byte for equality, 
then (1) I'm not sure that they need to be URIs and (2) I would agree 
that the requirement to require relative URIs to be resolved seems 
counter to this.

If we decide that IDs need to be normalized before comparision, and we 
have other places where xml:base is part of the normalization, then it 
seems inconsistent to rule out this one case.

- Sam Ruby

---

From: Mark Pilgrim <[email-masked]>
Date: Fri, 30 Jul 2004 14:37:37 -0400

On Fri, 30 Jul 2004 11:16:18 -0700 (PDT), Dare Obasanjo <[email-masked]> wrote:
> The consensus I've seen is that there relative URIs in IDs
> are a bad idea.

As much as I hate to admit it, Dare is right that there is consensus. 
I just re-read the thread, and the following people have stated that
atom:id MUST be an absolute URI:

- Dare
- Asbjorn
- Elias
- James
- Julian
- Andreas
- Eric
- Toru Marumoto
- Bill
- Graham

I bow to the will of the majority.

-- 
Cheers,
-Mark

---

From: Dare Obasanjo <[email-masked]>
Date: Fri, 30 Jul 2004 12:28:45 -0700 (PDT)

> that the requirement to require relative URIs to be

(1) IDs don't need to be URIs the same way XML
namespace names didn't have to be URIs. However there
is a certain contingent in the Web standards world
that believes a cheap way to create unique identifiers
is for them to be URIs. A lot of that contingent are
subscribed to the atom-syntax list. 

(2) Which is why the XML Plenary on relative URIs in
namespace names[0] deprecated the use of relative URIs
in namespace names. The discussion we are having now
is a mirror of the same exact discussion people had
four years ago about relative URIs and namespace
names. 

> seems inconsistent to rule out this one case.

It is already spelled out where xml:base processing
should be applied in the spec. I don't see why it
can't be explicitly mentioned that it does NOT apply
to atom:id elements and that atom:id elements MUST be
absolute URI values. 

[0] http://www.xmlhack.com/read.php?item=758 

=====

__________________________________
Do you Yahoo!?
New and Improved Yahoo! Mail - Send 10MB messages!
http://promotions.yahoo.com/new_mail

---

From: Sam Ruby <[email-masked]>
Date: Sat, 31 Jul 2004 11:37:05 -0400

> four years ago about relative URIs and namespace

... and since our intentions are to create a 1.0, we don't have to 
deprecate.

OK, I yield to consensus: ID elements need to be absolute.

I've updated my unadvertized atom feed to use the tag scheme for ID 
elements.  At the present time, my link elements remain as relative URIs.

- Sam Ruby