Platform SDK: Exchange 2000 Server |
[This is preliminary documentation and subject to change.]
PROPPATCH sets a property value in the Web Store.
PROPPATCH / docs/myfile.doc HTTP/1.1
Host: mydomain.tld
Content-Type: text/xml
Content-Length: 138
You can pass a string of the XML to submit an HTTP request using the XMLHTTP object. If so, the string would need to concatenated as follows, using setting the Author property as an example. Spaces are provided for readability.
<?xml version="1.0"> <d:propertyupdate xmlns:d="DAV:" xmlns:o="urn:schemas-microsoft-com:office:office"> <d:set> <d:prop> <o:Author>Ray Zambroski</o:Author> </d:prop> </d:set> </d:propertyupdate>
The first line of this request specifies the method that the client wishes to enact (PROPPATCH) and gives the absolute URL of the file on which to set the property. The three lines that follow the method are headers that specify the server to which the method will be submitted, and tell the server the type and length of the content to expect.
The XML-encoded body is what tells the server exactly which property to set and the value that should be assigned to it. One important observation in this XML document is the use of namespace declarations. The first attribute in the <d:propertyupdate>
element defines the use of the WebDAV namespace through the document. To all elements with this prefix throughout the document the WebDAV-compliant server will know to apply behaviors based on the "DAV:" schema. In this case, these specific properties define how to set a property on a document.
The second namespace declaration is for the "urn:schemas-microsoft-com:office:office" namespace.
In response to this request, the server would send back a response indicating that the property was successfully set.
HTTP/1.1 207 Multi-Status Server: Microsoft-IIS/5.0 Date: Wed, 04 Aug 1999 21:52:58 GMT Content-Type: text/xml Content-Length: 310 <?xml version="1.0"?> <a:multistatus xmlns:b="urn:schemas-microsoft-com:office:office" xmlns:a="DAV:"> <a:response> <a:href>http://domain.tld/docs/myfile.doc</a:href> <a:propstat> <a:status>HTTP/1.1 200 OK</a:status> <a:prop> <b:Author/> </a:prop> </a:propstat> </a:response> </a:multistatus>