<xsl:choose>
<xsl:when test="$glossary.sort != 0">
<xsl:apply-templates select="$entries" mode="glossary.as.list">
- <xsl:sort lang="{$language}"
- select="translate(glossterm, $lowercase,
- $uppercase)"/>
+ <xsl:sort lang="{$language}" select="translate(concat(@sortas, glossterm[not(parent::glossentry/@sortas) or parent::glossentry/@sortas = '']), &lowercase;, &uppercase;)"/>
</xsl:apply-templates>
</xsl:when>
<xsl:otherwise>
<xsl:choose>
<xsl:when test="$glossary.sort != 0">
<xsl:apply-templates select="$entries" mode="glossary.as.blocks">
- <xsl:sort lang="{$language}"
- select="translate(glossterm, $lowercase,
- $uppercase)"/>
+ <xsl:sort lang="{$language}" select="translate(concat(@sortas, glossterm[not(parent::glossentry/@sortas) or parent::glossentry/@sortas = '']), &lowercase;, &uppercase;)"/>
</xsl:apply-templates>
</xsl:when>
<xsl:otherwise>
<xsl:choose>
<xsl:when test="$glossary.sort != 0">
<xsl:apply-templates select="$entries" mode="glossary.as.blocks">
- <xsl:sort lang="{$language}"
- select="translate(glossterm, $lowercase,
- $uppercase)"/>
+ <xsl:sort lang="{$language}" select="translate(concat(@sortas, glossterm[not(parent::glossentry/@sortas) or parent::glossentry/@sortas = '']), &lowercase;, &uppercase;)"/>
</xsl:apply-templates>
</xsl:when>
<xsl:otherwise>
<xsl:choose>
<xsl:when test="$glossary.sort != 0">
<xsl:apply-templates select="$entries" mode="glossary.as.list">
- <xsl:sort lang="{$language}"
- select="translate(glossterm, $lowercase,
- $uppercase)"/>
+ <xsl:sort lang="{$language}" select="translate(concat(@sortas, glossterm[not(parent::glossentry/@sortas) or parent::glossentry/@sortas = '']), &lowercase;, &uppercase;)"/>
</xsl:apply-templates>
</xsl:when>
<xsl:otherwise>
<xsl:choose>
<xsl:when test="$glossary.sort != 0">
<xsl:apply-templates select="glossentry" mode="glossary.as.list">
- <xsl:sort lang="{$language}"
- select="translate(glossterm, $lowercase,
- $uppercase)"/>
+ <xsl:sort lang="{$language}" select="translate(concat(@sortas, glossterm[not(parent::glossentry/@sortas) or parent::glossentry/@sortas = '']), &lowercase;, &uppercase;)"/>
</xsl:apply-templates>
</xsl:when>
<xsl:otherwise>
<xsl:choose>
<xsl:when test="$glossary.sort != 0">
<xsl:apply-templates select="glossentry" mode="glossary.as.blocks">
- <xsl:sort lang="{$language}"
- select="translate(glossterm, $lowercase,
- $uppercase)"/>
+ <xsl:sort lang="{$language}" select="translate(concat(@sortas, glossterm[not(parent::glossentry/@sortas) or parent::glossentry/@sortas = '']), &lowercase;, &uppercase;)"/>
</xsl:apply-templates>
</xsl:when>
<xsl:otherwise>
<xsl:choose>
<xsl:when test="$glossary.sort != 0">
<xsl:apply-templates select="glossentry" mode="glossary.as.blocks">
- <xsl:sort lang="{$language}"
- select="translate(glossterm, $lowercase,
- $uppercase)"/>
+ <xsl:sort lang="{$language}" select="translate(concat(@sortas, glossterm[not(parent::glossentry/@sortas) or parent::glossentry/@sortas = '']), &lowercase;, &uppercase;)"/>
</xsl:apply-templates>
</xsl:when>
<xsl:otherwise>
<xsl:choose>
<xsl:when test="$glossary.sort != 0">
<xsl:apply-templates select="glossentry" mode="glossary.as.list">
- <xsl:sort lang="{$language}"
- select="translate(glossterm, $lowercase,
- $uppercase)"/>
+ <xsl:sort lang="{$language}" select="translate(concat(@sortas, glossterm[not(parent::glossentry/@sortas) or parent::glossentry/@sortas = '']), &lowercase;, &uppercase;)"/>
</xsl:apply-templates>
</xsl:when>
<xsl:otherwise>
<xsl:choose>
<xsl:when test="$glossary.sort != 0">
<xsl:for-each select="$collection//glossentry">
- <xsl:sort lang="{$language}"
- select="translate(glossterm, $lowercase,
- $uppercase)"/>
+ <xsl:sort lang="{$language}" select="translate(concat(@sortas, glossterm[not(parent::glossentry/@sortas) or parent::glossentry/@sortas = '']), &lowercase;, &uppercase;)"/>
<xsl:variable name="cterm" select="glossterm"/>
<xsl:if test="$terms[@baseform = $cterm or . = $cterm]">
<xsl:apply-templates select="."
<xsl:choose>
<xsl:when test="$glossary.sort != 0">
<xsl:for-each select="$collection//glossentry">
- <xsl:sort lang="{$language}"
- select="translate(glossterm, $lowercase,
- $uppercase)"/>
+ <xsl:sort lang="{$language}" select="translate(concat(@sortas, glossterm[not(parent::glossentry/@sortas) or parent::glossentry/@sortas = '']), &lowercase;, &uppercase;)"/>
<xsl:variable name="cterm" select="glossterm"/>
<xsl:if test="$terms[@baseform = $cterm or . = $cterm]">
<xsl:apply-templates select="."
<xsl:choose>
<xsl:when test="$glossary.sort != 0">
<xsl:for-each select="$collection//glossentry">
- <xsl:sort lang="{$language}"
- select="translate(glossterm, $lowercase,
- $uppercase)"/>
+
+ <xsl:sort lang="{$language}" select="translate(concat(@sortas, glossterm[not(parent::glossentry/@sortas) or parent::glossentry/@sortas = '']), &lowercase;, &uppercase;)"/>
<xsl:variable name="cterm" select="glossterm"/>
<xsl:if test="$terms[@baseform = $cterm or . = $cterm]">
<xsl:apply-templates select="."
<xsl:choose>
<xsl:when test="$glossary.sort != 0">
<xsl:for-each select="glossentry">
- <xsl:sort lang="{$language}"
- select="translate(glossterm, $lowercase, $uppercase)"/>
+ <xsl:sort lang="{$language}" select="translate(concat(@sortas, glossterm[not(parent::glossentry/@sortas) or parent::glossentry/@sortas = '']), &lowercase;, &uppercase;)"/>
<xsl:variable name="cterm" select="glossterm"/>
<xsl:if test="$terms[@baseform = $cterm or . = $cterm]">
<xsl:apply-templates select="." mode="auto-glossary-as-list"/>
<xsl:choose>
<xsl:when test="$glossary.sort != 0">
<xsl:for-each select="glossentry">
- <xsl:sort lang="{$language}"
- select="translate(glossterm, $lowercase, $uppercase)"/>
+ <xsl:sort lang="{$language}" select="translate(concat(@sortas, glossterm[not(parent::glossentry/@sortas) or parent::glossentry/@sortas = '']), &lowercase;, &uppercase;)"/>
<xsl:variable name="cterm" select="glossterm"/>
<xsl:if test="$terms[@baseform = $cterm or . = $cterm]">
<xsl:apply-templates select="." mode="auto-glossary-as-blocks"/>
<xsl:choose>
<xsl:when test="$glossary.sort != 0">
<xsl:apply-templates select="$entries" mode="glossary.as.list">
- <xsl:sort lang="{$language}"
- select="translate(glossterm, $lowercase,
- $uppercase)"/>
+ <xsl:sort lang="{$language}" select="translate(concat(@sortas, glossterm[not(parent::glossentry/@sortas) or parent::glossentry/@sortas = '']), &lowercase;, &uppercase;)"/>
</xsl:apply-templates>
</xsl:when>
<xsl:otherwise>
<xsl:choose>
<xsl:when test="$glossary.sort != 0">
<xsl:apply-templates select="$entries" mode="glossary.as.blocks">
- <xsl:sort lang="{$language}"
- select="translate(glossterm, $lowercase,
- $uppercase)"/>
+ <xsl:sort lang="{$language}" select="translate(concat(@sortas, glossterm[not(parent::glossentry/@sortas) or parent::glossentry/@sortas = '']), &lowercase;, &uppercase;)"/>
</xsl:apply-templates>
</xsl:when>
<xsl:otherwise>