我有以下XML结构如何基于存储节点集变量选择,当条件
<pages>
<page id="8992" filename="news7" extension=".aspx" title="News 7"
real="True" virtual="False" visible="True" day="18" month="3"
year="2010" />
<page id="8991" filename="news6" extension=".aspx" title="News 6"
real="True" virtual="False" visible="True" day="18" month="3"
year="2010" />
<page id="8990" filename="news5" extension=".aspx" title="News 5"
real="True" virtual="False" visible="True" day="18" month="3"
year="2010" />
<page id="8883" filename="news2" extension=".aspx" title="News 2"
real="True" virtual="False" visible="True" day="15" month="2"
year="2010" />
<page id="8989" filename="news4" extension=".aspx" title="News 4"
real="True" virtual="False" visible="True" day="18" month="3"
year="2009" />
</pages>
现在有一个变量
<xsl:variable name="valid_pages"/>
我想存储/页/页基于以下条件
<xsl:variable name="valid_pages">
<xsl:when test="count(/pages/page) < 2">
<xsl:value-of select="/pages/page[0]" />
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="/pages/page[position() > 2]" />
</xsl:otherwise>
</xsl:variable>
现在
当我使用
变量0<xsl:value-of select="count($valid_pages)" />
我得到一个错误
To use a result tree fragment in a path expression, first convert it to a node-set using the msxsl:node-set() function
好问题,+1。查看我的答案,获取简短的一行XPath表达式解决方案。 :) – 2011-03-18 16:04:26