Subject: Re: xsl:include with parameter?
From: yguaba@xxxxxxxxxxxx
Date: Sat, 19 Jun 2004 12:09:20 -0300
|
On 18 Jun 2004 at 23:45, Michael Kay wrote:
> This is a FAQ, and the answer is that it can't be done. As in most
> other programming languages, you can't change the code of the program
> based on the data that it reads at run-time.
I apologize, Michael, but I did search the dpawson.co.uk web site and
also googled the subject, to no avail. I probably need to work on my
searching skills.
> You'll have to find a different solution to your problem. If you describe
> the problem, I expect someone will help with it.
Okay, here's the deal: I have several XSL stylesheets that do
different things [obviously] but use a couple of templates that are
common to more than one stylesheet and are thus kept in separate
"include" files. The choice of additional template to be included
depends on a few other factors that have to do with the specificities
of my system, and that would take a long time to explain but probably
wouldn't add much to this discussion.
All XML files are generated by PHP scripts; when an XML file is
generated, the script inserts an xml-stylesheet PI indicating which
ready-made XSL file is to be used for transformation. That XSL file,
in turn, calls (includes) another XSL file containing the additional
template(s).
For practical reasons, I have to rely on browser-based XSL
transformation. As I cannot use PHP's XSL processor, I can't have PHP
pass the URI of an include file as a parameter to the XSL file, which
I imagine would work.
Any suggestions are welcome. And if anyone thinks my whole idea is
stupid and that there would be a much simpler way to accomplish what
I want, feel free to say so bluntly.
Erik
|