Subject: Request for comments: draft-reschke-webdav-mount-latest

From: Julian Reschke <[email-masked]>
Date: Fri, 29 Jul 2005 14:36:47 +0200

Hi,

this document 
(<http://greenbytes.de/tech/webdav/draft-reschke-webdav-mount-latest.html>) 
describes an extremely simple and platform/browser independant 
protocol/format for WebDAV servers to instruct the local webdav client 
to mount a specific URL and open a window (for a child collection of 
it). We intend to support this format in future SAP Netweaver releases, 
but it's designed to be open and extensible (thus we're choosing the 
IETF process).

Server implementation is trivial; at this point we're mainly looking for 
the feedback from client programmers (Jim L., are you listening??? :-).

Note: the draft hasn't been submitted to the IETF yet (because of the 
forthcoming IETF meeting).

Best regards,

Julian

Network Working Group                                         J. Reschke
Internet-Draft                                                greenbytes
Expires: January 30, 2006                                  July 29, 2005

   Mounting WebDAV (Web Distributed Authoring and Versioning) servers
                   draft-reschke-webdav-mount-latest

Status of this Memo

   By submitting this Internet-Draft, each author represents that any
   applicable patent or other IPR claims of which he or she is aware
   have been or will be disclosed, and any of which he or she becomes
   aware will be disclosed, in accordance with Section 6 of BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF), its areas, and its working groups.  Note that
   other groups may also distribute working documents as Internet-
   Drafts.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   The list of current Internet-Drafts can be accessed at
   http://www.ietf.org/ietf/1id-abstracts.txt.

   The list of Internet-Draft Shadow Directories can be accessed at
   http://www.ietf.org/shadow.html.

   This Internet-Draft will expire on January 30, 2006.

Copyright Notice

   Copyright (C) The Internet Society (2005).

Abstract

   This document specifies a mechanism and a document format that allow
   WebDAV servers to send "mounting" information to a WebDAV client.
   The protocol is designed to work on any platform and with any
   combination of browser and WebDAV client, relying solely on the well-
   understood dispatch of documents through their MIME type.

Reschke                 Expires January 30, 2006                [Page 1]

Internet-Draft           Mounting WebDAV servers               July 2005

Table of Contents

   1.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  3
   2.  Terminology  . . . . . . . . . . . . . . . . . . . . . . . . .  3
   3.  Format . . . . . . . . . . . . . . . . . . . . . . . . . . . .  3
     3.1   url  . . . . . . . . . . . . . . . . . . . . . . . . . . .  4
     3.2   open . . . . . . . . . . . . . . . . . . . . . . . . . . .  4
   4.  Example  . . . . . . . . . . . . . . . . . . . . . . . . . . .  4
   5.  IANA Considerations  . . . . . . . . . . . . . . . . . . . . .  5
     5.1   MIME type registration . . . . . . . . . . . . . . . . . .  5
   6.  Security Considerations  . . . . . . . . . . . . . . . . . . .  6
   7.  References . . . . . . . . . . . . . . . . . . . . . . . . . .  6
     7.1   Normative References . . . . . . . . . . . . . . . . . . .  6
     7.2   Informative References . . . . . . . . . . . . . . . . . .  7
       Author's Address . . . . . . . . . . . . . . . . . . . . . . .  7
   A.  Alternative approaches . . . . . . . . . . . . . . . . . . . .  7
     A.1   ...through HTML/CSS extensions . . . . . . . . . . . . . .  7
     A.2   ...through custom URI schemes  . . . . . . . . . . . . . .  7
       Intellectual Property and Copyright Statements . . . . . . . .  9

Reschke                 Expires January 30, 2006                [Page 2]

Internet-Draft           Mounting WebDAV servers               July 2005

1.  Introduction

   By definition, a WebDAV server ([RFC2518]) is an HTTP server as well
   ([RFC2616]).  Most WebDAV servers can be (at least partly) operated
   from an HTML-based user interface in a web browser.  However, it is
   frequently desirable to be able to switch from an HTML-based view to
   a presentation provided by a native WebDAV client, directly
   supporting the authoring features defined in WebDAV and related
   specifications.

   For completeness, Appendix A lists other approaches that have been
   implemented in existing clients.

