Ответ на ваш вопрос: да, но я не думаю, что вы задаете правильный вопрос. Вы не сказали, что вы пытаетесь сделать, но ваш пример кода ничего полезного не делает.
//row[(position()-1)]/MONTH_ID
Когда число N используется в предикате, то это означает [position()=N]
, так что ваш предикат означает [position() = position() - 1]
, который всегда будет ложным.
Я думаю, вы забываете, что результат position()
чувствителен к контексту, а контекст внутри предиката не совпадает с контекстом снаружи. Ответ связать переменную:
<xsl:variable name="p" select="position()"/>
<xsl:value-of select="//row[$p - 1]/MONTH_ID"/>
этот код в порядке: –
Are вы на самом деле пытаются выяснить значение элемент ** MONTH_ID ** из предыдущего элемента ** строки **? Вероятно, это поможет, если вы продемонстрируете образец XML и результат, которого вы пытаетесь достичь. Благодаря! –