Hi again,
Following the discussion in the "characters in xsl" thread, I tried
changing
"*" with "node()" in the XPath, that is:
"not(preceding-sibling::*[1][self::A])" became
"not(preceding-sibling::node()[1][self::A])"
This seems to work. Will there be any reason that this should not?
well it depends on your meaning of "work".
they are both legal Xpath expressions, so neither will cause an error,
but they test different things, it's hard to say whether either is the
test you want (without going back down the thread to see if there was
more info there)
given
zzz <A/> zzz <B/> zzz <A/><C/>
the first expression is false in <B/> and false on <C/>
the second expression is true on <B/> and false on <C/>
David
The test is only done in a template matching "A" nodes.
What I wanted was to group adjacent A nodes:
<X>zzz<A/><A/><B/><A/>xxx<A/></X>
The first test would chose the first and third <A/> nodes, whereas I would
want the first, third and fourth <A/> nodes. The second one seemes to do
that.
<xsl:template match="A" mode="one">
<xsl:if test="not(preceding-sibling::*[1][self::A])">1</xsl:if>
</xsl:template>
<xsl:template match="A" mode="two">
<xsl:if test="not(preceding-sibling::node()[1][self::A])">2</xsl:if>
</xsl:template>
My question was then, whether there is something that I have missed...
Regards,
Ragulf Pickaxe :-)
_________________________________________________________________
FREE pop-up blocking with the new MSN Toolbar - get it now!
http://toolbar.msn.com/
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--