Hello, My XQuery file looks like this :
for $metric in doc("C:\sample1.xml")//metric return ( delete node $metric, insert node <NID>{string($metric)}</NID> into $metric/.. )
The sample1.xml contains "metric" elements.
Yet when I execute the query noting gets printed out.
Following is the Query Info which shows 6 Updates. But where are the updates happening? I must be doing something wrong, but can't figure it out.
Thanks for your help, Anupam
Query: for $metric in doc("C:\sample1.xml")//metric return ( delete node $metric, insert node <MET>{string($metric)}</MET> into $metric/.. ) Compiling: - pre-evaluating fn:doc("C:\sample1.xml") - optimizing descendant-or-self step(s) - converting descendant::*:metric to child steps Result: for $metric in document-node { "sample1.xml" }/*:plan/*:metric return (delete nodes $metric, insert node element { "MET" } { fn:string($metric) } into $metric/..) Timing: - Parsing: 0.84 ms - Compiling: 2.21 ms - Evaluating: 3.37 ms - Printing: 0.14 ms - Total Time: 6.57 ms Result: - Hit(s): 0 Items - Updated: 6 Items - Printed: 0 Bytes Query plan: <QueryPlan> <FLWR> <For var="$metric"> <IterPath> <DBNode name="ivst3_plan_3" pre="0"/> <IterStep axis="child" test="*:plan"/> <IterStep axis="child" test="*:metric"/> </IterPath> </For> <Return> <List> <Delete> <VarRef> <Var name="$metric" id="0"/> </VarRef> </Delete> <Insert> <AxisPath> <VarRef> <Var name="$metric" id="0"/> </VarRef> <IterStep axis="parent" test="node()"/> </AxisPath> <CElem> <QNm value="MET" type="xs:QName"/> <FNAcc name="string([item])"> <VarRef> <Var name="$metric" id="0"/> </VarRef> </FNAcc> </CElem> </Insert> </List> </Return> </FLWR> </QueryPlan>