2017-12-24 9 views
0

このXMLファイルから、XPathを使用して、値が 'General'の子を持つすべての属性名から取得したいと考えています。私はそれをする方法を見つけることができませんでした。 ありがとうございます。特定の値を持つ子の属性名を見つけよう

<?xml version="1.0" encoding="UTF-8"?> 
<Systems> 
    <system name="SystemName"> 
    <systemType>Generic</systemType> 
    <servers> 
     <server order="1"> 
     <serverName>Server1Name</serverName> 
     <dataSensetivity>1</dataSensetivity> 
     </server> 
    </servers> 
    </system> 
    <system name="NewSystemName"> 
    <systemType>AD</systemType> 
    <servers> 
     <server order="1"> 
     <serverName>system1</serverName> 
     <dataSensetivity>1</dataSensetivity> 
     </server> 
     <server order="1"> 
     <serverName>system2</serverName> 
     <dataSensetivity>0</dataSensetivity> 
     </server> 
    </servers> 
    </system> 
</Systems> 
+0

*どうすればいいのか分かりませんでした。また、*「子供を持つすべての属性名」*が何を意味するのかを明確にしてください。 – Andersson

答えて

0

次のXPath値が「一般」に等しいの子要素を持つ要素に接続されたすべての名前の属性があります。

//*[* = 'General']/@name 

また、より具体的に、それらの子要素のtext()ノードの値を比較することができます:

//*[*/text() = 'General']/@name 

あなたの例のXMLは、値が「一般的」との任意の要素を持っていない、でしたあなたは "Generic"を意味しますか?

+0

はい、私はGenericを意味しました。ありがとうございました!あなたの答えは仕事をした:) – einat

関連する問題