2013-06-12 22 views
0

我正在更新一個文件,該文件從搜索中返回一系列圖形元素。 count函數工作得很好算項目的返回總數:使用fn:序列上的fn:count函數的xquery

let $total-count := fn:count($result) 

不過,我也需要計算包含視頻內容,以及那些包含圖形元素,圖形元素的數量,但這些語句不工作:

let $vid-count := fn:count($result//video) 
let $graph-count := fn:count($result//graphic) 

任何想法?

回答

0

您正在計算包​​含的視頻(各個圖形)元素在以內的所有$result元素。如果要對包含其他元素的元素進行計數,請使用謂詞而不是軸步驟。

let $vid-count := fn:count($result[.//video]) 
let $graph-count := fn:count($result[.//graphic]) 
+0

嗯,我認爲它可能涉及使用謂詞,但不能說明它會是什麼。以上聲明也不起作用。好像他們應該這樣做。 – kalinma

+0

給出一些小的,但可理解的示例輸入和預期輸出。特別是確保包含所有名稱空間聲明(如果有的話),以防您不確定在例如。 [要旨](http://gist.github.com)。 –