Re: Initializing HTTP headers from HTML documents

John Ellson (hotsand!ellson)
Thu, 6 Jan 94 15:57:41 EST


Dave Ragget writes

> It would be better to use a different attribute name than VALUE if the server
> needs to evaluate some expression to compute the value string. I would
> suggest EVAL. Note that the definition of Expires: is given in the HTTP
> spec and is derived from the its use in News articles. So in this case
> the expression must result in a date in the HTTP date format.
>
> Since EVAL expressions would be evaluated by the server, it seems reasonable
> to come up with a consensus approach like CGI to ensure a degree of
> standardisation. Would you like to come up with a proposal?

I could try. But let me make sure that we agree on what problem needs
solving.

I thought you were addressing a cache coherency problem:

before serving a document a cache server should check if
the original document still exists and if it is unchanged.

if it no longer exists the no document should be served
and the cache copy should be purged.

if it has changed then the cache should be refreshed and the
new version served.

if the original site cannot be contacted then the document
should be served with a warning that the validity of the
document could not be verified.

if the document still exists unchanged then the cache copy can
be served.

It seems that the Expires mechanism is a little more hand-offish than
this. Perhaps Expires provides sufficient coherency control?

If Expires is an optional attribute provided by the author then what
prevents stale copies staying indefinitely in cache servers?

If it turns out that we agree that something is required to make cache
servers operate correctly, then should the additional mechanism be
user visible, or should it be built into the client-server protocols?

John Ellson