- From: Jim Davis <jrd3@alum.mit.edu>
- Date: Thu, 29 Nov 2001 08:58:31 -0800
- To: Bita Shadgar <shadgar@cs.bris.ac.uk>, www-webdav-dasl <www-webdav-dasl@w3.org>
At 03:09 PM 11/29/2001 +0000, Bita Shadgar wrote: > Now, consider we want to compare a value of especial property of a resource in a > collection with the value of the same property(or something else) of resources in other > collections. In this case you should use many propfind method to compare value of our > given property with the value of the properties in all other resources in different collection. > However, if we were allowed to have more than a collection in DAV:from , we would able > to handle it in one request. I think I begin to understand the problem you are trying to solve, but I am not sure. Here is an example use case. If the use case is not correct, please say how I misunderstand. The example application is for shopping comparisons. You have N collections, each of which represents a vendor catalog. Each collection contains resources that represent products, for example MP3 songs. The resources have properties such as title, artist, size in bytes, and cost in euros. An example query is to find, for a given title, the vendor with the lowest price. Is this a good example of what you want? if it is not, then please provide an example. If this example is correct, then the problem is not just in dav:from, it's the entire basicsearch query language. The comparison operators in DAV:basicsearch allow you to compare a property value to a *literal*, not a variable. you can not write a query that compares the properties of two resources even if they are in the same collection. If this is what you need, then you need a more powerful language that dav:basicsearch. dav:basicsearch is, as the name implies, *basic*. it is intended to meet the most common needs for simple searching ("find all MP3 by Zakir Hussein with price less than 20"). There is nothing in it like the SQL join, for example. Note that DASL is not limited to the DAV:basicsearch query language, it's just that DAV:basicsearch is the lowest common denominator that every server must provide. In the real world, if you need to provide this kind of application now, using only DASL and the basicsearch, you would have to write a "web crawler" that visited each catalog, and merged the records. Then you could do a search and sort by price. I hope this is helpful Jim
Received on Thursday, 29 November 2001 11:59:14 UTC