Re: W3C XML QL and DASL: 4 reality check

At 02:36 PM 11/11/99 -0500, Eliot Christian wrote:
>At 09:26 AM 1999-11-09 +0100, Jim Davis wrote:

>This brings to mind that I should do a quick "reality-check" here.
>
>Say I have an object such as a document with properties of "title", 
>"author", and "content". An XML Query data model might be constructed 
>with title, author, and content as siblings, like:
>
><root>
>   <title>My Doc Title</title>
>   <author>John Doe</author>
>   <content>When in the course of human events.</content>
></root>  
>
>Alternatively, an XML Query Data Model might be constructed with 
>title and author as content attributes, like:
>
><root>
>   <content title="My Doc Title" author"John Doe">
>   When in the course of human events.</content>
></root>  
>
>Is it true that DASL is capable of operating on either case? 
>(leaving aside whether one is more preferrable than the other)

yes, and yes in several ways.

We have to be careful here to distinguish between
 1) how the information is represeented in the resource
 2) how the information is represented in the data model
 3) the information is represented on the wire (in DASL)

As you point out, an XML document could store information such as title and
author as either contents of an XML element or within an attribute.  DASL
does not care, either is okay.

The fundamental data model for DASL's *basicsearch* (emphasis intended) is
that of WebDAV properties.  Now I digress to explain these, in case you are
unfamiliar.  DASL basicsearch is oriented towards searching WebDAV
*properties*.  the main operators in DASL basicsearch compare properties to
values.    A WebDAV property is a name/value pair defined on a resource
(that is, a URL).  If you've played with HTTP any, you know that it already
has some things that act like properties, namely values in the HTTP Header
such as "Content-Type" or "Content-Language".  WebDAV properties are a
generalization of this.  A property's name is any URL, and the value is
arbitrary XML.  There are properties that directly map to the content type,
content language, and content length.

Now the next thing to say is that WebDAV also allows for other properties,
and says nothing about how these properties get their values.  So one could
perfectly well have a resource that was an XML document, where some of the
XML elements (or some attributes of some elements) were in turn available
via the WebDAV property interface.

Having said this, I also have to point out that DASL basicsearch does not
require that the "properties" also be accessible via the WebDAV PROPFIND
and PROPPATCH methods, only that the query should operate as if they were.
That is, one could have a query to a DASL basicsearch arbiter that returned
all documents whose title "property" was thus and such without also
requiring that the resource support the PROPFIND method itself.  Presumably
in this case the search arbiter would have indexed the "property" values in
advance, when the resource was added.  I hope this is clear.

Finally, all this was only with regard to DASL basicsearch.  But if you
wanted to search the XML directly, without even bothering with the property
metaphor, you could do that, too, either by adding a new operator to
basicsearch, or by adding a new query grammar altogther.  

The first case is pretty closely analagous to how we handle content-based
searhc.  We don't treat the contents of the document as a property, we just
added a new operator that does a full text search on the document's
contents.  And in some sense, XML is just a structured form of content.  

I hope this makes sense, if not please do write back (to the full list)

And if anyone else on the list wants to correct me or expand on what I have
said please do so.

regards

Jim

Received on Sunday, 14 November 1999 15:12:02 UTC