<?xml version="1.0"?>

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
	<xsl:include href="common.xsl"/>
	<xsl:template match="module">
		<HTML>
			<xsl:call-template name="header"/>
			<BODY>
				<H1>module <xsl:value-of select="@name"/></H1>

				<xsl:if test="include">
					<B>Includes </B>
					<xsl:apply-templates select="include">
						<xsl:sort select="@ref" data-type="text" order="ascending"/>
					</xsl:apply-templates>
				</xsl:if>

				<xsl:if test="graph">
					<xsl:if test="graph[@img]">
						<xsl:element name="IMG">
							<xsl:attribute name="SRC"><xsl:value-of select="/module/graph/@img"/></xsl:attribute>
						</xsl:element>
					</xsl:if>
					<xsl:if test="graph[@name]">
						<xsl:element name="A">
							<xsl:attribute name="HREF"><xsl:value-of select="/module/graph/@name"/></xsl:attribute>
						Class Hierarchy (Postscript)
						</xsl:element>
					</xsl:if>
				</xsl:if>
				
				<HR/>
				
				<xsl:copy-of select="text()"/>
				<xsl:if test="class">
					<H2>Classes</H2>
					<UL>
						<xsl:apply-templates select="class">
							<xsl:sort select="@ref" data-type="text" order="ascending"/>
						</xsl:apply-templates>
					</UL>
				</xsl:if>

				<xsl:if test="module">
					<H2>Modules</H2>
					<UL>
						<xsl:apply-templates select="module">
							<xsl:sort select="@ref" data-type="text" order="ascending"/>
						</xsl:apply-templates>
					</UL>
				</xsl:if>
				<xsl:call-template name="body"/>
			</BODY>
		</HTML>	
	</xsl:template>

	<xsl:template match="class">
		<LI><xsl:element name="A">
			<xsl:attribute name="HREF"><xsl:value-of select="@ref"/>.html</xsl:attribute>
			<xsl:value-of select="@ref"/>	
			</xsl:element>
		</LI>
	</xsl:template>

	<xsl:template match="module/module">
		<LI><xsl:element name="A">
			<xsl:attribute name="HREF"><xsl:value-of select="@ref"/>.html</xsl:attribute>
			<xsl:value-of select="@ref"/>	
			</xsl:element>
		</LI>
	</xsl:template>
</xsl:stylesheet>
