Help:List-defined references

List-defined references (LDR) are references that are defined in the reference list markup, as opposed to being defined in the body of the article. LDR was implemented in September 2009 as a way to make referencing articles easier and with less clutter.

This page is a continuation from a section of Help:Footnotes. This guide assumes you are familiar with the tools explained there, such as the features of  tags, and the parameter.

LDR makes viewing and editing references more difficult for users of VisualEditor. You may wish to consider this before implementing it.

Overview
LDR uses named references where each individual reference has a unique name and is defined within the reference list markup:


 * Or; using reflist

Alternatively, references can be defined using the 'referencing' wrapper template r (for brevity the parameter names name and ref can be abbreviated to n and r):


 * Or; with reflist

Each reference is invoked in the body of the text using or.

Guidelines

 * All list-defined references must be named. Any name complying with the technical limitations above may be used; however, they should be consistent so that they can be edited by other users. A well-used practice is author-date, author-title or publication-date.
 * Additionally, any unused references will generate an error. All list-defined references must be used in the body and vice versa, all  tags must have defining information.
 * List-defined references and references defined in the body of the article may be mixed on a page—this is not a technical limitation of the template. However, this may be confusing to ongoing editors, and should be normalized to a single style, per WP:CITEVAR.
 * Reference lists may be ordered in any manner (e.g. alphabetical by reference name), but the generated list will be in the order in which the references are invoked.

Usage notes
The use of list-defined references means that while editing, the references and footnotes formatted this way are all inserted in the source section where the template is located. This is primarily a change in the source code and does not affect the display of the article to a reader. The primary effects are for editors, as described below.

The LDR method removes any citation details or notes that could disrupt the edit window while editing the body of the text, which is especially useful if they are vertical or otherwise span multiple lines. Additionally, this centralised reference list section can be opened by itself if any of the citation entries need modification, which can be especially helpful if attempting to modify a reference that is used multiple times—avoiding any need to search the entire source for it.

A drawback of the approach is that these references can be harder to insert into the source, because they are separated from the text. The editor must either open the entire document to see the source for both the text and the reference list, or alternatively use a two-step procedure, first entering the identifier in the main text and then opening the reference listing section to enter the source or footnote as content. Another overhead of this approach is that the list at the end of the article must be organised so that they can be found easily by an editor—most likely arranged alphabetically in the edit window by refname as this is most likely to retain source integrity and usefulness, even if the sections of the text are changed.

While it is often tidier to remove all citations from the source text, an acceptable compromise (especially for small articles) could be to only use LDR for citations used multiple times. This is because they already use the refname code so that they can be in multiple places—a simple move of the reference's source code from its first appearance to the reflist is a minor change. Additionally, these citations are more likely to need reviewing or modification, because they are more important to the article and contain more details, and making them easier to find and modify can be very helpful. Finally, this also maintains source integrity if the first instance of the reference changes, as noted above.

Additionally, a user-made script User:PleaseStand/References segregator allows you to automatically separate citations from the edit window, and temporarily collect them in a separated "inline citation" window. In this format the citations can be manually inserted into the reference list. This can have some of the benefits of permanent LDRs where their use is not practical or is against consensus. However, please note that before saving the page, any contents of this window will be replaced into the main text source at the first matching tag unless it is manually emptied. As outlined on its page and below, it has an automatic conversion script that can process existing citations into a reference list by itself, but it is uncertain whether it can do this migration while editing.

Finally, there are some misconceptions about list-defined footnotes:
 * 1) One of these is that the creation of separated footnote lists requires the use of list-defined footnotes. However, using a 'group' name to differentiate various kinds of footnotes, is available regardless of whether list-defined or in-line footnotes are used. For example, in both cases one can designate notes as a group called "Note", and separate them from simple citations by using the in-line label (The complete explanation of the use of group names is illustrated in the second example in the section immediately above.)
 * 2) Another misconception is that there is an "either-or" choice between use of list-defined footnotes and in-line footnotes, and that all citations in an article must follow only one of the styles. In fact, is entirely compatible with the use of in-line footnotes in the form content or content. Although use of both systems in the same article might appear confusing or undesirable, it is a fact that the two systems can be mixed indiscriminately with the template.

Errors
Sometimes referencing can produce errors that show up in red text. Please refer to Help:Cite errors to help diagnose and solve these errors. Alternatively, check your code against the example above or the reflist documentation at. Notably, errors at either the named ref tag or the reflist code can cause issues, as an entries must be defined and used in both for a LDR to work.

Converting
Reference styles may be converted from or to list-defined references, following the same rules for other major changes to citation style, at WP:CITEVAR. User:PleaseStand/segregate-refs.js has an option to assist conversion.

VisualEditor
You can re-use existing list-defined references in VisualEditor for additional citations, but you cannot add or remove list-defined references. It also does not support modifying list-defined references inside reflist, only &lt;references/>. This will hamper users of the Visual Editor, and you may wish to consider these limitations if you are interested in adding list-defined references.