XSLT and Axis selection

Subject: XSLT and Axis selection
From: <ashushujev@xxxxxxxxxxxx>
Date: Wed, 16 Jun 2004 14:44:01 +0200
Hi,

Im puzzled with the following XSL transformation. I want to be able to
find out the next element name in XML. If it matches output the content
of that element.

XML:
<?xml version="1.0"?>
<records>
    <record>
        <page>
            <id>1</id>
            <data1>100</data1>
            <data2>Mr. Joe Bloggs</data2>
        </page>
    </record>
</records>


XSL:
<xsl:template name="TransactionLine">
	<xsl:param name="TransactionTotal">2</xsl:param>
	<xsl:if test="number($TransactionTotal) > 0">
		<xsl:call-template name="Transaction">
			<xsl:with-param name="TransactionID" select="$TransactionTotal"/>
		</xsl:call-template>
		<xsl:call-template name="TransactionLine">
			<xsl:with-param name="TransactionTotal"
select="number($TransactionTotal) - 1"/>
		</xsl:call-template>
	</xsl:if>
</xsl:template>
<xsl:template name="Transaction">
	<xsl:param name="TransactionID"/>
        <xsl:for-each select="//record/page/*">
	    <xsl:if test="following::node()[name() =
concat('data',$TransactionID)">
                <xsl:value-of select="text()"/>
            </xsl:if>
        </xsl:for-each>
</xsl:template>

I would appreciate your comments.


Andrew

Current Thread