[xquery-talk] Problem in validating XQuery

David Carlisle davidc at nag.co.uk
Sun Sep 30 23:45:32 PDT 2007



Not immediately obvious from the error message but you'd thrown the
parser off track as  you are missing two </route>. Neither <route> is
closed. (as the <route> isn't closed, the } doesn't match the { at the
start of the query.

Not sure what's intended by 
if(fn:compare($i/text(), 'turnonto')) 
but fn:compare (which you can write as compare, the fn prefix isn't
needed) doesn't return a boolean but rather -1,1 or 0.
If you are testing for the turnonto element in your input sample that
would be if($i/turnonto)

In general it's best to avoid using text() (it makes your query very
fragile in the presence of comments etc

                        
<start>{$startoutTag/on/text()}</start>
is better written as
<start>{$startoutTag/on}</start>

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