Web Folders and WebDAV

If you've installed Office 2000 or Internet Explorer 5, you may have noticed that an icon called Web Folders has shown up under My Computer on your Windows 95/98 machine, and wondered what it is. Simply, a Web Folder provides a local view of a remote Web server, allowing resources on the server to be viewed and manipulated like files in the local file system. Office 2000 applications like Word, Excel, and PowerPoint use Web Folders to enable remote collaborative authoring of word-processing files, spreadsheets, and presentations.

Working together on the Web is easy. Simply start editing a document using Office 2000, then save it to a previously created Web Folder using the File, Save dialog box‹every Office 2000 application has a button for Web Folders in the lower left-hand corner of all file dialog boxes. Click on Web Folders, select the Web Folder for the specific collaboration, and then enter a name for the document. A few seconds later, the document will be saved to the Web Folder. Next, close the application, then contact your collaborator and give him or her the URL of the Web Folder. The collaborator should create a Web Folder on his or her local machine, and then open the document from this Web Folder. Locking on the server prevents you from overwriting each otheršs changes.

Under the hood, Web Folders employ a programming interface called the OLE DB Provider for Internet Publishing (for information, visit, which maps requests made via the user interface into network protocol requests. Web Folders use either the IETF standard WebDAV protocol or the Microsoft FrontPage protocol to send Web Folder requests across the network to a remote server. When a Web Folder first contacts a Web server, it goes through a discovery process to select which protocol to use.

The first step in the protocol discovery is sending an HTTP OPTIONS request, the standard feature-discovery mechanism for HTTP. If the response contains the MS-Author-Via header (a nonstandard header) with the value MS-FP/4.0, it will use the FrontPage protocol; if it has the value DAV, it will use the WebDAV protocol. If the MS-Author-Via header is not present, Web Folders loads the FrontPage protocol driver (called the Web Extender Client, or WEC), and asks it if it can talk to the server. It does this by sending a GET /_vti_inf.html, followed by a POST /_vti_bin/htm.exe/_vti_rpc (the _vti is a leftover from FrontPagešs early development by a startup called Vermeer Technology). If the server responds incorrectly (such as with a 404 Not Found message), Web Folders next checks for WebDAV support by sending a second OPTIONS request. This time, if the DAV (a header all WebDAV servers must implement) is present, Web Folders will begin using WebDAV.

When you load a file from a Web Folder using Office 2000 against a WebDAV server, Office will send out the following protocol requests. First, it sends a WebDAV LOCK method request to lock the remote resource, asking for a short-duration, two-minute exclusive write lock. Next, Office requests the contents of the file using GET. Web Folders uses HTTP caching, so if the contents havenšt changed on the remote server since the last time the document was requested, Web Folders will use the cached copy. Office makes a local, temporary copy of the downloaded resource, and then allows editing to begin. Automatic saves go to the local copy, but hitting the save button causes the document to be saved back to the Web server, using the PUT method. When File, Close is selected, the document is PUT back to the server, and the lock is then released using the WebDAV UNLOCK method.

Office 2000 refreshes its locks every two minutes by sending a LOCK request. While this short-duration lock strategy ensures that resources wonšt be tied up if the locking application dies, it does prevent disconnected editing, and adds to server load. If the resource is already locked when the first lock request is made, Word and Excel will give the option to open a document as read-only, and receive a notification when the document is unlocked. Since WebDAV doesnšt provide an asynchronous notification mechanism, Office checks the lock status by polling the resource with LOCK requests. When the lock request finally succeeds, it notifies the waiting user. --JW