Skip to main content

14. XML Element Definitions

This section defines all XML elements used in WebDAV protocol messages. All elements are in the DAV: namespace and may be extended according to Section 17 rules.

Core XML Elements (30 Definitions)​

14.1 activelock​

Purpose: Describes a lock on a resource.

<!ELEMENT activelock (lockscope, locktype, depth, owner?, timeout?, locktoken?, lockroot)>

14.2 allprop​

Purpose: Specifies that all names and values of dead properties and live properties are to be returned.

<!ELEMENT allprop EMPTY >

14.3 collection​

Purpose: Identifies the associated resource as a collection. MUST be in DAV:resourcetype property.

<!ELEMENT collection EMPTY >

14.4 depth​

Purpose: Represents depth values in XML content.

Value: "0" | "1" | "infinity"

<!ELEMENT depth (#PCDATA) >

14.5 error​

Purpose: Provides detailed error information for 403/409 responses. Child elements identify precondition/postcondition codes.

<!ELEMENT error ANY >

14.6 exclusive​

Purpose: Specifies an exclusive lock.

<!ELEMENT exclusive EMPTY >

14.7 href​

Purpose: MUST contain a URI or relative reference.

<!ELEMENT href (#PCDATA)>

14.8 include​

Purpose: Child elements represent property names to include in PROPFIND response (with allprop).

<!ELEMENT include ANY >

14.9 location​

Purpose: Provides Location header value in multistatus responses.

<!ELEMENT location (href)>

14.10 lockentry​

Purpose: Defines lock types that can be used with the resource.

<!ELEMENT lockentry (lockscope, locktype) >

14.11 lockinfo​

Purpose: Used with LOCK method to specify the type of lock requested.

<!ELEMENT lockinfo (lockscope, locktype, owner?)  >

14.12 lockroot​

Purpose: Contains the root URL of the lock (the URL used in the LOCK request).

<!ELEMENT lockroot (href) >

14.13 lockscope​

Purpose: Specifies whether a lock is exclusive or shared.

<!ELEMENT lockscope (exclusive | shared) >

14.14 locktoken​

Purpose: The lock token associated with a lock.

<!ELEMENT locktoken (href) >

14.15 locktype​

Purpose: Specifies the access type of a lock. Currently only write lock is defined.

<!ELEMENT locktype (write) >

14.16 multistatus​

Purpose: Contains multiple response messages.

<!ELEMENT multistatus (response*, responsedescription?)  >

14.17 owner​

Purpose: Client-supplied information about the lock creator. Treated as dead property (preserved).

Extensibility: MAY be extended with child elements, mixed content, text, or attributes.

<!ELEMENT owner ANY >

14.18 prop​

Purpose: Generic container for resource properties. MUST NOT contain text or mixed content.

<!ELEMENT prop ANY >

14.19 propertyupdate​

Purpose: Container for property modification request.

<!ELEMENT propertyupdate (remove | set)+ >

14.20 propfind​

Purpose: Specifies properties to be returned from PROPFIND method.

<!ELEMENT propfind ( propname | (allprop, include?) | prop ) >

14.21 propname​

Purpose: Specifies that only property names are to be returned.

<!ELEMENT propname EMPTY >

14.22 propstat​

Purpose: Groups together prop and status for a particular href.

<!ELEMENT propstat (prop, status, error?, responsedescription?) >

14.23 remove​

Purpose: Lists properties to be removed. Property elements MUST be empty.

<!ELEMENT remove (prop) >

14.24 response​

Purpose: Single response describing method effect on resource and/or properties.

<!ELEMENT response (href, ((href*, status)|(propstat+)), error?, responsedescription?, location?) >

14.25 responsedescription​

Purpose: Human-readable information about a status response.

<!ELEMENT responsedescription (#PCDATA) >

14.26 set​

Purpose: Lists property values to be set. If property exists, value is replaced.

<!ELEMENT set (prop) >

14.27 shared​

Purpose: Specifies a shared lock.

<!ELEMENT shared EMPTY >

14.28 status​

Purpose: Holds a single HTTP status-line.

Value: status-line (Section 6.1 of RFC 2616)

<!ELEMENT status (#PCDATA) >

14.29 timeout​

Purpose: Seconds remaining before lock expires.

Value: TimeType (Section 10.7)

<!ELEMENT timeout (#PCDATA) >

14.30 write​

Purpose: Specifies a write lock.

<!ELEMENT write EMPTY >

XML Element Categories​

activelock, exclusive, shared, lockentry, lockinfo, lockroot, lockscope, locktoken, locktype, timeout, write, owner

prop, propfind, propname, allprop, include, propertyupdate, propstat, set, remove

Response Elements​

multistatus, response, propstat, status, error, responsedescription, location

General Elements​

href, depth, collection


Note: All elements in DAV: namespace. For complete specifications including extensibility rules, see RFC 4918 Section 14.