Re: "Query by example" (was Re: misprocessing namesp
XML-QL 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  http://www.w3.org/TR/NOTE-xml-ql/ >From: "Evan Lenz" <elenz@x...> >To: "Gavin Thomas Nicol" <gtn@r...>, "The Deviants" ><xml-dev@l...> >Subject: "Query by example" (was Re: 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. 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 >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 > > http://examplotron.org/ > 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 worlds largest e-mail service with MSN Hotmail. http://www.hotmail.com
PURCHASE STYLUS STUDIO ONLINE TODAY!
Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!
Download The World's Best XML IDE!
Accelerate XML development with our award-winning XML IDE - Download a free trial today!
Subscribe in XML format