[
Lists Home |
Date Index |
Thread Index
]
XML-QL[1] also has a nice "QBE" type syntax, but in a non-XML language:
WHERE
<cars>
<car><MakeModel>Ford</></> element_as $car
</>
IN "someDataSource"
CONSTRUCT $car
As you mentioned, it great for simple things, and can't handle XPaths.
-Wayne Steele
[1] http://www.w3.org/TR/NOTE-xml-ql/
>From: "Evan Lenz" <elenz@xyzfind.com>
>To: "Gavin Thomas Nicol" <gtn@rbii.com>, "The Deviants"
><xml-dev@lists.xml.org>
>Subject: [xml-dev] "Query by example" (was Re: [xml-dev] misprocessing
>namespaces)
>Date: Thu, 31 Jan 2002 09:12:54 -0800
>
>Gavin Thomas Nicol wrote:
> > The idea was "match by example", where you'd
> > give a sample XML fragment as the pattern to match. It was supposed to
> > be like "query by example"....
>
>The "query by example" approach can only get you so far. For example, this
>XPath expression:
>
> /Cars/Car[contains(MakeModel,'ford')]
>
>could easily be formed in XML syntax as follows:
>
> <Cars>
> <Car>
> <MakeModel>Ford</MakeModel>
> </Car>
> </Cars>
>
>This is reminiscent of Examplotron[1]. The primary difference is that
>Examplotron is "schema by example", where our intent here is "query by
>example".
>
>The difficulty of this approach arises when you try to accommodate the
>XPath
>axes. Soon, the benefits of the XML syntax start to diminish. A different
>approach would have to be taken, such as Wayne Steele's contribution[2]
>last
>March. That XML tools could then be used on XPath is valuable, but this no
>longer possesses the simplicity and intuitiveness of a "query by example"
>approach.
>
>That said, "query by example" works beautifully for applications that don't
>need as powerful a query language as, say, XQuery. For applications that
>simply require the extraction of XML fragments from large repositories of
>XML documents based on certain search criteria, a simple XML-based "query
>by
>example" approach is sufficient, with more sophisticated processing (e.g.
>XSLT) commencing outside the database.
>
><proprietaryExample product="XYZFind Server">
>Query for all cars such that 'Color' contains "white", 'MakeModel' contains
>"ford" and 'Price' is less than or equal to "$15,000":
>
> <xyz:input xmlns:xyz="http://xyzfind.com...">
> <xyz:query>
> <Cars xyz:return="no">
> <Car xyz:return="yes">
> <MakeModel>ford</MakeModel>
> <Price><xyz:number le="15000"/></Price>
> <Color>white</Color>
> </Car>
> </Cars>
> </xyz:query>
> </xyz:input>
>
></proprietaryExample>
>
>Evan Lenz
>http://www.xyzfind.com
>
>[1] http://examplotron.org/
>[2] http://www.xmlhack.com/read.php?item=1118
>
>
>-----------------------------------------------------------------
>The xml-dev list is sponsored by XML.org <http://www.xml.org>, an
>initiative of OASIS <http://www.oasis-open.org>
>
>The list archives are at http://lists.xml.org/archives/xml-dev/
>
>To subscribe or unsubscribe from this list use the subscription
>manager: <http://lists.xml.org/ob/adm.pl>
>
_________________________________________________________________
Join the world’s largest e-mail service with MSN Hotmail.
http://www.hotmail.com
|