Subject: atom entry documents, feed alternates, mime-types

From: Eric Scheid <[email-masked]>
Date: Tue, 11 Jan 2005 13:27:26 +1100

I've realised another use case for atom entry documents.

I'm using del.icio.us to track certain memes. For example:
    http://del.icio.us/tag/atom
    http://del.icio.us/tag/rss
    http://del.icio.us/tag/folksonomy

For each of those pages they offer an RSS feed. The feed's entries contain
the bookmarked page title, the URL, and the brief comment entered by the
bookmarkee, if any. Unfortunately, this means that in my feed reader I'm
seeing just headlines and links, no summary, no content.

What would be really neat is if del.icio.us were able to follow a <link> in
the html page to discover an Atom <entry>, and use the <summary> element.
This would be similar in how citeulike (similar to del.icio.us, but geared
for academics) extracts the citation details from academic papers.

To attempt to do so with currently deployed best practice is problematic: a
blog page may well have a <link rel="alternate" type="rss or atom">, but
that is most likely to point the ongoing feed, not the item alternate in
xml. While there is a chance that that particular page is in the current
feed, it's quite possible that it has already dropped off the bottom. Even
if del.icio.us wanted to serially download the history of that feed looking
for that entry, it would be an immense bandwidth waste, and we haven't
settled on any concrete conventions for the format to communicate where
archives can be found.

Life would be so much easier if there was also a <link> on the html page
which lead directly to a standalone Atom Entry document.

Well, easier except for a couple of bumps in the road. What @rel would we
use on the entry page ... "alternate" is already taken to mean "the feed in
which this entry was once found". Perhaps we need a different @type value
for Atom Entry documents, to distinguish them from Atom Feed documents?
That, or we try using a different @rel ("feed"?) to identify the feed (while
still allowing the html page whose contents change as new entries come and
go being able to legitimately refer to the Atom Feed document as it's
"alternate"). 

Come to think of it, if there will exist things like "feeds of feeds", which
act as directories of feeds offered by a site, then the html page whose
content reflects the most recent entries should then have a link to the
directory/collection feed, in the same way that individual pages would.

Thus, on an entry html page it would be mighty nice to find this:

    <link rel="alternate" type="application/atom+entry+xml" href=[1]>
    <link rel="feed" type="application/atom+xml" href=[2]>

and on the most-recent-posts page it would have this

    <link rel="alternate" type="application/atom+xml" href=[3]>
    <link rel="feed" type="application/atom+xml" href=[4]>

where:

[1] is the atom entry document for that page
[2] is the feed in which this entry/page was once announced
[3] is the atom feed document which is the alternate for this page
[4] is the atom feed document which is the site directory of feeds

Note how [3] is distinguished from [1]. For backwards compatibility we
should also allow the following on an entry html page:

    <link rel="alternate" type="application/atom+xml" href=[2]>

In summary, the del.icio.us situation suggests great usefulness in having
individual atom entry documents being more widespread, which might just help
popularising the atom feed format at the same time. The other feed formats
don't really have this feature of being able to point to a resource which is
the item and just the item, in machine readable xml. It's probably doable in
RDF though, so RSS 1.0 kinda has I, but we all know there are perceptions of
popularity problems with it.

If we want to use atom entry documents as page metadata resources, then we
need to make a couple of changes as outlined above.

e.