私のXmlは次のようになります
<root>
<parent name="Iam">
<child1 name="123">
<toy name="wii">
</toy>
</child>
</parent>
<parent name="Iam">
<toy name="wii">
</toy>
</parent>
<parent name="Sam">
<child1 name="999">
<toy name="xbox">
</toy>
</child>
</parent>
</root>
name="Iam" の <parent> の下にある name="wii" のすべての <toy> ノードを選択する必要があります。<toy> は <parent> の直接の子または <parent> の孫 (<child> の下) であることに注意してください。
<child>node は 0 以上のカーディナリティを持つことができます。
この xpath /parent[@name='Iam']/*/toy[@name='wii']を XPathNavigator で使用してみました。
`XPathNodeIterator nodeIter = schemaNavigator.Select(schemaXPath, namespaceMgr);`
失敗するので明らかに間違っています。
<parent> と <toy> の間のカーディナリティが 0 以上のすべてのノードを選択するには、xpath が必要です。
XML の形式を変更できません。