2 <!DOCTYPE xsl:stylesheet [ <!ENTITY % xsldoc.ent SYSTEM "./xsldoc.ent"> %xsldoc.ent; ]>
3 <!--#############################################################################
4 | $Id: citation.mod.xsl,v 1.6 2003/12/29 01:30:32 j-devenish Exp $
5 |- #############################################################################
6 | $Author: j-devenish $
7 + ############################################################################## -->
10 xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
11 xmlns:doc="http://nwalsh.com/xsl/documentation/1.0"
12 exclude-result-prefixes="doc" version='1.0'>
15 <doc:reference id="citation" xmlns="">
17 <releaseinfo role="meta">
18 $Id: citation.mod.xsl,v 1.6 2003/12/29 01:30:32 j-devenish Exp $
25 <year>2000</year><year>2001</year><year>2002</year><year>2003</year>
26 <holder>Ramon Casellas</holder>
29 <doc:revision rcasver="1.6">&rev_2003_05;</doc:revision>
32 <title>Citations <filename>citation.mod.xsl</filename></title>
35 <para>This file contains a single XSL template that maps <doc:db
36 basename="citation">citations</doc:db> to the &LaTeX;
37 <function condition="latex">cite{}</function>. command.</para>
42 <doc:template basename="citation" xmlns="">
43 <refpurpose> Process <doc:db>citation</doc:db> elements </refpurpose>
48 Outputs a <function condition="latex">cite{...}</function> command
49 using the text value of the <doc:db>citation</doc:db>.
61 <simplelist type='inline'>
68 <xsl:template match="citation">
69 <!-- todo: biblio-citation-check -->
70 <xsl:text>\docbooktolatexcite{</xsl:text>
71 <xsl:value-of select="."/>
72 <xsl:text>}{}</xsl:text>
75 <doc:template xmlns="">
76 <refpurpose> Essential preamble for <filename>citation.mod.xsl</filename> support </refpurpose>
81 condition="latex">docbooktolatexcite</function>. This function
82 helps to integrate <doc:db>bibioentry</doc:db>/@<sgmltag
83 class="attribute">id</sgmltag> and
84 <doc:db>bibioentry</doc:db>/<doc:db>abbrev</doc:db> with
86 Also defines <function condition="latex">docbooktolatexbackcite</function>
87 for compatability with <productname>hyperref</productname>'s
88 <productname>backref</productname> functionality.
94 <listitem><simpara>&preamble;</simpara></listitem>
99 <xsl:template name="latex.preamble.essential.citation">
103 %\renewcommand\citeleft{(} % parentheses around list
104 %\renewcommand\citeright{)} % parentheses around list
105 \newcommand{\docbooktolatexcite}[2]{%
106 \@ifundefined{docbooktolatexcite@#1}%
108 {\def\@docbooktolatextemp{#2}\ifx\@docbooktolatextemp\@empty%
109 \cite{\@nameuse{docbooktolatexcite@#1}}%
110 \else\cite[#2]{\@nameuse{docbooktolatexcite@#1}}%
114 \newcommand{\docbooktolatexbackcite}[1]{%
115 \ifx\Hy@backout\@undefined\else%
116 \@ifundefined{docbooktolatexcite@#1}{%
120 \PackageInfo{backref}{back cite \string`#1\string' as \string`\@nameuse{docbooktolatexcite@#1}\string'}%
122 \Hy@backout{\@nameuse{docbooktolatexcite@#1}}%