XPath, чтобы найти элемент с похожим братом - PullRequest
1 голос
/ 16 июня 2010

Предположим, у меня есть этот XML:

<x>
    <e a='1' b='A'/>
    <e a='1' b='B'/>
    <e a='1' b='A'/>
</x>

Я хотел бы написать xpath, чтобы найти любые элементы e, которые:

  1. Имеет атрибут @b = 'A'
  2. имеют одинаковое значение для атрибута @ a

Однако xpath не может ссылаться на буквальное значение атрибута @a. Он может ссылаться на буквальное значение атрибута @b.

Или, в более общем смысле, я хочу выяснить, есть ли случаи, когда есть два или более элемента e [@ b = A '] с одинаковым значением для атрибута @ a.

Возможно ли это?

1 Ответ

3 голосов
/ 16 июня 2010

Я решил свою проблему с помощью следующего xpath:

// e [b = 'A' и @ a = follow-sibling :: e [b = 'A'] / @ a]

...