如何在 XSLT XPath 表达式中使用变量?

问题描述 投票:0回答:1
xml xpath xslt xslt-1.0
1个回答
1
投票

如何在 XSLT 中使用变量引用

XPath

select
属性中,使用
$var
(如您所做的那样):

 <xsl:value-of select="/path/to/element[@id=$var]"/>

以下是在 XSLT 中使用变量引用的一些其他方法...

匹配图案

XSLT 1.0:不允许变量

match

match属性的值包含a是错误的

VariableReference
.

XSLT 2.0:变量允许出现在

match
谓词或

模式可能以 id FO 或关键函数调用开始, 前提是要匹配的值以文字形式提供 或对变量或参数的引用,以及键名(在 key 函数的大小写)作为字符串文字提供。这些 模式永远不会匹配根不是树中的节点 文档节点。

XSLT 2.0 匹配谓词变量示例:

<xsl:variable name="globalVar" select="'value'"/>
<xsl:template match="abc[. = $globalVar]">

文字结果元素

文字结果元素中,使用属性值模板:

 <img src="{$var}/image.jpg"/>

元素或属性名称

在元素或属性名称中,使用

xsl:element
xsl:attribute
以及属性值模板:

 <xsl:element name="{$var}">content</xsl:element>

 <xsl:attribute name="{$var}">content</xsl:attribute>
© www.soinside.com 2019 - 2024. All rights reserved.