|
[XQuery Talk Mailing List Archive Home] [By Date] [By Thread] [By Subject] [By Author] [Recent Entries] [Reply To This Message] restricting search to different nodesPeter Mueller Peter.Mueller10 at gmx.deThu Jan 5 12:13:18 PST 2006
Hi Wolfgang (and all), > > I am using the open source native xml database eXist which offers > > index-based full text search. > > > > My question is whether I can combine for instance the following two > queries > > into one or if I have to perform to queries and then merge the results? > > > > for $doc in //text/body/abstract &= 'searchTerm' > > return $doc/../.. > > > > for $doc in //text/body/metadata1 &= 'searchTerm' > > return $doc/../.. > > The non-standard '&=' can be used like the standard '='. To query two > node sets, you may simply create a union. For example: > > for $doc in //text/body/(abstract | metadata1)[. &= 'searchTerm'] Thank you very much for your quick response! This works well if the node sets are lying on the same level in the xml structure. But if I use something like this: for $doc in //text/body/(abstract | level/metadata1)[. &= 'searchTerm'] return $doc/../.. ... I either get the <text> or the <body> element as a result. But I always need the <text> element. Is it somehow possible to adjust the return statements in that it treats the results differently if they come from different node sets? I know it's possible to use if - clauses in the return statement but how would I specify the originating node sets? Thank you again, Peter -- 10 GB Mailbox, 100 FreeSMS/Monat http://www.gmx.net/de/go/topmail +++ GMX - die erste Adresse für Mail, Message, More +++
|
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
|






