aboutsummaryrefslogtreecommitdiff
path: root/share/sgml/templates.news-rdf.xsl
diff options
context:
space:
mode:
Diffstat (limited to 'share/sgml/templates.news-rdf.xsl')
-rw-r--r--share/sgml/templates.news-rdf.xsl75
1 files changed, 75 insertions, 0 deletions
diff --git a/share/sgml/templates.news-rdf.xsl b/share/sgml/templates.news-rdf.xsl
new file mode 100644
index 0000000000..9163f8ba87
--- /dev/null
+++ b/share/sgml/templates.news-rdf.xsl
@@ -0,0 +1,75 @@
+<?xml version="1.0" encoding="ISO-8859-1" ?>
+<!DOCTYPE xsl:stylesheet PUBLIC "-//FreeBSD//DTD FreeBSD XSLT 1.0 DTD//EN"
+ "http://www.FreeBSD.org/XML/www/share/sgml/xslt10-freebsd.dtd" [
+<!ENTITY title "FreeBSD News Flash RDF">
+<!ENTITY email "freebsd-www">
+]>
+
+<!-- $FreeBSD: www/share/sgml/templates.news-rdf.xsl,v 1.3 2009/06/02 17:33:09 gabor Exp $ -->
+
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"
+ xmlns:cvs="http://www.FreeBSD.org/XML/CVS">
+
+ <xsl:import href="http://www.FreeBSD.org/XML/www/lang/share/sgml/libcommon.xsl"/>
+
+ <xsl:output method="xml" indent="yes" encoding="&xml.encoding;"/>
+
+ <xsl:variable name="date">
+ <xsl:value-of select="//cvs:keyword[@name='freebsd']"/>
+ </xsl:variable>
+
+ <!-- Generate the main body of the RDF file -->
+ <xsl:template match="news">
+ <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns="http://my.netscape.com/rdf/simple/0.9/">
+
+ <channel>
+ <title>FreeBSD Project News</title>
+ <link>http://www.FreeBSD.org/news/</link>
+ <description>News from the FreeBSD Project</description>
+ </channel>
+
+ <!-- Only include the last 10 events -->
+ <xsl:apply-templates select="descendant::event[position() &lt;= 10]"/>
+
+ </rdf:RDF>
+ </xsl:template>
+
+ <!-- Generate the <item> elements and their content -->
+ <xsl:template match="event" xmlns="http://my.netscape.com/rdf/simple/0.9/">
+ <xsl:param name="year" select="../../../name" />
+ <xsl:param name="month" select="../../name" />
+ <xsl:param name="day" select="../name" />
+ <xsl:param name="this" select="." />
+ <xsl:param name="pos">
+ <xsl:for-each select="../event">
+ <xsl:if test=". = $this">
+ <xsl:value-of select="position()" />
+ </xsl:if>
+ </xsl:for-each>
+ </xsl:param>
+
+ <item>
+ <xsl:choose>
+ <xsl:when test="count(child::title)">
+ <title><xsl:value-of select="normalize-space(title)"/></title>
+ </xsl:when>
+ <xsl:otherwise>
+ <title><xsl:value-of select="normalize-space(p)"/></title>
+ </xsl:otherwise>
+ </xsl:choose>
+ <link>
+ <xsl:text>http://www.FreeBSD.org/news/newsflash.html#</xsl:text>
+ <xsl:call-template name="html-news-generate-anchor">
+ <xsl:with-param name="label" select="'event'" />
+ <xsl:with-param name="year" select="$year" />
+ <xsl:with-param name="month" select="$month" />
+ <xsl:with-param name="day" select="$day" />
+ <xsl:with-param name="pos" select="$pos" />
+ </xsl:call-template>
+ </link>
+ </item>
+ </xsl:template>
+
+ <xsl:template match="name | date"/>
+</xsl:stylesheet>