diff options
author | Paul W. Frields <stickster@gmail.com> | 2005-12-29 22:37:32 +0000 |
---|---|---|
committer | Paul W. Frields <stickster@gmail.com> | 2005-12-29 22:37:32 +0000 |
commit | e7a55bc0fad50b29b27c5287d75d4e92f9f66798 (patch) | |
tree | 096dbccbe7a0dcedf63a2977c005db522915f97d /packaging/bookinfo.xsl | |
parent | 01d8b2b7b2df62c91f12369e9c578666438117bf (diff) | |
download | fedora-doc-utils-e7a55bc0fad50b29b27c5287d75d4e92f9f66798.tar.gz fedora-doc-utils-e7a55bc0fad50b29b27c5287d75d4e92f9f66798.tar.xz fedora-doc-utils-e7a55bc0fad50b29b27c5287d75d4e92f9f66798.zip |
Reduce redundancy, and create new, stupider pet tricks
Diffstat (limited to 'packaging/bookinfo.xsl')
-rw-r--r-- | packaging/bookinfo.xsl | 126 |
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">&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">&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> |