如果第一个节点在XSLT中没有父元素,我怎么能找到?

时间:2016-08-26 20:57:42

标签: xpath xls

我是XSLT的新手,我有一个XML:

<ROWSET>
  <ROW>
    <a set of elements>, may or may not have parentnode element
  </ROW>
  <ROW>
    <a set of elements>, have parentnode element
  </ROW>
  <ROW>
    <a set of elements>, have parentnode element
  </ROW>
</ROWSET>

我想检查第一行是否有一个parentnode元素?剩下的ROW必须有parentnode元素。我用:

<xsl:if test="not (/ROWSET/ROW/PARENTNODE)">
   Do something
</xsl:if>

由于其余的ROW必须包含父节点,因此测试始终返回false。因此,我使用变量

<xsl:variable name="firstRow" select = "/ROWSET/ROW"/> 
<xsl:if test="not ($firstRow/PARENTNODE)">
   Do something
</xsl:if>

不幸的是,它总是返回false。如何确定第一行是否有父节点?

提前谢谢你,

1 个答案:

答案 0 :(得分:0)

我明白了。只需使用ROW的位置:

<xsl:variable name="firstRow" select = "/ROWSET/ROW[1]"/>