我需要返回字符串"A1"或字符串"A2"取决于"B"节点在其包含节点下的最大深度:
<xmlDoc>
<A>A1
<B>
<B>
<B>
</B>
</B>
</B>
<B>
</B>
</A>
<A>A2
<B>
<B>
</B>
</B>
<B>
<B>
</B>
</B>
</A>
</xmlDoc>
descendant
轴似乎不适合确定B节点的"深度"(例如:/xmlDoc/A[count(descendant::B)>2]
)。包含字符串"A1"的"A"节点的最大"B"节点深度为3,但似乎有4个"后代"B"节点…
如何根据"B"节点在第一个"A"节点中的"3深度"出现来构造XPath表达式以返回字符串"A1"?
Descendant计算该节点的所有子节点。如果你想要一个B节点链,这样写
/xmlDoc/A[B[B[B]]]