Abfrage mit xsl choose when if

Hallo, seid bitte milde mit mir, es ist mein erster Beitrag hier. Mein Anliegen ist die Abfrage aus einer Datenquelle mit xsl. Dabei wird choose, when, if… verwendet. Hintergrund ist, daß zu einem Objekt mehrere beschreibende Dokumente gehören, die wiederum aus Teilen bestehen (Dokumenttitel, Beschreibung, Verweise). Diese Dokumente zum Objekt können mehrfach vorkommen. Meine bisher geschriebene Abfrage funktioniert zwar, aber die Ergebnisse sind unsortiert und nicht komplett. Ich sende hier mal den script-Teil für die Abfrage und die Darstellungsstruktur, wie es aussehen soll. Vielleicht entdeckt ja ein Held unter euch prinzipielle Fehler im script.

Vielen Dank

<?xml version="1.0" encoding="utf-8"?>

<xsl:stylesheet version=“1.0” xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:cardoExtension="eo:helper"
xmlns:msxsl="urn:schemas-microsoft-com:xslt"
xmlns:idu=“urn:ikx:xslt”>
<msxsl:script language=“C#” implements-prefix=“idu”>

</msxsl:script>

	<!--Verknüpfte Dokumente, Anzeige nur wenn Prüfung positiv  -->
	<xsl:if test="//Root/DOCUMENTS/TITLE or //Root/DOCUMENTS/DESCRIPTION or //Root/DOCUMENTS/URL or //Root/DOCUMENTS/WEBLINK">
	<H3 style="color:#228B22"> Zugehoerige Dokumente:</H3>
		<table Border="0" cellspacing="10">
	<colgroup width="150"></colgroup>
	<colgroup width="500"></colgroup>
			<tr>
				<td align="left"   valign="top"><span style="font-size:100%"> Titel des Dokuments: </span></td>
				<td><span style="font-size:100%; color:#698B69">
																	<xsl:choose>
																		<xsl:when test="//Root/DOCUMENTS/TITLE">
																			<xsl:value-of select="//Root/DOCUMENTS/TITLE"/>
																		</xsl:when>
																		<xsl:otherwise>
																			<p> - </p>
																		</xsl:otherwise>
																	</xsl:choose>
																  </span>	
				</td>
			</tr>
			<tr>
				<td align="left" valign="top"><span style="font-size:100%"> Beschreibung: </span></td>
				<td><span style="font-size:100%; color:#698B69">
																	<xsl:choose>
																		<xsl:when test="//Root/DOCUMENTS/DESCRIPTION">
																			<p><xsl:value-of select="//Root//DOCUMENTS/DESCRIPTION"/></p>
																		</xsl:when>
																		<xsl:otherwise>
																			<p> - </p>
																		</xsl:otherwise>
																	</xsl:choose>
																    </span>																		
				</td>
			</tr>
			<tr>
				<td align="left"   valign="middle"><span style="font-size:100%"> Anlage : </span></td>
				<td><span style="font-size:100%; color:#698B69"><p>
																	<xsl:choose>
																		<xsl:when test="//Root/DOCUMENTS/URL">
																			<xsl:if test="//Root/DOCUMENTS/URL[@type='BLOB']">
																				<xsl:if test="//Root/DOCUMENTS/URL[@type='BLOB']/BlobData/FileContentInfo[@isWebImage='false']">
																					<xsl:for-each select="//Root/DOCUMENTS/URL[@type='BLOB']/BlobData/FileContentInfo[@isWebImage='false']/../..">
																						<xsl:sort select="BlobData/FileContentInfo/@name"/>
																						<div style="margin-bottom:10px;">
																							<xsl:call-template name="BlobData"/>
																						</div>
																					</xsl:for-each>
																				</xsl:if>
																				<xsl:if test="//Root/DOCUMENTS/URL[@type='BLOB']/BlobData/FileContentInfo[@isWebImage='true']">
																					<div>
																						<xsl:for-each select="//Root/DOCUMENTS/URL[@type='BLOB']/BlobData/FileContentInfo[@isWebImage='true']/../..">
																							<xsl:sort select="BlobData/FileContentInfo/@name"/>
																							<div style="float:left;padding-left:10px;">
																								<xsl:call-template name="BlobData"/>
																							</div>
																						</xsl:for-each>
																					</div>
																					<br clear="all"></br>
																				</xsl:if>
																			</xsl:if>
																		</xsl:when>
																		<xsl:otherwise>
																			<p> - </p> 
																		</xsl:otherwise>
																	</xsl:choose>
																</p></span>																		
				</td>
			</tr>
			<tr>
				<td align="left"   valign="middle"><span style="font-size:100%"> Web-Link: </span></td>
				<td><span style="font-size:100%; color:#698B69"><p>
																	<xsl:choose>
																		<xsl:when test="//Root/DOCUMENTS/WEBLINK">
																			<xsl:for-each select="//Root/DOCUMENTS/WEBLINK">
																				<a>
																					<xsl:attribute name="class">url</xsl:attribute>
																						<xsl:attribute name="href">
																							<xsl:value-of select="//Root//DOCUMENTS/WEBLINK"/>
																					    </xsl:attribute>
																						<br>
																							<xsl:value-of select="."/>
																						</br>
																				</a>
																				<br clear="all"></br>
																			</xsl:for-each>
																		</xsl:when>
																		<xsl:otherwise>
																			<p> - </p>
																		</xsl:otherwise>
																	</xsl:choose>
																</p></span>																		
				</td>
			</tr>
		</table>
		</xsl:if>