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/



Reply via email to