[xquery-talk] deleting certain path from a list and all paths containing that path

fatma helmy fatmahelmy2000 at yahoo.com
Sat Jun 3 10:10:57 PDT 2006

i need to delete from $paths the path which does not
satify a certain condition and also all paths contain
that path. i need to add this condition in the
following query in the place of /**** 

declare function local:pathOfNode($node)
 '/') };
 let $j:= . 
 let $paths := for $n in $j/*//* return
 for $p in distinct-values($paths) 
 let $papa:= replace($p,'/[^/]*$','')
if count($paths[.=$p]div count($paths[.=$papa]) <
certain_valuse {delete $p from $paths and delete from
$paths all paths that contain $p}

 let $leafs :=$j//text()[normalize-space()]
[string-join(../ancestor::*/local-name(), '/') eq $p
   <PATH> {string($p)} </PATH> 
   <RATIO> {let $c := count($paths[.=$papa]) return
            string( round( count($paths[.=$p]) div
 (if ($c=0) then 1 else $c)
 * 100 ) )}</RATIO>
 {for $val in  distinct-values($leafs) return
  <value-per-path value='{$val}' 
 count='{count($leafs[. eq  $val ])}'/>} 

Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 

More information about the talk mailing list