私はこのXMLを持っており、シリアル番号を抽出しようとしています。位置に関係なく特定の名前の要素のインスタンスを見つけることが可能
しかし、シリアル番号は同じレベルではないので、私が使用しているツールでは1つのXPATH式で処理する必要があるため、これを達成するのは難しいです。
<rpc-reply>
<chassis-inventory>
<chassis junos:style="inventory">
<name>Chassis</name>
<serial-number>AAABBB</serial-number>
<description>SRX220H</description>
<chassis-module>
<name>Routing Engine</name>
<version>REV 23</version>
<part-number>750-031175</part-number>
<serial-number>XXXYYY</serial-number>
<description>RE-SRX220H</description>
</chassis-module>
<chassis-module>
<name>FPC 0</name>
<description>FPC</description>
<chassis-sub-module>
<name>PIC 0</name>
<description>8x GE Base PIC</description>
</chassis-sub-module>
</chassis-module>
<chassis-module>
<name>Power Supply 0</name>
</chassis-module>
</chassis>
</chassis-inventory>
<cli>
<banner></banner>
</cli>
</rpc-reply>
私が抽出したいデータがある:
<name>Chassis</name>
<serial-number>AAABBB</serial-number>
<name>Routing Engine</name>
<serial-number>XXXYYY</serial-number>
任意のアイデア?
種類のよろしく、
パトリック
あなたの試行と現在の出力を表示します。あなたのツールで使用する 'XPath'バージョンも指定してください – Andersson
こんにちは、あなたのコメントをありがとう!私はデータを見つけるための「ポジションに依存しない」方法を見つけることができなかったので、あまり表示する必要はありません。私の考えは、* name *と* serial-number *を持つすべての "レベル"を取得して表示することでした。このツールは独自のサードパーティ製であるため、実際にはどのバージョンであるのか分かりません。 – PatrikJ
あなたはXMLの観点からこれらの要素を選択するための基礎を述べていません。あなたがそうするまで、あなたが得るすべてはあなたのために一般的に働くかもしれないし、そうでないかもしれない推測になります。 – kjhughes