Template:Cite Q/doc
This is a documentation subpage for Template:Cite Q. It may contain usage information, categories and other content that is not part of the original template page. |
This template is used on approximately 43,000 pages and changes may be widely noticed. Test changes in the template's /sandbox or /testcases subpages, or in your own user subpage. Consider discussing changes on the talk page before implementing them. |
From the TfD closure: "Until the matter of transcluding Wikidata on Wikipedia is resolved (most likely with a huge and contentious RFC) usage of this template should be extremely vetted to ensure that all of the transcluded information is accurate." |
This template uses Lua: |
This template, a wrapper for {{Citation}}, returns a formatted citation from statements stored on a Wikidata item (referred to by its Q identifier or QID) describing a citable source such as a scholarly article.
You can read about the template in:
- Lua error in Module:Cite_Q at line 13: attempt to index a nil value.
Note: While Wikipedia does not regard Wikidata as a reliable source, citations using Cite Q are not citing Wikidata; they cite the individual work stated, using metadata about that work, which is held on Wikidata for convenience.
Usage
For example, Wikidata item (Q15625490) is a scholarly item. To cite this as a source:
{{Cite Q|Q15625490}}
→- Lua error in Module:Cite_Q at line 13: attempt to index a nil value.
An example of an article using this template for all of its references is South Pole Telescope; an example using Harvard style citations is Suffix automaton.
By default, if there are more than eight author names, the template displays three, followed by "et al". This can be changed using |display-authors=
; setting that parameter to all
displays them all. The same applies to multiple editors – see the test-case pages.
Citations of papers which have been retracted ( (P5824)) will appear in Category:Cite Q - cites a retracted work.
Citations of papers which have been replaced ( (P1366)) will appear in Category:Cite Q - cites a replaced work.
You can also use {{Cite Q bulleted}} if you want to have a bullet returned before the citation (useful for automatic lists)
Parameters
|1=
= Wikidata QID for the article
Additionally, any named parameter used in {{citation}} may be entered and will overwrite the value in Wikidata. Using such parameters, with a value of unset
, will suppress display of data from Wikidata.
Blank
<ref name="">{{Cite Q| XXQIDXX }}</ref>
Reference naming
For ease of use, you may wish to name your references to reflect the cited work, for example:
<ref name="Williams-2010">{{Cite Q|Q15625490}}</ref>
Parameter / entity map
This section lists where each of the template's supported parameters gets its data.
Bibliographic parameters
|at=
= (P958)|authorn=
= (P50); (P2093)|chapter=
= (P792)|edition=
= (P393)|editorn=
= (P98); (P5769)|issue=
= (P433)|journal=
= (P1433)|language=
= (P407)|pages=
= (P304)|place=
= (P1071) (for written-at place)|publication-date=
= (P577) (treated like|date=
unless both are given)|publication-place=
= (P291) (for publication place, treated like|place=
unless both are given)|publisher=
= (P123)|series=
= (P179)|title=
= (P1476) (Wikidata label)|translatorn=
= (P655)|url=
= (P953), (P856), (P2699)|version=
= (P348)|volume=
= (P478)|others=
= (P86), (P110), (P2679), (P371), (P175)
Identifier parameters
|asin=
= (P5749) (add|asin-tld=
for some locales)|arxiv=
= (P818)|bibcode=
= (P819) (add|bibcode-access=
to indicate free)|biorxiv=
= (P3951)|citeseerx=
= (P3784)|doi=
= (P356) (add|doi-access=
to indicate free; add|doi-broken-date=
if deprecated)|hdl=
= (P1184) (add|hdl-access=
to indicate free)|isbn=
= (P212) (falls back to (P957))|ismn=
= (P1208)|issn=
= (P236)|jstor=
= (P888) (add|jstor-access=
to indicate free)|lccn=
= (P1144)|mr=
= (P889)|oclc=
= (P243)|ol=
= (P648) (add|ol-access=
to indicate free)|osti=
= (P3894) (add|osti-access=
to indicate free)|pmc=
= (P932) (add|pmc-embargo-date=
if embargoed)|pmid=
= (P698)|rfc=
= (P892)|ssrn=
= (P893)|s2cid=
= (P8299) (add|s2cid-access=
to indicate free)|zbl=
= (P894)
Archival parameters
|archive-url=
= (P1065) (the long URL with a date is needed; see WP:WEBARCHIVES for e.g. Archive Today)
Examples
{{Cite Q|Q15625490}}
- Lua error in Module:Cite_Q at line 13: attempt to index a nil value.
{{Cite Q|Q15625490|page=42}}
- Lua error in Module:Cite_Q at line 13: attempt to index a nil value.
{{Cite Q|Q15625490|access-date=18 May 2017}}
- Lua error in Module:Cite_Q at line 13: attempt to index a nil value.
{{Cite Q|Q15625490|quote=lorem ipsum}}
- Lua error in Module:Cite_Q at line 13: attempt to index a nil value.
{{Cite Q|Q25766745}}
- Lua error in Module:Cite_Q at line 13: attempt to index a nil value.
{{Cite Q|Q25766745 |chapter=The Final Cut}}
(with chapter specified)- Lua error in Module:Cite_Q at line 13: attempt to index a nil value.
{{Cite Q|Q25766745 |pages=48-52}}
(with pages)- Lua error in Module:Cite_Q at line 13: attempt to index a nil value.
{{Cite Q|Q15625490|access-date=18 May 2017}}
- Lua error in Module:Cite_Q at line 13: attempt to index a nil value.
{{Cite Q|Q25766745|mode=cs1}}
- Lua error in Module:Cite_Q at line 13: attempt to index a nil value.
{{Cite Q|Q25766745|mode=cs2}}
- Lua error in Module:Cite_Q at line 13: attempt to index a nil value.
{{Cite Q|Q25766745|author-mask=1}}
- Lua error in Module:Cite_Q at line 13: attempt to index a nil value.
{{Cite Q|Q25766745|editor=unset}}
- Lua error in Module:Cite_Q at line 13: attempt to index a nil value.
For an example of a bibliography, updated periodically by Listeriabot, see User:Mike Peel/publications.
For additional examples, see testcases and testcases/many names.
Workflow
The template used with a single parameter, the Q-number of the article on Wikidata, will produce a citation using the default display parameters from Template:Citation and the styling of the author and editor names as they are stored on Wikidata. This is rarely the same as required by the citation formatting in any given article. The guidance at WP:CITEVAR requires that editors match the formatting of citations that they add to that of the article where it is added. At present, {{Cite Q}} does not know what style the formatting in an article requires (although it is possible that common styles could be marked or recognised automatically as is done for date formatting).
The result is that editors using {{Cite Q}} must take care to preview their edits and ensure that the formatting rendered matches that of the rest of the article. The commonest formatting issues are:
- Order of editor names:
- A typical output might be:
{{Cite Q |Q15625490}}
→- Lua error in Module:Cite_Q at line 13: attempt to index a nil value.
- If that were used in an article that used "Last, First" format for author names, then the editor would have to supply those author names manually in the desired format. It's often worth previewing the citation in expanded form to show what is being passed to the actual citation template:
{{Cite Q |Q15625490 |expand=yes}}
→- Lua error in Module:Cite_Q at line 13: attempt to index a nil value.
- That would make the author names (and author-links) easily available for copy and paste, followed by tweaking into the desired format:
{{Cite Q |Q15625490 |author6=Etnoyer, Peter |author4=Hoetjes, Paul |author7=Smith, Michael |author5=Toller, Wes |author3=van Tassell, James L |author-link2=Kent E. Carpenter |author1=Williams, Jeffrey T |author2=Carpenter, Kent E}}
→- Lua error in Module:Cite_Q at line 13: attempt to index a nil value.
- Punctuation:
- The separators between elements in the above citation is a comma, which is the default for a CS2-style format produced by {{Citation}}. Careful examination in a particular article will often show the separator punctuation to be a full stop (period). That may be selected by setting
|mode=cs1
:
{{Cite Q |Q15625490 |author6=Etnoyer, Peter |author4=Hoetjes, Paul |author7=Smith, Michael |author5=Toller, Wes |author3=van Tassell, James L |author-link2=Kent E. Carpenter |author1=Williams, Jeffrey T |author2=Carpenter, Kent E |mode=cs1}}
→- Lua error in Module:Cite_Q at line 13: attempt to index a nil value.
- Sometimes, the article will have author names with initials, and those initials are terminated with a full stop (period). It may be necessary to manually add or remove the punctuation in the author names to match the style of the target article (note: this does not apply to author-links, which match the title of the author's article):
{{Cite Q |Q15625490 |author6=Etnoyer, Peter |author4=Hoetjes, Paul |author7=Smith, Michael |author5=Toller, Wes |author3=van Tassell, James L. |author-link2=Kent E. Carpenter |author1=Williams, Jeffrey T. |author2=Carpenter, Kent E. |mode=cs1}}
→- Lua error in Module:Cite_Q at line 13: attempt to index a nil value.
- The separators between elements in the above citation is a comma, which is the default for a CS2-style format produced by {{Citation}}. Careful examination in a particular article will often show the separator punctuation to be a full stop (period). That may be selected by setting
- Italicisation in titles:
- Titles drawn from Wikidata cannot contain formatting, so editors using {{Cite Q}} may have to add appropriate formatting.
- {{Citation}} will automatically apply italicisation to titles of books, etc. so that does not need to be added:
{{Cite Q |Q25766745}}
→- Lua error in Module:Cite_Q at line 13: attempt to index a nil value.
- However, some titles require partial italicisation, and that has to be done manually when the whole title is not italicised, although that is rare. Titles of chapters may also need to be checked:
- For example (from ISBN 978-0-521-32115-0):
|chapter= ''Porphyra'' as food: cultivation and economic
Module:Wd
Module:Wd can automatically cause this template to be invoked, e.g.,
{{Wikidata|references|raw|Q2978|P2046}}
currently causes the following to be invoked:
{{Cite Q|Q15707237|pages=242}}
- Lua error in Module:Cite_Q at line 13: attempt to index a nil value.
because an (P2046) statement on (Q2978) is referenced to be (P248) (Q15707237) with (P304) = 242.
Issues
Future developments
- Once robust the functionality should be merged into {{Citation}}
- Eventually, each signed-in reader should be able to set, under their "Preferences", the style in which they wish to see citations rendered. No more CiteVar wars!
- We should have a global template repository, so the code can be used by multiple wikis, without having to manually copy it after every update.
To do list
- Properties
- More properties/ parameters to add
- Parameters with no equivalent property?
- Internationalisation
- Check/resolve handling of redirected QID
- Order of precedence for rendering author names:
- Add tracking categories for each parameter where the local value differs from the corresponding WD value so that either the WD entry can be updated/corrected or the local override can be corrected/removed
- Other tracking categories?
- Links to sister projects: Wikisource, if a transcription project exists; Wikibooks; Wikiversity (esp. the Wikijournals there); perhaps more
- Avoid
<ref name="dicc">{{Cite Q|Q100160262}} {{cite wikisource|wslanguage=pt|wslink=Diccionario Bibliographico Brazileiro/Francisco Antonio de Almeida|title=Transcription}}</ref>
! - Also add links to authors who have pages on Wikisource but not on Wikipedia. Related query: Authors on Wikisource but not other projects, who are linked to by an item which is a subclass of Q47461344 (written work)
- Avoid
- Consider case where author is given as (Q311624)
- If last author/editor is named "et al." (and variants), mute this entry and set display-authors/editors=etal instead before passing down to {citation}
- Disputed; see Template talk:Citation#Et al
- If last author/editor is named "et al." (and variants), mute this entry and set display-authors/editors=etal instead before passing down to {citation}
- Link to Wikisource should take priority over all URL properties, but only if accompanied by (P996). If not, (P996) should take precedence over URLs.
Where there is a Wikipedia article about the work cited, link the title to that, overriding the URL if necessary (example: d:Q25766745)- Ditto for editions of works
- At present a WD pages entry of "1" will result in |pages=1–1 (and metadata &rft.pages=1-1) rather than |page=1 (and metadata &rft.pages=1).
- Implement evaluation of generic keyword for all parameters to denote that a WD value should be accepted by framing its value in accept-this-as-written markup ((..)). See talk thread for possible keyword names.
- Check all parameter aliases when scanning for override parameters (at present some alias parameter names are ignored, possibly leading to inconsistent behaviour if they are set as well).
- Consider including a link to Special:EntityUsage, in the form, say, Other cites or with a small icon.
- Take possible template parameter usage as hint which parameter to use in the generated output. F.e. if the journal/magazine/newspaper parameter is used, the template should use the same in the output. The underlying template {citation} will switch the output format accordingly.
- Try to utilize given parameter values as filter for retrieved WD data. If an editor specifies |edition=2 or |volume=3, cite Q should select correlating data (f.e. page ranges, identifiers etc.) while retrieving data from WD (in cases where more than one entry is available for a particular parameter)
- When the author is cited as (Q2818964), the label should start with an upper case letter
- Quick and dirty workaround:
{{ucfirst:{{Cite Q|xxxx}}
- Quick and dirty workaround:
- Convert WikiData's edition number (e.g., 1) into the ordinal (1st) expected by {{citation}}.
- Make this fix unnecessary.
- Add indication alongside citations of retracted/ replaced works
- Consider cases where citing a retracted/ replaced work is deliberate
- Make use of
|archive-url=
,|archive-date=
, and consider how to use|url-status=
- Use (P6833), where present.
- Improve rendering when both (P50) and (P2093) are present.
- Example: {{Cite Q|Q108740476}} → Lua error in Module:Cite_Q at line 13: attempt to index a nil value.
- Current rendering of author name uses semicolon: “Camelia-Manuela Lățăianu; Manuela Lataianu”
- Suggested improved rendering of author name: “Manuela Lataianu [= Camelia-Manuela Lățăianu]”
- Such instances should be fixed on Wikidata, as done here
Deferred
Feel free to tackle these; the core team working on Cite Q sees them as low priority, or too complex.
- Resolve special case of newspaper articles
- Is the following topic of "hint parameters" related to this?
- Author names (Western-style, at least) should display as "Last, First Middle" to match Wikipedia house style
- How to deal with Tussenvoegsels etc.
- In Romance languages, it should be, e.g., "Quental, Antero de" instead of "de Quental, Antero"
- How to deal with Tussenvoegsels etc.
- Handle volume in a serial
- Clarification needed: What is meant by this? |part=, or output format differences journal vs. magazine?
- Is there a Pxxxx code for book series editors to add them to the list of "normal" editors?
- resolve at Wikidata first
Done
Multiple author names treated as one blobLinking author name(s)Title for a book uses{{ #invoke:WikidataIB |getLink |{{{1}}} }}
and may be expensiveFix|ol=
valuesNeed to add manual date for newspaper articles/ website articles.Make publisher a link, where appropriateImprove handing of unexpected multiple valuese.g. Handle multiple DOIs
Author name string ( (P2093)) values (e.g. on Q38000000)Pseudonymous author personas such as P. D. Q. Bach or Mark TwainTitle not in EnglishHandle volume, issue and page(s) as qualifiers of (P1433)Wider variety of examples/ test casesIf language of work or name is set (and not the local language); pass that; if not but language of title is set (and not the local language), use thatTheurl
parameter should also pick up data from the properties (P953) and (P2699)Linking title to Wikipedia article, if anyFetch ISSN etc. from item about journalMove Wikidata link before|quote=
(and after other IDs like|pmid=
)Also fixes postscript character issues in conjunction with|mode=cs1
and with|quote=
Fix page evaluation code to accept comma- and semicolon-separated listsUse canonical parameter names when calling down to {citation} (f.e. |page= rather than |p=)Is there a Pxxxx code for SBNs (Standard Book Number to support |sbn= parameter?Is there a Pxxxx code for JFM (Jahrbuch über die Fortschritte der Mathematik) to support |jfm= parameter?(P894)? No, Zbl uses the same resolving link, but it is a different ID.
- Are there values of
|others
which are not illustrators? Possibly: Add a tracking category for references with a (P1366) statementAdd a tracking category for references with a (P5824) statementRender (P1680), following the title with a:
Won't fix
- Improve date formatting options
- This is done in {{Citation}}
- Fix unnecessary piping of author/editor and journal links if link and label are the same, f.e. [[Author|Author]] -> [[Author]], [[Journal|Journal]] -> [[Journal]] for improved reusability, cleaniness of output, reduced size of resulting page code, and to avoid potential future extra text errors thrown by the underlying {citation} template
- See talk
- Fix invocation with
|qid=
instead of unnamed parameter. At present {{cite Q|qid=Q12345}} instead of {{cite Q|Q12345}} gives an error.- This is intended; please discuss on talk
- Fix ready for test in template sandbox: {{cite Q/sandbox|qid=Q15625490}} gives Lua error in Module:Cite_Q/sandbox at line 13: attempt to index a nil value.
- Replace the QID with a pen icon
- The QID is valid metadata about the cited work.
See also
meta:WikiCite and d:Wikidata:WikiProject Source Metadata - goals of those projects include the management of citations across Wikimedia projects and better insight into research resources through Wikimedia projects.
Template data
Generate citations from Wikidata by passing the QID to this template
Parameter | Description | Type | Status | |
---|---|---|---|---|
QID | 1 | The Wikidata QID of the cited source | String | required |
Author | author | Use for Last, First format
| String | optional |
Author Link | authorlink | Wikipedia article title, use with Author
| String | optional |