On Oct 17, 2005, at 2:20 AM, Eric Scheid wrote:
On 17/10/05 5:09 PM, "James Holderness" <[EMAIL PROTECTED]> wrote:
1. Which relationship, next or prev, is used to specify a link backwards in time to an older archive. Mark Nottingham's Feed History proposal used prev.
Mark Pilgrim's XML.com article used next.
I'd prefer that our use of 'prev' and 'next' be consistent with other uses elsewhere, where 'next' traverses from the current position to the one that
*follows*, whether in time or logical order. Consider the use of
'first/next/prev/last' with chapters or sections rendered in HTML.
...so do you follow forward through time or backward? Is the starting "current position" "now" or the "the beginning of time"? Especially if we're talking about history, following backward makes as much sense as following forward.

I prefer "next" to go back in time (if temporally ordered--from the most current chunk to the next most current chunk) or to less significant pages (in things like search results). But I'll probably have to stop and think what "next" means in temporally ordered feeds from time to time since it'd be the reverse of temporal order.

2. Are next and prev both needed in the spec if we only require one of them
to reconstruct the full history?
Knowing that the most recently published archive won't likely remain the most recently published archive, there will be use cases where it's better to reconstruct the full history by starting at the one end which is fixed.
Not much sense starting at the other end which is constandly shifting.
Is this only going to be used to reconstruct full history? What about just reconstructing the last 3 months (in which case you'd want a link from closer to the live end to close to the fixed end), or reading from the beginning before deciding whether to continue reading what comes later (in which case you'd want a link from closer to the fixed end to closer to the live end).

3. Are the first/last relationships needed?
See (2) above for 'first'. Meanwhile 'last' could be followed by a user to jump ahead to the end of the set of archives to see if the butler did it.
Who said 'first/next/prev/last' would only be used by machines?
As mentioned above, there may be cases where you'd prefer to start at either the fixed or live end, so as long as complete feed reconstruction isn't the only goal, I'd say yes.

But what's "first"? It'd be the top results in a search feed, but would it be the start of time or the start from the present (before possibly traveling backward through time) in a temporally ordered feed? Making it the start of time would prevent it from matching up well with how significance ordered feeds match up (ie. does start point to the thing you'd most likely want to see if you subscribed to the feed?) If we're not careful, we'll be traversing out of "first" through "prev" and "last" through "next"!

4. Is the order of the entries in a feed relevant to this proposal?
not to this proposal.
If you mean not just the order within each chunk of the feed, but the order of the chunks, then not central, but certainly related. Two cases come to mind:

1) A chain of temporally ordered chunks in the history of a feed where new entries are tacked onto the end. 2) Search results, where the order of everything all along the entire chain shifts around all the time.

If you're not going to reconstruct the whole thing, then your decision function for when to stop may have to be different depending on how things are ordered.

BTW, case 2 destroys the idea of a "fixed" end and a "live" end.

Having a means to indicate what the ordering is might make it easier to make the distinction between "next" and "prev" more intuitive. I'm not sure how else we're going to reconcile terminology for significance and temporally ordered feeds.

5. Is the issue of whether a feed is incremental or not (the fh:incremental
element) relevant to this proposal?
non-incremental feeds wouldn't be paged, by definition, would they?
This week's top ten on the first page, last week's ten on the second page...

Since this proposal is defining a paging mechanism, I think that what each page represents is relevant. Is it an earlier part of the feed or an earlier state of the feed?

6. What to name the link relation that points to the active feed document?
subscribe, subscription, self, something else?
'subscribe'
I just noticed something about the definition of "self" in the format spec. In one place it says:

o atom:feed elements SHOULD contain one atom:link element with a rel
      attribute value of "self".  This is the preferred URI for
      retrieving Atom Feed Documents representing this Atom feed.

Does that mean that it's the preferred <option>subscription</option> URI, or the preferred place to retrieve <option>this chunk</option> of the feed history? The format spec didn't define paging, so it didn't contemplate talking about chunks of the feed--so here it sounds like it's talking about a subscription URI (else it would say "for retrieving this Atom Feed Document."). Moving on...elsewhere, the spec says this:

   3.  The value "self" signifies that the IRI in the value of the href
       attribute identifies a resource equivalent to the containing
       element.

In a historical chunk, wouldn't that have to mean "this chunk"?

Can "self" be polymorphic--the subscription URI in the live end of a feed, and "this chunk" in a historical chunk? Can an extension speak authoritatively about the meaning of something from the core spec?

I'd think that if the feed history extension is an official Working Group document, then it wouldn't be out of line to use it to nail down the meaning of "self" more tightly, especially since we don't currently seem to have agreement about the meaning of "self". Let's let "self" mean "a place to get what you're looking at right now, which may or may not change over time", and add "subscribe" with it's obvious meaning. If a document contains both and they're different, then "self" should NOT be used to subscribe (although that arguably conflicts with the first part of the spec quoted above). If "self" weren't a "SHOULD", I'd think this would lead to "self" being used only in historical chunks, and "subscribe" being used in both historical chunks and live documents to point to the subscription URI, which would be nice and clean. But since "self" is a "SHOULD", I'm afraid this will lead to "self" pointing to live documents in documents without a "subscribe" link, and historical chunks in documents that do have "subscribe". A bit ugly, but is there a better way available to us?

Reply via email to