SAN FRANCISCO (07/21/2000) - If you have tried to develop a Webpage lately, it is unlikely that you still used the ancient technique of directly writing HTML tags and creating documents in a text editor. Today, there are numerous WYSIWYG editors for general Webpage design and coding. Those tools have done for Webpage creation what WYSIWYG editors did for text editing years ago, and have brought Webpage creation to the masses in a simple, elegant manner.
However, if you are developing a large Website for an organization, you will probably have a group of developers working on design and development. Anyone who has worked with group editing in the past understands the importance of knowing who made the most recent changes to a document. With plain Webpages, it hasn't been an easy task to handle version control and the editing of hundreds of documents by many developers. Although it is perfectly possible to embed comments into the HTML, this is non-standard and can be difficult to work with.
In this light, the Internet Engineering Task Force (IETF) has been working on a standard protocol for group editing known as the Distributed Authoring and Versioning protocol for the Web (WebDAV). This technology is an extension of the HyperText Transfer Protocol (HTTP) itself, and can be handled in the same way. WebDAV was released last year and has already been implemented in professional tools such as Adobe's GoLive and the open-source WebCT.
Why a standard authoring system for Web documents?
To understand the difficulties of keeping track of these changes, consider the current state of Website development. Companies often have an internal site-development group that may outsource work to independent consultants and developers. Creating each page requires coming up with a page design in keeping with the theme of that portion of the site, creating the graphical elements and the text content, placing all the elements together, copyediting the work, and finally publishing the work. A professional Website crew works much like a magazine publishing firm, in that it consists of creative, technical, editorial, and managerial specialists, all of whom contribute to a final product. The workflow of a single document can span several people and even several teams.
The current method of transferring Web documents via email or FTP does not provide the features for version control and document properties that WebDAV does. Thus developers have been forced to keep separate records or ignore documentation altogether. It is possible to use a traditional workflow tool to keep track of those changes, but it might be simpler to incorporate such change information directly as part of the document and distribute the URL for the document, rather than emailing the HTML file and all its subcomponents. This simplifies the tasks and saves bandwidth.
Furthermore, WebDAV follows the Web's distributed model, which allows any authorized user worldwide to access, edit, and change the document. This type of editing is becoming the norm for large or widespread organizations whose developers cannot congregate to work on their project.
WebDAV's simple model turns the entire Web into a titanic filesystem with its read, version control, and write functions. Although the original HTTP protocol had methods to put files directly into URL locations, this capability was not implemented in most browsers due to the lack of a control mechanism and the security risks it introduced.
The WebDAV system is independent of the object being edited; this is a feature of the editing tool itself. So a developer may be able to edit components of an HTML page such as graphics or Java applets, as well as the page's text.
WebDAV can enable applications, or devices, to automatically write their contents to a Website rather than using a separate program to upload the data.
Using WebDAV, you can build Web-based log files that record particular event activity from a monitor, your scanner can automatically send a scanned document directly to a Web page, your digital camera can upload pictures to a specified point on your site, and so on. Basically, any data-collection device with WebDAV and HTTP capabilities will be able to transfer information to a preprogrammed location, eliminating the need for additional monitoring and transfer tools.
WebDAV is an extension of HTTP that uses the Extensible Markup Language (XML) to insert properties and version-control information into the metadata of a document. XML comes in handy mainly because it is extensible and can have any number of new properties added to a document. (It also supports international character sets.) Information about a document, generally referred to as metadata to separate its identity from its contents, is stored in sets of properties. Metadata is already widely used in Web documents to store description information that allows search engines to better index the contents, in a format known as the Dublin Core. There are other metadata formats that insert content-rating information, although many pre-WebDAV Web-editing applications used their own version and authoring information.
There are a number of predefined properties in WebDAV that exist for all documents. Most of those properties are basic information such as the creation date, author names, the content's language and length, the date it was last modified, etc.
This new authoring system introduces a new type of Web resource known as a collection. Collections identify a group of objects or documents that share common properties. The collection resource can replace the traditional concept of a hierarchy of files and directories that make up a Website. A Web collection does not impose a hierarchy or structure on its members, making it flexible enough to describe groups of files, devices, or application objects.
WebDAV also introduces to HTTP a number of new methods that allow the software to handle properties, manage collections, and manipulate documents. WebDAV also ratifies the function of existing methods Get, Put, Copy, Delete, and Post according to their expected behavior in relation to WebDAV-enabled documents.
One of the complexities that WebDAV addresses is handling locks. Any distributed editing system needs a locking mechanism so if several people try to edit the contents of a document simultaneously, no one overwrites what others are working on. Instead of a strictly exclusive locking mechanism that locks the entire document for each person, WebDAV allows the shared locking of a document.
The advantage of this shared lock mechanism is twofold. By giving a select group of people a shared lock, only those members will have the access rights to change the document. Furthermore, if the collaborating developers agree to work only on their subset of the document, each developer may continue to work on a particular subset while others are editing the document. Of course, if the developers cannot be trusted to stick to their area, exclusive locks are still available.
WebDAV moves on
WebDAV is a basis for a new kind of development tool that not only simplifies work on Web documents, but also transforms the read-only Web into a collaborative system. What's more, WebDAV brings the Web back to sharing documents between workgroups. The designers did well to implement WebDAV as an extension of HTTP rather than a separate protocol, which should mean tighter integration with Web software and increased usage of underutilized portions of HTTP. Developers will be the initial benefactors of this new system, but as editing tools become simpler, WebDAV can be put into the hands of end users as well.
Even more relevant is the power that WebDAV brings to Web-based applications.
We can finally eliminate the need for CGI and third-party applications for Web forums, document changes, uploading files, and so on. Adding WebDAV to the Web editor's capabilities provides a standard mechanism that can be designed into the Web application, reducing the extra code that the application developer has to write simply to bring this same functionality to the Web.
WebDAV has been completed, but work continues on issues such as new access-control mechanisms, handling namespace bindings to properties, and redirecting resource requests. IETF is currently focusing on protocols regarding configuration management and version control, aspects not addressed by WebDAV.