Subject: FYI: Expires Extension Draft

From: James M Snell <[email-masked]>
Date: Wed, 17 Aug 2005 14:59:32 -0700

http://www.ietf.org/internet-drafts/draft-snell-atompub-feed-expires-00.txt

Example:

<entry>
  ...
  <t:expires xmlns:t="...">2005-08-16T12:00:00Z</t:expires>
  ...
</entry>

or

<entry>
  ...
  <updated>2005-08-16T12:00:00Z</updated>
  <t:max-age>20000</t:max-age>
  ...
</entry>

This is not to be used for caching of Atom documents; nor is it to be 
used as a mechanism for scheduling updates of local copies of Atom 
documents.

- James

---

From: Elias Torres <[email-masked]>
Date: Thu, 18 Aug 2005 14:20:21 -0400

I tried commenting on your site, but I have to register to comment. :-(

You linked to RSS3 [1] and I spotted something related to this
extension that could be used instead.

<ttl span="days">7</ttl>

It seems more elegant than having to convert to whatever you specified
in your spec.

Just a thought.

Elias

[1] http://www.rss3.org/rss3lite.html

---

From: James M Snell <[email-masked]>
Date: Thu, 18 Aug 2005 11:41:21 -0700

Ugh... let's try to avoid even mentioning RSS3. 

According to the RSS 2.0 spec, the ttl specifies a "a number of minutes 
that indicates how long a channel can be cached before refreshing from 
the source."  What the spec does not indicate is the number of minutes 
from when?  The moment the feed was last pulled? The moment specified by 
pubDate? Further, the ttl element is specifically designed for cache 
control and provide no semantics over when the metadata content of the 
item expires -- only over when a the RSS feed should be polled again.  
In contrast, the Expires extension is explicitly NOT for cache-control 
and MUST NOT be used for scheduling when the feed should be polled 
again; it's sole purpose is to define expiration semantics for metadata 
content.  The max-age element provides the same basic function as ttl 
only at a finer grain (miliseconds vs. seconds/minutes/etc) and with 
less ambiguity (e.g. it is calculated from the moment specified in 
atom:updated). 

- James

---

From: Walter Underwood <[email-masked]>
Date: Thu, 18 Aug 2005 11:43:04 -0700

RSS 3? Eh?

The RSS ttl element is a mess. RSS 3 Lite (could we spell that word correctly?)
specifies it not as information about the feed, but as an attempt to remotely
control robots. RSS 2 specifies it as a caching hint, but in minutes, not
seconds.

Regardless it is useless for a feed with a dedicated update schedule, because
it requires updating the feed every second (or minute) as the publish time
approaches.

For more detail, see: <http://www.intertwingly.net/wiki/pie/PaceCaching>
That was a proposal, and is *not* part of Atom, but it does have some
useful discussion of cache hints.

For caching, use the native HTTP cache features.

wunder 

--
Walter Underwood
Principal Software Architect, Verity

---

From: Elias Torres <[email-masked]>
Date: Thu, 18 Aug 2005 15:14:59 -0400

I would like to clarify something, I did not even read that spec. I
just noticed the "span" attribute that allowed me to specifiy days,
weeks, months, etc instead of converting what the meaning of your
max-age tag to milliseconds or whatnot. That's all. I didn't mean for
us to use ttl as it was meant on that so called spec. I should have
been more clear on this.

Elias