XSL で以前の状態から内側のループ インデックスをインクリメントする方法。別のグローバル変数を最適に維持するか、組み込み関数を使用するかどうかにかかわらず、最善のアプローチは何でしょうか。私はXSLが初めてなので、提案してください
入力 XML
<A1>
<X1> ZERO </X1>
</A1>
<A1>
<X1> A </X1>
<X1> B </X1>
</A1>
<A1>
<X1> C </X1>
<X1> D </X1>
</A1>
<A1>
<X1> E </X1>
<X1> F </X1>
</A1>
期待される出力
Y1 1
Y1 2
Y1 3
Y1 4
Y1 5
Y1 6
次のXSLで私は得ています
Y1 1
Y1 2
Y1 1
Y1 2
Y1 1
Y1 2
.
<xsl:for-each select="A1">
<xsl:variable name="var:v50" select="position()" />
<xsl:variable name="var:v51" select="userVBScript:FctNotEqual(string(X1/text()),"ZERO")" />
<xsl:if test="$var:v51">
<xsl:for-each select="X1">
<xsl:variable name="var:v52" select="position()" />
<Y1>
<xsl:value-of select="$var:v52" />
</Y1>
</xsl:for-each>
</xsl:if>
</xsl:for-each>
サンプルコードで提案できますか。