|
[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: Test for preceding-sibling and text
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) 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/
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|

Cart








