more detailed version of query schema for simplesearch

7.18 Query Schema for DAV:simplesearch 

The DAV:simplesearch grammar defines a search criteria that is a
Boolean-valued expression, and allows for an arbitrary set of properties to
be includes in the result record.  The result set may be sorted on a set of
property values.  Accordingly the DTD for schema discovery for this grammar
allows the server to express:
· the set of properties that may be searched, with associated datatypes
· the set of properties that be be selected in the result record
· the set of properties that may be sorted

7.18.1 DTD for  simplesearch query schema discovery

<!ELEMENT simplesearchschema	(searchable, selectable, sortable)>
<!ELEMENT searchable			(prop?) >
<!ELEMENT selectable			(prop|allprop|searchable)*>
<!ELEMENT sortable				(prop|allprop|searchable)*>

The DAV:searchable element holds a list of properties advertised to be
searchable.  A server MUST allow a search of any property included in the
list, and it MAY allow searches of other properties not listed.  Allowing a
search does not mean that the property is promised to be defined on every
resource, it only indicates the servers willingness to check.

The DAV:selectable element holds a list of properties that may be used in
the DAV:select clause.  The value DAV:allprop means that any defined
property may be selected.  The value DAV:searchable means that all
searchable properties may also be selected.  

The DAV:sortable element holds a list of properties that may be used in the
DAV:sortby clause.  The value DAV:allprop means all properties may be used.
 The value DAV:searchable means that all searchable properties may be used.

7.18.2 Example of Query Schema for DAV:simplesearch

<?xml:namespace ns="DAV:" prefix="D">
<?xml:namespace ns="urn:uuid:C2F41010-65B3-11d1-A29F-00AA00C14882/"
prefix="t"?>
<?xml:namespace ns="http://dublin.org/dc/" prefix="C">
<D:simplesearchschema>
  <D:searchable>
    <D:prop>
      <D:getcontentlength/ t:dt="t:Int">
      <D:getcontenttype/>
      <D:creationdate/ t:dt="t:dateTime.iso8601tz">
      <D:displayname/>
      <D:getcontentlanguage/>
      <D:getlastmodified/>
      <C:author/>
    </D:prop>
  </D:searchable>
  <D:selectable>
    <D:searchable/>
    <D:prop>
      <C:editor/>
      <C:coverage/>
      <C:cost/>
    </D:prop>
  </D:selectable>
  <D:sortable>
    <D:prop>
      <D:getcontentlength/>
      <D:rank/>
      <D:creationdate/>
    </D:sortable>
  </D:sortable>
</D:simplesearchschema>

This response lists seven properties the server will search on.  All of
them are selectable, and three additional properties may be selected as
well.  The server will sort only on the properties DAV:rank,
DAV:getcontentlength, and DAV:creationdate.

Received on Saturday, 20 June 1998 22:27:30 UTC