1.6 What WebDAV Is and Is Not

So far, we've covered what WebDAV is for and why it was developed, but we should also discuss some common conceptions and misconceptions up front.

WebDAV Is HTTP: True

It's a set of extensions to HTTP/1.1 as defined in RFC2068 (although the authoritative reference for HTTP/1.1 as of this printing is RFC2616). WebDAV uses the HTTP/1.1 version tag in the header line of every request. WebDAV also makes extensive use of the HTTP/1.1 methods GET, PUT, and DELETE. Thus, WebDAV cannot be separated from HTTP. It also cannot be considered to be "layered" on top of HTTP as protocols such as SOAP are.

Layering on HTTP

Although HTTP was never intended to be a transport protocol, it has come to be used as such because it's the only protocol that is allowed through many corporate firewalls and the only way to reach users behind those firewalls. Thus, applications that have little to do with the Web and nothing to do with hypertext use HTTP requests, typically the POST method, to send their messages over the Internet. Typically, most of the information is carried in the request body. Sometimes, important features of HTTP such as caching must be entirely disabled or worked around. These protocols cannot be considered to be part of HTTP, because they do not act on HTTP resources.


WebDAV Is an API: False

Some confusion has arisen here because many industry standards, such as CORBA or the Document Management Alliance (DMA) standard, are Application Programming Interface (API) standards. APIs are usually tied to specific platforms, but protocols like WebDAV almost never are. APIs can embody specific architectural decisions, such as how to store properties, whereas protocols allow the implementation to store information any way as long as it is marshaled interoperably. A well-designed protocol can be implemented in any programming language or style. A protocol should have a longer shelf life and broader interoperability than an API because the same protocol can be reimplemented on the new device or cool programming language of the day.

Document Management API

A document management API standard does exist. The Document Management Alliance (now part of AIIM International) controls the DMA standard and defines the API [ODMA97]. Like WebDAV, DMA provides a common model for document management. Like WebDAV, DMA is intended to promote interoperability between vendors of client and server systems. Unlike WebDAV, the standard interface through which DMA exposes its model is an API. This results in a standard more useful for corporate, intranet use. Note that WebDAV is compatible with DMA (as DMA participants pointed out in an email to the WebDAV mailing list). In other words, WebDAV can be used as the protocol where DMA is used as the programming model.


Another distinction is that APIs are usually the interface between two pieces of software running on the same machine or within the same local network. Although many languages provide remote procedure call mechanisms today, APIs still can't take the place of protocols, because APIs are seldom designed to take network latency into account or to operate with firewalls. WebDAV was designed from the start as an Internet protocol, intended to work with high latencies, busy servers, firewalls, and proxies.

Finally, although WebDAV is not an API, several toolkits exist with APIs to help implementers add WebDAV support more quickly and easily to both client and server applications.

WebDAV Is a Document Management System: False

You can find document management systems for sale as large software packages. Some of these systems may support WebDAV, which could be an important factor in purchasing decisions. These systems might include client software as well as server software and provide tools for administering the document repository. WebDAV has been adopted as a component by some, but any protocol is only one piece of a complex document management system.

WebDAV Is a Server-to-Server Protocol: False

WebDAV does not define how servers talk to each other or interact. Thus, a client wanting to copy a file from one server to another will likely have to download the file contents from one server and upload the contents to the other server. Individual server implementations may be able to talk to other servers, but this is either done with a protocol other than WebDAV or with one server behaving as a client making requests of the other.

WebDAV Is a Network File System for the Internet: True

WebDAV allows the major elements of directory and file navigation as well as directory and file manipulation all using HTTP.

WebDAV Is an Appropriate Successor to FTP: True

WebDAV provides the major advantages of FTP and can entirely replace FTP for some purposes, such as authoring or uploading Web sites. For Web site authoring in particular, WebDAV offers important advantages over FTP:

  • A WebDAV address for a resource is the same as the HTTP address. An FTP address must be different and has to be known by the author.

  • WebDAV offers more flexible security options. HTTP offers several ways for both clients and servers to authenticate or identify themselves.

  • WebDAV has a standardized directory listing format. FTP directory listings can be in any format, making it hard for clients to know how to parse the data and present it in any way other than plain text.

  • WebDAV provides locks to prevent overwrites from multiple authors.

  • WebDAV has support for metadata. FTP only shows the basic file properties listed by the remote file system and can't edit property values at all. WebDAV allows the client to set and retrieve whatever basic or custom properties it wants.

Chapter 2, History of Web and Collaborative Authoring, covers in more detail how Web site authoring worked before WebDAV, including how FTP has been used.

WebDAV Is a Microsoft Technology: False

WebDAV was designed and standardized through the IETF, an open Internet standards body. Microsoft employees participated in the design and standardization process from the early stages. Once the protocol became a standard, Microsoft followed its embrace and extend strategy. A number of Microsoft-designed extensions to WebDAV are known to exist (many are described in this book), and although those extensions may be Microsoft-specific, the basic WebDAV protocol is not.

In its technical and marketing material, Microsoft sometimes refers to "Microsoft WebDAV." Although this phrase does refer to a protocol mostly compatible with the IETF-defined WebDAV standard, it presumably gives Microsoft some leeway when an incompatibility or missing requirement is identified. The concept has found its way into other literature as well, possibly confusing readers (and software reviewers) into believing that WebDAV is a Microsoft technology. For example, PC Magazine [Simone00] stated that Adobe GoLive supported "Microsoft's Web Distributed Authoring and Versioning" a misnomer in several ways, since the actual expansion of the WebDAV acronym is "Web-based Distributed Authoring and Versioning."

WebDAV Is a Standard: True

The WebDAV specification has been approved as an IETF standards-track document and assigned an RFC number (RFC2518). The IETF has three levels of standardization for the standards track, in order to indicate relative maturity and stability. WebDAV is at the first of those three levels, called Proposed Standard. At this stage, most software vendors feel comfortable implementing a standard. In the future, WebDAV may progress to Draft Standard, like HTTP/1.1 [RFC2616], or even Internet Standard, like Transmission Control Protocol (TCP) [RFC793].[2]

[2] The current status of all IETF RFCs can be viewed in the RFC Index at www.ietf.org/iesg/1rfc_index.txt. There is also an RFC series document that provides more information on the IETF process and standard levels [RFC2026].

WebDAV Is a Web Service: Maybe

It depends on how you define a Web Service. A Web Service might be defined as an application that provides semantic services whose abilities can be discovered on-the-fly by a client given an HTTP URL. A Web Service might be defined as an application that uses HTTP for transport and XML for marshaling semantic information. Both of these definitions imply that WebDAV is a Web Service.

However, if a Web Service can only be an application that advertises its services using Web Service Description Language (WSDL) and is accessed using Simple Object Access Protocol (SOAP) over HTTP, then WebDAV is not a Web Service.



WebDAV. Next Generation Collaborative Web Authoring
WebDAV. Next Generation Collaborative Web Authoring
ISBN: 130652083
EAN: N/A
Year: 2003
Pages: 146

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net