计算来自不同节点的相等查找值。 XSLT

Count equal lookup values from different nodes. XSLT

计算来自不同节点的相等查找值。 XSLT

Count <book> 个具有相同查询值的节点​​ table.For 每个 <code> 我在数据库 table 中进行搜索以找到对应的值代码。这个来自查找的值我将保存到一个变量中不同的 <code> 数字可以具有相同的查找值(例如:/code=11 和 code=12 在 DB table 中具有相同的查找值所以我必须输出 2。对于 code=13 我必须输出 1。

在输出中,我必须显示不同查找值的计数器。

 <xsl:for-each select="bookstore/book/code">
  <xsl:variable name="$code" select ="lookup("code","book_code")"/>
    <xsl:value-of select="count(preceding-sibling::$code)"/>
 </xsl:for-each>

输入:

`

<?xml version="1.0" encoding="UTF-8"?>

<bookstore>
  <book>
    <code>11</code>
  </book>
  <book>
    <code>12</code>
  </book>
</bookstore>
<bookstore>
  <book>
    <code>13</code>
  </book>
</bookstore>

输出: 2个 1

在 XSLT 2 或 3 中你会想要

<xsl:for-each-group select="bookstore/book" group-by="key('lookup', code, $lookup-doc)">
  <xsl:value-of select="count(current-group())"/>
</xsl:for-each-group>

我认为,使用例如基于`.

的第二个文档的键

你还没有真正把第二个文档结构的细节或者你的伪代码用lookup拼出来,所以上面只能适配右键和键调用,如果你展示了文档结构辅助文档。