|
[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: Map construction
Alernatively, use the xsl:map and xsl:map-entry instructions. Unlike map:merge
this doesn't allow any control over handling of duplicates (though we're
adding that as a Saxon extension in the next release).
>> <xsl:variable name="myMap" as="map(xs:string,xs:string+)">
<xsl:map>
>> <xsl:map:entry key="'key1'" select="'val11','val12'"/>
etc
Michael Kay
> On 18 Apr 2019, at 09:12, John Lumley john@xxxxxxxxxxxx
<xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote:
>
> On 18/04/2019 09:06, Christophe Marchand cmarchand@xxxxxxxxxx wrote:
>> Hello,
>>
>> is it legal to construct a map this way :
>>
>> <xsl:variable name="myMap" as="map(xs:string,xs:string+)">
>> <xsl:sequence select="map:entry('key1', ('val11','val12'))"/>
>> <xsl:sequence select="map:entry('key2', ('val21','val22'))"/>
>> </xsl:variable>
>>
>> Or should I construct a sequence of map:entry, and then apply map:merge on
that sequence ?
>
> You should use map:merge(map(*)*) on a sequence of maps - map:entry()
produces a single entry map. $myMap as written has type map(*)+ - a sequence
of single-entry maps. Use the $options second argument of map:merge() to
control behaviour when duplicate keys are detected...
>
>
>>
>> Thanks in advance,
>> Christophe
>
>
> --
> *John Lumley* MA PhD CEng FIEE
> john@xxxxxxxxxxxx <mailto:john@xxxxxxxxxxxx>
> on behalf of Saxonica Ltd
|
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
|

Cart








