簡體   English   中英

Xpath屬性

[英]Xpath Attributes

您好,我有以下XML示例

<?xml version="1.0" encoding="UTF-8"?>

<Data> 
<x>3</x>  
<Document1 id="123" filename="/test/dev/fileA.txt"/>  
<Document2 id="123" filename="/test/dev/fileB.txt"/>  
<Document3 id="123" filename="/test/dev/fileC.txt"/>  
<Document4 id="123" filename="/test/dev/fileD.txt"/> 
</Data>

我需要Xpath 1.0才能使用x變量檢索特定的文件名。

就像是:

/Data/Document[x]/@filename

我需要能夠基於x的值檢索特定的文件名。 可能嗎? 如果您需要更多信息,請告訴我。

提前致謝

對的,這是可能的。 但是,為什么要這樣設計輸入的xml格式? 由於許多原因,使用id屬性選擇正確的文檔而不是元素名稱會更好。

原因包括:

  • xpath表達式的求值速度更快( /Data/Document[@id=/Data/x]/@filename
  • 您可以為其創建一個XSD模式

我還質疑為什么要將變量<x>與其他數據放在同一文檔中-如果您已經在輸入文檔中知道需要哪個'Document'元素,為什么不刪除其他元素?

話雖如此,一個xpath表達式可以滿足您的要求:

/Data/*[local-name() = concat('Document', /Data/x)]/@filename

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM