Hello,
I feel very stupid and frustrated, not able to fix this error:
Below, is a my query code, which I am trying to run. I am passing the value
for "contains" clause thru command line and I expect to receive # of xml
files matching $cmd xpath. I always get
Stopped at /veracode/msheth/BaseXWeb/get_prevalence.xq, 16/12:
*[XPST0003] Expecting ':=', found ':'.*
When ran thru REST:
*[XPST0003] Expecting valid step, found 'd'.*
I think, its the way $cmd is being set. I have tried, simple string concat
using ||, using concat command, using html entities etc.
declare variable $n as xs:string external;
declare option output:item-separator "
";
(: let $cmd :=
concat("/A/*/descendant::C/descandant::*[contains(@name,",$singlequote,$n,$singlequote,")]")
:)
*let $cmd := "/A/*/descendant::C/descandant::*[contains(@name,'"|| $n
||"')]"*
let $aPath :=
for $db in db:list()
let $query :=
"declare variable $db external; " ||
"db:open($db)" || $cmd
*return xquery:eval($query,*
* map { 'db': $db, 'query': $cmd })*
let $clients :=
for $elem in $aPath
return db:path($elem)
return $n , distinct-values(count($clients))
Lines of code, which are the culprit, are marked in bold above. Any and all
suggestions are greatly appreciated.
- Mansi