A Uniform Interface for Authoring
In the first session of the XML DevCon Fall 2000 conference, Greg Stein delivered an introduction to WebDAV, the Web Distributed Authoring and Versioning protocol. Stein is an open source developer working with WebDAV and Python -- he is the author of the mod_dav Apache DAV support, soon to be an integral part of Apache 2.0.
WebDAV is an open protocol, standardized through the IETF, which uses XML and HTTP 1.1 to provide an interoperable layer for distributed web authoring. Essentially, it provides a uniform layer over filesystems, data repositories, etc. that supports more or less filesystem-like semantics: collections (like directories), resources (like files), properties (resource metadata), and locking.
The benefits of this technology, according to Stein, are available for all concerned in the authoring process:
Because it's based on top of HTTP 1.1, WebDAV reaps all the pre-existent advantages of HTTP, such as through-firewall operation, security, and authentication features. By adding new verbs to HTTP like PROPFIND, PROPPATCH, etc., WebDAV provides facilities for metadata and locking.
So where does XML fit into WebDAV? According to Stein, WebDAV is the first IETF specification to use the XML standard. XML is used to encode all the messages that WebDAV uses to communicate between client and server, such as the result of a PROPFIND method to discover the properties of a resource. Reminiscent of RDF/Namespace technology, these resource properties are named using a URI to ensure uniqueness.
Of course, what makes WebDAV interesting is not merely its use of XML, but the large advantage to be gained from a uniform interface -- based on open and ubiquitous standards -- to data repositories.
WebDAV now has a reasonable amount of software support in both the commercial and open source areas.
Pragmatically, the WebDAV authors released the initial version of the core specification without including all the features targeted for the project. This means that although authoring and metadata are currently well supported, WebDAV lacks versioning support -- quite critical for distributed software development, for instance.
However, the specifications for advanced functionality are progressing through the IETF right now, and it looks as though versioning will be finalized by the end of this year, with other features such as searching coming either late this year or in 2001. Of course, implementations still need to be built for these specs, but with people like Stein driving them they won't be too far off.
Stein himself is working on the versioning problem with the Subversion project, aimed at providing tools for distributed software development.
For more information on WebDAV, take a look at WebDAV.org, which is a comprehensive news and resource site for WebDAV run by Greg Stein.
XML.com Copyright © 1998-2006 O'Reilly Media, Inc.