Forum OpenACS Q&A: ANN: Project to build tDAV - WebDAV for AOLserver - and its integration with OACS

Musea Technologies is under contract with the MIT's Sloan School of Management as develop a WebDAV module for AOLserver and to integrate it with the Open Architecture Community System as well as to improve and DAV-enable the dotLRN File Storage module.

The approach for the WebDAV tool for AOLserver will be to build off the work initiated by AOL to develop a Tcl-based WebDAV module that leverages tDOM, the high-performance XML parser with extensive Tcl APIs. Given tDOM's design and performance, we expect this WebDAV approach to provide better than acceptable performance as well as easier maintenance and extensibility.

In addition, this approach will provide easier development of specific WebDAV APIs required for integration with the OpenACS. We will perform parallel development of tDAV and OpenACS integration, ensuring that everything will be straightforward and intuitive for future WebDAV enabled packages and modules.

Our approach for OpenACS integration will be to provide access from tDAV to the OpenACS Content Repository. We will design an ACS Service Contract that can be used to WebDAV-enable any OpenACS module or service. As an example project, we will WebDAV-enable File Storage solving one of Sloan's problems immediately.

The developers of this project will be two members of the OpenACS community and experts in the required fields of development. Todd Gillespie performed the development of nsdav, the aforementioned project to port Apache's moddav to AOLserver. Todd will be responsible for developing tDAV. Dave Bauer is one of the leads in the OpenACS' project to build a new content management system and is the maintainer of the ACS Content Repository. Dave will be responsible for integrating tDAV with the OpenACS and developing the DAV ACS Service Contract.

Another aspect of this project will be to improve the File Storage module for dotLRN and OpenACS. From Musea's discussions with various users of the File Storage module, it has become clear that its main obstacle to its greater use is a poorly designed and implemented user interface. As a result, an important aspect of this project is a usability study. This study will result in the File Storage Usability Report that will guide the development of a better user interface as well as the proper implementation approach.

Our resulting work on File Storage will serve as a model case for enabling packages to use the WebDAV service.

We expect that development and deployment can be accomplished within 6 weeks from the start of coding as design has already been well thought out. This timeline is subject to change.

We have yet to work out our policy in sharing code during the project but don't expect there to be any problem if people would like to see it in pre-release stage. This is subject to project contraints and developer's discretion.

The full proposal, with technical design details and preliminary development timeline, can be found here

Congratulations! Can't wait to see the results.

One question - Did DaveB insist that the module be named after him? The ego on that guy... 😉

Talli

That is excellent news!. Please contact Mark Aufflick he has done some WebDAV development.

cheers

Great news!

yeah, the UI of file-storage is quite poor, I'm looking forward to see your File Storage Usability Report.

If you are keen on good feedback for your usability report, contact AIESEC. They primarily use file-storage and I'm sure, if you write up a good survey their users will jump on the chance to bitch bitterly about it 😉.
Collapse
6: update, nearing release (response to 1)
Posted by Todd Gillespie on
I am announcing the initial release at the end of the week.
tDAV supports all methods in RFC2518, which is all the methods in WebDAV except the recent additions to versioning.  In testing the error cases, it passes all tests in the litmus[1] test suite, minus one Unicode problem.
For authentication, we are using nsperm, and are writing some admin functions to tie into the OpenACS user auth system.
It currently only integrates with Dave Bauer's oacs-dav package (for the OACS file-storage module), but it is being generalized to allow other backends to add DAV access as well.

You can get the sources from CVS via:
cvs -d:pserver:mailto:anonymous@tdav.museatech.net:/museatech/cvs login
cvs -z3 -d:pserver:mailto:anonymous@tdav.museatech.net:/museatech/cvs co tDAV
...or wait a few days for a tarball with documentation.

[1]: http://www.webdav.org/neon/litmus/

The OpenACS component should also be available around the same time. It will include generic support for content respository objects, with a specific implementation for file-storage.

You can get the sources from CVS via:
cvs -d:pserver:mailto:anonymous@tdav.museatech.net:/museatech/cvs login
cvs -z3 -d:pserver:mailto:anonymous@tdav.museatech.net:/museatech/cvs co oacs-dav

We've posted the notes from the usability interviews regarding File Storage done at Sloan last week. You can access them here. The notes are in HTML, PDF or RTF documents.

I will be working on condensing these notes into a more formal report in the coming week, but this is an initial view for the curious.

If anyone has any comments, please feel free to scream them.

talli