[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: Using QNames as keys in maps
Am 15.02.2018 um 10:28 schrieb Erik Siegel erik@xxxxxxxxxxx: > > Im trying to set up a map(xs:QName, item()), in an XSLT 3.0 > stylesheet, but its very inconvenient. This works: > > (Running in oXygen 19.1 which reports Saxon 9.7.0.19, tried both PE > and EE) > > <xsl:template match="/"> > > <xsl:variable name="qmap" as="map(xs:QName, item())" select="map{ > QName((), 'xx'): 'aaa' }"/> > > <RESULT size="{map:size($qmap)}"> > > <xsl:value-of select="map:get($qmap, QName((), 'xx'))"/> > > </RESULT> > > </xsl:template> > > But I would have expected this to work also (but it doesnt): > > <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> > If you use Q{}xx then you don't construct a QName, instead you select any xx children of the context node. The only other option you have to construct a QName is xs:QName('xx').
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|