Subject: Re: [xsl] dynamic template caller problems From: "Dimitre Novatchev" <dnovatchev@xxxxxxxxx> Date: Sun, 30 Jul 2006 11:16:41 -0700 |
What is asked for is described here: http://fxsl.sf.net and here: http://www.idealliance.org/papers/extreme/proceedings/xslfo-pdf/2003/Nov atchev01/EML2003Novatchev01.pdf
-- Cheers, Dimitre Novatchev --------------------------------------- Truly great madness cannot be achieved without significant intelligence.
I got the following XML-File:
<root> <page1 template="template_a"> ... </page1> <page2 template="template_b"> ... </page2> <page3 template="template_b"> ... </page3> ... </root>
As you can see, the root element contains numerous nodes with different
node-names. These nodes have an attribute, called "template" which indicates with which XSL-Template they should be transformed.
node from a given path and also the related template.
I have already written a "Master"-XSL-File which gets already the requested
Now there's the problem to call the related template from the"Master"-XSL-File.
For example (this is my idea):
User request: /page2/
PHP & XSL-Solution returns /root/page2/ as the related XPath. (done)
XSL lookups related template: "template_b" (done)
XSL calls/applies the related template. (???)
Called template is used for the following transformations (done)
What my current xsl-file looks like:
...
<!-- "master" template - calls related template --> <xsl:template match="/">
...
<xsl:value-of select="$template" /> <!-- e.g. 'template_b' -->
<!-- This will not work, since name= always requires a QName :( --> <xsl:call-template name="$template" />
<!-- ??? how to call/apply the related template ??? -->
</xsl:template>
...
External stylesheet imported from master-file:
...
<xsl:template name="template_b"> <!-- what about match= here?? 'Cause this
template can be used for all nodes adding the attribute template="template_b" ... -->
Thanks in advance, S. Renault.<h1>template_b successfully called!</h1> </xsl:template>
<xsl:template name="template_a"...
My question is, how I realize this idea of a dynamic template caller best.
--
Der GMX SmartSurfer hilft bis zu 70% Ihrer Onlinekosten zu sparen! Ideal f|r Modem und ISDN: http://www.gmx.net/de/go/smartsurfer
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] dynamic template caller probl, Smoother | Thread | Re: [xsl] dynamic template caller p, David Carlisle |
[xsl] dynamic template caller probl, Smoother | Date | Re: [xsl] dynamic template caller p, Mukul Gandhi |
Month |