This is why I prefer "snapshot" to "feed"; the latter doesn't convey what an Atom Feed Document really is, and leads to just this kind of confusion.
Another direction to go in would be to add metadata (probably in the head) that says what kind of feed it is; e.g., "an archive," "a snapshot of the last three days," "a snapshot since last Monday," "a snapshot of the last 10 entries." This might add some complexity, but a stub that just allowed you to differentiate between archive and snapshot might be useful, and could be extended upon in the future, while remaining pretty simple now.
On Feb 6, 2005, at 3:09 PM, Roy T. Fielding wrote:
On Feb 6, 2005, at 2:24 PM, Dan Brickley wrote:* John Panzer <[EMAIL PROTECTED]> [2005-02-06 13:58-0800]
Since an entry is identified uniquely by its atom:id (though it can have
different states at different times);
As I understand the Web, the "REST" concepts that underpin HTTP are quite happy with their being multiple representations of the selfsame resource *at the time*.
Also at multiple times.
Yes, it's all about time, but also about resources. The entry is a resource, and that resource may have multiple representations at a single time (atom, rss1, rss2) and also over different times. A resource has a single state at one point in time, but may have different states over time (in some case they must have different states over time because that is the essence of what makes them a resource, just as a clock is expected to have different state). URIs identify resources, not necessarily singular states.
Feeds are sliding window resources, but their representations do not slide -- they are fixed at a given point in time. If it is reasonable to say that, at any single point in time, only one representation of a given entry can appear in the feed's representation, then the only valid representation of a feed is one that does not contain any duplicate entry id's.
An atom:feed document is a representation of a single feed resource at a single point in time.
Aggregators do not consume feed resources -- they consume an iterative set of overlapping feed representations. Aggregators are therefore required by Atom to only include the "latest" version of an entry within their own resource representations.
I believe that these requirements reflect the desires of most of the participants in this working group, so it seems to me that the question has been answered.
Cheers,
Roy T. Fielding <http://roy.gbiv.com/> Chief Scientist, Day Software <http://www.day.com/>
-- Mark Nottingham http://www.mnot.net/
