ප්රවර්ගය:Harv and Sfn template errors
මෙය නිරීක්ෂණ ප්රවර්ගයකි. පිටු ලැයිස්තු තැනීමට හා නඩත්තු කිරීමට මෙය භාවිතා වේ—(ප්රධාන වශයෙන් ලැයිස්තු සඳහාම හෝ ලිපි සහ ප්රවර්ගවල භාවිතය සඳහා). මෙය විශ්වකෝෂයේ වර්ගීකරණ යෝජනා ක්රමයේ කොටසක් නොවේ.
පැහැදිලි කිරීම:
|
This category holds articles that use any of the short-cite templates ({{harv}}
and {{sfn}}
template families, and {{harvc}}
) where one or more of those short-cite templates do not properly link to a full citation, the target, or where multiple full cites can be the target of a single short-cite template.
Due to technical limitations, Cat:Harv and Sfn no-target errors contains many articles with false-positive errors. No-target error messages are hidden by default. Articles with multiple-target errors are listed in Cat:Harv and Sfn multiple-target errors. Multiple-target errors are not susceptible to false-positive errors so those errors are not suppressed. Several options to view error messages are detailed below, as well as possible ways to resolve errors.
Displaying error messages
[සංස්කරණය]Currently, two user scripts relatively reliably detect errors
- User:Svick/HarvErrors.js – Errors only
- User:Trappist the monk/HarvErrors.js – Errors + Warnings about potential errors when short footnote templates are used. This has substantially fewer pointless warnings than Ucucha's old script.
as well as a third experimental method based on customizing a .css page. The three methods are
- Method 1 – Automatic script installation
- Go in the 'Gadgets' tab of your preferences and select the 'Install scripts without having to edit JavaScript files' option at the bottom of the 'Advanced' section.
- Click on the 'Install' button in at the top of either User:Svick/HarvErrors.js, or User:Trappist the monk/HarvErrors.js
- Method 2 – Manual script installation
- Go to Special:MyPage/common.js and add any of
importScript('User:Svick/HarvErrors.js'); // Backlink: [[User:Svick/HarvErrors.js]]
importScript('User:Trappist the monk/HarvErrors.js'); // Backlink: [[User:Trappist the monk/HarvErrors.js]]
- in your skin page, like this. Alternatively, you can go to Special:MyPage/skin.js to make the script apply only to your current skin.
- Method 3 – .css code for error messages emitted by the short-cite templates
- Error messages are emitted by the various short-cite templates via Module:Footnotes and Module:Harvc. Because of technical limitations, the modules can emit false-positive error messages along with valid error messages. For this reason, no-target error messages are hidden by default. To show these hidden error messages, include the following text in your common.css page or your specific skin.css page:
.harv-error {display: inline !important;} /* display Module:Footnotes errors */
- Error message display may be enabled in the future.
Error messages
[සංස්කරණය]If short-cite template error messages are enabled, editors can see these messages:
- Harv/sfn error: no target: <anchor ID> – short-cite template cannot find <anchor ID> so cannot link to a full-cite target. Causes for this can be:
- the article does not have full-cite target with <anchor ID>
- the matching full-cite target is a cs1 or cs2 template that:
- has
|ref=none
- uses a redirect name when that redirect does not begin with
cite
orcita
– these two forms cover most of the cs1|2 redirects
- has
- the full-cite target does not use exactly the same author or editor surnames and/or date as listed in <anchor ID>
- the short-cite template links to a full-cite target that is a wrapper-template; see false-positive errors below
- Harv/sfn error: multiple targets (n×): <anchor ID> – short-cite template found more than one full-cite target with a matching <anchor ID>. Causes for this can be:
- authors' writings from different sources produced in the same year cited without disambiguation
|date=2020a
,|date=2020b
- redundant use of the full cite where one full-cite target might be in a References section and a duplicate might be in a Further reading section
- authors' writings from different sources produced in the same year cited without disambiguation
Similar (although not identical) messages are emitted by the user scripts. See the script documentation.
Resolving errors
[සංස්කරණය]Ways of resolving legitimate no target errors include:
- adding a missing full citation. When short citations are copied from one article to another without a full citation, you can sometimes find the full citation in a related article using Wikipedia's search feature.
- correcting the author and/or editor names in either the short or full citation so that they match each other
- correcting or adding dates in either the short or full citation so that they match each other; remember that date ranges are separated with an ndash character (–)
- converting a plain-text full citation into a templated citation using one of the cs1|2 families of templates (e.g. {{Cite book}}) or one of the Vcite family of templates (e.g. {{vcite book}})
- change cs1|2 template redirect names that do not begin with
cite
orcita
to the target of the redirect (e.g. change {{encyclopedia}} to {{cite encyclopedia}}) - create and use {{cite ...}} redirects for citation wrapper templates: {{<whatever>}} → {{cite <whatever>}}. Consider renaming the wrapper template so that its canonical name is {{cite <whatever>}} because there are automated processes out there that rename redirects to their canonical names; once renamed by these drones, false-positive error messaging may reappear.
- wrapping a plain-text citation inside {{wikicite}} and setting
|ref=
or|id=
as appropriate to match the value expected by the short-cite template - placing {{anchor}} adjacent to the plain-text citation; set the
{{anchor}}
parameter value to the value expected by the short-cite template - set the short-cite parameter
|ref=none
to suppress anchor ID link creation
Ways of resolving false positive no target errors include:
- adding the CITEREF to:
- Module:Footnotes/whitelist – use this when many articles use the same long-form citation
- a
{{sfn whitelist}}
template in the article
Ways of resolving multiple targets errors include:
- adding
|ref=none
to cs1|2 templates - adding disambiguation letters to
|date=
and to the {{sfn}} template when there are multiple full citations to works in the same year by identical authors or editors - converting redundant full citations into short citations using {{sfn}}, leaving only one full citation to the referenced work in the article
- entirely removing a redundant full citation, e.g. identical full citations in a "Bibliography" section and in "Further reading"
No advice is given for resolving false-positive errors.
Current limitations and false-positive errors
[සංස්කරණය]Brief explanation
[සංස්කරණය]When a short-cite template links to a full citation that is rendered by a template that wraps a CS1 template, like {{cite DNB}}
(which wraps {{cite encyclopedia}}
), a no target error may be displayed even when the short-cite template is valid and the link works. That is a "false positive" error. If you find what looks like a false positive error, please report it on the talk page for this category, and another editor will either fix the article or add the template in question to Module:Footnotes/whitelist.
Details
[සංස්කරණය]The short-cite templates employ an article reader to read the article's raw wikitext (the same text that you see in the source editor's edit window). While reading the wikitext, the article reader looks for a variety of templates that can create anchor IDs. For each such template found, the article reader attempts to extract the necessary information to determine the template's anchor ID, if it produces one. For cs1|2, the most common long-form citation templates, the article reader looks for:
- The default anchor ID created by the template automatically: up to four author / editor / contributor surname(s) and the year portion of the date
|ref=
: the anchor ID generated by {{sfnref}} (or its redirect{{sfnref}}
{{harvid}}
)|ref=<plain text>
: the anchor ID is the<plain text>
The article reader extracts similar information from other templates as appropriate for those templates.
Each long-form citation anchor ID is saved in a list along with a tally indicating how many of that ID the article reader found. When the short-cite template renders its output, it looks for its target anchor ID in the anchor-ID list:
- anchor ID found and the tally is 1: short-cite template is rendered without error message
- anchor ID found and the tally is 2 or more: short-cite template is rendered with a multiple target error message and the article is added to Category:Harv and Sfn template errors
- anchor ID not found: short-cite template is rendered with a no target error message and the article is added to Category:Harv and Sfn template errors
The no target errors may be true errors or may be false-positive errors. For true errors, there is no anchor ID in the article to match the anchor ID expected by the short-cite template. A false-positive error occurs because the article reader can only read the article's raw wikitext, it cannot burrow into wrapper templates. Wrapper templates enclose the template that creates the anchor ID. This enclosure hides the necessary details, so the article reader cannot determine that wrapper template's anchor ID. For example, {{cite DNB}}
is a wrapper template that encloses {{cite encyclopedia}}
. The values assigned to the {{cite DNB}} parameters |year=
and |supplement=
tell {{Cite DNB}} how to set editor names and date in its call to the enclosed {{cite encyclopedia}}, which uses them to create the wrapper template's anchor ID. When a wrapped template creates a matching anchor ID that the article reader cannot see; the link from short-cite to long-form citation works but is marked with a no target false-positive error message.
උපප්රවර්ග
මෙම ප්රවර්ගය සතු වන්නේ පහත දැක්වෙන උපප්රවර්ගය පමණි.
H
- Harv and Sfn no-target errors (පිටු 148)