У меня есть XML-структура, подобная этой:
<Header>
<ElementA>
<ElementB>
<ElementC/>
<ElementC/>
</ElementB>
<ElementB/>
</ElementA>
</Header>
, где <ElementB>
может иметь последовательность <ElementC>
или может не иметь ни одной.
Я могу выбрать <ElementA>
узлов, которые имеют два <ElementB>
на /Header/ElementA/ElementB/following-sibling::ElementB
. Я могу выбрать <ElementA>
узлы, которые содержат <ElementB>
узел, который содержит <ElementC>
, используя /Header/ElementA/ElementB[ElementC]
.
Но как мне выбрать <ElementA>
узлы, которые содержат <ElementB>
, который содержит <ElementC>
, за которым следует еще <ElementB>
, содержащий еще один <ElementC>
. Примерно так:
<Header>
<ElementA>
<ElementB>
<ElementC/>
<ElementC/>
</ElementB>
<ElementB>
<ElementC/>
<ElementC/>
</ElementB>
</ElementA>
</Header>