W3C home > Mailing lists > Public > w3c-dist-auth@w3.org > April to June 2002

RE: etags in If: headers

From: Jim Whitehead <ejw@cse.ucsc.edu>
Date: Thu, 25 Apr 2002 10:53:51 -0700
To: "WebDAV" <w3c-dist-auth@w3.org>
The original rationale for including entity tags in the If header was to
make the If header a general purpose mechanism for evaluating method
preconditions (specifically, for evaluating preconditions concerning whether
the resource's state still matched the state expected by the client, where
the client's current understanding of the state is expressed using a state
token, like an Etag or a LockToken). We were reacting against the closed
design of the existing If-[None-]Match headers, which didn't allow expansion
to include other state tokens.

Our hope was that the If header would eventually replace the existing
If-[None-]Match mechanism.

One scenario that you can accomplish with the If header, and that you cannot
accomplish with other mechanisms, is to perform an operation like a MOVE on
a collection hierarchy, where the MOVE can only succeed if the client has
the right lock token and all of the resources have the Etag expected by the
client (i.e., they haven't been modified, which may be the case with shared

If the main concern about the feature is interoperability, then let's make
testing of this feature an issue at the next interoperability event, and add
a few tests concerning it to the Litmus test suite.

- Jim
Received on Thursday, 25 April 2002 13:54:20 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 7 January 2015 15:01:25 UTC