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

Subject: Re: [xsl] Managing XSLTS for XSLFO - Shared templates and attribute sets
From: David Carlisle <davidc@xxxxxxxxx>
Date: Thu, 27 Mar 2008 11:42:39 GMT
> 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. 
________________________________________________________________________

Current Thread