On 03/28/2013 12:23 PM, daniela florescu wrote:
Michael,
in addition to the queries I already gave you with count and groupby, here is
another one in
pure XQuery 1.0 that cannot be reduced
declare function foo($x)
{
if ($x/@a) then $x else<b/>
};
for $x in Blah1
for $y in Blah2
let $z := foo($y)
where $z is $z
return $x
(variable $z cannot be unfolded because of the generation of new nodes, and
then the where cannot be move up because
of the let)
Sorry, I felt like being twisted minded this morning :-)
XQuery is wicked :-)
Yes, that is twisted for sure. But isn't it also equivalent to:
for $x in Blah1
for $y in Blah2
for $z in foo($y)[. is .]
return $x
?
not that that really makes any difference, in some sense, but given the
problem as stated, I don't think a where clause is required
--
Michael Sokolov
Senior Architect
Safari Books Online
_______________________________________________
[email protected]
http://x-query.com/mailman/listinfo/talk