Sorry about that probably FAQ. It turned out to be easy. Here's the
solution I just came up with if anyone is interested:
<xsl:stylesheet xmlns:xsl='http://www.w3.org/1999/XSL/Transform'
version='1.0'>
<xsl:output method='html'/>
<xsl:template match="/root">
<html>
<xsl:for-each select="//nd">
<xsl:sort select="."/>
<!-- <xsl:value-of select="."/><br/> -->
<xsl:if test="position()=1">
<xsl:call-template name="get_first">
<xsl:with-param name="f"><xsl:value-of
select="."/></xsl:with-param>
</xsl:call-template>
</xsl:if>
</xsl:for-each>
</html>
</xsl:template>
<xsl:template name="get_first">
<xsl:param name="f"></xsl:param>
<xsl:for-each select="//nd">
<xsl:sort select="."/>
<xsl:if test="position()=last()">
<xsl:call-template name="test_template">
<xsl:with-param name="b"><xsl:value-of
select="$f"/></xsl:with-param> <!-- first element -->
<xsl:with-param name="c"><xsl:value-of
select="."/></xsl:with-param> <!-- last element -->
</xsl:call-template>
</xsl:if>
</xsl:for-each>
</xsl:template>
<xsl:template name="test_template">
<xsl:param name="b"></xsl:param>
<xsl:param name="c"></xsl:param>
<xsl:value-of select="$b" /><br/>
<xsl:value-of select="$c" />
</xsl:template>
</xsl:stylesheet>