IIUC, in WebDAV, operations that work on properties are mostly distinct from operations that work on file contents (apart some problem areas listed below).
If I'm right, this would allow Cocoon to proxy most WebDAV operations to a non-DASL WebDAV backend, and process the few operations that relate to properties (PROPFIND, PROPPATCH, SEARCH) directly, storing properties in a database.
This would make it possible to use existing WebDAV servers, and enhance them with DASL searches, using any JDBC database to store properties (that's the key point when comparing to Catacomb).
Cocoon would proxy the following operations to the WebDAV backend: GET, HEAD, POST, PUT, DELETE, MKCOL
And handle the following operations: PROPFIND, PROPPATCH, SEARCH
Problem areas:
-OPTIONS, backend response must be completed with DASL info (easy)
-MOVE and COPY, URIs must stay in sync between file storage and properties, not too hard to do
-Locking must lock both file contents and properties (I assume), slightly harder
-TRACE?
This could fit nicely with a project that I'm working on, where we need webdav-like capabilities but no locking and probably no move or copy operations.
Thoughts? Does this sound too hackish? ;-)
-Bertrand
[1] http://marc.theaimsgroup.com/?l=xml-cocoon-dev&m=106206327607582&w=2
