Re: NEW ISSUE: example for matching functions, was: Weak and strong ETags

Jamie Lokier wrote:
> Julian Reschke wrote:
>>>         | ETag 1 | ETag 2 | Strong Comparison | Weak Comparison |
> 
>>>         | W/"1"  | "1"    | no match          | match           |
> 
>> (a) Do we have agreement that this example is correct?
> 
> I'm surprised, as I'd expected that particular combination to be a
> non-match for the weak comparison.

So was I some time ago, and that's why I think we need an example.

<http://greenbytes.de/tech/webdav/rfc2616.html#rfc.section.13.3.3> says:

"The only function that the HTTP/1.1 protocol defines on validators is 
comparison. There are two validator comparison functions, depending on 
whether the comparison context allows the use of weak validators or not:

     * The strong comparison function: in order to be considered equal, 
both validators MUST be identical in every way, and both MUST NOT be weak.
     * The weak comparison function: in order to be considered equal, 
both validators MUST be identical in every way, but either or both of 
them MAY be tagged as "weak" without affecting the result.

An entity tag is strong unless it is explicitly tagged as weak. Section 
3.11 gives the syntax for entity tags."

Earlier it says:

"Entity tags are normally "strong validators," but the protocol provides 
a mechanism to tag an entity tag as "weak." One can think of a strong 
validator as one that changes whenever the bits of an entity changes, 
while a weak value changes whenever the meaning of an entity changes. 
Alternatively, one can think of a strong validator as part of an 
identifier for a specific entity, while a weak validator is part of an 
identifier for a set of semantically equivalent entities."

So it seems that the relation between entity tags and validators could 
be clearer...

Best regards, Julian

Received on Monday, 28 May 2007 19:17:02 UTC