xslt变量xpath表达式

时间:2013-12-10 18:33:21

标签: xslt xpath

有人可以帮助我解决以下问题:

<xsl:variable name="filterByNameA" select="*/person[firstName=$fname] "/>

如果可能,我想这样做

 <xsl:variable name="filterByNameA" select="*/person[firstName=$fname] and */person[secondName=$fname]"/>

换句话说,我需要在一个变量中有两个条件才能获得具有相同personfirstName的所有secondName元素。

1 个答案:

答案 0 :(得分:4)

将两个测试放在同一个谓词中:

<xsl:variable name="filterByNameA" select="*/person[firstName=$fname and secondName=$fname]"/>

或等效地,使用两个谓词:

<xsl:variable name="filterByNameA" select="*/person[firstName=$fname][secondName=$fname]"/>

当你有这样的连续谓词时,每个谓词都会筛选出之前的列表,因此它们实际上是and一起编辑