| 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, timeconsuming, and error prone. It makes much more sense, usually, to store all ofthe 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 globalbibliography <quote>database</quote>, follow these steps:</para><para>First, create a stand-alone bibliography document that contains all ofthe documents that you wish to reference. Make sure that each bibliographyentry (whether you use <tag>biblioentry</tag> or <tag>bibliomixed</tag>)has an ID.</para><para>My global bibliography, <filename>~/bibliography.xml</filename> beginslike 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 MarkupLanguage (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 inXML</ulink></citetitle>.World Wide Web Consortium, 1999.</bibliomixed><!-- ... --></bibliography></programlisting></informalexample><para>When you create a bibliography in your document, simplyprovide <emphasis>empty</emphasis> <tag>bibliomixed</tag>entries for each document that you wish to cite. Make sure that theseelements 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 andTypesetting: 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 yourglobal bibliography with <quote>normal</quote> entries. You can use<tag>xref</tag> or other elements to cross-reference yourbibliography 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 acustomization layer or directly through your processor's interface) topoint to your global bibliography.</para><para>A relative path in the parameter is interpreted in oneof 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 describedabove, it stays open for the current documentand the relative path is not reinterpreted again.</para><para>The stylesheets will format the bibliography in your document as ifall of the entries referenced appeared there literally.</para></refsection></refentry>
 |