2.  Terminology

   The terminology used here follows and extends that in the WebDAV
   Distributed Authoring Protocol specification [RFC2518].

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in [RFC2119].

   This document uses XML DTD fragments ([XML]) as a purely notational
   convention.  In particular:

   o  Element names use the namespace
      "http://purl.org/NET/webdav/mount".

   o  Element ordering is irrelevant.

   o  Extension elements/attributes (elements/attributes not already
      defined as valid child elements) may be added anywhere, except
      when explicitly stated otherwise.

3.  Format

   A WebDAV mount request is encoded in a specific XML format ([XML])
   with a well-defined MIME type (see Section 5.1).  The MIME type
   allows user agents to dispatch the content to a handler specific to
   the system's WebDAV client.

   The elements defined below use the namespace
   "http://purl.org/NET/webdav/mount".

Reschke                 Expires January 30, 2006                [Page 3]

Internet-Draft           Mounting WebDAV servers               July 2005

   <!ELEMENT mount (url, open?) >

   <!ELEMENT url (#PCDATA) >
   <!-- PCDATA value: scheme ":" hier-part, as defined in section 3 of
        [RFC3986] -->

   <!ELEMENT open (#PCDATA) >
   <!-- PCDATA value: path, as defined in section 3 of
        [RFC3986] -->

3.1  url

   The mandatory <url> element provides the HTTP URL of the WebDAV
   collection that should be mounted by the client.

3.2  open

   The optional <open> element instructs the client to display the
   specified child collection; it's URL is computed by concatenating
   this element's value with the URL obtained from the <mount-url>
   element.

4.  Example

   In the example below, the server instructs the user agent to mount
   the WebDAV URL "http://www.example.com/documents" in it's WebDAV
   client, and then to open the child collection "/user42/inbox",
   identified by the URL
   ""http://www.example.com/documents/user42/inbox".

   >> Request:

   GET /Coll/&mount-me HTTP/1.1
   Host: www.example.com

   >> Response:

   HTTP/1.1 200 OK
   Content-Type: application/davmount+xml
   Content-Length: xxx

   <mount xmlns="http://purl.org/NET/webdav/mount">
     <url>http://www.example.com/documents</url>
     <open>/user42/inbox</open>
   </mount>

Reschke                 Expires January 30, 2006                [Page 4]

Internet-Draft           Mounting WebDAV servers               July 2005

5.  IANA Considerations

5.1  MIME type registration

   MIME media type name:

      application

   MIME subtype name:

      davmount+xml

   Mandatory parameters:

      none

   Optional parameters:

      "charset": This parameter has identical semantics to the charset
      parameter of the "application/xml" media type as specified in
      [RFC3023].

   Encoding considerations:

      Identical to those of "application/xml" as described in [RFC3023],
      section 3.2.

   Security considerations:

      As defined in this specification.  In addition, as this media type
      uses the "+xml" convention, it shares the same security
      considerations as described in [RFC3023], section 10.

   Interoperability considerations:

      There are no known interoperability issues.

   Published specification:

      This specification.

   Additional information:

      Magic number(s):

         As specified for "application/xml" in [RFC3023], section 3.2.

Reschke                 Expires January 30, 2006                [Page 5]

Internet-Draft           Mounting WebDAV servers               July 2005

      File extension:

         .davmount

      Fragment identifiers:

         As specified for "application/xml" in [RFC3023], section 5.

      Base URI:

         As specified in [RFC3023], section 6.

      Macintosh File Type code:

         TEXT

   Person and email address to contact for further information:

      Julian Reschke <[email-masked]>

   Intended usage:

      COMMON

   Author/Change controller:

      IESG

6.  Security Considerations

   [[anchor8: forgetmenot]]

7.  References

7.1  Normative References

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119, March 1997.

   [RFC2518]  Goland, Y., Whitehead, E., Faizi, A., Carter, S., and D.
              Jensen, "HTTP Extensions for Distributed Authoring --
              WEBDAV", RFC 2518, February 1999.

   [RFC2616]  Fielding, R., Gettys, J., Mogul, J., Frystyk, H.,
              Masinter, L., Leach, P., and T. Berners-Lee, "Hypertext
              Transfer Protocol -- HTTP/1.1", RFC 2616, June 1999.

Reschke                 Expires January 30, 2006                [Page 6]

Internet-Draft           Mounting WebDAV servers               July 2005

   [RFC3023]  Murata, M., St.Laurent, S., and D. Kohn, "XML Media
              Types", RFC 3023, January 2001.

   [RFC3986]  Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform
              Resource Identifier (URI): Generic Syntax", STD 66,
              RFC 3986, January 2005.

   [XML]      Bray, T., Paoli, J., Sperberg-McQueen, C., Maler, E., and
              F. Yergeau, "Extensible Markup Language (XML) 1.0 (Third
              Edition)", W3C REC-xml-20040204, February 2004,
              <http://www.w3.org/TR/2004/REC-xml-20040204>.

7.2  Informative References

   [WEBARCH]  Walsh, N. and I. Jacobs, "Architecture of the World Wide
              Web, Volume One", W3C REC REC-webarch-20041215,
              December 2004,
              <http://www.w3.org/TR/2004/REC-webarch-20041215/>.

Author's Address

   Julian F. Reschke
   greenbytes GmbH
   Salzmannstrasse 152
   Muenster, NW  48159
   Germany

   Phone: +49 251 2807760
   Fax:   +49 251 2807761
   Email: [email-masked]
   URI:   http://greenbytes.de/tech/webdav/

Appendix A.  Alternative approaches

A.1  ...through HTML/CSS extensions

   Microsoft Internet Explorer implements a CSS extension that allows
   switching to it's own WebDAV client ("Webfolder", see <http://
   msdn.microsoft.com/workshop/author/behaviors/reference/behaviors/
   anchor.asp>).  However, at the time of this writing this extension
   was not implemented by any other user agent.

