2010-12-14 39 views
1

我有一個字符串,我想用它作爲xpath中的選擇器來選擇名稱作爲字符串值的節點。xpath中的字符串

declare variable $get_count := <count><comedy>1</comedy></count>; 
(: $string = "comedy" :) 
let $value = $get_count/$string (: but this doesn't return anything) 

我該怎麼做?

+0

好問題, +1。看到我的答案是一個簡單而直接的解決方:) – 2010-12-14 19:13:15

回答

2
let $value = $get_count/$string (: but this doesn't return anything) 

使用

declare variable $get_count := <count><comedy>1</comedy></count>; 
declare variable $string := "comedy"; 

let $value := $get_count/*[name()=$string] 
    return 
    $value 

當這對任何XML文檔(未使用),則希望,正確的結果產生應用:

<comedy>1</comedy> 
+0

因此$ get_count包含''元素節點,而不是根文檔節點? – LarsH 2010-12-14 21:54:27

+0

@LarsH:是的,我已經用oXygen12下的Saxon測試過了。 – 2010-12-14 22:03:00

+0

非常感謝,它的工作..! – deepti 2010-12-15 20:10:43