⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rfc2291.txt

📁 著名的RFC文档,其中有一些文档是已经翻译成中文的的.
💻 TXT
📖 第 1 页 / 共 3 页
字号:
Network Working Group                                          J. SleinRequest for Comments: 2291                            Xerox CorporationCategory: Informational                                       F. Vitali                                                  University of Bologna                                                           E. Whitehead                                                            U.C. Irvine                                                              D. Durand                                                      Boston University                                                          February 1998        Requirements for a Distributed Authoring and Versioning                    Protocol for the World Wide WebStatus of this Memo   This memo provides information for the Internet community.  It does   not specify an Internet standard of any kind.  Distribution of this   memo is unlimited.Copyright Notice   Copyright (C) The Internet Society (1998).  All Rights Reserved.Abstract   Current World Wide Web (WWW or Web) standards provide simple support   for applications which allow remote editing of typed data. In   practice, the existing capabilities of the WWW have proven inadequate   to support efficient, scalable remote editing free of overwriting   conflicts. This document presents a list of features in the form of   requirements for a Web Distributed Authoring and Versioning protocol   which, if implemented, would improve the efficiency of common remote   editing operations, provide a locking mechanism to prevent overwrite   conflicts, improve link management support between non-HTML data   types, provide a simple attribute-value metadata facility, provide   for the creation and reading of container data types, and integrate   versioning into the WWW.1. Introduction   This document describes functionality which, if incorporated in an   extension to the existing HTTP proposed standard [HTTP], would allow   tools for remote loading, editing and saving (publishing) of various   media types on the WWW to interoperate with any compliant Web server.   As much as possible, this functionality is described without   suggesting a proposed implementation, since there are many ways to   perform the functionality within the WWW framework. It is alsoSlein, et. al.               Informational                      [Page 1]RFC 2291          Distributed Authoring and Versioning     February 1998   possible that a single mechanism could simultaneously satisfy several   requirements.   This document reflects the consensus of the WWW Distributed Authoring   and Versioning working group (WebDAV) as to the functionality that   should be standardized to support distributed authoring and   versioning on the Web.  As with any set of requirements, practical   considerations may make it impossible to satisfy them all.  It is the   intention of the WebDAV working group to come as close as possible to   satisfying them in the specifications that make up the WebDAV   protocol.2. Rationale   Current Web standards contain functionality which enables the editing   of Web content at a remote location, without direct access to the   storage media via an operating system. This capability is exploited   by several existing HTML distributed authoring tools, and by a   growing number of mainstream applications (e.g., word processors)   which allow users to write (publish) their work to an HTTP server. To   date, experience from the HTML authoring tools has shown they are   unable to meet their users' needs using the facilities of Web   standards. The consequence of this is either postponed introduction   of distributed authoring capability, or the addition of nonstandard   extensions to the HTTP protocol or other Web standards.  These   extensions, developed in isolation, are not interoperable.   Other authoring applications have wanted to access document   repositories or version control systems through Web gateways, and   have been similarly frustrated.  Where this access is available at   all, it is through nonstandard extensions to HTTP or other standards   that force clients to use a different interface for each vendor's   service.   This document describes requirements for a set of standard extensions   to HTTP that would allow distributed Web authoring tools to provide   the functionality their users need by means of the same standard   syntax across all compliant servers. The broad categories of   functionality that need to be standardized are:        Properties        Links        Locking        Reservations        Retrieval of Unprocessed Source        Partial Write        Name Space Manipulation        CollectionsSlein, et. al.               Informational                      [Page 2]RFC 2291          Distributed Authoring and Versioning     February 1998        Versioning        Variants        Security        Internationalization3. Terminology   Where there is overlap, usage is intended to be consistent with that   in the HTTP 1.1 specification [HTTP].   Client        A program which issues HTTP requests and accepts responses.   Collection        A collection is a resource that contains other resources, either        directly or by reference.   Distributed Authoring Tool        A program which can retrieve a source entity via HTTP, allow        editing of this entity, and then save/publish this entity to a        server using HTTP.   Entity        The information transferred in a request or response.   Hierarchical Collection        A hierarchical organization of resources.  A hierarchical        collection is a resource that contains other resources,        including collections, either directly or by reference.   Link        A typed connection between two or more resources.   Lock        A mechanism for preventing anyone other than the owner of the        lock from accessing a resource.   Member of Version Graph        A resource that is a node in a version graph, and so is derived        from the resources that precede it in the graph, and is the        basis of those that succeed it.   Property        Named descriptive information about a resource.   Reservation        A declaration that one intends to edit a resource.Slein, et. al.               Informational                      [Page 3]RFC 2291          Distributed Authoring and Versioning     February 1998   Resource        A network data object or service that can be identified by a        URI.   Server        A program which receives and responds to HTTP requests.   User Agent        The client that initiates a request.   Variant        A representation of a resource.  A resource may have one or more        representations associated with it at any given time.   Version Graph        A directed acyclic graph with resources as its nodes, where each        node is derived from its predecessor(s).   Write Lock        A lock that prevents anyone except its owner from modifying the        resource it applies to.4. General Principles   This section describes a set of general principles that the WebDAV   extensions should follow.  These principles cut across categories of   functionality.4.1. User Agent Interoperability   All WebDAV clients should be able to work with any WebDAV-compliant   HTTP server. It is acceptable for some client/server combinations to   provide special features that are not universally available, but the   protocol should be sufficient that a basic level of functionality   will be universal.4.2. Client Simplicity   The WebDAV extensions should be designed to allow client   implementations to be simple.Slein, et. al.               Informational                      [Page 4]RFC 2291          Distributed Authoring and Versioning     February 19984.3. Legacy Client Support   It should be possible to implement a WebDAV-compliant server in such   a way that it can interoperate with non-WebDAV clients.  Such a   server would be able to understand any valid HTTP 1.1 request from an   ordinary Web client without WebDAV extensions, and to provide a valid   HTTP 1.1 response that does not require the client to understand the   extensions.4.4. Data Format Compatibility   WebDAV-compliant servers should be able to work with existing   resources and URIs [URL]. Special additional information should not   become a mandatory part of document formats.4.5. Replicated, Distributed Systems   Distribution and replication are at the heart of the Internet.  All   WebDAV extensions should be designed to allow for distribution and   replication.  Version trees should be able to be split across   multiple servers.  Collections may have members on different servers.   Any resource may be cached or replicated for mobile computing or   other reasons.  Consequently, the WebDAV extensions must be able to   operate in a distributed, replicated environment.4.6 Parsimony in Client-Server Interactions   The WebDAV extensions should keep to a minimum the number of   interactions between the client and the server needed to perform   common functions. For example, publishing a document to the Web will   often mean publishing content together with related properties.  A   client may often need to find out what version graph a particular   resource belongs to, or to find out which resource in a version graph   is the published one.  The extensions should make it possible to do   these things efficiently.4.7. Changes to HTTP   WebDAV adds a number of new types of objects to the Web: properties,   collections, version graphs, etc.  Existing HTTP methods such as   DELETE and PUT will have to operate in well-defined ways in this   expanded environment. WebDAV should explicitly address not only new   methods, headers, and MIME types, but also any required changes to   the existing HTTP methods and headers.Slein, et. al.               Informational                      [Page 5]RFC 2291          Distributed Authoring and Versioning     February 19984.8. Alternate Transport Mechanisms   It may be desirable to transport WebDAV requests and responses by   other mechanisms, particularly EMail, in addition to HTTP.  The   WebDAV protocol specification should not preclude a future body from   developing an interoperability specification for disconnected   operation via EMail.5. Requirements   In the requirement descriptions below, the requirement will be   stated, followed by its rationale.5.1. Properties5.1.1. Functional Requirements   It must be possible to create, modify, read and delete arbitrary   properties on resources of any media type.5.1.2. Rationale   Properties describe resources of any media type.  They may include   bibliographic information such as author, title, publisher, and   subject, constraints on usage, PICS ratings, etc. These properties   have many uses, such as supporting searches on property values,   enforcing copyrights, and the creation of catalog entries as   placeholders for objects which are not available in electronic form,   or which will be available later.5.2. Links5.2.1. Functional Requirements   It must be possible to create, modify, read and delete typed links   between resources of any media type.5.2.2. Rationale   One type of link between resources is the hypertext link, which is   browsable using a hypertext style point-and-click user interface.   Links, whether they are browsable hypertext links, or simply a means   of capturing a relationship between resources, have many purposes.   Links can support pushbutton printing of a multi-resource document in   a prescribed order, jumping to the access control page for a   resource, and quick browsing of related information, such as a tableSlein, et. al.               Informational                      [Page 6]RFC 2291          Distributed Authoring and Versioning     February 1998   of contents, an index, a glossary, a bibliographic record, help   pages, etc. While link support is provided by the HTML "LINK"   element, this is limited only to HTML resources [HTML]. Similar   support is needed for bitmap image types, and other non-HTML media   types.5.3. Locking5.3.1. General Principles   5.3.1.1. Independence of locks. It must be possible to lock a   resource without performing an additional retrieval of the resource,   and without committing to editing the resource.   5.3.1.2. Multi-Resource Locking. It must be possible to take out a   lock on multiple resources residing on the same server in a single   action, and this locking operation must be atomic across these   resources.5.3.2. Functional Requirements   5.3.2.1. Write Locks. It must be possible to restrict modification of   a resource to a specific person.   5.3.2.2. Lock Query. It must be possible to find out whether a given   resource has any active locks, and if so, who holds those locks.   5.3.2.3. Unlock. It must be possible to remove a lock.5.3.3. Rationale   At present, the Web provides limited support for preventing two or   more people from overwriting each other's modifications when they   save to a given URI. Furthermore, there is no way to discover whether   someone else is currently making modifications to a resource. This is   known as the "lost update problem," or the "overwrite problem." Since   there can be significant cost associated with discovering and   repairing lost modifications, preventing this problem is crucial for   supporting distributed authoring. A write lock ensures that only one   person may modify a resource, preventing overwrites. Furthermore,   locking support is a key component of many versioning schemes, a   desirable capability for distributed authoring.   An author may wish to lock an entire web of resources even though he   is editing just a single resource, to keep the other resources from   changing. In this way, an author can ensure that if a local hypertext   web is consistent in his distributed authoring tool, it will then beSlein, et. al.               Informational                      [Page 7]

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -