在xpath查询中使用元素值的XSLT xpath



是否可以在xpath中使用元素值?我有以下xml:

<root>
 <html>
  <table class=" table search-results-property-table">  
                 ....
   <tr>
    <td>
     <span class="versal">HAS TAXONOMIC LEVEL</span>
    </td>
    <td>
     <ul>
      <li>
       <a class="versal" href="../../../agrovoc/en/page/c_11125">genus</a>
      </li>
     </ul>
    </td>
   </tr>
   <tr>
    <td>
     <span class="versal">IS USED AS</span>
    </td>
    <td>
     <ul>
      <li>
       <a class="versal" href="../../../agrovoc/en/page/c_1591">christmas trees</a>
      </li>
      <li>
       <a class="versal" href="../../../agrovoc/en/page/c_7776">timber trees</a>
      </li>
     </ul>
    </td>
   </tr>
    ....
  <table>
 </html>
 <html>
   [second data set...]
    ...
<root>

我想让元素值HAS TAXONOMIC LEVEL,并在xpath中使用。接下来是输出它们的值(例如HAS TAXONOMIC LEVEL),然后在HAS TAXONOMIC LEVEL下得到/ul/li/a -> genus下的兄弟姐妹td:后代的值,以及is USED AS下的圣诞树和木材树的值。所以我得到以下内容:

START HERE
=LDR  00000nam  2200000Ia 4500
=305  \$aHAS TAXONOMIC LEVEL$bgenus
=305  \$aIS USED AS$bchrismas trees
=305  \$aIS USED AS$btimber trees
START HERE
=LDR  00000nam  2200000Ia 4500
  (second data set and so on..)

请注意,我在这个文件中有多个xml格式的文档,如下所示:

<root>
 <html>
   [DATA SET 1]
         ....
 </html>
      <html>
   [DATA SET 2]
         ....
 </html>
       .....
</root>

谢谢,干杯!

试试这样写:

<xsl:template match="/root">
    <xsl:for-each select="html/table/tr[td/span='HAS TAXONOMIC LEVEL' or td/span='IS USED AS']">
        <xsl:variable name="span" select="td/span" />
        <xsl:for-each select="td/ul/li/a">
            <xsl:text>$new-line </xsl:text>
            <xsl:value-of select="$span"/>
            <xsl:text> $separator </xsl:text>
            <xsl:value-of select="."/>
            <xsl:text>&#10;</xsl:text>
        </xsl:for-each>
    </xsl:for-each> 
</xsl:template>

,然后在/ul/li/a

中获取它们下面的值

你错了:值不是"低于"它们;他们是兄弟姐妹td的后代。

相关内容

  • 没有找到相关文章

最新更新