Subject: Issue: WRITE_DAV_PROP

From: "Jim Whitehead" <[email-masked]>
Date: Tue, 10 Apr 2001 17:58:36 -0700

Issue: WRITE_DAV_PROP

Description:

Which properties specified in the WebDAV specification (i.e., “DAV:”
properties) may be written by the client? For example, can the client write
to DAV:getcontenttype?

Jim Davis raised this issue:

http://lists.w3.org/Archives/Public/w3c-dist-auth/1998OctDec/0204.html

See also:

http://lists.w3.org/Archives/Public/w3c-dist-auth/1998OctDec/0205.html
http://lists.w3.org/Archives/Public/w3c-dist-auth/1998OctDec/0289.html
http://lists.w3.org/Archives/Public/w3c-dist-auth/1998OctDec/0292.html

- Jim

---

From: "Jim Amsden" <[email-masked]>
Date: Fri, 13 Apr 2001 18:23:17 -0400

Sounds fine to me.

                    "John Glavin"                                                                                 
                    <john@riverfrontsof       To:     "WebDAV WG" <[email-masked]>                          
                    tware.com>                cc:                                                                 
                    Sent by:                  Subject:     Re: Issue: WRITE_DAV_PROP                              
                    w3c-dist-auth-reque                                                                           
                    [email-masked]                                                                                     

                    04/13/2001 06:05 PM                                                                           

I agree about the "getlastmodified" property.  I would love to be able to
set this so that file synchronization software will work properly.  My
product maps a network drive to a DAV server and unless I can set the
"getlastmodified" property file synch software won't work right.  I only
know of one server that allows this now, it would be nice if this could be
standardized.

John Glavin
RiverFront Software
[email-masked]
http://www.webdrive.com

----- Original Message -----
From: "Greg Stein" <[email-masked]>
To: "WebDAV WG" <[email-masked]>
Sent: Friday, April 13, 2001 1:56 PM
Subject: Re: Issue: WRITE_DAV_PROP

> Seems fine, but...
>
> I could see an argument for getlastmodified (e.g. "touch" the resource).
And
> maybe for creationdate for somebody that is restoring documents to a
server.
> Then you have the "COPY is performed using PROPPATCH" where you may need
to
> copy all the props.
>
> I'm also a bit leery of the getcontentlanguage and getcontenttype being a
> MUST. I'd prefer those be a MAY, and displayname and source remain as
MUST.
> The basic problem with the language/type is needing to look them up for
each
> GET from the server. That can seriously impact server performance.
>
> Cheers,
> -g
>
> On Fri, Apr 13, 2001 at 09:02:25AM -0700, Kevin Wiggen wrote:
> >
> > I agree also.
> >
> > -----Original Message-----
> > From: [email-masked]
> > [mailto:[email-masked]]On Behalf Of Jim Whitehead
> > Sent: Wednesday, April 11, 2001 9:53 AM
> > To: WebDAV WG
> > Subject: RE: Issue: WRITE_DAV_PROP
> >
> >
> > I agree.
> >
> > - Jim
> >
> > > My vote:
> > > - protected (i.e. properties that MUST NOT be modifiable with
PROPPATCH)
> > >  creationdate
> > >  getcontentlength
> > >  getetag
> > >  getlastmodified
> > >  lockdiscovery
> > >  supportedlock
> > >  resourcetype
> > > - not protected (i.e. properties that MUST be modifiable by
PROPPATCH)
> > >  displayname
> > >  getcontentlanguage
> > >  getcontenttype
> > >  source
> > >
> > > My rationale for DAV:resourcetype is that the resourcetype should be
used
> > > to define the inherent nature of a resource (e.g. collection vs.
> > > non-collection), while getcontenttype is definable by the client.
> > >
> > > Cheers,
> > > Geoff
> > >
>
> --
> Greg Stein, http://www.lyra.org/

---

From: "Clemm, Geoff" <[email-masked]>
Date: Mon, 16 Apr 2001 23:13:49 -0400

From: John Glavin [mailto:[email-masked]]

   ... If you PUT a file to the server, the server will update
   getlastmodified.  The way that existing Windows applications
   synchronize files is to copy the file to the server and then set
   the modified time to match the existing modified time of the file
   that is say on the users hard disk.  This way when it next checks
   to see if the file is in synch it will just check the last modified
   property.  I know that DAV isn't specific to Windows or any file
   system in particular, but it would be nice if there was a way in
   DAV to allow existing file synchronization software to work.  A
   simple way to do this is to allow the getlastmodified property to
   be set.

Given the choice between having HTTP/1.1 caching work and having a
certain kind of Windows file synchronization work, I'd have to vote
for HTTP/1.1 caching (it is an HTTP protocol after all :-).

In particular, RFC 2616 says:

   An origin server SHOULD obtain the Last-Modified value of the entity
   as close as possible to the time that it generates the Date value of
   its response. This allows a recipient to make an accurate assessment
   of the entity's modification time, especially if the entity changes
   near the time that the response is generated.

So this says that it should be the server's idea of the current time,
not some client's idea of the time.

So it would be fine to allocate some new property value to mean
"file-system's idea of the time", but we shouldn't use getlastmodified
to do so, because the value of getlastmodified being synchronized with
the server's idea of the current date is required for the HTTP/1.1
If-Modified-Since header semantics.

Cheers,
Geoff