По отношению к моей функции questionXSLT ПОлОжЕНИЯ() соответствующее фильтрованных узлы
position()
возвращает позицию фактического узла в целом документе, как получить позицию по отношению к выбранным узлам. Допустим, у меня есть список из 100 городов, и я исключаю 10 на основе данного списка фильтров (см. Вопрос). Теперь я хочу получить подсчет на основе выбранных узлов, а не исходные позиции документа.
Проще говоря, это вопрос счетчика/приращения, поскольку я вижу, что счетчик невозможен. Как мы можем создать или использовать существующую функцию в качестве position(), чтобы получить позицию узла в выбранных узлах.
Надеюсь, мой вопрос ясен.
редактировать пример сценария
<xsl:template match="/">
<xsl:apply-templates select="db:databaseChangeLog/db:changeSet[*[1][($excludes eq '' or not(@tableName = tokenize($excludes, ',')))]]"/>
</xsl:template>
<xsl:template match="db:changeSet">
...
</xsl:template>
Где я выборе родительского узла на основе дочернего узла имя атрибута.
Возможно [этот ответ] (http://stackoverflow.com/questions/226405/find-position-of-a-node-using-xpath) поможет вам? –