2012-02-24 11 views
0

XQUERYを使用してXML文書を解析する必要があります。 XPath式は次のとおりです。XPath式を使用したXML PARSING

(fn:node-name(.) eq fn:QName(#namespace,#name)) 
#namespace<cf:qname>要素の内容として指定された QNameの名前空間であると #nameQName

のローカル名であるノードデータを取得する方法を教えてください

?事前

答えて

0

おかげで、名前空間URIとノード名が静的に知られている場合は、あなただけの

declare namespace ns='#namespace'; 
//ns:#name 

を使用することができますそうしないと、XPathの述語を持つ名のすべてのノードとテストを選択:

//*[fn:node-name(.) eq fn:QName(#namespace,#name)] 
0

このような意味ですか?

declare namespace cf="cf"; 

let $xml := 
    <x:ml xmlns:x="x"><x:yz/></x:ml> 
let $cfqname := 
    <cf:qname><cf:namespace-uri>x</cf:namespace-uri><cf:local-name>yz</cf:local-name></cf:qname> 
let $qname := 
    fn:QName($cfqname/cf:namespace-uri, $cfqname/cf:local-name) 
return 
    $xml//*[node-name(.) eq $qname] 
関連する問題