abstractions manipulated by the WebDAV-specific HTTP methods
described in section 8, "HTTP Methods for Distributed Authoring".
In HTTP/1.1, method parameter information was exclusively encoded in
HTTP headers. Unlike HTTP/1.1, WebDAV encodes method parameter
information either in an Extensible Markup Language (XML) [REC-XML]
request entity body, or in an HTTP header. The use of XML to encode
method parameters was motivated by the ability to add extra XML
elements to existing structures, providing extensibility; and by
XML's ability to encode information in ISO 10646 character sets,
providing internationalization support. As a rule of thumb,
parameters are encoded in XML entity bodies when they have unbounded
length, or when they may be shown to a human user and hence require
encoding in an ISO 10646 character set. Otherwise, parameters are
encoded within HTTP headers. Section 9 describes the new HTTP
headers used with WebDAV methods.
In addition to encoding method parameters, XML is used in WebDAV to
encode the responses from methods, providing the extensibility and
internationalization advantages of XML for method output, as well as
input.
XML elements used in this specification are defined in section 12.
The XML namespace extension (Appendix 4) is also used in this
specification in order to allow for new XML elements to be added
without fear of colliding with other element names.
While the status codes provided by HTTP/1.1 are sufficient to
describe most error conditions encountered by WebDAV methods, there
are some errors that do not fall neatly into the existing categories.
New status codes developed for the WebDAV methods are defined in
section 10. Since some WebDAV methods may operate over many
RFC 2518 WEBDAV February 1999
resources, the Multi-Status response has been introduced to return
status information for multiple resources. The Multi-Status response
is described in section 11.
WebDAV employs the property mechanism to store information about the
current state of the resource. For example, when a lock is taken out
on a resource, a lock information property describes the current
state of the lock. Section 13 defines the properties used within the
WebDAV specification.
Finishing off the specification are sections on what it means to be
compliant with this specification (section 15), on
internationalization support (section 16), and on security (section
17).
2 Notational Conventions
Since this document describes a set of extensions to the HTTP/1.1
protocol, the augmented BNF used herein to describe protocol elements
is exactly the same as described in section 2.1 of [RFC2068]. Since
this augmented BNF uses the basic production rules provided in
section 2.2 of [RFC2068], these rules apply to this document as well.
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 RFC 2119 [RFC2119].
3 Terminology
URI/URL - A Uniform Resource Identifier and Uniform Resource Locator,
respectively. These terms (and the distinction between them) are
defined in [RFC2396].
Collection - A resource that contains a set of URIs, termed member
URIs, which identify member resources and meets the requirements in
section 5 of this specification.
Member URI - A URI which is a member of the set of URIs contained by
a collection.
Internal Member URI - A Member URI that is immediately relative to
the URI of the collection (the definition of immediately relative is
given in section 5.2).
Property - A name/value pair that contains descriptive information
about a resource.
RFC 2518 WEBDAV February 1999
Live Property - A property whose semantics and syntax are enforced by
the server. For example, the live "getcontentlength" property has
its value, the length of the entity returned by a GET request,
=4= |