|
XSLT的处理模型(10)
|
|
| |
|
来源:XSLT.org.cn 作者:XSLT专业站 发布时间:2007-08-04
|
|
XSLT的处理模型(10)
请注意上面的输出中,出现的第一个元素不是html而是test元素,因此不能满足条件(2)因此得到的输出默认为XML形式;转换结果如下:
<?xml version="1.0" encoding="UTF-16"?> <test>dfdf</test> <html>10 + 5 + 7 = 22</html>
但是如果将test元素去掉,即原来的XSLT文档变成:
<?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template match="/"> <html> <xsl:text/> <xsl:value-of select="//BBB[1]"/> <xsl:text> + </xsl:text> <xsl:value-of select="//BBB[2]"/> <xsl:text> + </xsl:text> <xsl:value-of select="//BBB[3]"/> <xsl:text> = </xsl:text> <xsl:value-of select="sum(//BBB)"/> </html> </xsl:template> </xsl:stylesheet>
这是的转换以后的代码就变成
<html>10 + 5 + 7 = 22</html>
即原来的xml处理指令消失,转换结果是一个HTML文档。
XSLT可以将结果树输出成为纯文本,如下的例子就表示输出的结果是一个纯文本: <?xml version="1.0" encoding="UTF-8"?> <!-- edited with XML Spy v3.5 NT (http://www.xmlspy.com by Ya (amonic) --> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="text"/> <xsl:template match="/"> <html> <xsl:text/> <xsl:value-of select="//BBB[1]"/> <xsl:text> + </xsl:text> <xsl:value-of select="//BBB[2]"/> <xsl:text> + </xsl:text> <xsl:value-of select="//BBB[3]"/> <xsl:text> = </xsl:text> <xsl:value-of select="sum(//BBB)"/> </html> </xsl:template> </xsl:stylesheet>
它的转换结果是:10 + 5 + 7 = 22,该结果是一个纯文本。
我们最后看一下encoding和indent属性
<?xml version="1.0" encoding="UTF-8"?> <!-- edited with XML Spy v3.5 NT (http://www.xmlspy.com by Ya (amonic) --> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="xml" indent="yes" encoding="utf-16"/> <xsl:template match="/"> <html> <xsl:text/> <xsl:value-of select="//BBB[1]"/> <xsl:text> + </xsl:text> <xsl:value-of select="//BBB[2]"/> <xsl:text> + </xsl:text> <xsl:value-of select="//BBB[3]"/> <xsl:text> = </xsl:text> <xsl:value-of select="sum(//BBB)"/> </html> </xsl:template> </xsl:stylesheet>
输出的结果是:
<?xml version="1.0" encoding="UTF-16"?> <html>10 + 5 + 7 = 22</html>
可以看到默认得编码已经变成utf-16,并且自动完成缩进。
标题: XSLT的处理模型(10)
关键字:模型 处理 select xsl:value-of xsl:text
|
| 上一篇:XSLT的处理模型(9) 下一篇:XSL基础教程(一) |
|
|
|
|
|