[libvirt] Generating our docs/search.php with xsltproc
Daniel Veillard
veillard at redhat.com
Thu Aug 2 10:45:26 UTC 2012
On Wed, Aug 01, 2012 at 06:19:46PM +0200, Martin Kletzander wrote:
> Hi everyone.
Re,
> TL;DR is there a way to keep PHP code untouched in XSL transformed XML?
I guess that you need a dose of "disable-output-escaping"
http://www.w3.org/TR/xslt#disable-output-escaping
so basically you import the PHP in text node untouched one way or
anover (double escape of input or XInclude of text part [1])
and then output those fragments with
<xsl:text disable-output-escaping="yes">
your PHP code ...
</xsl:text>
> For a while now, I'm trying to make our 'search.php' file generated like
> all the '*.html' files (with all the fancy stuff like up-to-date menu,
> headers and so on).
>
> The problem I've been facing looks like an easy and doable thing /at
> first/, but every normal approach I tried didn't work. I'm most probably
> doing something wrong. I haven't used XSLT that much and this is very
> badly google-able topic as lots of people are using XSL transformation
> *inside* PHP and mangling the search results in their benefit.
> I tried:
> - using CDATA
> - transforming the code with various elements
> - turning off output escaping
> - putting the code into another element
> - various combinations of previous things
> - and few others
Nice try, you looked in nearly all directions ;-)
> Now it looks like the only option is to put the code part into another
> file and inject it after the transformation, which is ugly, because it
> means lots of modification (and unnecessary lines of code) for one file
> (even though it would be applicable for all /possible/ future scripts).
>
> I know this is not the best place to ask this question, but since we
> have the web page generator using XSLT *and* it is for libvirt's
> benefit, someone on the list might help me.
One solution might be to XInclude [1] as text the php in the XML data,
and use HTML serialization of the XSLT output [2], but that still looks
error prone.
To be honnest i would not bother too much about making the output
generated by XSLT directly, concatenation at the shell/python/perl
would be just as good IMHO as long as we don't need to fix it too often :-)
Daniel
[1] http://www.w3.org/TR/xinclude/
[2] http://www.w3.org/TR/xslt#output
--
Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/
daniel at veillard.com | Rpmfind RPM search engine http://rpmfind.net/
http://veillard.com/ | virtualization library http://libvirt.org/
More information about the libvir-list
mailing list