Допустим, у меня есть какой-то HTML, который выглядит следующим образом:
<section>
<header>
<h1>Foo</h1>
</header>
<section>
<a href="#">one</a>
</section>
<section>
<a href="#">two</a>
</section>
</section>
<section>
<header>
<h1>Bar</h1>
</header>
<section>
<a href="#">one</a>
</section>
<section>
<a href="#">two</a>
</section>
</section>
Я хочу получить привязку с текстом 'two', но должен принадлежать тегу section, который имеет заголовок 'Bar'(т.е. последний якорь в приведенном выше html).
Легко получить элемент заголовка с текстом Bar:
//header/h1[text()='Bar']
Также легко получить оба якоря с текстом'two ', которые живут в элементе section:
//section/a[text()='two']
, который, конечно, возвращает два якоря.
Я просто не уверен, как объединить два, чтобы я получил только якорьнайдено в элементе section, который является родственным элементом заголовка, который содержит 'Bar'.