xsl-list
[Top] [All Lists]

Re: [xsl] rendering xml fragment tree as syntax highlighted HTML

2007-01-12 10:10:19
The Xpath Visualizer is more than 6 years old now.

The XPath Vizualizer for Mozilla was produced later and is not using
any extension functions.

I also hope to be able to publish soon the XPath Visualizer for XPath
2.0 (it will soon be one year since this was produced), based on Saxon
8 .

All of these tools display XML documents (a la IE xml display) as well
as highlight results of evaluating XPath expressions.


--
Cheers,
Dimitre Novatchev
---------------------------------------
Truly great madness cannot be achieved without significant intelligence.
---------------------------------------
To invent, you need a good imagination and a pile of junk
-------------------------------------
You've achieved success in your field when you don't know whether what
you're doing is work or play

On 1/12/07, Christiane Fritze <fritze(_at_)bbaw(_dot_)de> wrote:
Hi all,

I want to copy a fragment tree from my source xml document using
<xsl:copy-of/> to the result html document.
This xml fragment should be rendered als well known code2html tools does
it for perl code etc.
It means at least all < and > have to be transformed into &lt; and &gt;

But how I have to handle my <xsl:copy-of> fragment to get the wanted result?


<!-- my XML -->

<?xml version="1.0" encoding="UTF-8"?>
<div0>
<entry key="Capriccio">
<form>
<orth>Capriccio</orth>
</form>
<sense>
<gramGrp>n.</gramGrp> virtuoses, einfallsreiches <seg
function="Mu|sikst">Musikst</seg>
<lb/> ueck, Uebernahme (18. Jh.) von gleichbed.<lb/> ital. <hi
rend="i">capriccio</hi>,
eigentl. <def>'Laune, Grille, <seg function="Ein|fall">Einfall</seg>
<lb/> '</def>; s. <hi rend="i">Kaprice</hi>.<lb/>
</sense>
</entry>
</div0>


<!-- my XSL -->

?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
version="2.0">
<xsl:output method="html" media-type="text/html"/>
<xsl:template match="div0">
<html>
<title>show XML tree</title>
<body>
<xsl:apply-templates mode="rendered"/>
<hr />
<xsl:apply-templates mode="structured"/>
</body>
</html>
</xsl:template>

<!-- rendering as a dictionary like layout -->
<xsl:template match="entry" mode="rendered">
<!-- some code, works fine -->
</xsl:template>

<!-- show the user the original xml code -->
<xsl:template match="entry" mode="structured">
<xsl:copy-of select="."/>
<tt>
<!-- ?? HOW to handle this result tree so that it can be shown in html? -->
</tt>
</xsl:template>
</xsl:stylesheet>


<!-- WANTED OUTPUT -->

<html>
<title>show XML tree</title>
<body>
<!-- some dictionary like rendered output -->
<tt>
&lt;entry key="Capriccio"&gt;<br />
&lt;form&gt;<br />
&lt;orth&gt;Capriccio&lt;/orth&gt;<br />
&lt;/form&gt;<br />
&lt;sense&gt;<br />
&lt;gramGrp&gt;n.&lt;/gramGrp&gt; virtuoses, einfallsreiches &lt;seg
function="Mu|sikst"&gt;Musikst&lt;/seg&gt;<br />
&lt;lb/&gt; ueck, Uebernahme (18. Jh.) von gleichbed.&lt;lb/&gt; ital.
&lt;hi rend="i"&gt;capriccio&lt;/hi&gt;,<br />
eigentl. &lt;def&gt;'Laune, Grille, &lt;seg
function="Ein|fall"&gt;Einfall&lt;/seg&gt;<br />
&lt;lb/&gt; '&lt;/def&gt;; s. &lt;hi
rend="i"&gt;Kaprice&lt;/hi&gt;.&lt;lb/&gt;<br />
&lt;/sense&gt;<br />
&lt;/entry&gt;<br />
</tt>
</body>
</html>

If the shown xml code is somehow colored it would be perfect.

Many thanks for any hint,

Regards,
Christiane




--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--



--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--