This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Use FXSL for this (Was: Re: question on calling templates)


--- "Rotkop, Eugene" <Eugene dot Rotkop at gs dot com> wrote:

 
> Hi,
> 
> I was wondering if there is a way to store template name in the
> variable and
> then call template.
> So, the sample XSL would be following:
> 
> <xsl:variable name="currentTemplate" select="'test'"/>
> <xsl:call-template name="$currentTemplate"/>
> 
> Seems like XSLT does not allow this. Am I using the wrong syntax? Can
> this
> be achieved in any other way?
> 
> The reason I am asking about this is that I am trying to use multiple
> templates to create
> header, body and footer for a web page. Header and footer stays the
> same for
> all the pages. However,
> body always changes. If I assign template names to header, footer and
> body,
> I can call them to apply these templates.
> I want to be able to call diffent body templates depending on the
> value
> of a
> variable.
> 
> Any help would be appreciated.
> 
> Thanks,
> Eugene


Hi Eugene,

What you want to do is possible in another way by using a template
reference to a template (that must match the reference and need not be
named).

This approach is in the base of the whole XSLT 1.0 functional
programming library FXSL. 

A number of articles about FXSL and functional programming in XSLT 1.0
are available at:

http://fxsl.sourceforge.net

I'd recommend specifically the first and second article (in that
order), which introduce the most basic concepts of higher-order
functions and provide the implementation of the most generic design
patterns -- folds (primitive recursion) over lists, strings and trees,
maps, iteration, currying and partial application.

The FXSL library contains useful functions for:

  - calculating various math functions and their inverse (e.g.
trigonometric, hyperb.trigonometric, exponential, logarithmic,... etc)
and for solving equations of one real variable, numerical
differentiation and integration.

  - random number generator, generating numbers according to
pre-defined distribution, randomising a list.

  - various text-processing -- tokenizing, text justification, spelling
checking/correction and generation of close words.

The FXSL library has three different editions, which support MSXML,
XALAN and SAXON. It can be downloaded at:

http://sourceforge.net/projects/fxsl/


 

=====
Cheers,

Dimitre Novatchev.
http://fxsl.sourceforge.net/ -- the home of FXSL

__________________________________________________
Do You Yahoo!?
Yahoo! Finance - Get real-time stock quotes
http://finance.yahoo.com

 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]