Subject: A sample use-case point-by-point

From: David Powell <[email-masked]>
Date: Sun, 22 May 2005 15:44:01 +0100

I thought it would be useful to give a use-case for
PaceAllowDuplicateIdsWithModified, so that arguments about the
validity of the use-case don't get mixed up with arguments about the
mechanics of the proposal.

The scenario is that an Atom publishing server wishes to allow
publishers to download an archive of their feed.

I'll split the use-case up into separate points and then the
opposition can reply to tell me which points they disagree with.

(a) One of the requirements of Atom Syntax is feed archiving.

(b) An archive should be capable of representing everything that as
been published in the feed. (Note that some archives may only want to
contain a subset of this information, but the point is that the
capability should exist.)

(c) To fulfil (b), an archive must be capable of representing all entry
instances that have been published in the feed at some point.

(d) Different entry instances may have the same atom:updated values.

If you accept all of the above points, then you may have a problem
with the language relating to atom:updated in PaceDuplicateIDs, but
lets ignore that for the moment and discuss another requirement :

(e) An archive should be able to preserve the order of multiple entry
instances that have the same atom:id and atom:updated values.

(f) The core of the current draft does not support (e).

One way forward that has been proposed as an alternative to
atom:modified is for archivers to insert an extension element to
preserve the order of instances.

If you support this then you believe that core Atom supports
archiving, but only for a definition of archiving where the order of
some entries may be lost.

You admit that this may not be adequate so propose that Atom could be
extended to support (e).

The ex:archive-support-date element can only be added by a publishing
client at the time of publishing, by an atom server at the time of
receiving the entries, or by an agent that has somehow received the
information necessary to insert this element via some undefined
out-of-band mechanism (this third option basically equates to "by a
means other than Atom"). Entries which do not fulfil these
requirements can not reliably be archived.

Standard Atom format documents without the ex:archive-support-date
element may not be used as input to an archiver.

I believe that the alternative of using an extension is inadequate due
to these conditions. The conditions require tight coupling of the
publishing process to the archiving process, which to me suggest that
Atom is not really supporting archiving.

-- 
Dave

---

From: Robert Sayre <[email-masked]>
Date: Sun, 22 May 2005 10:55:14 -0400

> Atom is not really supporting archiving.

It supports archiving in the sense that it could be used as a Movable
Type export. Adding atom:modified will not make the Atom Syndication
Format a suitable format for your goals. For example, the elements of
a feed change over time as well. This includes the number of entries
in a feed, author metadata, digital signatures, and the location at
which one night retrieve the feed.

Robert Sayre