xsl-list
[Top] [All Lists]

Re: [xsl] Managing XSLTS for XSLFO - Shared templates and attribute sets

2008-03-27 04:43:09


right now, I make extensive use of attribute sets. 
They are the one xslt feature, that despite a decade of  daily xslt use, I
don't think I have ever used:-)


This works great, just as long as you don't want to share templates. 
Unfortunately, I am going to need to share some of those templates in 
the future, but the attributes used may be different (obviously, these 
attributes are defining styling).

what do you mean by "share" here (call them from two different places,
by call-template or apply-tempates?)

Personally I'd lose the  inflexible attribute set syntax and replace it
by a variable (or named template if you need to be more dynamic)


instead of

<xsl:attribute-set name="title-style">
  <xsl:attribute name="font-size">12pt</xsl:attribute>
  <xsl:attribute name="font-weight">bold</xsl:attribute>
</xsl:attribute-set>

have

<xsl:template name="title-style">
  <xsl:attribute name="font-size">12pt</xsl:attribute>
  <xsl:attribute name="font-weight">bold</xsl:attribute>
</xsl:template>


then instead of

<foo xsl:use-attribute-sets="title-style">

use

<foo>
<xsl:call-template name="title-style"/>

which has the advantage that you can wrap the call-template in
conditional code, or parameterise it, or make its result depend on the
current context, as required.

David



________________________________________________________________________
The Numerical Algorithms Group Ltd is a company registered in England
and Wales with company number 1249803. The registered office is:
Wilkinson House, Jordan Hill Road, Oxford OX2 8DR, United Kingdom.

This e-mail has been scanned for all viruses by Star. The service is
powered by MessageLabs. 
________________________________________________________________________

--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--