Re: GULP vs RFC251bis, was: [Bug 54] Locks vs multiple bindings

Cullen wrote on 12/20/2005 12:30:12 AM:

> ... it seems like a XML database that say had a regular
> expression for mapping one URI to another could easily get multiple 
bindings
> to one resource. 

No, the semantics of a binding is defined to be a relationship to the 
bound
resource that is independent of other bindings to that bound resource.
If you tried to implement a binding, B, with a URI mapping, any change to 
any
of the bindings that define that URI mapping would disrupt the binding B.

The best you can get with a URI mapping implementation is an 
"auto-redirect"
functionality, which is not something defined by any current WebDAV spec
(several years ago, there was a "WebDAV Reference" spec that some folks 
were working
on for this, but that got dropped for lack of interest).

> The questions was could you use the DB lock mechanism (or for that 
matter a
> files system lock) to implement DAV locks. Julian said this would not be
> compliant with 2518 which I believe but I don't yet understand why it 
would
> not be. 

WebDAV locks require that lock request URI be "protected", in addition to 
the resource
being "locked".  DB locks do not "protect" the lock request URI.

> Now Lisa proposed a model for locking slightly different than GULP which
> would, by my understanding, would allow an implementation like GULP but
> would also allow implementation like the one I just described to also be
> compliant. 

I am not aware of any locking model being proposed by Lisa.
There was the posting about whether the DELETE method should be required
(or at least allowed) to delete all bindings to the resource being
deleted (rather than just the one binding identified by the DELETE
request-URL), but that was a discussion about the semantics of DELETE,
not about a different locking model.

> I strongly suspect that there are some DAV like servers out there that 
try
> to use file and data base locking mechanism to do locks - I don't know 
if
> they are 2518 compliant or not. 

I'm not sure what point you are making here ... a server can chose to not
be compliant with the spec, and how that will harm interoperability will 
depend on what areas they are not compliant and what functionality is
assumed/needed by the client.

> I also suspect there are some servers that
> do run regular expression on URL to create multiple bindings to files on 
a
> file system and DELETE will remove both all at the same time. 

Those wouldn't be bindings, as defined by the BIND specification.

> Again, don't
> know if this should be legal for a server or not but practically it does 
not
> make much difference for the client so servers will continue to do it.

As you say, a server can do whatever it wants, but it does make a 
difference
to a client if the server claims they are bindings (say, by declaring 
support
for BIND/UNBIND/REBIND), which it doesn't.

> I'd like to see this discussion have more on what the model should and 
and
> why. So far I can summarize it as:
> 1) gulp would probably work
> 2) an alternative model might work
> 3) some people prefer 1 some 2
> 4) I've learned a bunch about weak and strong tags and PUT in HTTP - 
this is
> good
> 5) I'm not seeing the insights that help people understand why one model 
or
> another would be better or worse.

I believe that is because there is no alternative model that has been 
proposed. 

Cheers,
Geoff

Received on Tuesday, 20 December 2005 13:41:20 UTC