A.2  ...through custom URI schemes

   The "kio" library of the "K Desktop Enviroment"
   (<http://www.kde.org/>) uses the URI scheme "webdav" to dispatch to
   the system's WebDAV client.  This URI scheme is not registered, nor

Reschke                 Expires January 30, 2006                [Page 7]

Internet-Draft           Mounting WebDAV servers               July 2005

   supported on other platforms.  Furthermore, W3C's "Architecture of
   the World Wide Web, Volume One" explicitly advises against defining
   new schemes when existing schemes can be used:

      "A specification SHOULD reuse an existing URI scheme (rather than
      create a new one) when it provides the desired properties of
      identifiers and their relation to resources."

   (see [WEBARCH], Section 2.4)

Reschke                 Expires January 30, 2006                [Page 8]

Internet-Draft           Mounting WebDAV servers               July 2005

Intellectual Property Statement

   The IETF takes no position regarding the validity or scope of any
   Intellectual Property Rights or other rights that might be claimed to
   pertain to the implementation or use of the technology described in
   this document or the extent to which any license under such rights
   might or might not be available; nor does it represent that it has
   made any independent effort to identify any such rights.  Information
   on the procedures with respect to rights in RFC documents can be
   found in BCP 78 and BCP 79.

   Copies of IPR disclosures made to the IETF Secretariat and any
   assurances of licenses to be made available, or the result of an
   attempt made to obtain a general license or permission for the use of
   such proprietary rights by implementers or users of this
   specification can be obtained from the IETF on-line IPR repository at
   http://www.ietf.org/ipr.

   The IETF invites any interested party to bring to its attention any
   copyrights, patents or patent applications, or other proprietary
   rights that may cover technology that may be required to implement
   this standard.  Please address the information to the IETF at
   [email-masked].

Disclaimer of Validity

   This document and the information contained herein are provided on an
   "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
   OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET
   ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED,
   INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE
   INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
   WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

Copyright Statement

   Copyright (C) The Internet Society (2005).  This document is subject
   to the rights, licenses and restrictions contained in BCP 78, and
   except as set forth therein, the authors retain all their rights.

Acknowledgment

   Funding for the RFC Editor function is currently provided by the
   Internet Society.

Reschke                 Expires January 30, 2006                [Page 9]