Re: [xsl] Sort List of Maps By Key Value

Subject: Re: [xsl] Sort List of Maps By Key Value
From: "Michael Kay mike@xxxxxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx>
Date: Sat, 29 Sep 2018 21:38:21 -0000
If you're in XSLT then you can also do

<xsl:for-each select="$maps">
  <xsl:sort select="?sortonme"/>
  <xsl:sequence select="func:operate-on-map(.)"/>
</xsl:for-each>

Michael Kay
Saxonica

> On 29 Sep 2018, at 19:32, Martin Honnen martin.honnen@xxxxxx
<xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote:
>
> On 29.09.2018 20:23, Martin Honnen martin.honnen@xxxxxx wrote:
>> On 29.09.2018 19:57, Eliot Kimber ekimber@xxxxxxxxxxxx wrote:
>>> Using XPath 3 maps:
>>>
>>> I have a list of maps where all the maps have a key on whose value I want
to sort the list of maps.
>> A list? What does that mean in the XPath type system, a sequence of maps,
i.e. map(*)*?
>> Can't you just use
>>   $maps => sort((), function($m) { $m?sortonme })
>> ?
>
> In Saxon with
http://saxonica.com/html/documentation/extensions/syntax-extensions/simple-in
line-functions.html (--allowSyntaxExtensions:on) you could shorten that to
>
>   $maps => sort((), fn{?sortonme})

Current Thread