Skip to content

Commit d9056a6

Browse files
committed
Merge branch 'rmzelle-disambiguation-order'
2 parents 34c819f + 0c7426e commit d9056a6

File tree

1 file changed

+62
-91
lines changed

1 file changed

+62
-91
lines changed

specification.rst

Lines changed: 62 additions & 91 deletions
Original file line numberDiff line numberDiff line change
@@ -1573,125 +1573,96 @@ Citation-specific Options
15731573
Disambiguation
15741574
''''''''''''''
15751575

1576-
A cite is ambiguous when it matches multiple bibliographic entries [#]_. There
1577-
are four methods available to eliminate such ambiguity:
1578-
1579-
1. Show more names
1580-
2. Expand names (adding initials or full given names)
1581-
3. Add a year-suffix
1582-
4. Render the cite with the ``disambiguate`` attribute of ``cs:choose``
1583-
conditions testing "true"
1584-
1585-
Method 2 can also be used for global *name disambiguation*, covering all cites,
1586-
ambiguous and unambiguous, throughout the document.
1587-
1588-
Disambiguation methods are activated with the following optional attributes, and
1589-
are always tried in the listed order:
1590-
1591-
``disambiguate-add-names`` [Step (1)]
1592-
If set to "true" ("false" is the default), names that would otherwise be
1593-
hidden as a result of et-al abbreviation are added one by one to all members
1594-
of a set of ambiguous cites, until no more cites in the set can be
1595-
disambiguated by adding names.
1596-
1597-
``disambiguate-add-givenname`` [Step (2)]
1598-
If set to "true" ("false" is the default), ambiguous names (names that are
1599-
identical in their "short" or initialized "long" form, but differ when
1600-
initials are added or the full given name is shown) are expanded. Name
1601-
expansion can be configured with ``givenname-disambiguation-rule``. An
1602-
example of cite disambiguation:
1576+
A cite is ambiguous when it matches multiple bibliographic entries [#]_.
1577+
Four methods are available to eliminate such ambiguity, which are always tried in the following order:
1578+
1579+
1. Expand names (adding initials or full given names)
1580+
2. Show more names
1581+
3. Render the cite with the ``disambiguate`` attribute of ``cs:choose`` conditions testing "true"
1582+
4. Add a year-suffix
1583+
1584+
Method 1 can also be used for the separate purpose of global *name disambiguation*, covering both ambiguous and unambiguous cites throughout the document.
1585+
1586+
The four disambiguation methods can be individually activated with the following optional attributes:
1587+
1588+
``disambiguate-add-givenname`` [Method (1)]
1589+
If set to "true" ("false" is the default), ambiguous names (names that are identical in their "short" or initialized "long" form, but differ when initials are added or the full given name is shown) are expanded.
1590+
Name expansion can be configured with ``givenname-disambiguation-rule``.
1591+
An example of cite disambiguation:
16031592

16041593
================================ ===================================
16051594
Original ambiguous cites Disambiguated cites
16061595
================================ ===================================
16071596
(Simpson 2005; Simpson 2005) (H. Simpson 2005; B. Simpson 2005)
16081597
(Doe 1950; Doe 1950) (John Doe 1950; Jane Doe 1950)
16091598
================================ ===================================
1610-
1611-
If cites cannot be (fully) disambiguated by expanding the rendered names,
1612-
and if ``disambiguate-add-names`` is set to "true", then the names still
1613-
hidden as a result of et-al abbreviation after the disambiguation attempt of
1614-
``disambiguate-add-names`` are added one by one to all members of a set of
1615-
ambiguous cites, until no more cites in the set can be disambiguated by
1616-
adding expanded names.
1617-
1599+
16181600
``givenname-disambiguation-rule``
1619-
Specifies a) whether the purpose of name expansion is limited to
1620-
disambiguating cites, or has the additional goal of disambiguating names
1621-
(only in the latter case are ambiguous names in unambiguous cites expanded,
1622-
e.g. from "(Doe 1950; Doe 2000)" to "(Jane Doe 1950; John Doe 2000)"), b)
1623-
whether name expansion targets all, or just the first name of each cite, and
1624-
c) the method by which each name is expanded.
1601+
Specifies
1602+
(a) whether the purpose of name expansion is limited to disambiguating cites, or has the additional goal of disambiguating names (only in the latter case are ambiguous names in unambiguous cites expanded, e.g. from "(Doe 1950; Doe 2000)" to "(Jane Doe 1950; John Doe 2000)"),
1603+
(b) whether name expansion targets all, or just the first name of each cite, and
1604+
(c) the method by which each name is expanded.
16251605

