[xquery-talk] If Statements within an If Statement?

David Carlisle davidc at nag.co.uk
Wed Apr 2 23:14:29 PST 2008


oh, you can never get the "no results" text back
your structure is

for $d in $sorted-result
return
if (count($sorted-result) lt 1)
   <p>sorry</p>
else if (count($sorted-result) gt 200)
   <p> too many</p>
else
<p>....</p>



which means that you always get exactly one item returned for each item
in $sorted-result.

If the list has length 300 you will output the "too many" message 300
times, and if the list has length 0 you will output 0 as you will never
enter the loop at all.

Put the tests outside, like this:



if (count($sorted-result) lt 1)
   <p>sorry</p>
else if (count($sorted-result) gt 200)
   <p> too many</p>
else
for $d in $sorted-result
return
 <p>....</p>





you still have <p>{$para}</p>


David

________________________________________________________________________
The Numerical Algorithms Group Ltd is a company registered in England
and Wales with company number 1249803. The registered office is:
Wilkinson House, Jordan Hill Road, Oxford OX2 8DR, United Kingdom.

This e-mail has been scanned for all viruses by Star. The service is
powered by MessageLabs. 
________________________________________________________________________


More information about the talk mailing list