[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: misc. confusion on "footnote" handling
Hi Bruce, > I want a parameter -- called citation-class -- where one option is > author-year (what I've been working on), and another is "footnote." > > When the parameter is set to footnote, all citations get treated as > if they were a footnote (e.g. they become footnoted on output), > unless they are already in a footnote, in which case they just get > rendered. > > I'm thinking I need to be doing something like this: > > <xsl:template match="db:footnote|db:citation"> > <xsl:choose> > <xsl:when test="$class='footnote'"> > ... > </xsl:when> > <xsl:otherwise> > ... > </xsl:otherwise> > </xsl:choose> > </xsl:template> > > But I'm not sure quite what to do next, or b) if there a better way > to do this? Maybe somehow using modes? I'm not sure from your description what you're trying to do (what output you're trying to achieve). It's not clear whether you actually want a parameter (declared with <xsl:param>, set on the call with <xsl:with-param>) or you're using the term 'parameter' in a more descriptive way. Perhaps you want two different templates for the two different kinds of citation: <!-- citations appearing in footnotes --> <xsl:template match="db:footnote/db:citation"> ... </xsl:template> <!-- other citations --> <xsl:template match="db:citation"> ... </xsl:template> These could both 'call' the same code where they needed the same processing (whether by actually calling a template by name or by applying templates to the <citation> element using a different mode). For example: <!-- citations appearing in footnotes --> <xsl:template match="db:footnote/db:citation"> <xsl:apply-templates select="." mode="citation" /> </xsl:template> <!-- other citations --> <xsl:template match="db:citation"> <footnote> <xsl:apply-templates select="." mode="citation" /> </footnote> </xsl:template> <xsl:template match="db:citation" mode="citation"> ... </xsl:template> Cheers, Jeni --- Jeni Tennison http://www.jenitennison.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
|