Convert the data in news.xml in to HTML, providing a very close approximation
of the existing newsflash.sgml (minor formatting changes only).
This commit is contained in:
parent
78d667f7e0
commit
dd53cadae7
Notes:
svn2git
2020-12-08 03:00:23 +00:00
svn path=/www/; revision=10198
2 changed files with 254 additions and 0 deletions
127
en/news/newsflash.xsl
Normal file
127
en/news/newsflash.xsl
Normal file
|
@ -0,0 +1,127 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1" ?>
|
||||
|
||||
<!-- $FreeBSD$ -->
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
|
||||
<xsl:import href="../includes.xsl"/>
|
||||
<xsl:import href="includes.xsl"/>
|
||||
|
||||
|
||||
<xsl:variable name="base" select="'..'"/>
|
||||
<xsl:variable name="title" select="'FreeBSD News Flash'"/>
|
||||
<xsl:variable name="date" select="'$FreeBSD$'"/>
|
||||
|
||||
<xsl:output type="html" encoding="iso-8859-1"/>
|
||||
|
||||
<xsl:template match="news">
|
||||
<html>
|
||||
|
||||
<xsl:copy-of select="$header1"/>
|
||||
|
||||
<body xsl:use-attribute-sets="att.body">
|
||||
|
||||
<xsl:copy-of select="$header2"/>
|
||||
|
||||
<!-- Notice how entity references in SGML become variable references
|
||||
in the stylesheet, and that the syntax for referring to variables
|
||||
inside an attribute is "{$variable}".
|
||||
|
||||
This is just dis-similar enough to Perl and the shell that you
|
||||
end up writing ${variable} all the time, and then scratch your
|
||||
head wondering why the stylesheet isn't working.-->
|
||||
|
||||
<!-- Also notice that because this is now XML and not SGML, empty
|
||||
elements, like IMG, must have a trailing "/" just inside the
|
||||
closing angle bracket, like this " ... />" -->
|
||||
<img src="{$base}/gifs/news.jpg" align="right" border="0" width="193"
|
||||
height="144" alt="FreeBSD News"/>
|
||||
|
||||
<p>FreeBSD is a rapidly developing operating system. Keeping up on
|
||||
the latest developments can be a chore! To keep on top of things,
|
||||
be sure and check this page periodically. Also, you may wish to
|
||||
subscribe to the
|
||||
<a href="{$base}/handbook/eresources.html#ERESOURCES-MAIL">freebsd-announce
|
||||
mailing list</a>.</p>
|
||||
|
||||
<p>For latest news of FreeBSD Java Project please visit
|
||||
<a href="{$base}/java/newsflash.html">FreeBSD/Java NewsFlash</a>
|
||||
page.</p>
|
||||
|
||||
<p>For a detailed description of past, present, and future releases,
|
||||
see the <strong><a href="{$base}/releases/index.html">Release
|
||||
Information</a></strong> page.</p>
|
||||
|
||||
<p>For FreeBSD Security Advisories, please refer to the
|
||||
<a href="{$base}/security/#adv">Security Information</a> page.</p>
|
||||
|
||||
<xsl:apply-templates select="descendant::month"/>
|
||||
|
||||
<p>Older announcements:
|
||||
<a href="2000/index.html">2000</a>,
|
||||
<a href="1999/index.html">1999</a>,
|
||||
<a href="1998/index.html">1998</a>,
|
||||
<a href="1997/index.html">1997</a>,
|
||||
<a href="1996/index.html">1996</a></p>
|
||||
|
||||
<xsl:copy-of select="$newshome"/>
|
||||
<xsl:copy-of select="$footer"/>
|
||||
</body>
|
||||
</html>
|
||||
</xsl:template>
|
||||
|
||||
<!-- Everything that follows are templates for the rest of the content -->
|
||||
|
||||
<xsl:template match="month">
|
||||
<h1><xsl:value-of select="name"/>
|
||||
<xsl:text> </xsl:text>
|
||||
<xsl:value-of select="ancestor::year/name"/></h1>
|
||||
|
||||
<ul>
|
||||
<xsl:apply-templates select="descendant::day"/>
|
||||
</ul>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="day">
|
||||
<xsl:apply-templates select="event"/>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="event">
|
||||
<li>
|
||||
<a>
|
||||
<xsl:attribute name="name">
|
||||
<xsl:call-template name="generate-event-anchor"/>
|
||||
</xsl:attribute>
|
||||
</a>
|
||||
|
||||
<p><b><xsl:value-of select="ancestor::day/name"/>
|
||||
<xsl:text> </xsl:text>
|
||||
<xsl:value-of select="ancestor::month/name"/>,
|
||||
<xsl:value-of select="ancestor::year/name"/>:</b><xsl:text> </xsl:text>
|
||||
<xsl:apply-templates select="p"/>
|
||||
</p>
|
||||
|
||||
</li>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="date"/> <!-- Deliberately left blank -->
|
||||
|
||||
<!-- When the href attribute contains a '$base', expand it to the current
|
||||
value of the $base variable. -->
|
||||
|
||||
<!-- All your $base are belong to us. Ho ho ho -->
|
||||
<xsl:template match="a">
|
||||
<a><xsl:attribute name="href">
|
||||
<xsl:choose>
|
||||
<xsl:when test="contains(@href, '$base')">
|
||||
<xsl:value-of select="concat(substring-before(@href, '$base'), $base, substring-after(@href, '$base'))"/>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:value-of select="@href"/>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:attribute>
|
||||
<xsl:apply-templates/>
|
||||
</a>
|
||||
</xsl:template>
|
||||
</xsl:stylesheet>
|
127
en/news/oldnewsflash.xsl
Normal file
127
en/news/oldnewsflash.xsl
Normal file
|
@ -0,0 +1,127 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1" ?>
|
||||
|
||||
<!-- $FreeBSD$ -->
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
||||
|
||||
<xsl:import href="../includes.xsl"/>
|
||||
<xsl:import href="includes.xsl"/>
|
||||
|
||||
|
||||
<xsl:variable name="base" select="'..'"/>
|
||||
<xsl:variable name="title" select="'FreeBSD News Flash'"/>
|
||||
<xsl:variable name="date" select="'$FreeBSD$'"/>
|
||||
|
||||
<xsl:output type="html" encoding="iso-8859-1"/>
|
||||
|
||||
<xsl:template match="news">
|
||||
<html>
|
||||
|
||||
<xsl:copy-of select="$header1"/>
|
||||
|
||||
<body xsl:use-attribute-sets="att.body">
|
||||
|
||||
<xsl:copy-of select="$header2"/>
|
||||
|
||||
<!-- Notice how entity references in SGML become variable references
|
||||
in the stylesheet, and that the syntax for referring to variables
|
||||
inside an attribute is "{$variable}".
|
||||
|
||||
This is just dis-similar enough to Perl and the shell that you
|
||||
end up writing ${variable} all the time, and then scratch your
|
||||
head wondering why the stylesheet isn't working.-->
|
||||
|
||||
<!-- Also notice that because this is now XML and not SGML, empty
|
||||
elements, like IMG, must have a trailing "/" just inside the
|
||||
closing angle bracket, like this " ... />" -->
|
||||
<img src="{$base}/gifs/news.jpg" align="right" border="0" width="193"
|
||||
height="144" alt="FreeBSD News"/>
|
||||
|
||||
<p>FreeBSD is a rapidly developing operating system. Keeping up on
|
||||
the latest developments can be a chore! To keep on top of things,
|
||||
be sure and check this page periodically. Also, you may wish to
|
||||
subscribe to the
|
||||
<a href="{$base}/handbook/eresources.html#ERESOURCES-MAIL">freebsd-announce
|
||||
mailing list</a>.</p>
|
||||
|
||||
<p>For latest news of FreeBSD Java Project please visit
|
||||
<a href="{$base}/java/newsflash.html">FreeBSD/Java NewsFlash</a>
|
||||
page.</p>
|
||||
|
||||
<p>For a detailed description of past, present, and future releases,
|
||||
see the <strong><a href="{$base}/releases/index.html">Release
|
||||
Information</a></strong> page.</p>
|
||||
|
||||
<p>For FreeBSD Security Advisories, please refer to the
|
||||
<a href="{$base}/security/#adv">Security Information</a> page.</p>
|
||||
|
||||
<xsl:apply-templates select="descendant::month"/>
|
||||
|
||||
<p>Older announcements:
|
||||
<a href="2000/index.html">2000</a>,
|
||||
<a href="1999/index.html">1999</a>,
|
||||
<a href="1998/index.html">1998</a>,
|
||||
<a href="1997/index.html">1997</a>,
|
||||
<a href="1996/index.html">1996</a></p>
|
||||
|
||||
<xsl:copy-of select="$newshome"/>
|
||||
<xsl:copy-of select="$footer"/>
|
||||
</body>
|
||||
</html>
|
||||
</xsl:template>
|
||||
|
||||
<!-- Everything that follows are templates for the rest of the content -->
|
||||
|
||||
<xsl:template match="month">
|
||||
<h1><xsl:value-of select="name"/>
|
||||
<xsl:text> </xsl:text>
|
||||
<xsl:value-of select="ancestor::year/name"/></h1>
|
||||
|
||||
<ul>
|
||||
<xsl:apply-templates select="descendant::day"/>
|
||||
</ul>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="day">
|
||||
<xsl:apply-templates select="event"/>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="event">
|
||||
<li>
|
||||
<a>
|
||||
<xsl:attribute name="name">
|
||||
<xsl:call-template name="generate-event-anchor"/>
|
||||
</xsl:attribute>
|
||||
</a>
|
||||
|
||||
<p><b><xsl:value-of select="ancestor::day/name"/>
|
||||
<xsl:text> </xsl:text>
|
||||
<xsl:value-of select="ancestor::month/name"/>,
|
||||
<xsl:value-of select="ancestor::year/name"/>:</b><xsl:text> </xsl:text>
|
||||
<xsl:apply-templates select="p"/>
|
||||
</p>
|
||||
|
||||
</li>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="date"/> <!-- Deliberately left blank -->
|
||||
|
||||
<!-- When the href attribute contains a '$base', expand it to the current
|
||||
value of the $base variable. -->
|
||||
|
||||
<!-- All your $base are belong to us. Ho ho ho -->
|
||||
<xsl:template match="a">
|
||||
<a><xsl:attribute name="href">
|
||||
<xsl:choose>
|
||||
<xsl:when test="contains(@href, '$base')">
|
||||
<xsl:value-of select="concat(substring-before(@href, '$base'), $base, substring-after(@href, '$base'))"/>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:value-of select="@href"/>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:attribute>
|
||||
<xsl:apply-templates/>
|
||||
</a>
|
||||
</xsl:template>
|
||||
</xsl:stylesheet>
|
Loading…
Reference in a new issue