Bibliography Section Style

AsciiDoc has basic support for bibliographies. While the structure of the bibliography entry is entirely freeform, AsciiDoc provides a way to reference the entries from the text and outputs the bibliography with proper semantics for processing by other toolchains (such as DocBook).

Bibliography section syntax

To conform to output formats, a bibliography must be its own section. The section must be assigned the bibliography section style. The bibliography section is defined as a level 1 section (==) when:

  • the doctype is article

  • the doctype is book and the book doesn’t contain any parts

  • the bibliography is for a part

[bibliography]
== Bibliography

If the book has parts, and the bibliography is for the whole book, the section is defined as a level 0 section (=).

[bibliography]
= Bibliography

Bibliography entries syntax

Bibliography entries are declared as items in an unordered list.

Bibliography with references
_The Pragmatic Programmer_ <<pp>> should be required reading for all developers.
To learn all about design patterns, refer to the book by the "`Gang of Four`" <<gof>>.

[bibliography]
== References

* [[[pp]]] Andy Hunt & Dave Thomas. The Pragmatic Programmer:
From Journeyman to Master. Addison-Wesley. 1999.
* [[[gof,gang]]] Erich Gamma, Richard Helm, Ralph Johnson & John Vlissides.
Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley. 1994.

You can create an anchor for a bibliography entry by prefixing the entry with an ID enclosed in triple square brackets ([[[id]]]). With this anchor, you can reference the entry from anywhere in the document using a cross reference (<<id>>).

The Pragmatic Programmer [pp] should be required reading for all developers. To learn all about design patterns, refer to the book by the “Gang of Four” [gang].

References

  • [pp] Andy Hunt & Dave Thomas. The Pragmatic Programmer: From Journeyman to Master. Addison-Wesley. 1999.

  • [gang] Erich Gamma, Richard Helm, Ralph Johnson & John Vlissides. Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley. 1994.

By default, the reference to a bibliography entry is displayed as [id]. If you specify reference text (xreftext) on the bibliography entry anchor ([[[id,xreftext]]]), a reference to the bibliography entry converts to [xreftext].

If you want more advanced features such as automatic numbering and custom citation styles, try the asciidoctor-bibtex project.