Christian,

Thank you for the quick and helpful reply.

- Sony

On Tue, Feb 22, 2011 at 5:56 PM, Christian Grün <christian.gruen@gmail.com> wrote:
Sony,

the following query might do what you want:

copy $c :=
<entry xmlns="http://www.w3.org/2005/Atom"
xmlns:libx="http://libx.org/xml/libx2">
 <id>1</id>
 <title>Link Amazon By ISBN</title>
 <updated>2010-09-29T18:37:48.592Z</updated>
 <author>
   <name>LibX Team</name>
   <uri>http://libx.org</uri>
   <email>libx.org@gmail.com</email>
 </author>
 <content type="html">Content created by LibX Libapp Builder</content>
</entry>
modify (
 replace value of node $c//*:name with 'Sony',
 replace value of node $c//*:content with
   concat('Copy of: ', $c//*:content)
)
return $c


Best,
Christian
___________________________

On Tue, Feb 22, 2011 at 11:43 PM, Sony Vijay <sony.vibh@gmail.com> wrote:
> Hi,
> I am using BaseX 6.5. I am trying to transform a given node using an
> XQuery.
>
> Say, I have an node like so:
> <entry xmlns="http://www.w3.org/2005/Atom"
> xmlns:libx="http://libx.org/xml/libx2">
>   <id>1</id>
>   <title>Link Amazon By ISBN</title>
>   <updated>2010-09-29T18:37:48.592Z</updated>
>   <author>
>     <name>LibX Team</name>
>     <uri>http://libx.org</uri>
>     <email>libx.org@gmail.com</email>
>   </author>
>   <content type="html">Content created by LibX Libapp Builder</content>
> </entry>
> I am trying to send this node to an xquery which is expected to do the
> following actions:
>
> create a copy of this node (so that the actual node in the database does not
> change),
> transform/modify the duplicate copy of the given node
> return the modified duplicate copy of the given node
>
> I would expect the output to be like so:
> <entry xmlns="http://www.w3.org/2005/Atom"
> xmlns:libx="http://libx.org/xml/libx2">
>   <id>1</id>
>   <title>Link Amazon By ISBN</title>
>   <updated>2010-09-29T18:37:48.592Z</updated>
>   <author>
>     <name>Sony</name>
>     <uri>http://libx.org</uri>
>     <email>libx.org@gmail.com</email>
>   </author>
>   <content type="html">Copy of: Content created by LibX Libapp
> Builder</content>
> </entry>
> I tried to perform the non-updating functions using transform and also tried
> to use a pending update list
> (Reference: http://docs.basex.org/wiki/Update#transform). None of this works
> as expected. Could you refer me to a more detailed documentation for
> performing such transform operations on nodes ?
> Thanks,
> Sony
>
> _______________________________________________
> BaseX-Talk mailing list
> BaseX-Talk@mailman.uni-konstanz.de
> https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
>
>