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