Subject: RE: if to separate child elements From: Kay Michael <Michael.Kay@xxxxxxx> Date: Tue, 26 Sep 2000 10:46:40 +0100 |
> I am somehow really stuck trying to separate out different child > elements using <xsl:if>. Please help with the following situation if > possible: > I am trying: > > <xsl:for-each select="help/helptext|help/helpexample"> > <xsl:if test="helptext"/> Firstly, the xsl:if should be closed with ">" not "/>": an xsl:if with no content is meaningless, since it does nothing, whether or not the condition is true. Secondly, if you want to test whether the element you are processing is a helptext element, use <xsl:if test="self::helptext">. The way you've written the test, you are testing whether the current element has a helptext child. Thirdly, the best way of doing this kind of processing is to use <xsl:apply-templates> and template rules, rather than xsl:for-each and xsl:if. > <xsl:if test="position() mod 2=0"> > the position() mod 2 part works, but I dont have any > guarantee that the > particular element will always be in the even position. If the elements won't always be in the even position, then I fail to see why you are testing to see if the element is in an even position, and I don't understand what you mean by saying it "works". Presumably you mean that it sometimes gives the right answer... Mike Kay XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
testing my new filter (sorry), Søren Neigaard | Thread | last attribute ?, Jukka . T . Lehtinen |
testing my new filter (sorry), Søren Neigaard | Date | last attribute ?, Jukka . T . Lehtinen |
Month |