16261606
**Expansion of Individual Names**
16271607
The steps for expanding individual names are:
16281608

1629-
1. If ``initialize-with`` is set and ``initialize`` has its default
1630-
value of "true", then:
1609+
1. If ``initialize-with`` is set and ``initialize`` has its default value of "true", then:
16311610

1632-
\(a) Initials can be shown by rendering the name with a ``form``
1633-
value of "long" instead of "short" (e.g. "Doe" becomes "J. Doe").
1611+
\(a) Initials can be shown by rendering the name with a ``form`` value of "long" instead of "short" (e.g. "Doe" becomes "J. Doe").
16341612

1635-
\(b) Full given names can be shown instead of initials by rendering
1636-
the name with ``initialize`` set to "false" (e.g. "J. Doe" becomes
1637-
"John Doe").
1613+
\(b) Full given names can be shown instead of initials by rendering the name with ``initialize`` set to "false" (e.g. "J. Doe" becomes "John Doe").
16381614

1639-
2. If ``initialize-with`` is *not* set, full given names can be shown by
1640-
rendering the name with a ``form`` value of "long" instead of "short"
1641-
(e.g. "Doe" becomes "John Doe").
1615+
2. If ``initialize-with`` is *not* set, full given names can be shown by rendering the name with a ``form`` value of "long" instead of "short" (e.g. "Doe" becomes "John Doe").
16421616

16431617
**Given Name Disambiguation Rules**
16441618
Allowed values of ``givenname-disambiguation-rule``:
16451619

16461620
"all-names"
1647-
Name expansion has the dual purpose of disambiguating cites and
1648-
names. All rendered ambiguous names, in both ambiguous and
1649-
unambiguous cites, are subject to disambiguation. Each name is
1650-
progressively transformed until it is disambiguated. Names that
1651-
cannot be disambiguated remain in their original form.
1621+
Name expansion has the dual purpose of disambiguating cites and names.
1622+
All rendered ambiguous names, in both ambiguous and unambiguous cites, are subject to disambiguation.
1623+
Each name is progressively transformed until it is disambiguated.
1624+
Names that cannot be disambiguated remain in their original form.
16521625

16531626
"all-names-with-initials"
1654-
As "all-names", but name expansion is limited to showing initials
1655-
(see step 1(a) above). No disambiguation attempt is made when
1656-
``initialize-with`` is not set or when ``initialize`` is set to
1657-
"false".
1627+
As "all-names", but name expansion is limited to showing initials (see step 1(a) above).
1628+
No disambiguation attempt is made when ``initialize-with`` is not set or when ``initialize`` is set to "false".
16581629

16591630
"primary-name"
1660-
As "all-names", but disambiguation is limited to the first name of
1661-
each cite.
1631+
As "all-names", but disambiguation is limited to the first name of each cite.
16621632

16631633
"primary-name-with-initials"
1664-
As "all-names-with-initials", but disambiguation is limited to the
1665-
first name of each cite.
1634+
As "all-names-with-initials", but disambiguation is limited to the first name of each cite.
16661635

