Subject: Re: [xsl] Using QNames as keys in maps From: "Michael Kay mike@xxxxxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> Date: Thu, 15 Feb 2018 09:50:56 -0000 |
> But I would have expected this to work also (but it doesnbt): > > <xsl:template match="/"> > <xsl:variable name="qmap" as="map(xs:QName, item())" select="map{ Q{}xx: 'aaa' }"/> > <RESULT size="{map:size($qmap)}"> > <xsl:value-of select="map:get($qmap, Q{}xx)"/> > </RESULT> > </xsl:template> The expression xx means ./child::xx, it does not mean the QName ("", "xx"); and the same remains true if you write it as Q{}xx. Bare names in XPath expressions are short-hand for a selection on the child axis. It's a shame that we didn't add a QName constructor function taking an EQName as input, something like QName("{}xx"); but that wouldn't be very much of a convenience over QName("", "xx") unless you are reading the EQName from somewhere else. Michael Kay Saxonica
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] Using QNames as keys in maps, Erik Siegel erik@xxx | Thread | Re: [xsl] Using QNames as keys in m, Martin Honnen martin |
[xsl] Using QNames as keys in maps, Erik Siegel erik@xxx | Date | Re: [xsl] Using QNames as keys in m, Martin Honnen martin |
Month |