Needs to be:
<xsl:if test="position() gt 1" />
with gt instead of > as the operator.
On Fri, Mar 5, 2021, 20:37 Martin Honnen martin(_dot_)honnen(_at_)gmx(_dot_)de <
xsl-list-service(_at_)lists(_dot_)mulberrytech(_dot_)com> wrote:
On 05.03.2021 20:22, Michele R Combs mrrothen(_at_)syr(_dot_)edu wrote:
Ah. Ok, so if I understand correctly, I need to change the variable
assignment to grab the position of the <DATA> element within the parent
<ROW>, rather than within the for-each? How would I do that?
I think what David tries to say is that you want e.g.
../../fmp:COL[3]/fmp:DATA[$parent-position + 1]
instead of
../../fmp:COL[3]/fmp:DATA[$parent-position]
(and the same for the other values.)
Or you would need to use
../../fmp:COL[3]/fmp:DATA[position() > 1][$parent-position]
../../fmp:COL[4]/fmp:DATA[position() > 1][$parent-position]
../../fmp:COL[5]/fmp:DATA[position() > 1][$parent-position]
and so on to work in the same range your for-each works with.
there are 4 DATA children so
<xsl:for-each select="fmp:COL[3]/fmp:DATA[position() > 1]">
selects the 2nd, 3rd and 4th
the scope of that position() is just that step of the xpath, within the
body of the for-each, position() counts the selected items
so as there are three items selected position() as stored in
$parent-position will have values 1,2,3 which is one less than you
expected.
--~----------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
EasyUnsubscribe: http://lists.mulberrytech.com/unsub/xsl-list/1167547
or by email: xsl-list-unsub(_at_)lists(_dot_)mulberrytech(_dot_)com
--~--