|
Subject: Re: [xsl] Varied Results with Different Versions of Xalan, But How? From: Abel Braaksma <abel.online@xxxxxxxxx> Date: Thu, 23 Aug 2007 19:54:27 +0200 |
Cheers, -- Abel Braaksma
I have an odd problem that seems unexplainable. I'm seeing different results of a simple transformation using xalan-j_2_6_0 (and prior versions) versus xalan-j_2_7_0. The xalan-j_2_7_0 version results in duplicated output. I'm using jdk1.5.0_12. Here are examples:
XML: <?xml version='1.0'?> <document> <permission> <grp gid="101" name="group1"/> <grp gid="102" name="group2"/> </permission> </document>
XSLT: <?xml version="1.0"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:output method="html" omit-xml-declaration="yes"/>
<xsl:variable name="theData" select="/document/permission"/>
<xsl:template match="/document">
<xsl:variable name="grpcount" select="count($theData/grp)"/> <xsl:call-template name="makeGroupList">
<xsl:with-param name="groupSize" select="$grpcount"/>
</xsl:call-template>
</xsl:template>
<xsl:template name="makeGroupList">
<xsl:param name="groupSize"/>
<select name="selectName" size="{$groupSize}" multiple="true">
<xsl:apply-templates select="$theData/grp">
<xsl:sort select="@name"/>
</xsl:apply-templates>
</select>
</xsl:template>
<xsl:template match="grp"> <xsl:variable name="gid" select="./@gid"/> <option value="{$gid}"><xsl:value-of select="@name"/></option> </xsl:template> </xsl:stylesheet>
Output xalan-j_2_7_0: <select multiple="true" size="2" name="selectName"> <option value="101">group1</option> <option value="101">group1</option> <option value="102">group2</option> <option value="102">group2</option> </select>
However, the output from j_2_6_0 is as expected:
Output xalan-j_2_6_0: <select multiple="true" size="2" name="selectName"> <option value="101">group1</option> <option value="102">group2</option> </select>
If I comment out the grpcount variable definition and pass a param with a literal value in the call to the makeGroupList template, both versions of xalan produce the same output.
I'd appreciate any insight into why this is happening.
Regards, Garrel Renick
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| [xsl] Varied Results with Different, Renick, Garrel | Thread | RE: [xsl] Varied Results with Diffe, Renick, Garrel |
| Re: [xsl] Using "match" and "name" , Andrew Welch | Date | RE: [xsl] Print parent text, Angela Williams |
| Month |