<?xml version="1.0" encoding="UTF-8" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<!--
	design.xslt - Provides the HTML formatting for CSpec XML documents
	
	Application - Foundry Project, CSE 784, Fall 2002
	Author		- Shanmuganathan Sivaraj
				  Syracuse University
				  Email : ssivaraj@syr.edu
-->

<xsl:template match="/">
	<html>
		<head>
			<!-- Style settings.Pretty much same as Behavior.xsl to maintain uniformity.But
				 have added some subsections and headings.
			 -->
			<style>
				body { margin-left:10%; font-family:Tahoma; font-size:16px; } h1 
				{font-size: 24px; } h2 { font-size: 20px; } h3 { font-size:18px; } 
				blockquote { margin-left: 2%; } .title { margin-left:-5%; margin-right: 0%; background-color:lightblue; } 
				.section { color:maroon; background-color:#ddffff; }
				.subsection { margin-left:2%; color:maroon; background-color:#ddffff; }
			</style>
		</head>
		<body>
			<h1 class="title">
				<i>Foundry Process - </i>
				<xsl:value-of select="//@manifest" />
			</h1>
			<xsl:value-of select="design/def" />
			<P/>
			 <xsl:value-of select="design/text" />
			
		<!-- Beginning Architecture Node -->	
			
		<h2 class="section">Architecture</h2>
			<xsl:for-each select="design/architecture/diagram/ref">
				<xsl:element name="a">
					<xsl:attribute name="href">
						<xsl:value-of select="text()" />
					</xsl:attribute>
					<xsl:value-of select="text()" />
				</xsl:element>
			</xsl:for-each>
			<P/>
			<I><xsl:value-of select="design/architecture/def" /></I>
			<P/>
			<xsl:value-of select="design/architecture/text" />


		<xsl:for-each select="design/architecture/*">

			<!-- Beginning Context Node	-->
		<xsl:if test="name() = 'context'">
		<h3 class="subsection">Context</h3>
			
			<blockquote>
				<xsl:for-each select="diagram/ref">
					<xsl:element name="a">
						<xsl:attribute name="href">
							<xsl:value-of select="text()" />
						</xsl:attribute>
						<xsl:value-of select="text()" />
					</xsl:element>
					<BR/>
				</xsl:for-each>
				<p/>
				<I><xsl:value-of select="def" /></I>
				<p/>
				<xsl:value-of select="text" />
			</blockquote>
		</xsl:if>

		<!-- End Context Node	-->
		
		<!-- Beginning Activities Node	-->
		
		<xsl:if test="name() = 'activities'">
		<h3 class="subsection">Activities</h3>
			<blockquote>
				<xsl:for-each select="diagram/ref">
					<xsl:element name="a">
						<xsl:attribute name="href">
							<xsl:value-of select="text()" />
						</xsl:attribute>
						<xsl:value-of select="text()" />
					</xsl:element>
					<BR/>
				</xsl:for-each>
				<p/>
				<I><xsl:value-of select="def" /></I>
				<p/>
				<xsl:value-of select="text" />
			</blockquote>			
		</xsl:if>
		
		<!-- End Activities Node	-->
		
		<!-- Beginning Structure Node	-->
		
		<xsl:if test="name() = 'structure'">
		<h3 class="subsection">Structure</h3>
			<blockquote>
				<xsl:for-each select="diagram/ref">
					<xsl:element name="a">
						<xsl:attribute name="href">
							<xsl:value-of select="text()" />
						</xsl:attribute>
						<xsl:value-of select="text()" />
					</xsl:element>
					<BR/>
				</xsl:for-each>	
				<p/>
				<I><xsl:value-of select="def" /></I>
				<p/>
				<xsl:value-of select="text" />
			</blockquote>	
		</xsl:if>	
		
		<!-- End Structure Node	-->
		
		<!-- Beginning Classes Node	-->

		<xsl:if test="name() = 'classes'">							
		<h3 class="subsection">Classes</h3>
			<blockquote>
				<xsl:for-each select="diagram/ref">
					<xsl:element name="a">
						<xsl:attribute name="href">
							<xsl:value-of select="text()" />
						</xsl:attribute>
						<xsl:value-of select="text()" />
					</xsl:element>
					<BR/>
				</xsl:for-each>
				<p/>
				<I><xsl:value-of select="def" /></I>
				<p/>
				<xsl:value-of select="text" />
			</blockquote>	
			<ul>
				<xsl:for-each select="class">
				<li>
					<xsl:element name="a">
						<xsl:attribute name="href">
							<xsl:value-of select="@ref" />
						</xsl:attribute>
					Class
					</xsl:element>	
					- 					
					<xsl:value-of select="def" />
					<blockquote>
						<xsl:value-of select="text" />
					</blockquote>
				</li>
				</xsl:for-each>
			</ul>
		</xsl:if>
	</xsl:for-each>	
	
		<!-- End Classes Node	-->
	
	
		<!-- Beginning Modules Node -->
	
			<h2 class="section">Modules</h2>
			<xsl:for-each select="design/modules/diagram/ref">
				<xsl:element name="a">
					<xsl:attribute name="href">
						<xsl:value-of select="text()" />
					</xsl:attribute>
					<xsl:value-of select="text()" />
				</xsl:element>
			</xsl:for-each>
			<P/>
			<I><xsl:value-of select="design/architecture/def" /></I>
			<P/>
			<xsl:value-of select="design/architecture/text" />
			
			<!-- Beginning Module Node	-->
			<ul>
				<xsl:for-each select="design/modules/module">
				<li>
					<xsl:element name="a">
						<xsl:attribute name="href">
							<xsl:value-of select="@ref" />
						</xsl:attribute>
					Module
					</xsl:element>	
					- 					
					<I><xsl:value-of select="def" /></I>
					<blockquote>
						<xsl:value-of select="text" />
					</blockquote>
				</li>
				</xsl:for-each>
			</ul>
			
			<!-- End Module Node	-->
			
		<!-- End Modules Node	-->

	
		<!--	Beginning Critical Issues Node	-->
		
			<h2 class="section">Critical Issues</h2>
			<xsl:for-each select="design/CriticalIssues/*">
				<ul>
					<li>
						<xsl:value-of select="name()" /> - <xsl:value-of select="def" />
						<blockquote>
							<xsl:value-of select="text" />
						</blockquote>
					</li>
				</ul>
			</xsl:for-each>
		
		<!-- End Critical Issues Node	-->
		
		
		<!--	Beginning Appendices Node	-->
			<h2 class="section">Appendices</h2>
			<ul>
				<xsl:for-each select="design/Appendices/Appendix">
				<li>
					<xsl:element name="a">
						<xsl:attribute name="href">
							<xsl:value-of select="@ref" />
						</xsl:attribute>
						<xsl:value-of select="@title" />
					</xsl:element>	
				</li>
				</xsl:for-each>
			</ul>
		<!-- End Appendices Node	-->
	
		</body>
	</html>
</xsl:template>
</xsl:stylesheet>

  