Какой самый быстрый способ определить, находится ли текущий узел в пути узла с определенным атрибутом, с учетом этой структуры XML:
<root>
<item>
<item name="x">
<item></item>
<item name="y"></item>
<item></item>
</item>
<item></item>
<item></item>
</item>
<item>
<item name="z"></item>
<item></item>
</item>
У меня есть переменная xsltчтобы сказать мне, что является текущим активным узлом.
Я хочу выполнить некоторый код, если текущий узел находится в пути узла с @name x.
Так, что если активный узелэто элемент с @name y, который должен выполнить код, если текущий активный узел является элементом с @name z, он не должен.
Мое лучшее решение на данный момент:
ancestor-or-self::item[@name = 'x']
Но поскольку существует более 30 тыс. Узлов элементов, рендеринг которых занимает вечность, есть ли более быстрый путь?(XSLT / XPATH 2 не является опцией)