- From: Wallmer, Martin <Martin.Wallmer@softwareag.com>
- Date: Tue, 11 Nov 2003 16:40:39 +0100
- To: "'www-webdav-dasl@w3.org'" <www-webdav-dasl@w3.org>
- Message-ID: <DFF2AC9E3583D511A21F0008C7E62106063A910A@daemsg02.software-ag.de>
Hi, I'd like to propose following change to section 5.4 (DAV:from): (additions enclosed in <Martin/> 5.4 DAV:from <!ELEMENT scope (href, depth, include-versions?, <Martin>include-lastpathsegment*, exclude-lastpathsegment* </Martin>) > <!ELEMENT include-versions EMPTY > <Martin> <!ELEMENT include-lastpathsegment(#PCDATA)> <!ELEMENT exclude-lastpathsegment(#PCDATA)> </Martin> DAV:from defines the query scope. This contains one or more DAV:scope elements. Support for multiple scope elements is optional, however servers MUST fail a request specifying multiple DAV:scope elements if they can't support it (see section 2.2.2, precondition DAV:search-multiple-scope-supported). The scope element contains mandatory DAV:href and DAV:depth elements. DAV:href indicates the URI to use as a scope. When the scope is a collection, if DAV:depth is "0", the search includes only the collection. When it is "1", the search includes the (toplevel) members of the collection. When it is "infinity", the search includes all recursive members of the collection. When the scope is not a collection, the depth is ignored and the search applies just to the resource itself. When the child element DAV:include-versions is present, the search scope will include all versions (see [RFC3253], section 2.2.1) of all version-controlled resources in scope. Servers that do support versioning but do not support the DAV:include-versions feature MUST signal an error if it is used in a query. <Martin> The content of DAV:include-lastpathsegment and DAV:exclude-lastpathsegment is a literal pattern same as defined for (@see 5.15.1) Like. When one or more child elements DAV:include-lastpathsegment are present, the scope includes all resources, of which the last pathsegment of the uri matches the pattern. When one or more child elements DAV:exclude-lastpathsegment are present, the scope excludes all resources, of which the last pathsegment of the uri matches the pattern. Example: <d:searchrequest xmlns:d="DAV:"> <d:basicsearch> <d:select> <d:prop><d:getcontentlength/></d:prop> </d:select> <d:from> <d:scope> <d:href>/container1/</d:href> <d:depth>infinity</d:depth> <d:include-lastpathsegment>%.pdf</d:include-lastpathsegment> <d:exclude-lastpathsegment>%-2001-%.pdf</d:exclude-lastpathsegment> <d:include-lastpathsegment>chapter%.doc</d:include-lastpathsegment> </d:scope> </d:from> </d:basicsearch> </d:searchrequest> The scope of this query comprises all resources within or below container1, that have the postfix .pdf, all doc files starting with "chapter", but not the file (for example) report-2001-july.pdf </Martin> .... The former discussion showed, that it is a common task to somehow filter resources according to the "displayname". With BIND, several URI's may point to the same resource. So a kind of "displayname" is not a property of the resource, but of the URI. If for technical reasons it would be more suitable for a specific implementation to have this information within the query, a preprocessing step could transform the SearchQuery document into the desired format. __________________________ Martin Wallmer Research & Development Software AG ++49 6151 92 1831 Uhlandstr. 12 D 64297 Darmstadt
Received on Tuesday, 11 November 2003 10:41:36 UTC