Re: HTTP Caching Design

Koen Holtman:

>In http://www.amazon.com/expires-report.html, we were very careful to
>call the history buffer a _buffer_, not a _cache_.  Please do not
>destroy the terminology we worked so hard to introduce by talking
>about history caches.
>

"Destroy" sounds like a word for Ghengis Khan. It is clear in all this
that there is no dispute about actual system operation. All I am noting is
that the current draft specs do NOT make the distinction clearly.

Draft-ietf-http-v10-04 defines the term in this way:-

  cache
  A program's local store of response messages and the subsystem that controls
  its message storage, retrieval, and deletion. A cache stores cachable
  responses in order to reduce the response time and network bandwidth
  consumption on future, equivalent requests. Any client or server may
  include a cache, though a cache cannot be used by a server while it
  is acting as a tunnel.

The first sentence is very general and defines precisely what most browsers
have now, a local store of response messages. I think you are saying that
I should read the second second as a qualifier to mean that a cache ONLY
responds to requests.

I respectfully submit that the English language just doesn't work that way.

I, and I suspect most other browser/server designers, will read the definition
as a cache is our local store of response messages, and ONE USE OF IT is to
respond to requests, another to provide a history record.

The specification needs to be readable by people who haven't been part
of the discussions in this group.

If the group really does want to use the word "cache" in a special way
it has to say so very clearly and emphasize that when the word "cache"
is used it does NOT mean the actual cache and it does NOT include any
history cache but it ONLY includes the user-transparent use of stored
material to service requests (where "request" itself is a technical term
that needs to be back-referenced to it's definition "An HTTP request message
(as defined in Section 5)."

It is problematic in a specification to use common words such as cache
and request in a highly technical sense. It is better to generate neologisms
(by hyphenation usually in English -- German makes it a lot easier) so that
they stand out in later usage. Particularly on the web, people tend to
jump into the middle of a spec to read a particular section that they
need urgently, and they will not go back to the glossary unless the terms
themselves are clearly technically defined neologisms.

This is a difficult area for the spec because it is clear that current
browser practice needs substantial change, and it won't happen unless
the spec is extremely clear (it may not happen anyway, but it is worth
giving it maximum chance).

So if an attempt at clarification involves destruction, I am happy to be
cast as an iconoclast.

b.

Received on Sunday, 7 January 1996 23:28:16 UTC