document() function changed the context inside for-each
-------------------------------------------------------
Key: XALANJ-2543
URL: https://issues.apache.org/jira/browse/XALANJ-2543
Project: XalanJ2
Issue Type: Bug
Security Level: No security risk; visible to anyone (Ordinary problems in
Xalan projects. Anybody can view the issue.)
Components: XPath-function
Affects Versions: 2.7.1
Environment: Java 1.5 and 1.6
Reporter: Dean Wang
Priority: Minor
I don't know if this is default/standard behaviour. But Sun JRE work fine with
it, with Xalan 2.6.0
XSL:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:my="improvisation">
<my:order>
<order>3</order>
<order>4</order>
<order>2</order>
<order>1</order>
</my:order>
<xsl:template match="/">
<html>
<body>
<ul>
<!-- document('')/*/my:order/order -->
<xsl:for-each
select="document('')//my:order/order" >
<xsl:variable name="num" select="." />
<li>Order: <xsl:value-of select="$num"
/></li>
<xsl:for-each
select="/root/opt[@attr=$num]">
<li>Value: <xsl:value-of
select="." /></li>
</xsl:for-each>
</xsl:for-each>
</ul>
<ol>
<xsl:for-each select="/root/opt">
<li>XML: <xsl:value-of select="."
/></li>
</xsl:for-each>
</ol>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
XML:
<root>
<opt attr="1">a</opt>
<opt attr="2">b</opt>
<opt attr="3">c</opt>
<opt attr="4">d</opt>
</root>
Expected:
<xsl:for-each select="/root/opt[@attr=$num]">
return element from XML
Acutal:
<xsl:for-each select="/root/opt[@attr=$num]">
has context in document('') and return nothing
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]