[xquery-talk] Function Call Errors

Wei, Alice J. ajwei at indiana.edu
Mon Feb 25 13:11:19 PST 2008


Hi, XQeriers:

   I have a piece of code here that I have modified into the following function:

declare function local:distinct(
     $seq as xs:anyAtomicType*,
     $sorted_result as xs:integer*,
     $count as xs:integer,
     $doc as xs:anyAtomicType*)
     as xs:anyAtomicType
{
let $sorted_result:=
for $doc in distinct-values($ad)
order by $doc
return $doc
for $r at $count in $sorted_result
let $nodes := $ad[. = $r][1]
return
<ad>
<statistics>
Showing Result: {$count} / {count($sorted_result)}
</statistics>
{$nodes}
</ad>
};

for $ad in distinct-values(collection("xmldb:exist://db/my")//ad/p[contains(upper-case(.),'BOOK')])
return
local:distinct($ad)

This is currently, not working and keeps popping the following error:

org.exist.xquery.XPathException: Call to undeclared function: local:distinct [at line 25, column 1]

This is based on the XQuery in the following:

let $ad := fn:collection("xmldb:exist://db/my")//ad/p[contains(upper-case(.), 'BOOK')]
let $sorted_result:=
for $doc in distinct-values($ad)
order by $doc
return $doc
for $r at $count in $sorted_result
let $nodes := $ad[. = $r][1]
return
<ad>
<statistics>
Showing Result: {$count} / {count($sorted_result)}
</statistics>
{$nodes}
</ad>

Can anyone please give me tips on how to fix up the query so that it would generate something like

<ad>
<statistics> Showing Result: 1 /1</statistics>
<p>A business so big growing so fast, you need an appointment in most auto trim shops! Send for FREE MASTER PLAN, ILLUSTRATED BOOKLET on learning auto upholstery and interior customizing in your spare hours. No experience needed. Yet approved auto upholstery institute, dept.
<address>
<addressLine>RMC 1205 W. Barkley,</addressLine>
<addressLine>Orange CA 92668</addressLine>
</address>
</p>
</ad>

Thanks to those who can help.
Of anyone on the list who know any resources on where I can practice user-defined function call using interactive tabs woulld be great.

======================================================
Alice Wei
MIS 2008
School of Library and Information Science
Indiana University Bloomington
ajwei at indiana.edu



More information about the talk mailing list