123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122 |
- <refentry xmlns="http://docbook.org/ns/docbook"
- xmlns:xlink="http://www.w3.org/1999/xlink"
- xmlns:xi="http://www.w3.org/2001/XInclude"
- xmlns:src="http://nwalsh.com/xmlns/litprog/fragment"
- xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
- version="5.0" xml:id="bibliography.collection">
- <refmeta>
- <refentrytitle>bibliography.collection</refentrytitle>
- <refmiscinfo class="other" otherclass="datatype">string</refmiscinfo>
- </refmeta>
- <refnamediv>
- <refname>bibliography.collection</refname>
- <refpurpose>Name of the bibliography collection file</refpurpose>
- </refnamediv>
- <refsynopsisdiv>
- <src:fragment xml:id="bibliography.collection.frag">
- <xsl:param name="bibliography.collection">http://docbook.sourceforge.net/release/bibliography/bibliography.xml</xsl:param>
- </src:fragment>
- </refsynopsisdiv>
- <refsection><info><title>Description</title></info>
- <para>Maintaining bibliography entries across a set of documents is tedious, time
- consuming, and error prone. It makes much more sense, usually, to store all of
- the bibliography entries in a single place and simply <quote>extract</quote>
- the ones you need in each document.</para>
- <para>That's the purpose of the
- <parameter>bibliography.collection</parameter> parameter. To setup a global
- bibliography <quote>database</quote>, follow these steps:</para>
- <para>First, create a stand-alone bibliography document that contains all of
- the documents that you wish to reference. Make sure that each bibliography
- entry (whether you use <tag>biblioentry</tag> or <tag>bibliomixed</tag>)
- has an ID.</para>
- <para>My global bibliography, <filename>~/bibliography.xml</filename> begins
- like this:</para>
- <informalexample>
- <programlisting><!DOCTYPE bibliography
- PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
- "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">
- <bibliography><title>References</title>
- <bibliomixed id="xml-rec"><abbrev>XML 1.0</abbrev>Tim Bray,
- Jean Paoli, C. M. Sperberg-McQueen, and Eve Maler, editors.
- <citetitle><ulink url="http://www.w3.org/TR/REC-xml">Extensible Markup
- Language (XML) 1.0 Second Edition</ulink></citetitle>.
- World Wide Web Consortium, 2000.
- </bibliomixed>
- <bibliomixed id="xml-names"><abbrev>Namespaces</abbrev>Tim Bray,
- Dave Hollander,
- and Andrew Layman, editors.
- <citetitle><ulink url="http://www.w3.org/TR/REC-xml-names/">Namespaces in
- XML</ulink></citetitle>.
- World Wide Web Consortium, 1999.
- </bibliomixed>
- <!-- ... -->
- </bibliography>
- </programlisting>
- </informalexample>
- <para>When you create a bibliography in your document, simply
- provide <emphasis>empty</emphasis> <tag>bibliomixed</tag>
- entries for each document that you wish to cite. Make sure that these
- elements have the same ID as the corresponding <quote>real</quote>
- entry in your global bibliography.</para>
- <para>For example:</para>
- <informalexample>
- <programlisting><bibliography><title>Bibliography</title>
- <bibliomixed id="xml-rec"/>
- <bibliomixed id="xml-names"/>
- <bibliomixed id="DKnuth86">Donald E. Knuth. <citetitle>Computers and
- Typesetting: Volume B, TeX: The Program</citetitle>. Addison-Wesley,
- 1986. ISBN 0-201-13437-3.
- </bibliomixed>
- <bibliomixed id="relaxng"/>
- </bibliography></programlisting>
- </informalexample>
- <para>Note that it's perfectly acceptable to mix entries from your
- global bibliography with <quote>normal</quote> entries. You can use
- <tag>xref</tag> or other elements to cross-reference your
- bibliography entries in exactly the same way you do now.</para>
- <para>Finally, when you are ready to format your document, simply set the
- <parameter>bibliography.collection</parameter> parameter (in either a
- customization layer or directly through your processor's interface) to
- point to your global bibliography.</para>
- <para>A relative path in the parameter is interpreted in one
- of two ways:</para>
- <orderedlist numeration="loweralpha">
- <listitem>
- <para>If your document contains no links to empty bibliographic elements,
- then the path is relative to the file containing
- the first <tag>bibliomixed</tag> element in the document.</para>
- </listitem>
- <listitem>
- <para>If your document does contain links to empty bibliographic elements,
- then the path is relative to the file containing
- the first such link element in the document.</para>
- </listitem>
- </orderedlist>
- <para>Once the collection file is opened by the first instance described
- above, it stays open for the current document
- and the relative path is not reinterpreted again.</para>
- <para>The stylesheets will format the bibliography in your document as if
- all of the entries referenced appeared there literally.</para>
- </refsection>
- </refentry>
|