変数$rows
には、何らかのソース XML にキーを設定するノード ID のリストがあります。
<row>
<node id="d0113" />
<node id="d0237" />
<node id="d0321" />
</row>
<row>
<node id="c0278" />
<node id="d0137" />
<node id="e0021" />
</row>
<row>
各を処理する前に、ノードセットに実際に存在するようにキー設定されたノードがあるかどうかをテストする良い方法は何$set
ですか?
私が思いついたのは
<xsl:for-each select="row">
<xsl:variable name="test">
<xsl:for-each select="node">
<xsl:value-of select="boolean($set//*[generate-id()=current()/@id]) * 1"/>
</xsl:for-each>
</xsl:variable>
<xsl:if test="$test>0">
<!-- go ahead and process the row -->
</xsl:if>
</xsl:for-each>