|
|
What this is
This file is included in the DevDaily.com
"Java Source Code
Warehouse" project. The intent of this project is to help you "Learn
Java by Example" TM.
Other links
The source code
<xsl:stylesheet version = '1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform' xmlns:msxsl="urn:schemas-microsoft-com:xslt">
<xsl:output method="html" encoding="ISO-8859-1"/>
<xsl:key name="cat" match="category" use="@name"/>
<xsl:template match="/">
<xsl:for-each select="site">
<html>
<head>
<title>updates
<style>@import url("web/site.css");
</head>
<body>
<h1 class="title">updates
<p class="bodyText">
<table width="100%" border="0" cellspacing="1" cellpadding="2">
<xsl:for-each select="category-def">
<xsl:sort select="@label" order="ascending" case-order="upper-first"/>
<xsl:sort select="@name" order="ascending" case-order="upper-first"/>
<xsl:if test="count(key('cat',@name)) != 0">
<tr class="header">
<td class="sub-header" width="30%">
<xsl:value-of select="@name"/>
</td>
<td class="sub-header" width="70%">
<xsl:value-of select="@label"/>
</td>
</tr>
<xsl:for-each select="key('cat',@name)">
<xsl:sort select="ancestor::feature//@version" order="ascending"/>
<xsl:sort select="ancestor::feature//@id" order="ascending" case-order="upper-first"/>
<tr>
<xsl:choose>
<xsl:when test="(position() mod 2 = 1)">
<xsl:attribute name="class">dark-row
</xsl:when>
<xsl:otherwise>
<xsl:attribute name="class">light-row
</xsl:otherwise>
</xsl:choose>
<td class="log-text" id="indent">
<xsl:choose>
<xsl:when test="ancestor::feature//@label">
<a href="{ancestor::feature//@url}">
<br/>
<div id="indent">
(<xsl:value-of select="ancestor::feature//@id"/> - )
</div>
</xsl:when>
<xsl:otherwise>
<a href="{ancestor::feature//@url}"> -
</xsl:otherwise>
</xsl:choose>
<br />
</td>
<td>
<table>
<xsl:if test="ancestor::feature//@os">
<tr>| Operating Systems: |
<td class="log-text" id="indent"> |
</tr>
</xsl:if>
<xsl:if test="ancestor::feature//@ws">
<tr>Windows Systems: |
<td class="log-text" id="indent">
</tr>
</xsl:if>
<xsl:if test="ancestor::feature//@nl">
<tr>Languages: |
<td class="log-text" id="indent">
</tr>
</xsl:if>
<xsl:if test="ancestor::feature//@arch">
<tr>Architecture: |
<td class="log-text" id="indent">
</tr>
</xsl:if>
</table>
</td>
</tr>
</xsl:for-each>
<tr>
|
|
</xsl:if>
</xsl:for-each>
<xsl:if test="count(feature) > count(feature/category)">
<tr class="header">
<td class="sub-header" colspan="2">
Uncategorized
</td>
</tr>
</xsl:if>
<xsl:choose>
<xsl:when test="function-available('msxsl:node-set')">
<xsl:variable name="rtf-nodes">
<xsl:for-each select="feature[not(category)]">
<xsl:sort select="@id" order="ascending" case-order="upper-first"/>
<xsl:sort select="@version" order="ascending" />
<xsl:value-of select="."/>
<xsl:copy-of select="." />
</xsl:for-each>
</xsl:variable>
<xsl:variable name="myNodeSet" select="msxsl:node-set($rtf-nodes)/*"/>
<xsl:for-each select="$myNodeSet">
<tr>
<xsl:choose>
<xsl:when test="position() mod 2 = 1">
<xsl:attribute name="class">dark-row
</xsl:when>
<xsl:otherwise>
<xsl:attribute name="class">light-row
</xsl:otherwise>
</xsl:choose>
<td class="log-text" id="indent">
<xsl:choose>
<xsl:when test="@label">
<a href="{@url}">