Jump to content

Help:Cite errors

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Gadget850 (talk | contribs) at 23:12, 3 February 2015 (Bugs: rem: included in help subpages). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

The Wikipedia footnotes system has the ability to detect errors. This page documents the error messages and provides an understanding of the problem and solutions.

Overview

Cite.php is the software extension for the footnotes system. Two HTML-style tags are used to define and show the references.

<ref> Single use footnotes are defined by enclosing content within <ref>...</ref>:

<ref>content</ref>

A footnote used multiple times may be defined with a name:

<ref name="foo">content</ref>

To invoke a named footnote:

<ref name="foo" />

Footnotes may be defined in groups:

<ref group="foo">content</ref>

<references /> To display the reference list, after all of the <ref>...</ref> tags, include:

<references />

To display a list of references defined in a group, include:

<references group="foo" />

Names

Names for footnotes and groups must follow these rules:

  • Names are case-sensitive. Please do not use raNdOM capitalization.
  • Names must not be purely numeric; the software will accept something like ":31337" (which is punctuation plus a number), but it will ignore "31337" (purely numeric).
  • Names should have semantic value, so that they can be more easily distinguished from each other by human editors who are looking at the wikitext. This means that ref names like "Nguyen 2010" are preferred to names like ":31337".
  • Names must be unique. You may not use the same name to define different groups or footnotes. Try to avoid picking a name that someone else is likely to choose for a new citation, such as ":0" or "NYT".
  • Please consider keeping reference names short, simple, and restricted to the standard English alphabet and numerals. If spaces are used, the following technical restrictions become relevant:
    • Quotation marks are preferred but optional if the only characters used are letters A–Z, a–z, digits 0–9, and the symbols !$%&()*,-.:;<@[]^_`{|}~. That is, all printable ASCII characters except #"'/=>?\ and space.
    • Inclusion of any other characters, including spaces, requires that the reference name be enclosed in quotes; for example, name="John Smith". But quote-enclosed reference names may not include a less-than sign (<) or a double straight quote symbol ("), which may, however, be included by escaping as &lt; and &quot; respectively.
    • The quote marks must be the standard, straight, double quotation marks ("); curly or other quotes will be parsed as part of the reference name.
  • You may optionally provide reference names even when the reference name is not required. This makes later re-use of the sourced reference easier.

Templates

Several templates have been developed for use with references:

  • {{Reflist}} adds the <references /> tag with some formatting options
  • {{R}} invokes up to five named references
  • {{Sfn}} invokes named references for shortened footnotes

Error messages

The messages will be formatted as an error.

These messages are dependent on the language setting in Special:Preferences— this list applies only to "en — English."

Other problems

Some problems may not show a cite error message, while others may not be obvious.

A page shows in the reference error category, but no cite errors show

If <ref>...</ref> includes a URL with an =, and if the reference is inside a template, then the template will fail. Depending on the placement of the URL, the cite error message may not display, but the page will be included in the error category. Ensure that = are encoded as &#61;

refTools should catch this problem.

For example, an incorrectly nested reference where {{lower}} is being used to make the reference smaller:

{{lower|<ref>content1<ref>content2</ref>[http://www.washingtoninstitute.org/templateC05.php?CID=2386]</ref>}}

This may be caused by a template that is not properly closed with }}.

It can also be caused by multiple footnotes that are defined to use the same name. Links will be generated for both, but only the first will show in the references list: For example:

<ref name="foo">content1</ref>
<ref name="foo">content2</ref>

Only content1 will show. refTools will catch this problem.

Content on a non-article page is missing

If a footnote does not have a closing </ref>, it will "eat" the following text, causing it to not show. This normally shows a cite error, unless it is the last footnote on the page. Normally, this would then suppress the <references /> tag, generating an error, but the message for a missing <references /> tag is suppressed on non-article pages. refTools will catch this problem.

Templates

Some templates may include <ref>...</ref> tags; for example {{botanist}}. If a template of this type in included without the <references /> tag, then an error is generated, but the problem is not obvious. refTools will not catch this problem.

Several methods are available for solving this problem. Below they are listed in order of preference. Note that only one of these is required, not all of them.

Method 1

If the template has a documentation page, add <references /> there.

Method 2

Add the following code to the end of the template:

<noinclude>
{{Template reference list}}
</noinclude>

Method 3

Add the following code to the end of the template:

<noinclude>
<div style="display: none"><references /></div>
</noinclude>

Cons: Hides the references, not informing the user that it is there; editors won't be able to check the references formatting.

Method 4

Include the <references /> tag within the template itself using the group parameter. See Help talk:Cite errors/Testcases1 for an example.

Cons: Creates a separate references section that may not be obvious; does not allow reuse of the references within the body of the article.

Tools

refTools can be enabled via Preferences → Editing → Usability features. It includes an error checking tool for common problems.

Messages, namespaces and categories

Internal messages are generated by the Cite.php extension and shown as a MediaWiki message. See the parser hooks section of Special:Version for the installed version of Cite.php. These messages are in the MediaWiki namespace and can be modified only by admins.

The MediaWiki messages use {{broken ref}} to control the namespace and category. Messages show only on main (article), user, template, category, help and file pages. Talk pages do not show error messages.

Category default sorting is by {{PAGENAME}} for the main namespace and by τ{{PAGENAME}} for template, category, help and file namespaces.