2
我知道如何選擇一個屬性,像這樣:如何通過xquery中的變量選擇屬性?
$table/@id
但是我怎麼做到這一點,如果屬性名稱被存儲爲一個變量。例如:
let $x = "id"
$table/@[$x]
我知道如何選擇一個屬性,像這樣:如何通過xquery中的變量選擇屬性?
$table/@id
但是我怎麼做到這一點,如果屬性名稱被存儲爲一個變量。例如:
let $x = "id"
$table/@[$x]
可以使用的功能local-name
或node-name
捕捉到屬性的值和與之相匹配的謂語。 local-name
只會返回一個與元素名稱匹配的字符串,並且node-name
將返回一個完全限定的名稱,這通常是推薦的,但實際上只有在處理名稱空間時纔是必需的。
let $x = "id"
return $table/@*[local-name(.) = $x]
let $x := xs:QName("id")
return $table/@*[node-name(.) = $x]
太棒了!這怎麼能擴展到處理可變元素?例如'$ table/$ x' –
例如:'let $ x:=「foo」return $ table/$ x' –
在這裏提出一個單獨的問題:http://stackoverflow.com/questions/34026352/如何對選擇-AN-元件逐一個可變合的XQuery –