From: Ian B. <ia...@co...> - 2002-04-25 18:21:31
|
On Thu, 2002-04-25 at 12:47, Kendall Clark wrote: > I asked about WebDAV and Webware last year; I'd be willing to help add > WebDAV support to Webware's existing HTTP support. I agree with Ian > that, in addition to whatever URL handling fixups are needed anyway, > it's not *that* much additional code. And the XML handling part can > likely be done in a few hundred lines of SAX; i.e., as I recall, > WebDAV's use of XML is not at all exotic or complex. (In fact, the XML > handling is probably the part that least needs to be rewritten and can > be used w/ little change from one of the existing implementation, > license terms permitting.) Yes, it shouldn't be too hard -- especially since it would be quite usable with only the live properties (WebDAV allows "dead" properties, which are basically just arbitrary metadata associated with the document -- I don't know if those properties are used for much by current clients) SAX seems a bit too low-level -- for small requests the overhead of other implementation isn't a big deal. A DOM or somesuch seems more reasonable. The XML isn't entirely flat, at least when it comes to properties (most of the other actions are much more simple, except maybe locking...) The URL handling stuff will probably be fairly significant. For WebDAV to be correct, IMHO, the URLs have to point to resources in a sensible hierarchy. Using get variables to identify resources is, I think, totally out. The style I've been using, /Action/ResourceName (like /Edit/0) won't be correct either -- though, like you'd usually do with XMLRPC, you could have a separate hierarchy and set of URLs for WebDAV access. I don't know if many clients link the file-sharing-like access of WebDAV to the actual browsable/interactive pages you'd be using in a browser. We'd also have to straighten out any issues with using HTTP authentication, which is the only method of authentication available to WebDAV clients. > However, I'm more interested in whether it makes sense to have Apache > handle WebDAV (especially since Apache 2 includes mod_dav) as opposed > to it being in WebKit. I'm not sure of all the pros and cons, but the > biggest pro is that mod_dav already works. :> As far as I can tell, mod_dav only implements file sharing -- it certainly could work for some people in some situations, but it's analogous to Apache's web serving: it mostly just handles static documents based on the filesystem. (That said, using mod_dav with Web Folders for file sharing is much better than FTP) I would like something fully dynamic. The particular use I've been thinking about involves having collections provide documents based on their workflow status (kind of like an inbox), where moving would also imply actions (i.e., changing that status). When you also consider permissions schemes, you really could only do this in WebKit. > [1] Actually, a quick googling reveals at least three; the one in > Zope, a very early one by Xerox/PARC, and http://webdav.de/ -- which > hasn't been updated since 2000, but mentions 4Suite and should likely > be perused. I found this on the 4suite site: http://4suite.org/4Suite.org/documents/guides/4SuiteServer/WebDAVProgrammersGuide I haven't looked at it yet Ian |