|
Subject: [xsl] replacing special characters in xsl:copy From: "Dunning, John" <jdunning@xxxxxxx> Date: Wed, 6 Jun 2007 12:37:30 -0400 |
Hello all,
I'm just beginning to get into XSLT 2.0 and I'm trying to copy the XML
source to an HTML report; what I would like to do is replace "<" and ">"
in the copied source with "<" and ">".
The soure looks similar to:
<task location="L:\\build-log.xml:48: " name="foo" time="0 seconds">
<message priority="warn"><![CDATA[ Text warning of foo ]]></message>
</task>
What I've got so far is this:
<xsl:output method="html" indent="yes"/>
<xsl:template match="/">
<html>
<body>
<xsl:for-each select="for $f in collection
('file:///c:/temp?select=*.xml;recurse=yes;on-error=ignore') return
saxon:discard-document($f)">
<xsl:choose>
<xsl:when test="//message[@priority='warn']">
<h2>Warning in <xsl:value-of select="document-uri(.)"/>:</h2>
<pre>
<xsl:copy-of
select="replace(//message[@priority='warn'],'<','<')"/>
</pre>
</xsl:when>
<xsl:otherwise>
<h2>No errors or warnings in <xsl:value-of
select="document-uri(.)"/></h2>
</xsl:otherwise>
</xsl:choose>
</xsl:for-each>
</body>
</html>
</xsl:template>
What my desired output would be is:
<h2>Warning in file:/c:/temp/foo.xml </h2>
<pre>
<task location="L:\\build-log.xml:48: " name="foo" time="0
seconds">
<message priority="warn"><![CDATA[ Text warning of foo
]]></message>
</task>
</pre>
Is what I'm trying to do possible? Am I on the right track? Any
suggestions gratefully received.
TIA,
John
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| RE: [xsl] following-sibling problem, Vasu Chakkera | Thread | RE: [xsl] replacing special charact, Michael Kay |
| Re: [xsl] Regular expressions in XS, David Carlisle | Date | RE: [xsl] replacing special charact, Michael Kay |
| Month |