We need a webdav:// URL scheme!
When browsing a remote filesystem, it's more convenient to use a filesystem browser UI rather than an HTML directory listing. Unfortunately, if the protocol used is WebDAV, there's no way to effect a switchover from a HTML UI. This is because URLs that point to WebDAV shares use the same http scheme and are therefore indistinguishable from HTTP URLs. Neither can you follow the URL to see what's on the other side (in fact, the method (pun intended) of following the URL is itself different based on whether you want to use the WebDAV protocol; you do a PROPFIND instead of a GET). So if a particular resource has to be opened as a WebDAV resource, the browser must be explicitly told.
To this end, the IETF wants to introduce a new MIME type, application/davmount+xml, that instructs the web browser to open a (specified) resource in a WebDAV filesystem browser. So a webpage that wants to link to a WebDAV resource must link to this mount request document which in turn specifies the location of the resource.
The alternative is to use a webdav:// URL.
Here are the problems I see with the proposed spec:
Webmasters must create these mount request documents, and every point in the WebDAV filesystem hierarchy needs its own mount request files. So the webmasters may have to create a lot of these files used just for redirection. Or dynamically generate them. Neither is appropriate for a task that can be done using something as simple as a URL with a different scheme.
A new scheme would be useful when a user types a URL into a client program. Presently, clients use ad hoc solutions. For instance, Internet Explorer's Open box has an Open as Web Folder option that you must check to use WebDAV. A webdav:// URL would be more straightforward.
The proposed spec requires another round-trip to the server.
You can use a data URI (thanks Julian Reschke for pointing this out) and that will handle problems 1 and 3. But it will still be unwieldy; would you prefer a URL that encodes:
Content-Type: application/davmount+xml
<dm:mount xmlns:dm="http://purl.org/NET/webdav/mount">
<dm:url>http://www.example.com/user42/</dm:url>
<dm:open>inbox/</dm:open>
</dm:mount>
or this:
http://www.example.com/user42/
True, you don't need a new scheme, but that doesn't mean you shouldn't have one, given that the alternative suffers from the above problems. WebDAV is a different protocol from "plain" HTTP (it introduces new HTTP methods), and if we don't use URL schemes to identify protocols, what are the schemes there for? Why needlessly complicate things?
Nautilus did the right thing and went for a dav:// scheme. Konqueror uses webdav://
Last Updated: 12 Feb 2006