sorting, xslt 2.0

"Dave Pawson [email protected]" <[email protected]> Tue, 16 Mar 2021 16:08:10 -0000
Newsgroups gmane.text.xml.xsl.general.mulberrytech
Message-ID <[email protected]>
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: http://www.mulberrytech.com/xsl/xsl-list
EasyUnsubscribe: http://lists.mulberrytech.com/unsub/xsl-list/3329386
or by email: [email protected]
--~--