RE: Better version of QSD for simplesearch

I input Jim's stuff from below and added the missing
section on operators and sent it to the authors.

Alan Babich

> -----Original Message-----
> From: Jim Davis [mailto:jdavis@parc.xerox.com]
> Sent: July 24, 1998 7:41 PM
> To: www-webdav-dasl@w3.org
> Subject: Better version of QSD for simplesearch
> 
> 
> I like Alan's concept of making the QSD for simplesearch be property
> centric rather than 'section' centric.  I started writing it up in
> Microsoft Word and I sent it to Saveen to add to the protocol draft.
> 
> The writeup (which I enclose below)  has a DTD for the property
> descriptions, but does not have a DTD for operator descriptions, not
> because I am against that but just because I ran out of time 
> to write it
> up.  Sorry.
> 
> We can also delete section 11 (data typing) because there's 
> no place else
> datatypes get used except in QSD.
> 
> ----------
> 
> 1.1. 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 
> data types
> ? the set of properties that be selected in the result record
> ? the set of properties that may be sorted
> 
> 1.1.1. DTD for  simplesearch query schema discovery
> 
> <!ELEMENT simplesearchschema	(properties, operators)>
> <!ELEMENT properties		(propdesc*)>
> <!ELEMENT propdesc		(prop, ANY) >
> <!ELEMENT operators		to be provided >
> 
> The DAV:properties element holds a list of descriptions of properties.
> The DAV:operators element describes the operators that may be used in
> a DAV:where element.
> 
> 1.1.2. DAV:propdesc element
> 
> Each instance of a DAV:propdesc element describes the property or
> properties in the DAV:prop element it contains.  All subsequent
> elements are descriptions that apply to those properties.  All
> descriptions are optional and may appear in any order.  Servers SHOULD
> support all the descriptions defined here, and MAY define others.
> 
> DASL defines four descriptions.  The first, DAV:datatype, provides a
> hint about the type of the property value, and may be useful to a user
> interface prompting for a value.  The remaing three (DAV:searchable,
> DAV:selectable, and DAV:sortable identify portions of the query
> (DAV:where, DAV:select, and DAV:sortby, respectively) If a property
> has a description for a section, then the server MUST allow the
> property to be used in that section. These descriptions are optional.
> If a property does not have such a description, or is not described at
> all, then the server MAY still allow the property to be used in the
> corresponding section.
> 
> 1.1.3. The DAV:datatype property description
> 
> The DAV:datatype element contains a single XML element that provides a
> hint about the domain of the property, which may be useful to a user
> interface prompting for a value to be used in a query.  The namespace
> used for expressing a DASL defined datatype is
> "urn:uuid:C2F41010-65B3-11d1-A29F-00AA00C14882/".
> 
> <!ELEMENT datatype				(ANY) >
> 
> DASL defines the following datatype elements:
> 
> name		     contents		example
> string
> int					12,-259
> float					.314159265358979E+1
> dateTime.iso8601tz   an ISO 8601 date	1994-11-05T08:15:5Z
> 
> 1.1.4. The DAV:searchable property description
> 
> If this element is present, then the server MUST allow this property
> to appear within a DAV:where element if the operator it is used with
> allows it.  Allowing a search does not mean that the property is
> guaranteed to be defined on every resource in the scope, it only
> indicates the servers willingness to check.
> 
> <!ELEMENT searchable			EMPTY >
> 
> 1.1.5. The DAV:selectable property description
> 
> This element indicates that the property may appear in the 
> DAV:select element.
> 
> <!ELEMENT selectable			EMPTY >
> 
> 1.1.6. The DAV:sortable property description
> 
> This element indicates that the property may appear in the 
> DAV:sortby element
> 
> <!ELEMENT sortable				EMPTY >
> 
> 1.1.7. 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://jennicam.org" prefix="J">
> <D:simplesearchschema>
>   <D:properties>
>     <D:propdesc>
>       <D:prop><D:getcontentlength/></D:prop>
>       <D:datatype><t:int></D:datatype>
>       <D:searchable/><D:selectable/><D:sortable/>
>     </D:propdesc>
>     <D:propdesc>
>       <D:prop><D:getcontenttype/><D:displayname></D:prop>
>       <D:searchable/><D:selectable/> <D:sortable/>
>     </D:propdesc>
>     <D:propdesc>
>       <D:prop><J:fstop/></D:prop>
>       <D:selectable/>
>     </D:propdesc>
>   <D:properties>
>   <D:operators>
> ..</D:operators>
> </D:simplesearchschema>
> 
> This response lists four properties.  All are selectable, and the
> first three may be searched.  The datatype is provided for the first,
> the others default to string.  All but the last may be used in a sort.
> 
> 

Received on Saturday, 25 July 1998 20:12:12 UTC