[XSL-LIST Mailing List Archive Home]
[By Thread]
[By Date]
Re: [xsl] testing for position of an element and displaying it accordingly
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 |
- RE: [xsl] testing for position of an element and displaying it accordingly, (continued)
- ms - Mon, 22 Jan 2007 09:55:09 -0800 (PST)
- Mark Carlson - Mon, 22 Jan 2007 11:12:10 -0800
- xslt . new - Mon, 22 Jan 2007 14:49:02 -0600
- Michael Kay - Mon, 22 Jan 2007 22:08:28 -0000
- David Carlisle - Mon, 22 Jan 2007 22:07:13 GMT <=
- ms - Thu, 25 Jan 2007 09:40:45 -0800 (PST)
- David Carlisle - Thu, 25 Jan 2007 18:15:47 GMT
- xslt . new - Thu, 25 Jan 2007 13:05:39 -0600
- ms - Thu, 25 Jan 2007 11:18:11 -0800 (PST)
|