|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version='1.0'>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
XSLT Stylesheet DocBook -> LaTeX
|
|
Packit |
0f19cf |
############################################################################ -->
|
|
Packit |
0f19cf |
<xsl:param name="bibliography.tocdepth">5</xsl:param>
|
|
Packit |
0f19cf |
<xsl:param name="bibliography.numbered">1</xsl:param>
|
|
Packit |
0f19cf |
<xsl:param name="biblioentry.numbered" select="0"/>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
# biblio setup #
|
|
Packit |
0f19cf |
################ -->
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template name="biblio.setup">
|
|
Packit |
0f19cf |
<xsl:if test="$latex.biblio.style!='' and //bibliography">
|
|
Packit |
0f19cf |
<xsl:text>\bibliographystyle{</xsl:text>
|
|
Packit |
0f19cf |
<xsl:value-of select="$latex.biblio.style"/>
|
|
Packit |
0f19cf |
<xsl:text>}
</xsl:text>
|
|
Packit |
0f19cf |
</xsl:if>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
# biblio section #
|
|
Packit |
0f19cf |
################## -->
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template name="biblio.insert.title">
|
|
Packit |
0f19cf |
<xsl:param name="level" select="0"/>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:variable name="title.node" select="(title|bibliographyinfo/title)[1]"/>
|
|
Packit |
0f19cf |
<xsl:variable name="title.text">
|
|
Packit |
0f19cf |
<xsl:choose>
|
|
Packit |
0f19cf |
<xsl:when test="ancestor::article">
|
|
Packit |
0f19cf |
<xsl:text>\refname</xsl:text>
|
|
Packit |
0f19cf |
</xsl:when>
|
|
Packit |
0f19cf |
<xsl:otherwise>
|
|
Packit |
0f19cf |
<xsl:text>\bibname</xsl:text>
|
|
Packit |
0f19cf |
</xsl:otherwise>
|
|
Packit |
0f19cf |
</xsl:choose>
|
|
Packit |
0f19cf |
</xsl:variable>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:choose>
|
|
Packit |
0f19cf |
<xsl:when test="self::bibliography and number($bibliography.numbered) = 0">
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:call-template name="section.unnumbered.begin">
|
|
Packit |
0f19cf |
<xsl:with-param name="tocdepth" select="number($bibliography.tocdepth)"/>
|
|
Packit |
0f19cf |
<xsl:with-param name="level" select="$level"/>
|
|
Packit |
0f19cf |
<xsl:with-param name="title" select="$title.text"/>
|
|
Packit |
0f19cf |
<xsl:with-param name="titlenode" select="$title.node"/>
|
|
Packit |
0f19cf |
</xsl:call-template>
|
|
Packit |
0f19cf |
</xsl:when>
|
|
Packit |
0f19cf |
<xsl:when test="$title.node">
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:call-template name="makeheading">
|
|
Packit |
0f19cf |
<xsl:with-param name="level" select="$level"/>
|
|
Packit |
0f19cf |
<xsl:with-param name="allnum" select="'1'"/>
|
|
Packit |
0f19cf |
<xsl:with-param name="title" select="$title.node"/>
|
|
Packit |
0f19cf |
</xsl:call-template>
|
|
Packit |
0f19cf |
</xsl:when>
|
|
Packit |
0f19cf |
<xsl:otherwise>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:call-template name="maketitle">
|
|
Packit |
0f19cf |
<xsl:with-param name="level" select="$level"/>
|
|
Packit |
0f19cf |
<xsl:with-param name="allnum" select="'1'"/>
|
|
Packit |
0f19cf |
<xsl:with-param name="title" select="$title.text"/>
|
|
Packit |
0f19cf |
</xsl:call-template>
|
|
Packit |
0f19cf |
</xsl:otherwise>
|
|
Packit |
0f19cf |
</xsl:choose>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template name="biblio.section.end">
|
|
Packit |
0f19cf |
<xsl:if test="self::bibliography and number($bibliography.numbered) = 0">
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:call-template name="section.unnumbered.end">
|
|
Packit |
0f19cf |
<xsl:with-param name="tocdepth" select="number($bibliography.tocdepth)"/>
|
|
Packit |
0f19cf |
</xsl:call-template>
|
|
Packit |
0f19cf |
</xsl:if>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template name="biblioentry.process">
|
|
Packit |
0f19cf |
<xsl:param name="level"/>
|
|
Packit |
0f19cf |
<xsl:choose>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
bibliomixed[processing-instruction('bibtex')]">
|
|
Packit |
0f19cf |
<xsl:call-template name="bibtex.process">
|
|
Packit |
0f19cf |
<xsl:with-param name="level" select="$level"/>
|
|
Packit |
0f19cf |
</xsl:call-template>
|
|
Packit |
0f19cf |
</xsl:when>
|
|
Packit |
0f19cf |
<xsl:otherwise>
|
|
Packit |
0f19cf |
<xsl:call-template name="bibentries.process">
|
|
Packit |
0f19cf |
<xsl:with-param name="level" select="$level"/>
|
|
Packit |
0f19cf |
</xsl:call-template>
|
|
Packit |
0f19cf |
</xsl:otherwise>
|
|
Packit |
0f19cf |
</xsl:choose>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template name="bibentries.process">
|
|
Packit |
0f19cf |
<xsl:param name="level"/>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:text>\begin{btSect}{}
</xsl:text>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:if test="$level >= 0">
|
|
Packit |
0f19cf |
<xsl:call-template name="biblio.insert.title">
|
|
Packit |
0f19cf |
<xsl:with-param name="level" select="$level"/>
|
|
Packit |
0f19cf |
</xsl:call-template>
|
|
Packit |
0f19cf |
</xsl:if>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:text>\begin{bibgroup}
</xsl:text>
|
|
Packit |
0f19cf |
<xsl:text>\begin{thebibliography}{</xsl:text>
|
|
Packit |
0f19cf |
<xsl:value-of select="$latex.bibwidelabel"/>
|
|
Packit |
0f19cf |
<xsl:text>}
</xsl:text>
|
|
Packit |
0f19cf |
<xsl:if test="biblioentry">
|
|
Packit |
0f19cf |
<xsl:choose>
|
|
Packit |
0f19cf |
<xsl:when test="$latex.biblio.output ='cited'">
|
|
Packit |
0f19cf |
<xsl:apply-templates select="biblioentry" mode="bibliography.cited">
|
|
Packit |
0f19cf |
<xsl:sort select="./abbrev"/>
|
|
Packit |
0f19cf |
<xsl:sort select="./@xreflabel"/>
|
|
Packit |
0f19cf |
<xsl:sort select="./@id"/>
|
|
Packit |
0f19cf |
</xsl:apply-templates>
|
|
Packit |
0f19cf |
</xsl:when>
|
|
Packit |
0f19cf |
<xsl:otherwise>
|
|
Packit |
0f19cf |
<xsl:apply-templates select="biblioentry">
|
|
Packit |
0f19cf |
<xsl:sort select="./abbrev"/>
|
|
Packit |
0f19cf |
<xsl:sort select="./@xreflabel"/>
|
|
Packit |
0f19cf |
<xsl:sort select="./@id"/>
|
|
Packit |
0f19cf |
</xsl:apply-templates>
|
|
Packit |
0f19cf |
</xsl:otherwise>
|
|
Packit |
0f19cf |
</xsl:choose>
|
|
Packit |
0f19cf |
</xsl:if>
|
|
Packit |
0f19cf |
<xsl:if test="bibliomixed">
|
|
Packit |
0f19cf |
<xsl:apply-templates select="bibliomixed"/>
|
|
Packit |
0f19cf |
</xsl:if>
|
|
Packit |
0f19cf |
<xsl:text>
\end{thebibliography}
</xsl:text>
|
|
Packit |
0f19cf |
<xsl:text>\end{bibgroup}
</xsl:text>
|
|
Packit |
0f19cf |
<xsl:if test="$level >= 0">
|
|
Packit |
0f19cf |
<xsl:call-template name="biblio.section.end"/>
|
|
Packit |
0f19cf |
</xsl:if>
|
|
Packit |
0f19cf |
<xsl:text>\end{btSect}
</xsl:text>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
# bibtex files #
|
|
Packit |
0f19cf |
################ -->
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template name="bibtex.process">
|
|
Packit |
0f19cf |
<xsl:param name="level"/>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:variable name="bibfiles">
|
|
Packit |
0f19cf |
<xsl:call-template name="pi.bibtex_bibfiles">
|
|
Packit |
0f19cf |
<xsl:with-param name="node" select="bibliomixed"/>
|
|
Packit |
0f19cf |
</xsl:call-template>
|
|
Packit |
0f19cf |
</xsl:variable>
|
|
Packit |
0f19cf |
<xsl:variable name="bibstyle">
|
|
Packit |
0f19cf |
<xsl:call-template name="pi.bibtex_bibstyle">
|
|
Packit |
0f19cf |
<xsl:with-param name="node" select="bibliomixed"/>
|
|
Packit |
0f19cf |
</xsl:call-template>
|
|
Packit |
0f19cf |
</xsl:variable>
|
|
Packit |
0f19cf |
<xsl:variable name="print">
|
|
Packit |
0f19cf |
<xsl:call-template name="pi.bibtex_mode">
|
|
Packit |
0f19cf |
<xsl:with-param name="node" select="bibliomixed"/>
|
|
Packit |
0f19cf |
</xsl:call-template>
|
|
Packit |
0f19cf |
</xsl:variable>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:text>\begin{btSect}</xsl:text>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:if test="$bibstyle!=''">
|
|
Packit |
0f19cf |
<xsl:text>[</xsl:text>
|
|
Packit |
0f19cf |
<xsl:value-of select="$bibstyle"/>
|
|
Packit |
0f19cf |
<xsl:text>]</xsl:text>
|
|
Packit |
0f19cf |
</xsl:if>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:text>{</xsl:text>
|
|
Packit |
0f19cf |
<xsl:choose>
|
|
Packit |
0f19cf |
<xsl:when test="$bibfiles!=''">
|
|
Packit |
0f19cf |
<xsl:value-of select="$bibfiles"/>
|
|
Packit |
0f19cf |
</xsl:when>
|
|
Packit |
0f19cf |
<xsl:otherwise>
|
|
Packit |
0f19cf |
<xsl:value-of select="$latex.bibfiles"/>
|
|
Packit |
0f19cf |
</xsl:otherwise>
|
|
Packit |
0f19cf |
</xsl:choose>
|
|
Packit |
0f19cf |
<xsl:text>}
</xsl:text>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:if test="$level >= 0">
|
|
Packit |
0f19cf |
<xsl:call-template name="biblio.insert.title">
|
|
Packit |
0f19cf |
<xsl:with-param name="level" select="$level"/>
|
|
Packit |
0f19cf |
</xsl:call-template>
|
|
Packit |
0f19cf |
</xsl:if>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:apply-templates select="*[not(self::bibliomixed)]"/>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:choose>
|
|
Packit |
0f19cf |
<xsl:when test="$print='cited'">
|
|
Packit |
0f19cf |
<xsl:text>\btPrintCited
</xsl:text>
|
|
Packit |
0f19cf |
</xsl:when>
|
|
Packit |
0f19cf |
<xsl:when test="$print='notcited'">
|
|
Packit |
0f19cf |
<xsl:text>\btPrintNotCited
</xsl:text>
|
|
Packit |
0f19cf |
</xsl:when>
|
|
Packit |
0f19cf |
<xsl:when test="$print='all'">
|
|
Packit |
0f19cf |
<xsl:text>\btPrintAll
</xsl:text>
|
|
Packit |
0f19cf |
</xsl:when>
|
|
Packit |
0f19cf |
<xsl:when test="$latex.biblio.output='cited'">
|
|
Packit |
0f19cf |
<xsl:text>\btPrintCited
</xsl:text>
|
|
Packit |
0f19cf |
</xsl:when>
|
|
Packit |
0f19cf |
<xsl:when test="$latex.biblio.output='notcited'">
|
|
Packit |
0f19cf |
<xsl:text>\btPrintNotCited
</xsl:text>
|
|
Packit |
0f19cf |
</xsl:when>
|
|
Packit |
0f19cf |
<xsl:otherwise>
|
|
Packit |
0f19cf |
<xsl:text>\btPrintAll
</xsl:text>
|
|
Packit |
0f19cf |
</xsl:otherwise>
|
|
Packit |
0f19cf |
</xsl:choose>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:if test="$level >= 0">
|
|
Packit |
0f19cf |
<xsl:call-template name="biblio.section.end"/>
|
|
Packit |
0f19cf |
</xsl:if>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:text>\end{btSect}
</xsl:text>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
# bibliography #
|
|
Packit |
0f19cf |
################ -->
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template match="bibliography">
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:message>Processing Bibliography</xsl:message>
|
|
Packit |
0f19cf |
<xsl:message><xsl:text>Output Mode: </xsl:text>
|
|
Packit |
0f19cf |
<xsl:value-of select="$latex.biblio.output"/>
|
|
Packit |
0f19cf |
</xsl:message>
|
|
Packit |
0f19cf |
-->
|
|
Packit |
0f19cf |
<xsl:text>% -------------------------------------------
</xsl:text>
|
|
Packit |
0f19cf |
<xsl:text>% Bibliography
</xsl:text>
|
|
Packit |
0f19cf |
<xsl:text>% -------------------------------------------
</xsl:text>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:variable name="level">
|
|
Packit |
0f19cf |
<xsl:call-template name="get.sect.level"/>
|
|
Packit |
0f19cf |
</xsl:variable>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:choose>
|
|
Packit |
0f19cf |
<xsl:when test="biblioentry|bibliomixed">
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:call-template name="biblioentry.process">
|
|
Packit |
0f19cf |
<xsl:with-param name="level" select="$level"/>
|
|
Packit |
0f19cf |
</xsl:call-template>
|
|
Packit |
0f19cf |
</xsl:when>
|
|
Packit |
0f19cf |
<xsl:otherwise>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:call-template name="biblio.insert.title">
|
|
Packit |
0f19cf |
<xsl:with-param name="level" select="$level"/>
|
|
Packit |
0f19cf |
</xsl:call-template>
|
|
Packit |
0f19cf |
</xsl:otherwise>
|
|
Packit |
0f19cf |
</xsl:choose>
|
|
Packit |
0f19cf |
<xsl:apply-templates select="bibliodiv"/>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:if test="not(biblioentry|bibliomixed)">
|
|
Packit |
0f19cf |
<xsl:call-template name="biblio.section.end"/>
|
|
Packit |
0f19cf |
</xsl:if>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template match="bibliography/title"/>
|
|
Packit |
0f19cf |
<xsl:template match="bibliography/subtitle"/>
|
|
Packit |
0f19cf |
<xsl:template match="bibliography/titleabbrev"/>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
# bibliodiv #
|
|
Packit |
0f19cf |
############### -->
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template match="bibliodiv">
|
|
Packit |
0f19cf |
<xsl:variable name="level">
|
|
Packit |
0f19cf |
<xsl:call-template name="get.sect.level">
|
|
Packit |
0f19cf |
<xsl:with-param name="n" select="parent::bibliography"/>
|
|
Packit |
0f19cf |
</xsl:call-template>
|
|
Packit |
0f19cf |
</xsl:variable>
|
|
Packit |
0f19cf |
<xsl:call-template name="biblioentry.process">
|
|
Packit |
0f19cf |
<xsl:with-param name="level" select="$level+1"/>
|
|
Packit |
0f19cf |
</xsl:call-template>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template match="bibliodiv/title"/>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
# bibliolist #
|
|
Packit |
0f19cf |
############### -->
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template match="bibliolist">
|
|
Packit |
0f19cf |
<xsl:call-template name="biblioentry.process">
|
|
Packit |
0f19cf |
<xsl:with-param name="level" select="'-1'"/>
|
|
Packit |
0f19cf |
</xsl:call-template>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template match="bibliodiv/title"/>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
# biblioentry #
|
|
Packit |
0f19cf |
############### -->
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template match="biblioentry" mode="bibliography.cited">
|
|
Packit |
0f19cf |
<xsl:param name="bibid" select="@id"/>
|
|
Packit |
0f19cf |
<xsl:param name="ab">
|
|
Packit |
0f19cf |
<xsl:call-template name="bibitem.label"/>
|
|
Packit |
0f19cf |
</xsl:param>
|
|
Packit |
0f19cf |
<xsl:variable name="nx" select="//xref[@linkend=$bibid]"/>
|
|
Packit |
0f19cf |
<xsl:variable name="nc" select="//citation[text()=$ab]"/>
|
|
Packit |
0f19cf |
<xsl:if test="count($nx) > 0 or count($nc) > 0">
|
|
Packit |
0f19cf |
<xsl:call-template name="biblioentry.output"/>
|
|
Packit |
0f19cf |
</xsl:if>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template match="biblioentry" mode="bibliography.all">
|
|
Packit |
0f19cf |
<xsl:call-template name="biblioentry.output"/>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template match="biblioentry">
|
|
Packit |
0f19cf |
<xsl:call-template name="biblioentry.output"/>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template match="biblioentry/title">
|
|
Packit |
0f19cf |
<xsl:text>\emph{</xsl:text>
|
|
Packit |
0f19cf |
<xsl:apply-templates/>
|
|
Packit |
0f19cf |
<xsl:text>}</xsl:text>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template name="bibitem.label">
|
|
Packit |
0f19cf |
<xsl:choose>
|
|
Packit |
0f19cf |
<xsl:when test="@xreflabel">
|
|
Packit |
0f19cf |
<xsl:value-of select="normalize-space(@xreflabel)"/>
|
|
Packit |
0f19cf |
</xsl:when>
|
|
Packit |
0f19cf |
<xsl:when test="abbrev">
|
|
Packit |
0f19cf |
<xsl:apply-templates select="abbrev" mode="biblio.label.mode"/>
|
|
Packit |
0f19cf |
</xsl:when>
|
|
Packit |
0f19cf |
<xsl:when test="@id">
|
|
Packit |
0f19cf |
<xsl:value-of select="normalize-space(@id)"/>
|
|
Packit |
0f19cf |
</xsl:when>
|
|
Packit |
0f19cf |
</xsl:choose>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template name="bibitem.id">
|
|
Packit |
0f19cf |
<xsl:choose>
|
|
Packit |
0f19cf |
<xsl:when test="@xreflabel">
|
|
Packit |
0f19cf |
<xsl:value-of select="normalize-space(@xreflabel)"/>
|
|
Packit |
0f19cf |
</xsl:when>
|
|
Packit |
0f19cf |
<xsl:when test="abbrev">
|
|
Packit |
0f19cf |
<xsl:apply-templates select="abbrev" mode="biblio.label.mode"/>
|
|
Packit |
0f19cf |
</xsl:when>
|
|
Packit |
0f19cf |
<xsl:when test="@id">
|
|
Packit |
0f19cf |
<xsl:value-of select="normalize-space(@id)"/>
|
|
Packit |
0f19cf |
</xsl:when>
|
|
Packit |
0f19cf |
<xsl:otherwise>
|
|
Packit |
0f19cf |
<xsl:value-of select="generate-id()"/>
|
|
Packit |
0f19cf |
</xsl:otherwise>
|
|
Packit |
0f19cf |
</xsl:choose>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template match="abbrev" mode="biblio.label.mode">
|
|
Packit |
0f19cf |
<xsl:value-of select="."/>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template name="bibitem">
|
|
Packit |
0f19cf |
<xsl:variable name="tag">
|
|
Packit |
0f19cf |
<xsl:call-template name="bibitem.label"/>
|
|
Packit |
0f19cf |
</xsl:variable>
|
|
Packit |
0f19cf |
<xsl:text>
</xsl:text>
|
|
Packit |
0f19cf |
<xsl:text>\bibitem</xsl:text>
|
|
Packit |
0f19cf |
<xsl:if test="$tag != '' and $biblioentry.numbered = 0">
|
|
Packit |
0f19cf |
<xsl:text>[</xsl:text>
|
|
Packit |
0f19cf |
<xsl:call-template name="normalize-scape">
|
|
Packit |
0f19cf |
<xsl:with-param name="string" select="$tag"/>
|
|
Packit |
0f19cf |
</xsl:call-template>
|
|
Packit |
0f19cf |
<xsl:text>]</xsl:text>
|
|
Packit |
0f19cf |
</xsl:if>
|
|
Packit |
0f19cf |
<xsl:text>{</xsl:text>
|
|
Packit |
0f19cf |
<xsl:call-template name="bibitem.id"/>
|
|
Packit |
0f19cf |
<xsl:text>}</xsl:text>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:call-template name="label.id">
|
|
Packit |
0f19cf |
<xsl:with-param name="inline" select="1"/>
|
|
Packit |
0f19cf |
</xsl:call-template>
|
|
Packit |
0f19cf |
<xsl:text>
</xsl:text>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template name="biblioentry.output">
|
|
Packit |
0f19cf |
<xsl:call-template name="bibitem"/>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
volumenum|
|
|
Packit |
0f19cf |
edition|
|
|
Packit |
0f19cf |
address|
|
|
Packit |
0f19cf |
copyright|
|
|
Packit |
0f19cf |
publisher|
|
|
Packit |
0f19cf |
date|
|
|
Packit |
0f19cf |
pubdate|
|
|
Packit |
0f19cf |
pagenums|
|
|
Packit |
0f19cf |
isbn|
|
|
Packit |
0f19cf |
issn|
|
|
Packit |
0f19cf |
biblioid|
|
|
Packit |
0f19cf |
releaseinfo|
|
|
Packit |
0f19cf |
pubsnumber"/>
|
|
Packit |
0f19cf |
<xsl:apply-templates select="author|authorgroup" mode="bibliography.mode"/>
|
|
Packit |
0f19cf |
<xsl:if test="title">
|
|
Packit |
0f19cf |
<xsl:if test="author|authorgroup">
|
|
Packit |
0f19cf |
<xsl:value-of select="$biblioentry.item.separator"/>
|
|
Packit |
0f19cf |
</xsl:if>
|
|
Packit |
0f19cf |
<xsl:apply-templates select="title"/>
|
|
Packit |
0f19cf |
</xsl:if>
|
|
Packit |
0f19cf |
<xsl:if test="$data">
|
|
Packit |
0f19cf |
<xsl:for-each select="$data">
|
|
Packit |
0f19cf |
<xsl:value-of select="$biblioentry.item.separator"/>
|
|
Packit |
0f19cf |
<xsl:apply-templates select="." mode="bibliography.mode"/>
|
|
Packit |
0f19cf |
</xsl:for-each>
|
|
Packit |
0f19cf |
<xsl:text>.</xsl:text>
|
|
Packit |
0f19cf |
</xsl:if>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:for-each select="biblioset">
|
|
Packit |
0f19cf |
<xsl:text>
</xsl:text>
|
|
Packit |
0f19cf |
<xsl:apply-templates select="." mode="bibliography.mode"/>
|
|
Packit |
0f19cf |
</xsl:for-each>
|
|
Packit |
0f19cf |
<xsl:text>
</xsl:text>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template match="bibliomixed">
|
|
Packit |
0f19cf |
<xsl:call-template name="bibitem"/>
|
|
Packit |
0f19cf |
<xsl:apply-templates select="." mode="bibliography.mode"/>
|
|
Packit |
0f19cf |
<xsl:text>
</xsl:text>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template match="text()" mode="bibliography.mode">
|
|
Packit |
0f19cf |
<xsl:apply-templates select="."/>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template match="*" mode="bibliography.mode">
|
|
Packit |
0f19cf |
<xsl:apply-templates mode="bibliography.mode"/>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template match="ulink" mode="bibliography.mode">
|
|
Packit |
0f19cf |
<xsl:apply-templates select="."/>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template match="abbrev" mode="bibliography.mode"/>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template match="anchor" mode="bibliography.mode">
|
|
Packit |
0f19cf |
<xsl:apply-templates select="."/>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template match="biblioset" mode="bibliography.mode">
|
|
Packit |
0f19cf |
<xsl:if test="author|authorgroup">
|
|
Packit |
0f19cf |
<xsl:apply-templates select="author|authorgroup" mode="bibliography.mode"/>
|
|
Packit |
0f19cf |
<xsl:value-of select="$biblioentry.item.separator"/>
|
|
Packit |
0f19cf |
</xsl:if>
|
|
Packit |
0f19cf |
<xsl:apply-templates select="title|citetitle" mode="bibliography.mode"/>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
volumenum|
|
|
Packit |
0f19cf |
edition|
|
|
Packit |
0f19cf |
address|
|
|
Packit |
0f19cf |
copyright|
|
|
Packit |
0f19cf |
publisher|
|
|
Packit |
0f19cf |
date|
|
|
Packit |
0f19cf |
pubdate|
|
|
Packit |
0f19cf |
pagenums|
|
|
Packit |
0f19cf |
isbn|
|
|
Packit |
0f19cf |
issn|
|
|
Packit |
0f19cf |
biblioid|
|
|
Packit |
0f19cf |
pubsnumber">
|
|
Packit |
0f19cf |
<xsl:value-of select="$biblioentry.item.separator"/>
|
|
Packit |
0f19cf |
<xsl:apply-templates select="." mode="bibliography.mode"/>
|
|
Packit |
0f19cf |
</xsl:for-each>
|
|
Packit |
0f19cf |
<xsl:text>.</xsl:text>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
mode="bibliography.mode">
|
|
Packit |
0f19cf |
<xsl:variable name="relation" select="../@relation"/>
|
|
Packit |
0f19cf |
<xsl:choose>
|
|
Packit |
0f19cf |
<xsl:when test="$relation='article' or @pubwork='article'">
|
|
Packit |
0f19cf |
<xsl:call-template name="dingbat">
|
|
Packit |
0f19cf |
<xsl:with-param name="dingbat">ldquo</xsl:with-param>
|
|
Packit |
0f19cf |
</xsl:call-template>
|
|
Packit |
0f19cf |
<xsl:apply-templates/>
|
|
Packit |
0f19cf |
<xsl:call-template name="dingbat">
|
|
Packit |
0f19cf |
<xsl:with-param name="dingbat">rdquo</xsl:with-param>
|
|
Packit |
0f19cf |
</xsl:call-template>
|
|
Packit |
0f19cf |
</xsl:when>
|
|
Packit |
0f19cf |
<xsl:otherwise>
|
|
Packit |
0f19cf |
<xsl:apply-templates/>
|
|
Packit |
0f19cf |
</xsl:otherwise>
|
|
Packit |
0f19cf |
</xsl:choose>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template match="biblioid" mode="bibliography.mode">
|
|
Packit |
0f19cf |
<xsl:choose>
|
|
Packit |
0f19cf |
<xsl:when test="@class='doi'">
|
|
Packit |
0f19cf |
<xsl:text>DOI</xsl:text>
|
|
Packit |
0f19cf |
</xsl:when>
|
|
Packit |
0f19cf |
<xsl:when test="@class='isbn'">
|
|
Packit |
0f19cf |
<xsl:text>ISBN</xsl:text>
|
|
Packit |
0f19cf |
</xsl:when>
|
|
Packit |
0f19cf |
<xsl:when test="@class='issn'">
|
|
Packit |
0f19cf |
<xsl:text>ISSN</xsl:text>
|
|
Packit |
0f19cf |
</xsl:when>
|
|
Packit |
0f19cf |
<xsl:otherwise>
|
|
Packit |
0f19cf |
<xsl:message>
|
|
Packit |
0f19cf |
<xsl:text>The biblioid class '</xsl:text>
|
|
Packit |
0f19cf |
<xsl:value-of select="@class"/>
|
|
Packit |
0f19cf |
<xsl:text>' not supported!</xsl:text>
|
|
Packit |
0f19cf |
</xsl:message>
|
|
Packit |
0f19cf |
<xsl:value-of select="@class"/>
|
|
Packit |
0f19cf |
</xsl:otherwise>
|
|
Packit |
0f19cf |
</xsl:choose>
|
|
Packit |
0f19cf |
<xsl:text> </xsl:text>
|
|
Packit |
0f19cf |
<xsl:apply-templates/>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template match="author" mode="bibliography.mode">
|
|
Packit |
0f19cf |
<xsl:variable name="authorsstring">
|
|
Packit |
0f19cf |
<xsl:call-template name="person.name"/>
|
|
Packit |
0f19cf |
</xsl:variable>
|
|
Packit |
0f19cf |
<xsl:value-of select="normalize-space($authorsstring)"/>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template match="authorgroup" mode="bibliography.mode">
|
|
Packit |
0f19cf |
<xsl:variable name="authorsstring">
|
|
Packit |
0f19cf |
<xsl:call-template name="person.name.list"/>
|
|
Packit |
0f19cf |
</xsl:variable>
|
|
Packit |
0f19cf |
<xsl:value-of select="normalize-space($authorsstring)"/>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template match="editor" mode="bibliography.mode">
|
|
Packit |
0f19cf |
<xsl:call-template name="person.name"/>
|
|
Packit |
0f19cf |
<xsl:value-of select="$biblioentry.item.separator"/>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template match="copyright" mode="bibliography.mode">
|
|
Packit |
0f19cf |
<xsl:call-template name="gentext.element.name"/>
|
|
Packit |
0f19cf |
<xsl:call-template name="gentext.space"/>
|
|
Packit |
0f19cf |
<xsl:call-template name="dingbat">
|
|
Packit |
0f19cf |
<xsl:with-param name="dingbat">copyright</xsl:with-param>
|
|
Packit |
0f19cf |
</xsl:call-template>
|
|
Packit |
0f19cf |
<xsl:call-template name="gentext.space"/>
|
|
Packit |
0f19cf |
<xsl:apply-templates select="year" mode="bibliography.mode"/>
|
|
Packit |
0f19cf |
<xsl:if test="holder">
|
|
Packit |
0f19cf |
<xsl:call-template name="gentext.space"/>
|
|
Packit |
0f19cf |
<xsl:apply-templates select="holder" mode="bibliography.mode"/>
|
|
Packit |
0f19cf |
</xsl:if>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template match="year" mode="bibliography.mode">
|
|
Packit |
0f19cf |
<xsl:apply-templates/>
|
|
Packit |
0f19cf |
<xsl:if test="position()!=last()">
|
|
Packit |
0f19cf |
<xsl:text>, </xsl:text>
|
|
Packit |
0f19cf |
</xsl:if>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template match="publisher" mode="bibliography.mode">
|
|
Packit |
0f19cf |
<xsl:apply-templates select="publishername" mode="bibliography.mode"/>
|
|
Packit |
0f19cf |
<xsl:for-each select="address">
|
|
Packit |
0f19cf |
<xsl:value-of select="$biblioentry.item.separator"/>
|
|
Packit |
0f19cf |
<xsl:apply-templates select="." mode="bibliography.mode"/>
|
|
Packit |
0f19cf |
</xsl:for-each>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
date|pubdate|pagenums|isbn|issn|
|
|
Packit |
0f19cf |
holder|publishername|releaseinfo|address"
|
|
Packit |
0f19cf |
mode="bibliography.mode">
|
|
Packit |
0f19cf |
<xsl:apply-templates/>
|
|
Packit |
0f19cf |
</xsl:template>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
<xsl:template match="printhistory" mode="bibliography.mode"/>
|
|
Packit |
0f19cf |
<xsl:template match="abstract" mode="bibliography.mode"/>
|
|
Packit |
0f19cf |
<xsl:template match="authorblurb" mode="bibliography.mode"/>
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
|
|
Packit |
0f19cf |
</xsl:stylesheet>
|