Dear Anupam,
One workaround would be to do it in two queries: one to
update your document, and one to retrieve the modified
nodes.
The problem is not that you can't pick nodes from
another resource, but that XQuery doesn't allow you to
update and query inside the same query. In other words,
within one query doing an update means you can't produce
a (query) result, and having a query result means you
can't do any update.
Regards,
Maurice.
On 06-06-12 05:53, Anupam Bakshi wrote:
Then how about option 'b' ?
At this point any way forward, any work
around will do.
Please let me know if anyone has any
suggestion.
What I don't understand is, if I can add
nodes why can't I pick those nodes from
another resource? Why is this not possible?
But I'm looking for some workaround.
Thanks for your help.
Anupam
|
From:
Christian Grün <christian.gruen@gmail.com>;
To: Anupam
Bakshi <bakshia@yahoo.com>;
Cc: <basex-talk@mailman.uni-konstanz.de>;
Subject: Re:
[basex-talk] Nothing gets printed after insert
node
Sent:
Wed, Jun 6, 2012 12:24:18 AM
>
I'm interested in 'a'.
> The two files are in basex, I need
to write a query that will return the
> modified nodes at run time.
Due to the nature of the XQuery Update
Specification, that's generally
not possible. Sorry for that.
> From: Christian Grün <christian.gruen@gmail.com>;
> To: Anupam Bakshi <bakshia@yahoo.com>;
> Cc: basex-talk@mailman.uni-konstanz.de
> <basex-talk@mailman.uni-konstanz.de>;
> Subject: Re: [basex-talk] Nothing
gets printed after insert node
> Sent: Tue, Jun 5, 2012 9:09:06 PM
>
> Are you mostly interested in
>
> a) updating your data, and
returning the modified node(s) as query
result,
> or
> b) finding the correct updating
query to modify your data?
> ___________________________
>
> > Here is what I actually want
to do. Maybe someone can suggest a
> > straightforward way.
> >
> > File : sample1.xml
> > <P>
> > <M id="1"/>
> > <M id="2"/>
> > <M id="3"/>
> > </P>
> >
> > File: result1.xml
> > <Q>
> > <R id="1"/>
> > <R id="2"/>
> > </Q>
> >
> > Desired output :
> > <P>
> > <M id="1">
> > <R id="1"/>
> > </M>
> > <M id="2">
> > <R id="2"/>
> > </M>
> > <M id="3"/>
> > </P>
> >
> > So insert the node from 2nd
file into 1st where the ids match.
> >
> > Thanks,
> > Amupam
> >
> >
________________________________
> > From: Christian Grün <christian.gruen@gmail.com>
> > To: Anupam Bakshi <bakshia@yahoo.com>
> > Cc: basex-talk@mailman.uni-konstanz.de
> > Sent: Tuesday, June 5, 2012
12:02 PM
> > Subject: Re: [basex-talk]
Nothing gets printed after insert node
> >
> >> Unfortunately I did not
see how I can return the value into a
variable
> >> for
> >> further processing.
> >> Is there some other way to
do it?
> >
> > Did you already try
db:output()?
> >
> >
|
--
----------------------------------------------------------------------
Dr.Ir. M. van Keulen - Associate Professor, Data Management Technology
Univ. of Twente, Dept of EEMCS, POBox 217, 7500 AE Enschede, Netherlands
Email: m.vankeulen@utwente.nl, Phone: +31 534893688, Fax: +31 534892927
Room: ZI 3039, WWW: http://www.cs.utwente.nl/~keulen