Antone Roundy  wrote:
>>> If the complete set represents all the entries ever published
>>> through an ever-changing feed document (what a feed currently is,
>>> you subscribe with an URI and the document you get when
>>> dereferencing the URI changes as a sliding-window upon a set of
>>> entries), then paging allows for feed state reconstruction.
>>> In other terms, feed state reconstruction is a facet of paging, an
>>> application to non-incremental feeds.
>
> Let's say you're doing a feed for the Billboard top 100 songs.  Each
> week, the entire contents of the feed are swapped out and replaced by
> a new top 100 (ie. it is a non-incremental feed).  And let's say you
> don't want to put all 100 in the same document, but you want to break
> it up into 4 documents with 25 entries each.  You now have two
> potential axes that people might want to traverse--from songs 1-25 to
> 26-50 to 51-75 to 76-100, or from this weeks 1-25 to last weeks 1-25
> to two weeks ago's 1-25, etc.  You can't link in both directions with
> the same "next".
>
> There are clearly two distinct concepts here--navigating through the
> chunks that make up the current state of the feed resource, and in a
> non-incremental feed, navigating though the historical states of the
> feed resource.

Yes, and navigating through the historical states of the feed resource is
not paging, it's more like having access to archives.

I was thinking about proposing yet another link relation "archives": in
the general use case, it would reference another feed document where each
entry describes an archive:

Top 100 feed:
<feed xmlns...>
    <title>October 2005 Top 100</title>
    <fh:incremental xmlns...>no</fh:incremental>
    <!-- this links to the next chunk of the non-incremental feed -->
    <link rel="next" type="application/atom+xml"
          href="26-50.atom" title="26 to 50 entries" />
    <!-- this links to a list of archives -->
    <link rel="archives" type="application/atom+xml"
          href="../archives.atom" title="Top 100 archives" />
    ...

Archive feed:
<feed xmlns...>
    <fh:incremental xmlns...>yes</fh:incremental>
    <!-- this links to the next chunk of the archive feed -->
    <link rel="next" type="application/atom+xml"
          href="archives2.atom" />
    ...
    <entry>
        <title>September 2005 Top 100</title>
        <content type="application/atom+xml" src="2005/09/1-25.atom" />
        ...
    </entry>
    <entry>
        <title>August 2005 Top 100</title>
        <content type="application/atom+xml" src="2005/08/1-25.atom" />
        ...
    </entry>
    ...

September 2005 Top 100 feed:
<feed xmlns...>
    <title>September 2005 Top 100</title>
    <fh:incremental xmlns...>no</fh:incremental>
    <!-- this links to the next chunk of the non-incremental feed -->
    <link rel="next" type="application/atom+xml"
          href="26-50.atom" title="26 to 50 entries" />
    <!-- this links to a list of archives -->
    <link rel="archives" type="application/atom+xml"
          href="../archives.atom" title="Top 100 archives" />
    ...

-- 
Thomas Broyer

Reply via email to