Biks: xsl:sort Dynamische Sortierung

Beitrag lesen

Hallo liebe SELFHTML-Gemeinde,

ich stelle in einem Browser XML-Daten (Schallplatten-Infos) per XSL tabellarisch dar. Diese Daten will ich wahlweise nach unterschiedlichen Vorgaben sortieren (Label-Name, Katalog-Nummer, Künstlername). Aus einer HTML-Datei schreibe ich in die Variable "sortierung" eine Textfolge für das entsprechende Element ("labels/label/@name", "labels/label/@catno", "artists/artist/name").
Aus Gründen die ihr besser erklären könnt, muss ich einen relativ komplizierten xsl:sort-Ausdruck verwenden, den ich aber einfach nicht funktionsfähig bekomme:

_____mycoll_gallerie.xsl_____

  
<?xml version="1.0" encoding="UTF-8"?>  
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">  
<xsl:output method="html" encoding="UTF-8" />  
  
<xsl:param name="auswahl"/>  
<xsl:param name="sortierung"/>  
  
 <xsl:template match="/">  
  <xsl:choose>  
  
   <xsl:when test="$auswahl=''">  
    <xsl:apply-templates select="releases/release" >  
     <xsl:sort select="*[name() = $sortierung]" order="ascending" data-type="text" />  
    </xsl:apply-templates>  
   </xsl:when>  
  
  </xsl:choose>  
 </xsl:template>  

Die XML-Daten sehen beispielsweise so aus:

_____Biks-collection.xml_____

  
<release id="105393" status="Accepted">  
 <artists><artist><name>Noisy Youth</name></artist></artists>  
 <title>Midelicious EP</title>  
 <labels><label catno="ADV03" name="Adrenogroov" /></labels>  
</release>  

Ich hoffe, ihr versteht was ich meine, ansonsten fragt und/oder ladet euch die kompletten Daten runter (siehe URL).

Also, zusammenfassend meine Frage: Wie muss der xsl:sort-Ausdruck richtig formuliert werden?

Viele Grüße!

Biks