我需要测试以查看标记的值是否与我的变量匹配。我输入XML可能如下:匹配XSLT变量的值
<root>
<userid>user1<userid>
<performance>
<doOne>
</doOne>
</performance>
</root>
我已经创建了的userId
的一个逗号分隔的列表中的全局变量,我需要检查该用户是否可以执行doOne
,即
<xsl:variable name="performerable">
<perform name="doOne" users="user3, user6, user1"/>
<perform name="doTwo" users="user7, user2, user6"/>
</xsl:variable>
然而,当我检查用户是否在任何perform
的存在,我得到一个错误有以下设置:
<xsl:choose>
<xsl:when test="contains($performerable/perform[name='doOne'].users, 'user6')">
<accepted>
</xsl:when>
</xsl:choose>
的d通过Eclipse的XSL穿越 - 运行它,我得到如下:
javax.xml.transform.TransformerException: Expected ,, but found: .users
我正在使用XSLT 1.0。那么我怎么能做到这一点,因为'xsl:when'没有'select'表达式? – Malvon
@Malvon我编辑了解释'文档('')'技巧。 –