次のXMLドキュメントを想像してみてください。
<root>
<person_data>
<person>
<name>John</name>
<age>35</age>
</person>
<person>
<name>Jim</name>
<age>50</age>
</person>
</person_data>
<locations>
<location>
<name>John</name>
<country>USA</country>
</location>
<location>
<name>Jim</name>
<country>Japan</country>
</location>
</locations>
</root>
次に、ジムの個人ノードを選択します。
XmlNode personNode = doc.SelectSingleNode("//person[name = 'Jim']");
そして今、単一のXPath選択を持つこのノードから、Jimのロケーションノードを取得したいと思います。何かのようなもの:
XmlNode locationNode = personNode.SelectSingleNode("//location[name = {reference to personNode}/name]");
私はpersonNodeに基づいて選択しているので、selectで参照できれば便利です。これは可能ですか?..そこに接続はありますか?
確かに、コードを数行追加して名前を変数に入れ、これをXPath文字列で使用することはできますが、それは私が求めていることではありません。