Creating local and multiple bibliographies

Unofficial ConTeXt Wiki mirror

Last modified: 2026-08-28

🚧 This page is under construction. Feel free to correct, expand, and improve it; its structure and examples may still change.

Bibliography guides — Guide 3 of 4

Previous: Guide 2 — Understanding datasets, styles, renderings, selection, and sorting  ·  Current: Guide 3 — Creating local and multiple bibliographies  ·  Next: Guide 4 — Organising bibliographies in complex editorial projects

1. Creating local and multiple bibliographies

The previous guide distinguished the main layers of the bibliography system:

This guide applies those distinctions to documents that require more than one bibliography.

Typical editorial needs include:

By the end of the guide, you should be able to:

 and repeat;
 duplicated in the data.

The central question

Before defining the bibliography architecture, decide whether you need:

  • several views of one collection; or
  • several genuinely distinct collections.

Several views normally require several renderings.

Several distinct collections may require several datasets.

2. Bibliography scope: method, criterium, and repeat

Chapter-level and final bibliographies depend on several different settings.

The three most important are:

method
criterium
repeat

They should not be treated as synonyms.

2.1. The role of method

The method setting controls how a rendering uses the bibliography reference state available to it.

Common values include:

Method General role
method=dataset Uses records from the dataset itself, including records that may not have been cited.
method=global Uses bibliography references registered globally in the document.
method=local Uses a local rendering context rather than the global rendering state.

The value local should not automatically be interpreted as “the current chapter”.

Structural scope is controlled separately.

2.2. Structural scope with criterium

The setting criterium determines the structural or reference scope requested for a bibliography rendering.

For example:

\placebtxrendering
  [chapterlist]
  [criterium=chapter]

restricts the rendering to the current chapter scope.

This distinction is essential:

method     = rendering/reference-state behaviour
criterium  = structural or reference scope

A bibliography placed at the end of a chapter is therefore not a chapter bibliography merely because of its physical position.

Its structural scope should be expressed explicitly.

Placement and scope are independent

A bibliography may be physically placed at the end of a chapter while still using a document-wide or dataset-wide rendering scope.

The position of the list does not by itself determine which records it contains.

2.3. Reusing records with repeat

A record may already have appeared in an earlier bibliography rendering.

The option:

repeat=yes

allows such a record to be rendered again.

This is particularly important when:

Thus:

method     -> how the rendering uses bibliography state
criterium  -> which structural scope is requested
repeat     -> whether already rendered records may appear again

2.4. A common chapter-level pattern

A chapter bibliography may therefore use:

\placebtxrendering
  [chapterlist]
  [method=global,
   criterium=chapter,
   repeat=yes]

The three settings should be read separately:

A final bibliography may then use:

\placebtxrendering
  [finallist]
  [method=global,
   repeat=yes]

3. One dataset, several renderings

A dataset contains records.

A rendering defines a particular bibliography list constructed from those records.

Several renderings may therefore use the same dataset for different editorial purposes.

For example:

\definebtxrendering
  [chapterlist]
  [apa]
  [dataset=main,
   sorttype=authoryear]

\definebtxrendering
  [finallist]
  [apa]
  [dataset=main,
   sorttype=authoryear]

The two renderings use the same records and specification, but they have different editorial roles.

The chapter rendering can be placed with:

\placebtxrendering
  [chapterlist]
  [method=global,
   criterium=chapter,
   repeat=yes]

The final rendering can be placed with:

\placebtxrendering
  [finallist]
  [method=global,
   repeat=yes]

3.1. Several renderings are several views

One dataset may feed:

The renderings do not contain separate copies of the records.

3.2. The same record may appear in several lists

Suppose a work is cited in Chapter 1.

It may appear:

This is not a duplicated bibliographic record.

It is one record rendered in two editorial contexts.

One record, several editorial views

The record belongs to the dataset once.

Different renderings may display it in different parts of the document.

4. MWE: chapter bibliographies and a final bibliography

The following self-contained example uses one dataset and two renderings.

The intended result is:

Element Role
main Dataset containing all records
chapterlist Rendering used for chapter bibliographies
finallist Rendering used for the final bibliography
method=global Uses bibliography references registered globally in the document
criterium=chapter Restricts the chapter rendering to the current chapter scope
repeat=yes Permits records already rendered in an earlier list to appear again

About repeated placement

When chapter bibliographies are rendered before the final bibliography, records already rendered in a chapter list must be allowed to appear again if they are also required in the final list.

For that reason, repeat=yes is normally part of this chapter-plus-final pattern.

5. When to use several datasets

Several datasets may be useful when the records belong to stable and meaningfully distinct editorial collections.

Examples include:

For example:

\usebtxdataset
  [primary]
  [primary-sources.bib]

\usebtxdataset
  [secondary]
  [secondary-literature.bib]

References can then be qualified explicitly:

\cite
  [authoryear]
  [primary::hegel1820]

and:

\cite
  [authoryear]
  [secondary::beiser1987]

Do not create several datasets merely to obtain several headings

If the records belong to one collection and differ only in presentation, several renderings may be sufficient.

Use several datasets when the distinction is stable, structural, and useful for citation or bibliography organisation.

5.1. Several datasets are not always necessary

Primary and secondary literature can be separated into two datasets, but this is an editorial choice rather than a universal rule.

A project may instead use:

The architecture should follow the needs of the project.

6. Two datasets and two independent dimensions

