Understanding XQuery -
10-10-2005
, 10:08 AM
I am new to XQuery and dbxml and I am having problems using the shell.
I created a simple test file and loaded it into a container
Then executed the query from as file using the run command.
cquery '
for $id in /tlog/Order/UNIQUEID
return {
for $cust in /tlog/Customer
where $id = $cust/UNIQUEID
return
$cust
for $order in /tlog/Product
where $id = $order/UNIQUEID
return
$order
}
'
The shell returned
data.xq:13: cquery failed, Error: Error in XQuery expression: parse
error, unexpected "{", line 3, column 10
stdin:9: run failed, error in included file
Any suggestions are welcome.
Regards
John
The input XML is
<?xml version="1.0" encoding="utf-8"?>
<tlog>
<Customer>
<ACCOUNTNO>000011</ACCOUNTNO>
<TRANSACTIONDATE>20050719</TRANSACTIONDATE>
<TRANTYPE>11</TRANTYPE>
<UNIQUEID>0000000000001</UNIQUEID>
<NAMEDONORRECIP>1</NAMEDONORRECIP>
<FIRSTNAME>John</FIRSTNAME>
<MI />
<LASTNAME>Smith</LASTNAME>
<NAMETITLE />
<NAMESTREET1>1 main st</NAMESTREET1>
<NAMEREF1 />
<CITYNAME>ORANGE</CITYNAME>
<STATE>CT</STATE>
<NAMEZIP>12345</NAMEZIP>
<NAMECOUNTRYCODE>0000</NAMECOUNTRYCODE>
<NAMEDAYPHONE>1234567890</NAMEDAYPHONE>
</Customer>
<Order>
<UNIQUEID>0000000000001</UNIQUEID>
</Order>
<Product>
<ACCOUNTNO>0061399671</ACCOUNTNO>
<TRANSACTIONDATE>20050719</TRANSACTIONDATE>
<TRANTYPE>11</TRANTYPE>
<UNIQUEID>0000000000001</UNIQUEID>
<PRODORDERNUM>C2401112</PRODORDERNUM>
<PRODORDERDATE>20050719</PRODORDERDATE>
<PRODNUMBER>A4 02 146134</PRODNUMBER>
<PRODTYPE>K4</PRODTYPE>
<PRODQTY>00001</PRODQTY>
<PRODEXTPRICE>000013495+</PRODEXTPRICE>
<PRODRETCRD>000000000+</PRODRETCRD>
<PRODSHIPDATE>00000000</PRODSHIPDATE>
</Product>
<Customer>
<ACCOUNTNO>000012</ACCOUNTNO>
<TRANSACTIONDATE>20050719</TRANSACTIONDATE>
<TRANTYPE>11</TRANTYPE>
<UNIQUEID>0000000000002</UNIQUEID>
<NAMEDONORRECIP>1</NAMEDONORRECIP>
<FIRSTNAME>Jane</FIRSTNAME>
<MI />
<LASTNAME>Doe</LASTNAME>
<NAMETITLE />
<NAMESTREET1>22 Derby St</NAMESTREET1>
<NAMEREF1 />
<CITYNAME>Apple</CITYNAME>
<STATE>NY</STATE>
<NAMEZIP>12356</NAMEZIP>
<NAMECOUNTRYCODE>0000</NAMECOUNTRYCODE>
<NAMEDAYPHONE>2345678901</NAMEDAYPHONE>
</Customer>
<Order>
<UNIQUEID>0000000000002</UNIQUEID>
</Order>
<Product>
<ACCOUNTNO>0061399672</ACCOUNTNO>
<TRANSACTIONDATE>20050719</TRANSACTIONDATE>
<TRANTYPE>11</TRANTYPE>
<UNIQUEID>0000000000002</UNIQUEID>
<PRODORDERNUM>C2401112</PRODORDERNUM>
<PRODORDERDATE>20050719</PRODORDERDATE>
<PRODNUMBER>A4 02 146134</PRODNUMBER>
<PRODTYPE>K4</PRODTYPE>
<PRODQTY>00001</PRODQTY>
<PRODEXTPRICE>000013495+</PRODEXTPRICE>
<PRODRETCRD>000000000+</PRODRETCRD>
<PRODSHIPDATE>00000000</PRODSHIPDATE>
</Product>
<Customer>
<ACCOUNTNO>000013</ACCOUNTNO>
<TRANSACTIONDATE>20050719</TRANSACTIONDATE>
<TRANTYPE>11</TRANTYPE>
<UNIQUEID>0000000000003</UNIQUEID>
<NAMEDONORRECIP>1</NAMEDONORRECIP>
<FIRSTNAME>Bob</FIRSTNAME>
<MI />
<LASTNAME>Jones</LASTNAME>
<NAMETITLE />
<NAMESTREET1>33 Shady Lane</NAMESTREET1>
<NAMEREF1 />
<CITYNAME>Pear</CITYNAME>
<STATE>AZ</STATE>
<NAMEZIP>12367</NAMEZIP>
<NAMECOUNTRYCODE>0000</NAMECOUNTRYCODE>
<NAMEDAYPHONE>3456789012</NAMEDAYPHONE>
</Customer>
<Order>
<UNIQUEID>0000000000003</UNIQUEID>
</Order>
<Product>
<ACCOUNTNO>0061399673</ACCOUNTNO>
<TRANSACTIONDATE>20050719</TRANSACTIONDATE>
<TRANTYPE>11</TRANTYPE>
<UNIQUEID>0000000000003</UNIQUEID>
<PRODORDERNUM>C2401112</PRODORDERNUM>
<PRODORDERDATE>20050719</PRODORDERDATE>
<PRODNUMBER>A4 02 146134</PRODNUMBER>
<PRODTYPE>K4</PRODTYPE>
<PRODQTY>00001</PRODQTY>
<PRODEXTPRICE>000013495+</PRODEXTPRICE>
<PRODRETCRD>000000000+</PRODRETCRD>
<PRODSHIPDATE>00000000</PRODSHIPDATE>
</Product>
</tlog> |