<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>
# | Change | User | Description | Committed | |
---|---|---|---|---|---|
#1 | 13895 | Paul Allen | Copying using p4convert-docbook | ||
//guest/perforce_software/doc_build/main/docbook-xsl-ns-1.78.1/params/bibliography.collection.xml | |||||
#1 | 12728 | eedwards |
Upgrade ANT doc build infrastructure to assemble PDFs: - remove non-namespaced DocBook source and add namespaced DocBook source. - add Apache FOP 1.1 - copy fonts, images, XSL into _build, establishing new asset structure. The original structure remains until all guides using it can be upgraded, and several other issues can be resolved. - updated build.xml to allow for per-target build properties. - upgraded the P4SAG to use the new infrastructure. - tweaked admonition presentation in PDFs to remove admonition graphics, and resemble closely the presentation used in the new HTML layout, including the same colors. With these changes, building PDFs involves using a shell, navigating into the guide's directory (just P4SAG for now), and executing "ant pdf". Issues still to be resolved: - PDF generation encounters several warnings about missing fonts (bold versions of Symbol and ZapfDingbats), and a couple of locations where the page content exceeds the defined content area. - Due to issues within Apache FOP, PDF generation emits a substantial amount of output that is not easily suppressed without losing important warning information. - Apache FOP's interface to ANT does not expose a way to set the font base directory. The current configuration does work under Mac OSX, but further testing on Windows will need to be done to determine if the relative paths defined continue to work. The workaround is for Windows users to customize the fop-config.xml to provide absolute system paths to the required fonts. - HTML generation needs further browser testing, and exhibits broken navigation on iOS browsers within the TOC sidebar. - A number of PDF and HTML presentation tweaks still need to be made, for example: sidebars, gui* DocBook tags, whitespace, section separation, etc. |