16671636
"by-cite"
1668-
Default. As "all-names", but the goal of name expansion is limited
1669-
to disambiguating cites. Only ambiguous names in ambiguous cites are
1670-
affected, and disambiguation stops after the first name that
1671-
eliminates cite ambiguity.
1672-
1673-
``disambiguate-add-year-suffix`` [Step (3)]
1674-
If set to "true" ("false" is the default), an alphabetic year-suffix is
1675-
added to ambiguous cites (e.g. "Doe 2007, Doe 2007" becomes "Doe 2007a, Doe
1676-
2007b") and to their corresponding bibliographic entries. The assignment of
1677-
the year-suffixes follows the order of the bibliographies entries, and
1678-
additional letters are used once "z" is reached ("z", "aa", "ab", …, "az",
1679-
"ba", etc.). By default the year-suffix is appended to the cite, and to the
1680-
first year rendered through ``cs:date`` in the bibliographic entry, but its
1681-
location can be controlled by explicitly rendering the "year-suffix"
1682-
variable using ``cs:text``. If "year-suffix" is rendered through ``cs:text``
1683-
in the scope of ``cs:citation``, it is suppressed for ``cs:bibliography``,
1684-
unless it is also rendered through ``cs:text`` in the scope of
1685-
``cs:bibliography``, and vice versa.
1686-
1687-
If ambiguous cites remain after applying the selected disambiguation methods
1688-
described above, a final disambiguation attempt is made by rendering these cites
1689-
with the ``disambiguate`` condition testing "true" [Step (4)] (see `Choose`_).
1690-
1691-
.. [#] The presence of uncited entries in the bibliography can make cites in the
1692-
document ambiguous. To make sure such cites are disambiguated, the CSL
1693-
processor should create hidden "ghost" cites for all uncited
1694-
bibliographic entries and include them in the disambiguation process.
1637+
Default. As "all-names", but the goal of name expansion is limited to disambiguating cites.
1638+
Only ambiguous names in ambiguous cites are affected, and disambiguation stops after the first name that eliminates cite ambiguity.
1639+
1640+
``disambiguate-add-names`` [Method (2)]
1641+
If set to "true" ("false" is the default), names that would otherwise be hidden as a result of et-al abbreviation are added one by one to all members of a set of ambiguous cites, until no more cites in the set can be disambiguated by adding names.
1642+
1643+
If both ``disambiguate-add-givenname`` and ``disambiguate-add-names`` are set to "true", given name expansion is applied to rendered names first.
1644+
If cites cannot be (fully) disambiguated by expanding the rendered names, then the names still hidden as a result of et-al abbreviation are added one by one to all members of a set of ambiguous cites.
1645+
Added names are expanded if doing so would disambiguate the ambiguous cites.
1646+
This process contines until no more cites in the set can be disambiguated by adding expanded names.
1647+
1648+
In the description of disambiguation methods (1) and (2) above, we assumed that each (disambiguated) cite has an unambiguous link to its bibliographic entry.
1649+
To assure that each cite does in fact uniquely identify its entry in the bibliography, detail that distinguishes cites (such as names, initials, and full given names) must be shown in the corresponding bibliography entries.
1650+
If this is not the case, disambiguation methods (1) and (2) also act on all members of a set of ambiguously cited bibliographic entries, until no more entries in the set can be unambiguously cited by adding (expanded) names.
1651+
Each method only takes effect on the involved bibliographic entries after it has been used to disambiguate cites.
1652+
1653+
``disambiguate`` condition [Method (3)]
1654+
A disambiguation attempt can also be made by rendering ambiguous cites with the ``disambiguate`` condition testing "true" (see `Choose`_).
1655+
1656+
``disambiguate-add-year-suffix`` [Method (4)]
1657+
If set to "true" ("false" is the default), an alphabetic year-suffix is added to ambiguous cites (e.g. "Doe 2007, Doe 2007" becomes "Doe 2007a, Doe 2007b") and to their corresponding bibliographic entries.
1658+
This final disambiguation method is always successful.
1659+
The assignment of year-suffixes follows the order of the bibliographies entries, and additional letters are used once "z" is reached ("z", "aa", "ab", ..., "az", "ba", etc.).
1660+
By default, the year-suffix is appended the first year rendered through ``cs:date`` in the cite and in the bibliographic entry,
1661+
but its location can be controlled by explicitly rendering the "year-suffix" variable using ``cs:text``.
1662+
If "year-suffix" is rendered through ``cs:text`` in the scope of ``cs:citation``, it is suppressed for ``cs:bibliography``, unless it is also rendered through ``cs:text`` in the scope of ``cs:bibliography``, and vice versa.
1663+
1664+
.. [#] Including uncited entries in the bibliography can make cites in the document ambiguous.
1665+
To make sure such cites are disambiguated, the CSL processor should include (invisible) cites for such uncited bibliographic entries in the disambiguation process.
16951666
16961667
Cite Grouping
16971668
'''''''''''''

0 commit comments

Comments
 (0)