Xpath 以下同级等于它的所有元素

Xpath 以下同级等于它的所有元素,xpath,xpath-2.0,Xpath,Xpath 2.0,我的XML结构: <root> <!-- First --> <A> <B>123</B> <C>456</C> </A> <!-- Second --> <A> <B>999</B> <C>456</C> </A> <!-- Thi

我的XML结构:

<root>
  <!-- First -->
  <A>
      <B>123</B>
      <C>456</C>
  </A>

  <!-- Second -->
  <A>
      <B>999</B>
      <C>456</C>
  </A>

  <!-- Third -->
  <A>
      <B>123</B>
      <C>456</C>
  </A>

  <!-- Fourth-->
  <A>
      <B>123</B>
      <C>999</C>
  </A>

  <!-- Fifth -->
  <A>
      <X>123</X>
      <Y>456</Y>
  </A>
</root>
但结果我得到了第一个和第三个元素。我猜第三个元素与第五个元素匹配,因为=运算符只是比较字符串值,对吗?你能帮我吗


我甚至可以在XPath中计算匹配元素的位置,还是必须在XSL for循环中搜索它?

我想您正在寻找函数
deep equal
,请参见,您可以在
//a[后面的sibling::a中的一些$sibling::a满足deep equal(,$sibling)]
中使用该函数[following sibling中的一些$sibling::A满足深度相等(,$sibling)]表达您需要什么?
//A[.= following-sibling::A]