Subject: Re: [xsl] testing for position of an element and displaying it accordingly From: David Carlisle <davidc@xxxxxxxxx> Date: Mon, 22 Jan 2007 22:07:13 GMT |
you don't appear to have changed the code at all in response to teh previous comments. you have (as before) <xsl:template match="r1"> <xsl:if test="child::a"> <xsl:apply-templates select="a" mode="t"/> </xsl:if> The xsl:if here soes nothing at all this is equivalent to <xsl:template match="r1"> <xsl:apply-templates select="a" mode="t"/> and by specifying select="a" you are selecting all the a elements to be processed first, before any other elements. You do not want that, so select all children, not just a ones, then they will be processed in the natural order. <xsl:template match="r1"> <xsl:apply-templates/> </xsl:template> then have templates for a and test that do the right thing <xsl:template match="a"> <fo:block><xsl:number/>: <xsl:apply-templates/></fo:block> </xsl:template> <xsl:template match="text"> <fo:block><xsl:apply-templates/></fo:block> </xsl:template> which is exactly Michael's suggestion in the message that you quoted. David
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] testing for position of a, Michael Kay | Thread | Re: [xsl] testing for position of a, ms |
Re: [xsl] FO and continued, J.Pietschmann | Date | RE: [xsl] testing for position of a, Michael Kay |
Month |