summaryrefslogtreecommitdiffstats
path: root/packaging/bookinfo.xsl
diff options
context:
space:
mode:
Diffstat (limited to 'packaging/bookinfo.xsl')
-rw-r--r--packaging/bookinfo.xsl126
1 files changed, 61 insertions, 65 deletions
diff --git a/packaging/bookinfo.xsl b/packaging/bookinfo.xsl
index 178e80c..104c192 100644
--- a/packaging/bookinfo.xsl
+++ b/packaging/bookinfo.xsl
@@ -1,73 +1,69 @@
<!-- Transform rpm-info.xml into either "bookinfo" or "articleinfo" -->
<xsl:stylesheet version="1.0" xml:space="preserve" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
- <xsl:output encoding="UTF-8" indent="yes" method="xml" omit-xml-declaration="yes" standalone="no" version="1.0"/>
- <xsl:param name="lang" select="'en'"/>
- <xsl:param name="doctype" select="'bookinfo'"/>
+ <xsl:output encoding="UTF-8" indent="yes" method="xml" omit-xml-declaration="yes" standalone="no" version="1.0"/>
- <xsl:template match="/">
- <xsl:element name="{$doctype}">
- <title>
- <xsl:call-template name="get-title"/>
- </title>
- <copyright>
- <xsl:for-each select="/rpm-info/copyright/year"><year>
- <xsl:value-of select="node()"/>
- </year></xsl:for-each>
- <xsl:for-each select="/rpm-info/copyright/holder">
- <holder>
- <xsl:value-of select="node()"/>
- </holder>
- </xsl:for-each>
- </copyright>
- <authorgroup>
- <xsl:for-each select="/rpm-info/author">
- <author>
- <xsl:call-template name="human"/>
- </author>
- </xsl:for-each>
- <xsl:for-each select="/rpm-info/translator">
- <othercredit>
- <xsl:call-template name="human"/>
- <personalblurb>Translator</personalblurb>
- </othercredit>
- </xsl:for-each>
- <xsl:for-each select="/rpm-info/editor">
- <editor>
- <xsl:call-template name="human"/>
- </editor>
- </xsl:for-each>
- </authorgroup>
- <xsl:text disable-output-escaping="yes">&amp;LEGALNOTICE;</xsl:text>
- <revhistory>
- <xsl:for-each select="/rpm-info/changelog/revision[@role != 'rpm']">
- <revision>
- <revnumber><xsl:value-of select="@version"/></revnumber>
- <date><xsl:value-of select="@date"/></date>
- <authorinitials><xsl:value-of select="author/@initials"/></authorinitials>
- <revdescription>
- <para>
- <xsl:value-of select="details"/>
- </para>
- </revdescription>
- </revision>
- </xsl:for-each>
- </revhistory>
- </xsl:element>
- </xsl:template>
+ <xsl:param name="lang" select="'en'"/>
+ <xsl:param name="doctype" select="'bookinfo'"/>
+ <xsl:param name="who" select="''"/>
- <xsl:template name="get-title">
- <xsl:for-each select="/rpm-info/titles/translation">
- <xsl:choose>
- <xsl:when test="@lang = $lang">
- <xsl:value-of select="title"/>
- </xsl:when>
- </xsl:choose>
+ <xsl:template match="/">
+ <xsl:element name="{$doctype}">
+ <xsl:element name="title">
+ <xsl:call-template name="get-title"/>
+ </xsl:element>
+ <xsl:element name="copyright">
+ <xsl:for-each select="/rpm-info/copyright/year"><xsl:element name="year">
+ <xsl:value-of select="node()"/>
+ </xsl:element></xsl:for-each>
+ <xsl:for-each select="/rpm-info/copyright/holder">
+ <xsl:element name="holder">
+ <xsl:value-of select="node()"/>
+ </xsl:element>
</xsl:for-each>
- </xsl:template>
+ </xsl:element>
+ <xsl:element name="authorgroup">
+ <xsl:for-each select="/rpm-info/author">
+ <xsl:element name="author">
+ <xsl:call-template name="human"><xsl:with-param name="who" select="@worker"/></xsl:call-template>
+ </xsl:element>
+ </xsl:for-each>
+ <xsl:for-each select="/rpm-info/editor">
+ <xsl:element name="editor">
+ <xsl:call-template name="human"><xsl:with-param name="who" select="@worker"/></xsl:call-template>
+ </xsl:element>
+ </xsl:for-each>
+ </xsl:element>
+ <xsl:for-each select="/rpm-info/translator">
+ <othercredit class="translator">
+ <xsl:call-template name="human"><xsl:with-param name="who"
+ select="@worker"/></xsl:call-template>
+ </othercredit>
+ </xsl:for-each>
+ <xsl:text disable-output-escaping="yes">&amp;LEGALNOTICE;</xsl:text>
+ <xsl:element name="revhistory">
+ <xsl:for-each select="/rpm-info/changelog/revision[@role != 'rpm']">
+ <xsl:element name="revision">
+ <xsl:element name="revnumber">
+ <xsl:value-of select="@version"/>
+ </xsl:element>
+ <xsl:element name="date">
+ <xsl:value-of select="@date"/>
+ </xsl:element>
+ <xsl:element name="authorinitials">
+ <xsl:value-of select="author/@initials"/>
+ </xsl:element>
+ <xsl:element name="revdescription">
+ <xsl:element name="para">
+ <xsl:value-of select="details"/>
+ </xsl:element>
+ </xsl:element>
+ </xsl:element>
+ </xsl:for-each>
+ </xsl:element>
+ </xsl:element>
+ </xsl:template>
+
+ <xsl:include href="templates.xsl"/>
- <xsl:template name="human">
- <surname><xsl:value-of select="@surname"/></surname>
- <firstname><xsl:value-of select="@firstname"/></firstname>
- </xsl:template>
</xsl:stylesheet>