When several datasets are used, two editorial dimensions operate together:

  1. the dataset identifies the bibliographic collection;
  2. criterium identifies the structural scope requested for a rendering.

The rendering method remains a separate setting.

For example:

\definebtxrendering
  [localprimary]
  [apa]
  [dataset=primary,
   sorttype=authoryear]

\definebtxrendering
  [localsecondary]
  [apa]
  [dataset=secondary,
   sorttype=authoryear]

At the end of a chapter:

\subject{Primary sources used in this chapter}

\placebtxrendering
  [localprimary]
  [method=global,
   criterium=chapter,
   repeat=yes]

and:

\subject{Secondary literature used in this chapter}

\placebtxrendering
  [localsecondary]
  [method=global,
   criterium=chapter,
   repeat=yes]

The first rendering asks, in editorial terms:

Which records from the primary dataset belong to the current chapter scope?

The second asks:

Which records from the secondary dataset belong to the current chapter scope?

The dataset and the chapter criterion answer different questions:

dataset    -> which collection?
criterium  -> which chapter or structural scope?

7. MWE: chapter bibliographies from two datasets

The following example defines two datasets and two chapter-scoped renderings.

The first list contains the record used from primary in the current chapter.

The second list contains the record used from secondary in the same chapter.

The unused records remain available in their datasets but do not appear in these chapter-scoped lists.

8. Choosing the right architecture

Editorial requirement Recommended architecture
One final bibliography One dataset and one rendering placed with method=global
One bibliography at the end of each chapter One dataset and one rendering placed with method=global and criterium=chapter
Chapter bibliographies and a final bibliography One dataset with chapter and final renderings; use criterium=chapter for chapter lists and repeat=yes where records must reappear
Complete catalogue and cited bibliography One dataset with one rendering using method=dataset and another using method=global
The same collection in different orders or formats Several renderings from one dataset
Primary and secondary collections that must remain structurally distinct Separate datasets and separate renderings
Editions and translations treated as independent collections Separate datasets may be appropriate
Chapter-level primary and secondary bibliographies Two datasets, two renderings, and criterium=chapter

Choose the simplest architecture that preserves the editorial distinctions

Do not multiply datasets or renderings without a clear purpose.

A stable and readable architecture is preferable to a large number of nearly identical lists.

9. Common problems

9.1. The wrong rendering scope is used

The setting:

method=dataset

can include records from the complete dataset, whether cited or not.

A chapter bibliography normally requires an explicit chapter criterion:

criterium=chapter

Do not use method=local as a synonym for “current chapter”.

9.2. A rendering is associated with the wrong dataset

A rendering such as:

\definebtxrendering
  [secondarylist]
  [apa]
  [dataset=primary]

cannot render records stored only in secondary.

Check the dataset attached to every rendering.

9.3. Several renderings are confused with several datasets

Several renderings provide several views.

Several datasets provide several collections.

Do not duplicate bibliographic data merely because the document contains several bibliography headings.

9.4. A record appears in both a chapter and a final bibliography

This is normally intentional.

A chapter-scoped rendering and a final document-wide rendering may both use the same bibliographic record.

The record remains stored only once in the dataset.

9.5. A chapter bibliography contains unexpected records

Check:

9.6. A final bibliography omits a record shown in a chapter bibliography

Check:

9.7. A record appears in one chapter but not another

If the same record is cited in several chapters and chapter bibliographies are placed repeatedly, check whether:

repeat=yes

is required.

The structural criterion and the repeat policy answer different questions:

criterium=chapter  -> does the record belong to this chapter scope?
repeat=yes         -> may it be rendered again?

10. A practical diagnostic table

Symptom Check first
A chapter bibliography is empty Rendering dataset, qualified keys, chapter placement, and criterium=chapter
A final bibliography is empty Rendering dataset, registered citations, and method=global
An uncited record appears Whether method=dataset was used
A primary source appears in the secondary list Dataset loading and rendering association
A record appears in two lists Whether two renderings intentionally include it
A record shown in a chapter bibliography is missing from the final bibliography Final rendering scope and repeat=yes
A list contains records from another structural unit Placement context and criterium
A record cited in two chapters appears only in the first bibliography repeat

11. What you have learned

This guide has shown how datasets, renderings, structural scope, and repeated rendering combine to produce chapter-level and multiple bibliographies.

Question Mechanism
Which collection contains the record? Dataset
Which bibliography list is being produced? Rendering
Which bibliography reference state is used? method
Which structural or reference scope is requested? criterium
Should every stored record be available to the rendering? method=dataset
May a record already shown in another list appear again? repeat=yes

The main principles are:

 duplicating it in the data;
 the dataset identifies the collection, while the criterion identifies the
 requested structural scope;
 again.

The essential distinction is:

dataset    -> which collection?
method     -> which rendering/reference state?
criterium  -> which structural scope?
repeat     -> may an already rendered record appear again?

Continue with:

Guide 4 — Organising bibliographies in complex editorial projects

The next guide explains how to integrate datasets, renderings, citation commands, chapter-level bibliographies, and final lists into a structured multifile project.

12. Related pages and commands

Bibliography guides — Guide 3 of 4

Previous: Guide 2 — Understanding datasets, styles, renderings, selection, and sorting  ·  Current: Guide 3 — Creating local and multiple bibliographies  ·  Next: Guide 4 — Organising bibliographies in complex editorial projects