xml – 打印XSL变量的值

有人可以告诉我如何在XSL转换中打印出一个变量?似乎是一件容易的事情,但我似乎不能这样做.这是我的代码:
<?xml version='1.0' encoding='UTF-8' ?>
<xsl:stylesheet version="1.0"
  xmlns:fn="http://www.w3.org/2005/02/xpath-functions" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

  <xsl:template name="ControlledListStructure">
    <xsl:param name="xmlElem" />
    <xsl:param name="dataName" />

    <xsl:element name="{$xmlElem}">
      1: <xsl:text>{$xmlElem}</xsl:text>.
      2: {$xmlElem}.
    </xsl:element>
  </xsl:template>

</xsl:stylesheet>

如果我使用xmlElem的值为“Wibble”(一个字符串而不是一个节点)调用此模板,我将得到以下输出:

<Wibble>
      1: {$xmlElem}.
      2: {$xmlElem}.
</Wibble>

所以我的参数是正确的,我只是无法正确访问.有人可以告诉我如何让$xmlElem正确打印,以便我看到:

<Wibble>
      1: Wibble.
      2: Wibble.
</Wibble>

感谢任何投入.

所有答案都缺少重要内容:进一步阅读:

Can someone please tell me how to
print out a variable in my XSL
transform? Seems like an easy enough
thing to do but I just can’t seem to
do it.

在XSLT 1.0中,根据它是否包含标量值(字符串,数字或布尔值)还是具有结构化值 – 一个节点集(从xml的一个或多个节点),可以生成一个<xsl:variable>的内容的两种主要方法文件):

> <xsl:value-of select="$yourscalarVariableName"/>使用它来产生标量值.实际生成一个包含这个标量值的文本节点.
> <xsl:copy-of select="$yourStructuredVariableName"/>使用它来生成包含在变量中的所有节点的副本.

非常重要的是要知道,如果xsl:变量包含一个节点列表,< xsl:value-of ...>使用指令,只会产生第一个节点的字符串值.这是一个经常提交的错误和常见问题.

有第三种方法:如果< xsl:variable>应用于生成属性:

<someLiteralResultElement someAttribute="{$theVariable}"/>

评估大括号(称为AVT — attribute-value-template)中的XPath表达式,并将结果放入属性值.

在XSLT 2.0中,< xsl:value-of ... />指令,当运行不兼容模式时,会生成一个文本节点列表,一个用于xsl:变量中包含的每个节点.当以兼容性模式运行(具有指定的属性version =“1.0”)时,< xsl:value-of>指令的行为方式与XSLT 1.0中的相同.

在Xslt 2.0< xsl:copy-of>行为方式与XSLT 1.0相同.然而,建议使用新的<xsl:sequence>指令,因为前者会产生每个节点的新副本,而< xsl:sequence>不产生节点的新副本.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


php输出xml格式字符串
J2ME Mobile 3D入门教程系列文章之一
XML轻松学习手册
XML入门的常见问题(一)
XML入门的常见问题(三)
XML轻松学习手册(2)XML概念
xml文件介绍及使用
xml编程(一)-xml语法
XML文件结构和基本语法
第2章 包装类
XML入门的常见问题(二)
Java对象的强、软、弱和虚引用
JS解析XML文件和XML字符串详解
java中枚举的详细使用介绍
了解Xml格式
XML入门的常见问题(四)
深入SQLite多线程的使用总结详解
PlayFramework完整实现一个APP(一)
XML和YAML的使用方法
XML轻松学习总节篇