You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@xalan.apache.org by "Mukul Gandhi (Jira)" <ji...@apache.org> on 2024/06/22 06:18:00 UTC

[jira] [Resolved] (XALANJ-2752) unable to parse an xpath 3 map expression

     [ https://issues.apache.org/jira/browse/XALANJ-2752?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Mukul Gandhi resolved XALANJ-2752.
----------------------------------
    Resolution: Fixed

I'm resolving this issue as fixed. The fix for this issue, has been committed to Xalan-J dev repos branch xalan-j_xslt3.0.

> unable to parse an xpath 3 map expression
> -----------------------------------------
>
>                 Key: XALANJ-2752
>                 URL: https://issues.apache.org/jira/browse/XALANJ-2752
>             Project: XalanJ2
>          Issue Type: Task
>      Security Level: No security risk; visible to anyone(Ordinary problems in Xalan projects.  Anybody can view the issue.) 
>          Components: Xalan-interpretive, XPath
>            Reporter: Mukul Gandhi
>            Assignee: Mukul Gandhi
>            Priority: Major
>
> The following XSL 3.0 stylesheet, doesn't work with Xalan-J's current implementation on dev repos branch xalan-j_xslt3.0:
> <?xml version="1.0" encoding="utf-8"?>
> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"  
>                         xmlns:map="http://www.w3.org/2005/xpath-functions/map"
>                         version="3.0"
>                         exclude-result-prefixes="map">
>   
>   <xsl:output method="xml" indent="yes"/>
>   
>   <xsl:template match="/">
>     <map>
>        <xsl:variable name="map1" select="map {0 : 'hello', 1 : 'there', 2 : ('yes','no')}"/>
> 	   <xsl:for-each select="map:keys($map1)">
> 	     <entry key="{.}" value="{map:get($map1, .)}"/>
> 	   </xsl:for-each>
> 	</map>
>   </xsl:template>
> </xsl:stylesheet>
> Xalan-J seems to have issues, parsing map entry value ('yes','no').
> But as a workaround, the following works though:
> <xsl:variable name="seq1" select="('yes','no')"/>
> <xsl:variable name="map1" select="map {0 : 'hello', 1 : 'there', 2 : $seq1}"/>
> (i.e, if the mentioned map entry value is, referred from an XSL variable) 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@xalan.apache.org
For additional commands, e-mail: dev-help@xalan.apache.org