The following could be slimmed down a bit but is easy to alter if your content becomes more complicated. I changed from a 'for-each' to an apply-templates' but that's really a question of style really. The default template for text nodes which just copies them to the output is used for the main content, anything that needs special treatment has its own template.
Code:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<head><title>Paragraphs</title></head>
<body>
<xsl:apply-templates select="Content"/>
</body>
</html>
</xsl:template>
<xsl:template match="Content">
<xsl:apply-templates select="Paragraph"/>
</xsl:template>
<xsl:template match="Paragraph">
<xsl:if test="position() != 1">
<br/><br/>
</xsl:if>
<xsl:apply-templates/>
</xsl:template>
<xsl:template match="Link">
<a href="@href"><xsl:value-of select="text()"/></a>
</xsl:template>
</xsl:stylesheet>
--
Joe (
Microsoft MVP - XML)