Re: sorting, xslt 2.0

"Dave Pawson [email protected]" <[email protected]> Tue, 16 Mar 2021 16:20:08 -0000
Newsgroups gmane.text.xml.xsl.general.mulberrytech
Message-ID <[email protected]>
Thanks David, Martin.

<grin/> I'll get used to 2 eventually.

regards

On Tue, 16 Mar 2021 at 16:15, David Carlisle [email protected]
<[email protected]> wrote:
>
> possibly though, use a more conventional spelling of select
>
> On Tue, 16 Mar 2021 at 16:13, David Carlisle <[email protected]> wrote:
>>
>> lose the xsl:variable and use
>>
>> <xsl:sort sect="( fr/@sort, lower-case(substring(fr,1,1)))[1]"/>
>>
>> On Tue, 16 Mar 2021 at 16:08, Dave Pawson [email protected] <[email protected]> wrote:
>>>
>>> xml
>>>
>>> <term>
>>> <fr sort="">sourire</fr>
>>> ...
>>>   </term>
>>>
>>> context is term
>>> I want to sort on fr/@sort
>>>   or (if empty)
>>> <xsl:value-of select="(lower-case(substring(fr,1,1)))"/>
>>>
>>> error XTSE0010 Within xsl:for-each, xsl:sort elements must come before
>>> other instructions
>>>
>>>   <xsl:for-each select="term">
>>>    <xsl:variable name='sort'>
>>>     <xsl:choose>
>>>       <xsl:when test="fr/@sort">
>>> <xsl:value-of select="fr/@sort"/>
>>>       </xsl:when>
>>>       <xsl:otherwise>
>>> <xsl:value-of select="(lower-case(substring(fr,1,1)))"/>
>>> </xsl:otherwise>
>>>     </xsl:choose>
>>>     </xsl:variable>
>>>
>>>
>>> <xsl:sort select="$sort"/>
>>>
>>>
>>> Any suggestions for a workaround please?
>>>
>>> TiA
>>>
>>>
>>> --
>>> Dave Pawson
>>> XSLT XSL-FO FAQ.
>>> Docbook FAQ.
>>>
>>>
> XSL-List info and archive
> EasyUnsubscribe (by email)



-- 
Dave Pawson
XSLT XSL-FO FAQ.
Docbook FAQ.
--~----------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
EasyUnsubscribe: http://lists.mulberrytech.com/unsub/xsl-list/3329386
or by email: [email protected]
--~--