【发布时间】:2012-07-04 05:01:46
【问题描述】:
如果特定属性返回特定值,我想为变量赋值。在这里,如果 pr:all/[@pr:name=current()/@cx:name]/pr:properties/(@ls:middlename) 是“cengie”,我想在这里将值“young”分配给可变的“person” ”。这可能吗?
<xsl:variable
name='person' select='pr:all/[@pr:name=current()/@cx:name]/pr:properties/(@ls:middlename)'>
</xsl:variable>
【问题讨论】:
-
XSLT 不会“分配”和“返回”,它会匹配和转换。也许是措辞上的细微差别,也许是范式误解。
-
XSLT 谈到将变量“绑定”到一个值。 “绑定”和“赋值”之间的区别在于,变量一被声明就绑定到一个值,并且只要它在范围内,就一直绑定到相同的值。当然,绑定它的值可以由运行时计算的条件表达式确定。
-
感谢迈克尔的解释!
标签: xml xslt xpath xslt-1.0 xslt-2.0