使用XSL将XML文档中的CDATA注释输出为HTML文本
如何使用XSL将XML文档中的CDATA注释输出为HTML文本,在项目中用到,特记录一下:
示例代码:
1. test.xml
<?xml version="1.0" encoding="gb2312"?> <?xml-stylesheet href="test.xsl" type="text/xsl"?> <entry> <title>entry with images</title> <date>August 09, 2003</date> <author>Kevin</author> <idnum>000033</idnum> <permalink>http://alazanto.org/xml/archives/000033.xml</permalink> <body xmlns:html="http://www.w3.org/1999/xhtml"><![CDATA[<p><img class="archive" align="right" src="http://alazanto.org/images/sample.jpg" alt="photograph of a flower, just for show"/>Mauris felis elit, varius quis, pulvinar vel, sodales vehicula, mi. Nunc elementum pharetra elit. </p>]]> </body> <more xmlns:html="http://www.w3.org/1999/xhtml"><![CDATA[]]></more> <comment-link>http://alazanto.org/xml/archives/000033_comments.xml</comment-link> <comment-count>6</comment-count> </entry>
2. test.xsl
<?xml version="1.0"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:template match="/entry"> <html> <head> </head> <body> <xsl:value-of select="title" /> <xsl:value-of select="body" disable-output-escaping="yes"/> </body> </html> </xsl:template> </xsl:stylesheet>
关键之外在于使用的命名空间xmlns:xsl=”http://www.w3.org/1999/XSL/Transform” 和输出时加上disable-output-escaping=”yes”
声明:转载原创文章时请注明:
文章转载自:快乐心情, 原文地址:使用XSL将XML文档中的CDATA注释输出为HTML文本
博客更新得挺勤的!
一时心血来潮 哈哈@dnfwg