Extension talk:Cite/Wikitext archive (Cite.php)

From mediawiki.org
Jump to navigation Jump to search

Getting [<cite_link_label_group->]

Instead of a number, I get the text [<cite_link_label_group->]. However, the link works fine and so does the reference at the bottom. See here: https://www.hackerspace.lu/wiki/Join!#cite_ref-0 --Clausekwis 16:52, 29 September 2010 (UTC)

Might that be a missing message? --Clausekwis 22:09, 29 September 2010 (UTC)
Uuuh, looks that way: w:en:Wikipedia:Manual of Style (footnotes)/Cite link labels#Creating more custom links --Clausekwis 00:16, 30 September 2010 (UTC)
Missing a message, and an explicit group reference. I went ahead and documented my work around below. Mean Dean 04:41, 30 November 2010 (UTC)

Same problem as below Problems with cite.php

Except my version of Media wiki is 1.16

  • Download the snapshot that matches your version of MediaWiki and put it in the extensions directory. (done)
  • Add the following line to LocalSettings.php:
  • $IP/extensions/Cite/Cite.php; (done)

Does not work. I do not expect anyone to be able to assist. It appears to me that the development of 1.16 has just made it more difficult for pople like me to use Ron Barker 09:18, 14 September 2010 (UTC)

Problems with cite.php

I installed MediaWiki 1.15.1 For solving the problem with cites and references I made the following as I was suggested:

  • Download the snapshot that matches your version of MediaWiki and put it in the extensions directory. (done)
  • Add the following line to LocalSettings.php:
  • $IP/extensions/Cite/Cite.php; (done)
  • $IP/includes/DefaultSettings.php; (done)

And don´t work

Any suggestion or help? Thanks in advance

Coconuts34 16:53, 11 November 2009 (UTC)

Installation trouble: ver 1.6 upwards only / UTF-8 arrow bug / mising "?>"

Sorry to top post, remove it if you think it's inappropiate:

The file to be downloaded at (CVS HEAD) in the External link section has three issues:

  1. It's for ver 1.6 upwards only, which should be mentioned prominently - it took some time before I found out.
  2. The trailing ?> at the end of the PHP file is missing
That is actually the rule for extensions. Mediawiki devs request you don't add ?> as it may confuse mw. --Clausekwis 00:11, 30 September 2010 (UTC)
  1. On line 98/99 ↑ needs to be changed to ↑, so a proper ↑ is displayed.

@Ævar Arnfjörð Bjarmason: Thx for the great work, but the info above was missing and spares a lot of trial & error for first time users.--Tickle me 23:10, 10 April 2006 (UTC)

I put Cite.php in my extensions directory

I put Cite.php in my extensions directory, and added the line "require_once("extensions/Cite.php"); to my LocalSettings.php, and now my wiki gives me this error:

Fatal error: Call to undefined function: wfmsgforcontentnotrans() in mediawiki-1.5.5/extensions/Cite.php on line 572

Any ideas? -- 06:34, 19 January 2006 (UTC)

Okay, I think I found out what was missing. includes/GlobalFunctions.php looks like it's old in mediawiki-1.5.5.tar.gz - I'm going to try grabbing just that function. -- 06:55, 19 January 2006 (UTC)
Well, it looks like it's harder than I thought to enable this on v1.5.5. I guess I'll wait till it is in the normal build. -- 07:15, 19 January 2006 (UTC)
It depends on changes in the parser itself, how hooks are added to the parser, hooks in the parser, behaviour in the sanitizer & parser all of which are in CVS HEAD and not in REL1_5 (that list if just of the top of my head), if you want to use it you'll either have to backport the needed changes or use CVS HEAD. I do work for hire if you need someone for the former;) —Ævar Arnfjörð Bjarmason 02:42, 21 January 2006 (UTC)
I have not understand. Same problem as above. Is the cite.php not for mediawiki 1.5.5 ? --Farm 04:13, 24 January 2006 (UTC)
No. —Ævar Arnfjörð Bjarmason 08:43, 29 January 2006 (UTC)
The CVS HEAD source code has not the endding code "?>", why? 14:00, 24 Jan 2006 (UTC).
I forgot to add it. —Ævar Arnfjörð Bjarmason 08:43, 29 January 2006 (UTC)

What's the "Log of /trunk/extensions/Cite/Cite.php" Page?

  1. I downloaded Cite.php & Cite.i18n.php.
  2. Put them into my extention/cite directory.
  3. Then add

require_once( "{$IP}/extensions/Cite/Cite.php" ); into my LocalSettings.php.

But when I access my mediawiki/index.php, it give me a "Log of /trunk/extensions/Cite/Cite.php" page, not my main page.

  • Can this extention cite.php support the Mediawiki Version 1.10.1?
Yes, it works OK. Jonathan.
  • If it works fine with Mediawiki Version 1.10.1, why I get the "Log of /trunk/extensions/Cite/Cite.php" page instead of my main page?--Ggdayup 01:39, 18 July 2007 (UTC)
You've downloaded the Subversion log pages from our web-based viewer, rather than the actual files in the repository. You want http://svn.wikimedia.org/svnroot/mediawiki/trunk/extensions/Cite. robchurch | talk 02:05, 18 July 2007 (UTC)

Thank you! I solve this problem.

Not working

I have v1.5.6 and it's not working. Can you tell me why? I did'nt understood what you previously wrote here.

In short because there have been massive changes in the MediaWiki API since 1.5 which this extension uses. —Ævar Arnfjörð Bjarmason 20:25, 28 February 2006 (UTC)
Same for 1.5.7? But working for 1.6alpha? --Edi 22:22, 2 March 2006 (UTC)
Sorry if my question seems naïve, but in fact, is there anyway to make cite.php work with 1.5.6 or not ? If there's a way, would it be to difficult for you to explain how ? If it's not too difficult but that you don't have time, do you think you may have time someday ? Thanks. --Henrique 23:35, 2 March 2006 (UTC)
See my comment above for what needs to be changed, although I may have forgotten something, your best bet it to look at the CVS logs from that time if you want to backport it.
I don't plan to backport it. Backporting is boring and I'm doing this in my free time. But even if I did it would have to be released as a seperate patch because the 1.5 branch is accepting security fixes and other bug fixes only. —Ævar Arnfjörð Bjarmason 16:57, 4 March 2006 (UTC)

Options for newbie

I'm a beginner with MediaWiki v1.5.7 - it is important for me to use cite functions, but I'm not able to change code. What are the options at this time for a newbie? Chrus. 31 March 2006.

No response

I put the cite.php in the extensions directory and added the reuqired_one line in the localsettings.php and noting happens. No footnotes appear and the <ref... is shown in the article! Any suggestions? Thanks!

You should create a directory Cite in extensions and then put both Cite.php and Cite.i18n.php in that directory. Be sure to check the ownership and permissions both on the files and on the subdirectory. --Hvdeynde 13:05, 4 February 2008 (UTC)


In my browser (IE and Firefox) in Win XP, I see:

Uranus's moons were observed to be declining in orbit[1], by the Hubble space telescope[2], the Martians were not avalible for comment on the matter[3]. The New York times[4] however reported[5] that ...
1. ^ NASA
2. ^ 1 2 December 2005 issue, page 12
3. ^ 1 2 January 2006 issue, page 16

Could it be

  • ^ 1 NASA
  • ^ 2 3 December 2005 issue, page 12
  • ^ 4 5 January 2006 issue, page 16

,I mean, the number in the references should correspond to the number in the text?

Thanks193.52.24.125 13:29, 28 December 2005 (UTC)

You might want to reply on Ævar's English Wikipedia talk page, there's some discussion there about this right now: en:User talk:Ævar Arnfjörð Bjarmason. —Locke Coletc 21:15, 28 December 2005 (UTC)

Second wish

It's long been said by people opposed to increased usage of inline citation that inline citations damage readability. I'm somewhat sympathetic to that, and the easy solution is to have a way for the people that want to to make inline citations invisible. Would that be hard to implement as a user preference for example? Or is there a better way to do that? Thanks - Taxman 16:35, 31 December 2005 (UTC)

It's already a user preference, you just have to add
span.reference { display: none; }
Or something like that to your user stylesheet. —User:Ævar Arnfjörð Bjarmason/Sig 17:43, 31 December 2005 (UTC)

A better method may be to add another parameter that allows individual citations to be hidden. This would allow for an article author to fully reference each paragraph, or even every sentence, and still keep the number of footnotes generated at a reasonable level. If this is impractical to implement, we can still use HTML comments. --Allen3 23:36, 31 December 2005 (UTC)

The whole point of the extension is to be able to maintain an automatically generated references table just like one can maintain an automatically generated table of contents in the software, if you're not going to use that (the only) feature and don't want display any references in the article at all then you're probably best off with a simple inline comment, unless I'm misunderstanding you. —Ævar Arnfjörð Bjarmason 15:25, 12 January 2006 (UTC)
I would restate this a different way. Is it possible to have a citation level variable. E.g. 0/1/2.. or none/default/all or none/few/default/lots/all where citations will be displayed according to the setting. The default level would be a sensible level which gives reasonable citations without going overboard. The "all" level would be something which makes fact checking very easy. Mozzerati 22:10, 17 February 2006 (UTC)
Let's keep it simple. What about <ref class="foo" ...>, and the specified class ends up included in the resulting span's class. Then you can do whatever you want in CSS. --P3d0

Third wish

The two-step process (<ref> and <references />) assumes that I am smart enough to remember to add the <references /> tag when I am finished with my article. Is it possible to expand the scope of Cite.php to extend the function of Article.php (or Skin.php?) to automatically put a refererences section at the bottom of any page that has the <ref> tags; similar to the way that Categories work? Perhaps it could include a template for the references section that editors could modify.

Thanks, Furboy 19:44, 15 December 2007 (UTC)

<ref> can't be used in image captions

Code of the form [[Image:Yagan.jpg|thumbnail|''Portrait of Yagan'' by [[George Cruikshank]].<ref name="Dale 1834">Dale 1834, p 1</ref>]] misrenders disastrously. Snottygobble 12:06, 2 January 2006 (UTC)

That's a known issue with the parser and doesn't have anything to do with this extension in particular, except that it affects it. I made a known issues section at Cite/Cite.php to track these. –User:Ævar Arnfjörð Bjarmason/Sig 07:02, 3 January 2006 (UTC)

Bugs? Or operator error?

I really like this new feature, but I'm having trouble getting it to work consistently. This is particularly a problem when a single reference is used more than once. The article I'm trying to fix is Dixie (song). As you can see, there are six page citations that repeat at least once (Notes 4, 17, 28, 58, 69, and 84). However, when you click on the reference links by these repeaters, nothing happens (the page does not pop up or down properly like it does with the page citations that are used only once). Secondly, Note 17 should read "Quoted in Abel 36.", but currently it says nothing. Likewise, Note 72 should read "Abel 49.", but it too is blank. Can someone tell me if I'm doing something wrong? Thanks . . . . — BrianSmithson 19:25, 6 January 2006 (UTC)

This was a known issue with MediaWiki which happened not because you were using references more than once but because you were using a character (0x20) that needed to be escaped. I've fixed the issue in MediaWiki that caused this.
As for your other issue that is indeed a user error, you can't recall a reference later in the text by its content, only by a key you provide, so <ref>foo</ref> <ref name=foo/> won't do what you seem to expect it should. But <ref name=foo>foo</ref> <ref name=foo/> probably will. —User:Ævar Arnfjörð Bjarmason/Sig 09:55, 7 January 2006 (UTC)

HTML format

This cite stuff is totally cool. But I have a few suggestions about the way the HTML code is formatted. —Michael Z.

Hi an thanks for the suggestions and sorry for the late reply, I saw this a few days ago but hadn't gotten around to replying. —Ævar Arnfjörð Bjarmason 14:44, 9 January 2006 (UTC)

<cite> element

Each note should be enclosed in an HTML <cite> element, since it is a citation. Since the in-text citation marker is linking to the citation, perhaps the note ID should be an attribute of the cite, rather than of the list item (<li>):

 <li><cite id="_note-NoteID">Note</cite><li>

Michael Z.

If you check the history of the file you'll see that what you suggest used to be the default but after reading a bit more up on the element in the W3C standards (see links in the file) and after some comments on the English Wikipedia I changed it again.
The reason it's not in there is because the cite element should only ever be used for a direct citation, and since users are likely to do something like:
<ref>Page 52 of XYZ written by Foo, the only remaining copy of this book was lost in the great fire of Bar</ref>
I.e. include something that isn't directly relevant to the citation (the fate of the referenced work in this case). If the software were to automatically wrap things in the cite element you'd end up with a lot of mismarked text, so now users are expected to simply write:
<ref><cite>Page 52 of XYZ written by Foo</cite>, the only remaining copy of this book was lost in the great fire of Bar</ref>
Ævar Arnfjörð Bjarmason 14:44, 9 January 2006 (UTC)
Okay, I see; this is also meant for footnotes, not just citations. But I don't see any harm in an HTML citation also containing a bit of explanatory text, like in your example. —Michael Z.

Back-link text

The back-link text is currently the single character ^ (U+005E CIRCUMFLEX ACCENT)—this is not an arrow, and doesn't really look like an arrow. It's a w:circumflex, a diacritic used in some languages, and on its own indicates mathematical exponentiation in primitive ASCII-only displays. For the sake of its meaningless semantics (therefore poor accessibility), as well as sheer graphical ugliness, let's change it to ↑ (U+2191 UPWARDS ARROW), or ← (U+2190 LEFTWARDS ARROW).

See also:

I agree that a proper mark should be used, but the replacement you mentioned (↑) looks way too large and not as neat as ^, ← on the other hand doesn't convey anything meaningful, the link is up, not to the left. Do you have something like ↑ that doesn't look so big (a bit more like ^)? —Ævar Arnfjörð Bjarmason 14:44, 9 January 2006 (UTC)
I don't think there are any smaller arrows, although an arrow could be made smaller using CSS formatting. See en:Template talk:Ref#^ revisited for some of the others, but MSIE/Win has trouble rendering most of them, without extra help from CSS.
Putting the arrows at the end of the note will make them less prominent, because they won't be all lined up (see below). —Michael Z.

And the back-link text should definitely not be superscripted; typographers use that for in-text citations only, never for footnote labels. —Michael Z.

You're suggesting[1] stuff[2] like this instead (i.e. rendering it the same way as the surrounding text)? —Ævar Arnfjörð Bjarmason
Superscripts are appropriate for the in-text citation references, but footnote labels should not be superscripts. "Back-links" don't appear in standard typography, but it makes sense that they should not be confused with citation references, possibly leading readers to look for another notes section below. —Michael Z.

Back-link position

The back-link looks like a label at the beginning of each note. But the note already has a number label. The back-link is an interface feature attached to the note, and subordinate to it. It belongs at the end. Don't the examples 4 to 6 below look better? Or if the arrow alone seems like too small a mouse-click target, put it in brackets so it is graphically associated with the citation link, like example 7 and 8.

  1. ^ Bloggins, Joe (2006). Old-fashioned carat back-links. Oldville: Tradition.
  2. ^ Brown, Sam (2006). At the beginning of the line: look like labels. Oldville: Tradition.
  3. ^ 3.1 3.2 Smith-Jones, John (2006). Attract attention and misalign authors. Oldville: Tradition.
  4. The Great, El Borbah (2006). New-fangled back-links. Newtown: Innovation.
  5. Verne, Jules (2006). Citations start with authors name: just like in books. Newtown: Innovation.
  6. Who, Joe (2006). Back-links are visually subordinate to the note's content. Newtown: Innovation. ↑6.1 ↑6.2
  7. Heinlein, Robert (2006). Brackets look like the in-text citations. Newtown: Innovation. [↑]
  8. Asimov, Isaac (2006). Brackets help visually associate notes with back-links. Newtown: Innovation. [↑8.1] [↑8.2]

Michael Z.

Mm, matter of taste really, I like having all the backlinks in the same row for quick jumping up & down in the article. If by "The back-link looks like a label at the beginning of each note. But the note already has a number label." you're referring to the rational numbers in #3 then you don't need to use numbers at all, the system allows for using custom labels (defined in cite_references_link_many_format_backlink_labels) in cite_references_link_many_format using the 3rd paramater ($3) so you could have something like this as well:
  1. a b Text of citation
Regarding the different styling of arrows (again) I really don't like to put myself in the position of deciding what should be the default. I just used the styling that was being used in the Ref and Note templates in enwiki at the time and I think the manual of style talk page is a much better venue for discussing how it should look, if editors are generally happy with something else than the current default I'd be quite happy to change the default in the software. —Ævar Arnfjörð Bjarmason 14:49, 12 January 2006 (UTC)

Title attribute for the back-link

The back-link currently contains an empty title attribute, which prevents it from showing a pop-up 'tooltip'.


Readers are used to looking for tool-tips in puzzling interface elements. Why not put some meaningful information there, which would help users figure out what this is? How about something like:

 title="Jump back to footnote 1 in the text"

Michael Z.

This is actually a "feature" of wikitext rather than this extension, and since it's basically just a macro that generates wikitext (from a final output point of view) the extension itself doesn't have control over the title attribute, it just sends wikitext to the parser for rendering. You'll notice that the same thing happens when you put code like [[#foo|bar]] on a normal page. I've added this to the issues list so that people are aware of this. —Ævar Arnfjörð Bjarmason 14:57, 12 January 2006 (UTC)

Parsable ID, using hyphens

If the ID assigned to the notes used the hyphen as a separator (instead of underscore), then it could be parsed using the CSS2 Hyphen Attribute Value Selector. [1] The current format is like the following:

 <li id="_note_NoteID">Note<li>

If it instead used a hyphen to separate the parts:

 <li id="_note-NoteID">Note<li>

Then all notes could be formatted using a CSS selector like this (in a modern browser; MSIE/Win doesn't support this):

 li[id|="_note"] { . . . }

Michael Z.

I didn't know you could do that, I've fixed it. —Ævar Arnfjörð Bjarmason 15:21, 12 January 2006 (UTC)
The hyphen-attribute selector is CSS2; supported by Firefox, Safari, Opera, but not MSIE. Thanks for changing it. —Michael Z.

Order of references

Is there any way to control the order in which the references appear at the end ? In Maharajkumar of Vizianagram for instance, references 2-5 are in the different parts of the article but since they are all from the same book, they are listed together at the end. Will I be able to do the same with this scheme ? 00:04, 11 January 2006 (UTC)

Flushing of previously-used references

One nice feature to have would be a flush attribute to <references />, so that using <references flush="yes" /> would delete all of the previously-used citations. This would be useful in en:Comparison of operating systems, for example, where each section has footnotes. æle 20:53, 13 January 2006 (UTC)

That would actually be pretty neat, although it's hard to do because you can't guarantee top-down parsing (and it being consistent with other tags) when you have multiple tags. —Ævar Arnfjörð Bjarmason 21:27, 14 January 2006 (UTC)
Maybe you could have "types" of references, so that you could have <ref type=book>{{Book reference…</ref> and <ref type=web>{{Web reference…</ref>, then display them with <references type="book"/> and <references type="web"/>. You could then have <references type="all"/> display absolutely everything, and <references/> display those without a specified type. HTH HAND —Phil | Talk 12:19, 17 January 2006 (UTC)

Wikitext is not HTML

This reference style is contrary to the spirit of w:wikitext, which is supposed to be free of such line noise. It renders pages uneditable (by novices and experienced editors alike) and unmaintainable. Is there a poll somewhere where this abomination can be opposed?

chocolateboy 05:30, 21 January 2006 (UTC)

Er.. well, a Wikitext way of handling this wasn't obvious, and there are other HTML/XML style tags in use in Wikipedia (see <charinsert> for example, or <gallery>, etc). I strongly disagree with your assertion that it makes pages "uneditable and unmaintable". HTML is well known, and it made more sense to use an HTML-like syntax than to use some "abomination" that was non-obvious or difficult to use/type. Using HTML-style markup also makes it easy to extend the syntax (add additional attributes to the psuedo-tags). —Locke Coletc 08:55, 21 January 2006 (UTC)
Can you cite some specific issues you have with it? "contrary to the spirit of wikitext", "line noise", "uneditable" and "unmaintainable" are all big statements but you fail to provide anything to back them up. What exactly do you have an issue with and how should that be fixed? —Ævar Arnfjörð Bjarmason 01:40, 22 January 2006 (UTC)


a Wikitext way of handling this wasn't obvious

What's wrong with plain old {{ref|foo}} and {{note|foo}}?

Which flavour of footnote did you actually have in mind?
This and this (and also this and this which describe obsolete systems which apparently are still operational even though deprecated) show no less than five tags for creating a reference (and I might have missed one):
  1. {{Template:ref}}
  2. {{Template:ref label}}
  3. {{Template:fn}}
  4. {{Template:an}}
  5. {{Template:mn}}
each of which must be coupled with the correct corresponding tag for the footnote to work properly.
There are also various systems in place for renumbering footnotes; it is unlear which of the above tags each system will sort properly.
Replacing this lot with a single uniform method would seem to be an excellent idea. HTH HAND —Phil | Talk 12:48, 23 January 2006 (UTC)
What exactly do you have an issue with and how should that be fixed?

Isn't it obvious? See the debate over HTML entities for endash and emdash on w:Wikipedia talk:Manual of Style (dashes) for long prior discussion of this issue. Wiki means "quick", and wikitext is supposed to be quick and easy to edit by nontechnical users. This solution betrays both of those principles. Sure, we could all write markup in XML, which would provide the ultimate in flexibility and expressiveness, but that's not the Wiki way:

The source format, sometimes known as "wikitext", is augmented with a simplified markup language to indicate various structural and visual conventions.
The reasoning behind this design is that HTML, with its many cryptic tags, is not especially human-readable. Making typical HTML source visible makes the actual text content very hard to read and edit for most users. It is therefore better to promote plain-text editing with a few simple conventions for structure and style.


Also, I don't understand why this is being discussed here rather than on Wikipedia.

Because "Wikipedia" (I'll presume you're meaning enwiki) is one of approx. 800 Wikimedia projects that use this and this is also used outside Wikimedia, the metawiki is an appropriate place to discuss issues relating to more than one project. —Ævar Arnfjörð Bjarmason 16:44, 22 January 2006 (UTC)

chocolateboy 05:24, 22 January 2006 (UTC)

Chocolateboy - please see the comparison between ref/note and Cite.php style I just added to the page. In fact, Cite.php is about as close to ref/note style as is possible, and it provides a number of advantages(which I can list, or you can just look at the page). I suppose a syntax like {{ref|name of note}}text of note{{endref}} and {{references}} could be used, but really, is that so much more evil than <ref name="name of note">text of note</ref> and <references/>? And others can probably provide reasons why even that syntax would have problems(i.e. it would look like a template, but actually be MediaWiki code, and probably some more subtle ones, too). What was your objection, again? JesseW 08:21, 22 January 2006 (UTC)

The comparison only demonstrates that this solution is redundant as well as contrary to the spirit of wikitext, which is supposed to be easy to edit. And yes, it is much more evil for the reasons outlined above, which is presumably why it's been snuck in without discussion.

No it does not, the purpose of this tool is to provide a way to automatically generate a table of references, something you'd have to do manually with the tools you suggest. And as a general note could you please avoid snide comments like "snuck in without discussion." (you'll find there has been plenty of discussion and announcements if you do some searching) as well as accusing me of some conspiracy to make people use Dreamweaver (below), please stay on topic. —Ævar Arnfjörð Bjarmason 16:44, 22 January 2006 (UTC)
What was your objection, again?

See Wiki and Wikitext:

MediaWiki, the software that runs Wikipedia, has a wiki markup language that allows many common HTML tags, but provides a simple, readable syntax that is intended to allow users to use it without knowing HTML. A description can be found at How to edit a page.

I look forward to your overhaul of these pages to reflect this clandestine campaign to turn Wikipedians into Dreamweaver customers.

The syntax that's used for this is not HTML, any more than any other wikitext construct is HTML. Just because it uses angle brackets and not curly brackets or square brackets does not make it HTML. —Ævar Arnfjörð Bjarmason 16:44, 22 January 2006 (UTC)

If you want a specific example, please scroll down to the last paragraph here, and explain how that is more readable, maintainable, or useful than this, and how it squares with the Wiki tenets of quick and easy editing.

chocolateboy 13:49, 22 January 2006 (UTC)

Ævar, could you "please" avoid dismembering comments with interlineations. The civil way to reply is to quote. I have searched, and have found only a "this is a fait accompli" announcement, rather than a "should we violate the principles of wikitext?" discussion. As for your other "objection", please see the HTML format comments above.

(I'm not flaming your coding. And I think the comments on your homepage are, frankly, adorable, so stop licking your "wounds".)

The topic, by the way, is Wiki and Wikitext...

chocolateboy 00:48, 31 January 2006 (UTC)

Uh...Johnleemk's comment

Frankly, this discussion is very confusing, so I thought I'd break off into my own section and avoid any dismembering of my remarks. (It would probably help if chocolateboy didn't constantly break his comments into short paragraphs, which become ugly after several comments.) Anyway, I think chocolateboy is misreading policy here. As Ævar said, something that uses angle brackets isn't automatically HTML any more than it's automatically Cold Fusion. It resembles HTML, but it's plainly not. There's no such thing as a ref tag in HTML, AFAIK. This seems rather pedantic to me - would things suddenly be alright if we used [ref]foo[/ref] instead? While I agree this is rather messy when it comes to editing, it's not really as daunting as it might seem if enough spacing is used. Since I don't use the preformatted templates to cite sources, the footnotes I use are rather easy reading, even in edit mode (see, say, en:ketuanan Melayu or en:Article 153 of the Constitution of Malaysia). Furthermore, this format beats the old templates flat when it comes to previewing (c'mon, don't tell me you haven't been pissed off just once by losing your edits after accidentally clicking a footnote in preview mode), section editing (I don't need to perform mental gymnastics to footnote properly, which is a real pain on long articles), etc. Johnleemk 09:36, 4 February 2006 (UTC)

Whether the Cite.php syntax more closely resembles HTML, XML or Cold Fusion is irrelevant. The point is that it doesn't resemble Wikitext as defined here and here.
chocolateboy 13:31, 24 February 2006 (UTC)

Doing it later

I think that I agree that this is not wikitext. Ævar's example above, having proper start and end tags is still XML in spirit, even if you use a different escape character. The correct solution would be something like {[Jeff 1999|How to do it in the Snow; computers and weather, Jeff Jeffersen, 1999, Casanopress]}. However, there are a very limited number of such possible escapes. Plus it needs to be something which is extremely rare in the current wikipedias. Rare enough to be fixable in every individual case. [, [[m, {{ etc. are taken. @ delimited text, for example, wouldn't work (like @ref here@) since email addresses use that symbol.

However, XML text is perfectly standard in wikipedia. <nowiki> being the classic example. I think it's perfectly appropriate to start with an XML style system and then, when we have a clear agreement what the better alternative is, implement a compatible non-XML system. What is really needed is proper harvard references, side templates etc. implemented on top of Ævar's current syntax. Preferably with user configuration options to allow each different system to be compared on the same pages.

Finally, if wikimedia can be "fixed"/improved so that the current system interacts well with templates, a simple template based syntax might be perfectly acceptable whilst just keeping the current syntax. Mozzerati 10:49, 4 March 2006 (UTC)

Agreed. There's no need to get nasty about what a travesty this is. Once the kinks are ironed out, it's simple enough to conjure up a more wiki-like syntax for this mechanism, and do a global search-and-replace on the wikis. (BTW, I'd just like to add that I was delighted to stumble across this mechanism in an article just now. Glad to see there's finally a simple, powerful citation mechnaism.) -- 21:24, 13 March 2006 (UTC)


There seems to be a problem with cite.php at the moment. See: En:Wikipedia:Village pump (technical) 04:33, 27 January 2006 (UTC)

Another example of an issue with Cite - see en:List of temples of The Church of Jesus Christ of Latter-day Saints. The first cite was not working so I put a null cite in so that the rest would work fine as a workaround. Trodel 17:58, 29 January 2006 (UTC)

Example text

I get the following for the reference list in the example text

Uranus's moons were observed to be declining in orbit[1], by the Hubble space telescope[2], the Martians were not available for comment on the matter[2]. The New York times[3] however reported[3] that ...


^ 2.1 2.2 December 2005 issue, page 12

^ 3.1 3.2 January 2006 issue, page 16

Is that what's meant to appear? If it were real text, how would the person know that source number 2 was "Popular Science"? Thanks, Andjam 09:50, 5 February 2006 (UTC)</ref>

Is the example better now? encephalon 01:26, 13 February 2006 (UTC)

Awesome work

Ævar, I just wanted to say thanks for doing this: it's a very compelling solution to some of the problems we've had with the earlier systems (FN1-4). One concern is the inline references cluttering the source text; editing articles can become very daunting, especially if cite.php is used in conjunction with a "prompter" template for reference styles. See for example en:Template talk:Cite journal#Cite.php compatibility. Is implementing Splash's suggestion feasible? I've just noticed that Taxman raises the same concern above. I'm not sure I understand your suggestion correctly. If I placed span.reference { display: none; } in my css, what exactly happens? Will I be able to see the inline refs in the edit box? Regards encephalon 00:34, 13 February 2006 (UTC)

Suppressing a citation

A big problem with using Cite in a real wikipedia article is that when the citations are large, it makes editing the article difficult.

One workaround is having the ability to suppress printing the number of a citation. That way, an individual can put all the references for an article at the top, cite them in the article, and flush them at the bottom.

I was thinking of something along the lines of <ref name="one" suppress="true">This is a long reference</ref>

The above should be rendered as a space or not at all (some sort of hidden attribute). In this way, all the references can be placed at the top of the article (maybe with a comment in the HTML saying that they should all go there), not get rendered at the top, get cited in the text, and flushed (shown) at the bottom.

Ksheka 13:21, 21 February 2006 (UTC)

Addendum - I notice that if the reference is defined in a comment, the reference number is not printed out. This is near-perfect! The only problem now is that when the references are flushed, there is a backlinking pointer to the initial references (which is not visible. Here is an example of what I am trying to do. Notice that when editing the article, the text is easier to read (and edit).
If there was a way to disable the backlinking pointers from the reference section to the article itself, I would consider this a complete solution. Ksheka 14:00, 21 February 2006 (UTC)
Addendum 2 - I discovered the obvious problem with what I said, above. If the references are defined at the top of the article, they have to be in the same order as they are in the body of the article, otherwise the numbers are off.
I guess the solution is that the references have to be defined at the bottom of the article, and allow for references to be used in the body of the article without being defined yet. Ksheka 19:42, 21 February 2006 (UTC)
In which case do the references at the end need to be in order ? ie is the numerical order defined by their occurences up in the main text of an article ? If this works (?currently so, or could be made so) then the only required feature would be to suppress forward-links to the hidden list of citation details. DavidRuben(talk) 12:55, 28 February 2006 (UTC)
What I mean is that, if the references are defined in a comment section at the top of the article they are assigned numbers based on the order they are defined there. So, if they are referenced in a different order in the body of the article, the references will be out of order. Not a big deal, really. It just means that in the text you might have reference #4 before reference #1. The references will match up with their proper definitions, so no real harm done. (And fairly easy to fix, by just re-ordering the references in the comment section.) Ksheka 15:55, 3 March 2006 (UTC)
Do not do that, that's a bug in the parser that's going to be fixed. Relying on parser bugs to do what you want is a very bad idea. —Ævar Arnfjörð Bjarmason 17:00, 4 March 2006 (UTC)

Regarding pre-defined references

A lot of people have been suggesting using something like <ref value=something silent=yes>reference here</ref> due to reference definitions inline looking like line noise.

I'm aware of the problem and will try to get to implementing it along with other improvements soon-ish, hopefully this weekend.

Sorry for the delay, busy with life;)

--Ævar Arnfjörð Bjarmason 15:33, 23 February 2006 (UTC)


I implemented displaying named references as if they were anonymous references when only one is defined, i.e. you'll never see output like:

  1. a Ref text

If someone could update the ref example to reflect this that would be nice, I'm too lazy;) —Ævar Arnfjörð Bjarmason 22:15, 23 February 2006 (UTC)

Locating referenced articles?

One of the advantages of footnote2/3/4 along with several other systems was that since they used templates, articles using them could be easily located e.g. for updates / statistics / surveying / correction. This doesn't seem to work with <ref>. Is there an easy way to implement this? If not, would it be an idea to hide the actual ref tags behind a simple template which would make the articles locatable? Eventually, I guess, we would want to have the reverse. Locate articles which do not have references. Mozzerati 13:44, 26 February 2006 (UTC)

You can't encapsulate ref tags in templates due to limitations in MediaWiki, and even then it wouldn't be a good idea.
Regarding logging then yes, it's very possible. In fact I've been logging usage of it since it was deployed but I can't give users general access to the method I'm using due to scalability issues. But keeping a link table for parser extensions would be very possible and not a bad idea.. —Ævar Arnfjörð Bjarmason 20:03, 26 February 2006 (UTC)

Problems with Cite.php

I have installed Cite.php on my fresh Mediawiki 1.5.6 installation. When I include a <ref>, it causes this PHP error:

Fatal error: Call to undefined function: array() in [full path ommitted]/mediawiki-1.5.6/includes/Parser.php on line 427

Is there something I am missing here? -James Howard (talk/web) 23:07, 26 February 2006 (UTC)

See the #Problem installing section above. —Ævar Arnfjörð Bjarmason 03:03, 27 February 2006 (UTC)
There is no #Problem installing section above, or am I missing something?Travb 03:38, 16 April 2006 (UTC)

Syntax question

Is it necessary to include the whole stuff like: <ref name=Marx>Marx, J. L. New disease baffles medical community. Science. 1982;217(4560):618-621.</ref> wherever a citation occurs, or would it be enough to do <ref name=Marx> when the quotation is used a second, third etc. time? It sure would help a lot. Kosebamse 09:27, 2 March 2006 (UTC)

Update: It seems that <ref name=Marx/> is what I was looking for, but thta is apparently not mentioned in the desription. I don't understand this well enough to rewrite the description, but this should be mentioned. Kosebamse 10:12, 2 March 2006 (UTC)

Done. encephalon 14:15, 4 March 2006 (UTC)

Flushing out silent references

It has been suggested that an option be added to the <ref> tag to allow a reference to be defined which does not appear in the text at the point of definition; these references could then be used by means of the <ref name=caption/> syntax. I would like to suggest that all such references which have not already been used or which have no name attribute should be flushed out during the processing of the <references/> tag: they should be added to the bottom of the numbered list, as a non-numbered list.

So for example, a ==References == section like this (assuming that a silent reference is defined using <ref_silent>):

==References ==
<ref_silent>Author, A.N. ''Some book or other''</ref_silent>

would appear as:

list of numbered references as usual
  • Author, A.N. Some book or other

This would aid massively in converting current reference lists to the new format. HTH HAND —Phil | Talk 08:14, 6 March 2006 (UTC)

Allowing sub-references

There are many places where it is necessary to refer to several different parts of the same work. See for example en:Gettysburg Address where the first footnote is linked to from three different places, corresponding to three different page-ranges. See also en:Mahatma Gandhi where almost all the footnotes are to the same work, which is displayed in the subsequent list of references: the former are not linked to the latter, so it is not immediately obvious that they are the same. I would like to propose that references be given an extra attribute—section—which would allow the particular section to be specified. Section references would be displayed as sub-lists of the main reference.

Taking the en:Mahatma Gandhi example as a guide, references might be defined like this:

Some stuff <ref name=source>Author, A.N., ''A book''</ref> and some more stuff<ref name=source section="Page 31"/>. Yet more stuff<ref name=source section="Appendix 1"/>.

which might be displayed in the ==References == section like this:

  1. ^ Author, A.N. Some book or other
    • a Page 31
    • b Appendix 1

This would drastically simplify the interaction between "footnotes" and "references" which appear to function independently in many places because linking them is too complicated. HTH HAND —Phil | Talk 09:06, 6 March 2006 (UTC)

YES. I would love to have this. It makes life so much easier, and you don't have to resort to things like ibid or op cit. Johnleemk 16:49, 9 March 2006 (UTC)

Distinguish between references to same item

If you have several different references to the same item, you get "sub-reference" letters (a, b, etc) in the reference list: these link back to the various references. However there is nothing in the reference link to distinguish between these "sub-references": they all display as something like [2]. Is it possible to format these links as [2a], [2b], etc? HTH HAND —Phil | Talk 14:17, 6 March 2006 (UTC)

Yeah, it's not fun having people bitch at you about "ZOMG, the references are out of order!" Johnleemk 16:50, 9 March 2006 (UTC)

Refs in templates?

First, I really like the ref/reference format of referencing as opposed to all previous formats. However one problem I have is that if you include a >ref< entry in a template, when that template is included in another page the references to not show up in the >references< section on that page. Is this fixable? — en:User:Jdorje 22:58, 6 March 2006 (UTC)

Possible bug

I've just noticed that if you put <ref name=foo/> before <ref name=foo>foobity foobity boo</ref>, then neither of them will have a name at the bottom. This is a problem if you're going through and adding more citations later, as you always have to make sure that the cite with with the full name is first.

i am also having problems with this kind of bug. there is a discussion about it at http://en.wikipedia.org/wiki/Wikipedia:Footnotes and one user suggested this:

:I think a simple way to accomplish this would be for the software to use the first non-empty ref. Then, as long as you use empty references (like <ref name="slime" />) for all but one reference, the order doesn't matter.

would it be difficult to implement this? cheers. 14:02, 11 March 2006 (UTC) english wikipedia: [[[w:en:User:Zzzzz|User:Zzzzz]]]

Also, in terms of chocolate boy's problem with this cite style, I do have a certain sympathy with him. When simply trying to edit an article for something small like a comma, it can be hard to scan past a full citation within the text, with all its commas, parentheses, and quotes. It's easy to read through a <ref>foo</ref>, but much more difficult to scan past <ref name="Troubadours, trouvères">John Stevens,Ardis Butterfield,Theodore Karp. "Troubadours, trouvères", ''[[Grove Dictionary of Music and Musicians|Grove Music Online]]'', ed. L. Macy (accessed [[February 20]] [[2006]]), [http://www.grovemusic.com/ grovemusic.com] (subscription access).</ref>. Just a couple thoughts, but I do really like this cite, nice work. Makemi 04:07, 8 March 2006 (UTC)

So write it like this:
 Hey, here's a sentence that has a reference at the end.
 <ref name="Troubadours, trouvères">
    John Stevens,Ardis Butterfield,Theodore Karp. "Troubadours, trouvères",
    ''[[Grove Dictionary of Music and Musicians|Grove Music Online]]'',
    ed. L. Macy (accessed [[February 20]] [[2006]]),
    [http://www.grovemusic.com/ grovemusic.com] (subscription access).

-- P3d0

Empty named <ref> tag doesn't work.

I put this here because I think it is a related symptom.

If I use an empty named <ref> tag, while editing Wikipedia, as follows:

<ref name=Test>Test Case</ref>
<ref name=Test></ref>

I get an error message: Cite error 4; Invalid <ref> tag; refs with no name must have content

However, if I insert a space in the "empty" named reference as follows:

<ref name=Test>Test Case</ref>
<ref name=Test> </ref>

I get no error message and both <ref> tags work correctly.

Therefore the statement, "We may as well just use an empty tag." in Extension:Cite/Cite.php#Multiple uses of the same footnote is incorrect.

Softtest123 17:27, 23 October 2007 (UTC)

And another thing

If you subst templates, even while they're in the ref, it works out fine. Makemi 04:14, 8 March 2006 (UTC)


Huh? I just came here to point out that subst:ing templates within a <ref> fails. Have a look at this old version of Wikipedia article Charles Fraser. To save time I have subst:ed in references that I use a lot, and the subst: has failed dismally. Snottygobble 04:28, 12 March 2006 (UTC)

You're right, I just tried it in the sandbox, but I could have sworn that that's what I did in this edit. Perhaps it has been broken since? I could be mistaken. Makemi 18:37, 13 March 2006 (UTC)
It's a know bug. bugzilla:2700. Use the following workaround: {{#tag:ref|content with {{subst:stuff}} in it}}. --Solitarius 23:38, 16 March 2010 (UTC)

What's wrong with numeric labels?

Trying to use a label containing only digits

<ref name="123">blablabla</ref>

gives an error

Cite error 1; Invalid call; expecting a non-integer key

Is it a bug or a feature? I don't see any reason to disallow numeric labels.

Anyway this should be documented. Maxim Razin 08:44, 14 March 2006 (UTC)

This is because the PHP datastructure I'm using would corrupt if I were to allow user input in the form of integers since PHP does not distringuish between (string)1 and (int)1 in array keys. This minor limitation makes the implementation a lot simpler because I don't have to use two or three datastructures to do basically the same thing. This is actually documented in the source code (with a comment). Ævar Arnfjörð Bjarmason 11:58, 17 March 2006 (UTC)
I see - yet another reason why PHP sucks :) But it's easy to fix - simply append some prefix to all strings in keys. Maxim Razin 08:16, 18 March 2006 (UTC)
It's not a matter of PHP sucking at all, I have to use some keys for the automatically generated anonymous references which will conflict with the user-supplied keys if I don't reserve a namespace for them, of course I could just use anon_$key and user_$key or prefix user-supplied keys with something, but the idea is to have labels that contain as little excess content as possible. And reversing integers seems like an OK tradeoff. — 21:01, 1 April 2006 (UTC)

discussion at en:talk:Cite journal

If some developers of cite.php could possibly take a look at the discussion at en:Template_talk:Cite_journal#Wikipedia:Featured_article_candidates.2FAIDS. Thanks, --Irpen 02:02, 21 March 2006 (UTC)

Also, could you take a look at the page: Wikipedia:Featured article candidates/AIDS. Thanks. -- 17:56, 21 March 2006 (UTC)

A different idea

I mostly like the new references, but they have a lot of shortcomings. I used them for the first time in Red rain in Kerala, and these are the things I didn't like/ideas I had:

  1. They interrupt the article text a lot more than other styles. Content like:

As well as red rain, some reports suggested that other colours of rain were also seen. Many more occurrences of the red rain were reported over the following 10 days, and with diminishing

frequency until the end of September.becomes:

As well as red rain, some reports suggested that other colours of rain were also seen <ref>{{cite web | last = Ramakrishnan | first = Venkitesh | authorlink = | coauthors = | year = 2001 | url = http://news.bbc.co.uk/1/hi/world/south_asia/1465036.stm | title = Coloured rain falls on Kerala | format = | work = | publisher = BBC | accessdate = March 6 | accessyear = 2006 }}</ref>. Many more occurrences of the red rain were reported over the following 10 days, and

with diminishing frequency until the end of September.
  1. Editing the format of a reference requires finding where it is first cited in the article, instead of just editing the References section, where it appears. This is confusing (especially to newcomers) and inconvenient.
  2. Section editing is useless if you want to change references. You can't just edit the References section because that's not where the references actually are. You can't just edit the section that contains the reference since that's not where the rendered references are (so they won't show up in the preview). You have to edit and preview the entire article to see the change.
  3. Since they aren't centralized, it's hard to know if a reference exists already, leading to duplicates which then have to be merged manually.
  4. Additional references that aren't created with the extension, but added to the References section (as per WP:CITE) do not continue the numbered list.
  5. I heard the reason for using brackets around the numbers was to increase the clickable area. I think the brackets should be removed and the same thing done with CSS; increase the horizontal padding around the numbers and vertical arrows to make them more easily clickable instead. Discussion was here: w:Wikipedia_talk:Manual_of_Style#Changes_to_Cite. and w:Wikipedia_talk:Footnote3#Superscripts_2.
    • Would this add space between the citation and the character immediately preceding it? If so, Wikipedia would have very non-standard citation locations (they always immediately follow the punctuation or word). --Spangineer 20:51, 24 March 2006 (UTC)
  6. If a named reference is used in an article, and another reference to the same document is placed before that one, it doesn't work. The reference has to be moved to the first position instead of just using the name, since the text inside the first reference determines the displayed text. This is a huge pain.
    • Agreed and already submitted. —Phil | Talk 12:17, 24 March 2006 (UTC)
      • But if this is "fixed", it'll be tough to find the reference and edit it (I won't know if it's under the first citation, the second one, etc.). Why not make the person adding the citation be responsible for the formatting? --Spangineer 20:51, 24 March 2006 (UTC)
        • No, it wouldn't be tough at all. That's the whole point of this proposal. The reference would be in the References section, where it is very easy to find and modify.
        • I don't understand making one person responsible. We don't own articles on Wikipedia. No one person is responsible for any piece of content. It should be just as easy for someone else to modify the reference formatting as it was to add it in the first place. — Omegatron 00:30, 25 March 2006 (UTC)
          • Regarding responsibility, you're right, but implicitly I "expect" that the person creating a redirect to a given article formats it properly and doesn't expect someone to come along and clean up after him/her. Same thing here; I'd expect the person adding the citation to pay attention to issues like this. Also, I seem to be confused—you say below that under this proposal I won't have to load the entire page to add a citation, but here it seems that you say that I'll have to write something in the references section. I'm sorry if I'm missing something --Spangineer[en] [es] (háblame) 05:44, 27 March 2006 (UTC)
            • You can expect all you want; people aren't going to format references correctly and they're going to need to be tweaked, expanded, and corrected. We should be making this easier to do; not more difficult.
            • With my proposal, to edit a citation that is already on the page (which appears in the References section), you just edit the References section. To add a reference to the page, I thought we could implement a shortcut, where you can do a section edit and add the reference after a fact, like <ref name="Foobar">[http://www.example.com/~foobar Dr. Foobar's citation]</ref>. When you press save, the reference would be converted into <ref name="Foobar"/> next to the fact, and the text of the reference would be moved into the References section: <ref name="Foobar">[http://www.example.com/~foobar Dr. Foobar's citation]</ref>. But apparently everyone hates this idea. It doesn't need to be implemented; you could just add references by editing the entire article and putting the named ref in the article body and the reference text in the References section; I just thought this would be quicker and easier to allow section editing (which isn't allowed with the current system). — Omegatron 05:56, 31 March 2006 (UTC)
  7. (Curiousity; not a problem: Is there any reason why it has to look like well-formed XHTML? Instead of <ref name="something"/>, why not just <ref something>? Is it thought that the functionality might be expanded? Why wasn't it based on the syntax already in use for [external link references]? Why isn't it more {{wiki-like}}? Our syntax is quickly becoming completely impossible for the average non-computer scientist to edit. No wonder we're accused of systemic bias.)
    • I would suspect that this makes it much easier to parse. —Phil | Talk 12:17, 24 March 2006 (UTC)

A better way?

A better implementation would have the context and format of the reference centralized in the references section, where it actually appears, and the context of the particular fact near that fact:

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.<ref name="foo"/> Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.<ref name="bar"> pages 34–37</ref> Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.<ref name="bar">Section 7.1: Table of baz</ref> Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.<ref name="foo">page 56</ref> == References == <references> <ref name="foo"> {{cite book | first = Foo | last = Bar | authorlink = Foo bar | year = 1587 | title = Research into the inclusion of references in online encyclopedias }}</ref> <ref name="bar"> {{cite web | author=R.L. Bar | title=Talking to your children about HTML addiction | year=April 30, 2005 | url=http://www.example.com/ | accessdate=July 6 | accessyear=2005 }} </ref> </references>

which would render as:

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.1 Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.2 Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.2 Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.1


  1. Bar, Foo (1587). Research into the inclusion of references in online encyclopedias.
    1. page 56
  2. R.L. Bar (April 30, 2005). Talking to your children about HTML addiction. URL accessed on July 6, 2005.
    1. pages 34–37
    2. Section 7.1: Table of baz

I think this might even be backwards compatible with the current syntax. (I can't demonstrate the padding method without editing the site-wide CSS.)

For ease of use, you could still insert full references next to a fact, like we do with [external link] references or the current ref system, but, on saving the page, it would be given a name (if you didn't give it one) and the actual content moved into the references section.

References could be merged by putting both names around the same content:

== References ==

<ref name="foo"> {{cite book
 | last = Bar
 | first = Foo
 | authorlink = http://www.university.edu/~foobar
 | year = 3702
 | title = Research into the inclusion of references in online encyclopedias
<ref name="baz">
{{cite web
 | author=Dr. Foo Bar
 | title=Research into the inclusion of references in online encyclopedias (e-book)
 | year=3702
 | url=http://www.university.edu/~foobar/e-book/index.html
 | accessdate=July 6
 | accessyear=2005

could be merged together like so:

== References ==

<ref name="foo"> 
<ref name="baz">
{{cite book
 | last = Bar
 | first = Dr. Foo
 | authorlink = http://www.university.edu/~foobar
 | url=http://www.university.edu/~foobar/e-book/index.html
 | year = 3702
 | accessdate=July 6
 | accessyear=2005
 | title = Research into the inclusion of references in online encyclopedias

without editing every ref in the article to the combined name. Then if it turns out they're from different editions of the same source text, they might need to be broken apart again later, but the actual reference sources are still there. — Omegatron 05:00, 23 March 2006 (UTC)

I'm not so happy with the merging thing, since this can already be done more simply using existing techniques. The sub-references I have already covered above. I do like the idea of adding further references into the <references> tag!
Apart from these minor quibbles, this is actually a rather nice synthesis of various existing suggestions, and I concur wholeheartedly. HTH HAND —Phil | Talk 12:17, 24 March 2006 (UTC)

They're not "further" references, though; the main proposal here is to move the content of the actual references used in the article down into the references section, and the content of the subreferences near each fact referred to by name. More discussion at w:Wikipedia_talk:Manual_of_Style#Subreferences and w:User_talk:Omegatron#Your_suggestion_on_the_Cite_extension.

I didn't see your subreferences before, but they're similar. I like mine better (of course), because the content rendered in the references section is entered the same way for both references and subreferences. I was thinking it might be necessary to indicate in which order the subreferences should be rendered (since, for instance, "Table 7.1" is not easily parseable to be after "Chart 3.5" like page numbers would be. Depends on whether we care if the subreferences are in the order they appear in the book/magazine/whatever. I honestly don't care if they're in order:

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.1 Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.2a Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.2b Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.2c Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.1a


  1. Bar, Foo (1587). Research into the inclusion of references in online encyclopedias.
    1. page 56
  2. R.L. Bar (April 30, 2005). Talking to your children about HTML addiction. URL accessed on July 6, 2005.
    1. Section 5.3: Ordering of references in online encyclopedias
    2. Table 7.1: Table of baz production per capita
    3. Section 3.7: Effects of baz production on foo bar economic growth

But it would make sense. So maybe our two ideas could be combined? Pick a feature of the source (chapters, paragraphs, verses), and indicate it in the tag?<ref name="bar" order="7.1">Section 7.1: Table of baz</ref> Then the renderer could put them in order in the references section.

Also, neither of our ideas handle multiple citations to the same source, sub or otherwise. A possible solution:

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.1 Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.2ai Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.2aii Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.2b Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.1a


  1. Bar, Foo (1587). Research into the inclusion of references in online encyclopedias.
    1. page 56
  2. R.L. Bar (April 30, 2005). Talking to your children about HTML addiction. URL accessed on July 6, 2005.
    1. i ii Table 7.1: Table of baz production per capita
    2. Section 3.7: Effects of baz production on foo bar economic growth

Though I wouldn't mind references like 35ciii or 3a5 or 2.3c too much, I'm sure others would hate them and want them to die. We could just link it as 2 in the article and only use the link back to indicate which is which. That's how it's currently done. Another idea: Kirill seems to like the idea of the references being numbered in the order they occur in the article. I don't see why that would be necessary, but it would simplify the in-article links:

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.1 Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.2 Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.3 Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.4 Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.5


  1. 1 Bar, Foo (1587). Research into the inclusion of references in online encyclopedias.
    1. 5 page 56
  2. R.L. Bar (April 30, 2005). Talking to your children about HTML addiction. URL accessed on July 6, 2005.
    1. 4 Section 3.7: Effects of baz production on foo bar economic growth
  3. 2 3 Table 7.1: Table of baz production per capita

Omegatron 15:00, 24 March 2006 (UTC)

refs at bottom

I'm not a tec and I don't mind exactly how it is done but I would just like to add my support to the idea that it would be better if the contents of the ref's was in the ref's section rather then cuttering up the article text. It would make it far easyier to edit especialy for new users.--JK the unwise 16:44, 24 March 2006 (UTC)

Good idea! Like BibTeX, separate references from citations. - FrancisTyers 14:56, 17 April 2006 (UTC)
I disagree. I think it's more important to make it easy to add references than edit text that already has references. Under both of the proposed methods, we're back to where we were a few months ago—if I want to add a reference, I have to load the entire page, not just the section where I'm adding the citation. Also, I think that numbering and grouping of citations/references is a bad idea; just use two sections (one for notes and one for references), just like everyone else who writes a paper using endnotes followed by a work cited page. --Spangineer 20:46, 24 March 2006 (UTC)
I thought of that. That's why I said it should still be allowed to add references inline, and when you press save, it will be converted into a named note and the content moved into the references section.
Why should notes referring to a book be in a separate section from the title of that book? That doesn't make any sense at all to me. — Omegatron 00:30, 25 March 2006 (UTC)
Presumably because the references (a bibliography by another name, essentially) are usually ordered alphabetically, while footnotes are usually in numerical order. Combining the two would therefore make finding either the correct note or the correct book more difficult; in your proposal, for example, the footnotes are out of order either in the article or in the reference section, neither of which is a particularly clean way of doing it. Kirill Lokshin
Why do the footnotes need to be in the order they were used in the article? What purpose would that serve? — Omegatron 17:55, 25 March 2006 (UTC)
That's the way it classically works. On a paper-based publication, footnotes would be included on the same page, on the bottom, for quick (though out-of-the-way) referencing. The validity/applicability of this method on web documents, however, has yet to have been determined. Ambush Commander 19:12, 25 March 2006 (UTC)
You are aware that people can print these articles, aren't you? The nice little hyperlinked numbers disappear when you do that. Kirill Lokshin 19:52, 25 March 2006 (UTC)
As I've said before, the content could be rendered in different styles, depending on user preferences or on the needs of the medium. All the information necessary to render a traditional, single-tiered ordered list is there, right? — Omegatron 05:59, 31 March 2006 (UTC)
In theory, yes: you'd just need to combine the content of the footnote (i.e. "pg. 27") with enough of the content of the reference (i.e. "Doe, John. My Book.") to identify the source. In practice, this would require (a) properly parsing the reference and (b) being able to deal with anything that gets put into the footnote (which may be more than just a page number); while nice, I'm not sure how feasible implementing something complicated like that would be here. Kirill Lokshin 11:03, 31 March 2006 (UTC)

↑ CSS class

The ↑ should get a CSS class, so that it can be hidden in print styles, etc. æle


  • <ref[ name=["id"|id]]>Reference text</ref> — the quotes are only needed if id contains whitespace, where whitespace is one of [\x09\x0a\x0d\x20]
  • <ref name=["id"|id]/> — repeated use of same reference may be done as before or in this format with no need to repeat the reference text. In this case the ID is mandatory.
  • <references/>

I moved this to the talk page, I think w:en:Wikipedia:Footnotes#How_to_use which I cut and pasted here is much easier to understand. Travb 02:55, 16 April 2006 (UTC)

Never ceases to amaze me

It never ceases to amaze me how badly written many of these wikimedia articles are. When I mean "badly" I mean they are filled with so much technobabble, only computer experts can understand them. I am trying to rewrite this article to be more easier to read for non-computer experts like myself.

Wikimedia users, please in the future try to "dumb down" your edits.

I don't have any doubt that many of your are super intellegent, it is just that many of you have a problem conveying information in an easily understandable way.Travb 03:02, 16 April 2006 (UTC)

I agree with Travb. This article is junk. Where is a reference on how to use the cite tag? 14:02, 24 July 2007 (UTC)
Dito, although I'm not amazed. Clear writing in plain language takes care. Thanks to Travb for caring and editing, and to everyone who volunteers. Dave2008


Would it be possible to implement a version of Footnotes that worked something like BibTeX ? I.e. you have the list of references somewhere in the document (my preference would be for at the bottom) and then you can just \cite (sorry, {{ref}}) them. When you have long references in the article the text often becomes very choppy and difficult to edit. The way I'm currently working with Footnotes3 is to have the ref as the AuthorDate and then notes, but the main shortcoming with this is having to duplicate references in the Notes section (if a ref is cited twice) and the obvious problem of references getting out of order. - FrancisTyers 15:00, 17 April 2006 (UTC)

Visual highlights

Maybe this is the wrong place to address this. But it seems a major problem with footnotes (use of "ref/references" or other means), is it's very hard to follow the screen focus. If I click on a footnote superscript, and go to the "references" below, I have trouble seeing which is the relevant item, unless I noted the number I clicked on. Now, I do note the number, because I am familiar with the system, but I'm sure newbies don't. They might have no idea what they are supposed to be look at. Ideally the entire selected reference would stand-out from the rest of the other references (maybe through color, or some sort of font thing). --Rob 04:03, 18 April 2006 (UTC)

How can we get this new(?) feature (as seen in Wikipedia) to work in our wiki? See e.g. w:en:Cluster_headache#_note-5, the selected ref is higlighted blue. --Friedrich K. 21:19, 27 August 2007 (UTC)
The highlighted references work only with Mozilla/Firefox, not with I.E.? --Friedrich K. 13:28, 29 August 2007 (UTC)
No one knows, how to use that "Visual Highlight" of References like used on Wikipedia.org? I want to use it in my own wiki. 08:54, 14 March 2008 (UTC)

Solution: add the following code to $IP/skins/monobook/main.css and other skins you might be using. Note: $IP stands for the root directory of your MediaWiki installation, the same directory that holds LocalSettings.php.

/* make the list of references look smaller and highlight clicked reference in blue */
ol.references { font-size: 80%; }
.references-small { font-size: 70%;}
ol.references > li:target { background-color: #ddeeff; }
sup.reference:target { background-color: #ddeeff; }

Source: Wikipedia stylesheet --Wikinaut 03:02, 23 December 2009 (UTC)

That code can just be placed at the end of the file? Is there anything that needs to be done to make it appear? I tried hitting Ctrl-r to reload the page, and making a minor edit to a page. 19:44, 29 March 2010 (UTC)

When Harvard is (much) better

There are many times when Harvard references are preferable to m:Cite.php for a given article. Fortunately, Wikipedia:Footnotes continues to reflect this fact. Specifically, in scientifically oriented articles, an alphabetical list of bibliographic references that may be multiply referred to by name is vastly better than an order-of-first-occurence list of references by number only. This was an issue recently on Retreat of glaciers since 1850, when it was on the front page, and overzealous WP:BOLD deleted the consensus opinion of editors. (see also its talk page for some discussion of this).

In general, m:Cite.php is very well suited to footnotes: i.e. annotation of the main article flow that elaborate on some specific point in the article but would disrupt flow. It is far less well suited to citations which are bibliographic in nature (where it is still relevant to support specific assertions by reference to specific external sources).

The current limitation in the MediaWiki software and m:Cite.php is addressable in prinicple. But it doesn't do what is needed as currently implemented. The system does allow named references as well as inline ones. The problem is just that it forces in-line description on first occurrence, which is too narrow. I think something that would solve the issues would be allowing an "invisible" section to layout the references as actually desired (alphabetical, etc). For example, if I could do this, I'd probably use it more widely:

 <ref name=alpha>Alpha, Bob.  ''Cool article on topic''</ref>
 <ref name=beta>Beta, Sally. ''Sally weighs in''.  Note that Dr. Beta revises 
 this analysis in ''Later work''</ref>
 <ref name=gamma>Gamma, Yuri. ''Yet another one''</ref>
== Main article ==

 A number of experts contend Foo.<ref name=gamma/><ref name=alpha/>.  However, 
 other experts believe Bar might hold.<ref name=beta/>  The intermediate, Baz
 position is sometimes held by both sides.<ref name=alpha/><ref name=beta/>

This would let us put all the references together in a block, including annotation to the citations themselves. But it would also allow easy reference by name, and in orders other than the prose sequence (and also repeated references to the same source). This particular solution would still require listing references at top rather than at bottom, which might be a disadvantage; probably more important is that it would still use numbered references rather than named ones.

Another improvement that would address this might be to provide an option to the <references/> tag. E.g.:

== References ==
<references style=name/>

In my imagination of this, this would cause all the note links to use the reference names rather than sequential numbers; as is fitting to certain article topics. Lulu of the Lotus-Eaters 18:23, 20 April 2006 (UTC)

"<ref>" and within-outside text issue

Another user's 2¢s/2p/2€/etc's worth:

  1. Suggest tag becomes the more generic "<note>", as not all footnotes are references, or references footnotes, or...
  2. I'd vote for the text of each (foot)note to be kept out of the main body of the text, using something along the lines of the below (superscripts and up-arrows would be links):


Lorem ipsum dolor sit amet, consectetur adipisicing elit<note:1>, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua<note:WithAName>. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit<note:2> in voluptate velit esse cillum dolore eu fugiat nulla pariatur<note:WithAName>. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum<note:1>.



<n:1>Sed ut perspiciatis.</n>

<n:WithAName>Unde omnis iste natus error sit voluptatem accusantium doloremque laudantium.</n>

<n:2>Totam rem aperiam eaque ipsa.</n>

<n:3>Quae ab illo inventore veritatis.</n>


Lorem ipsum dolor sit amet, consectetur adipisicing elit[1], sed do eiusmod tempor incididunt ut labore et dolore magna aliqua[4]. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit[2] in voluptate velit esse cillum dolore eu fugiat nulla pariatur[4]. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum[1].



1. ↑ Sed ut perspiciatis.
2. ↑ Totam rem aperiam eaque ipsa.
3. ↑ Quae ab illo inventore veritatis.
4. ↑ Unde omnis iste natus error sit voluptatem accusantium doloremque laudantium.

Regards, David Kernow 17:25, 20 April 2006 (UTC)

Please help test Citation Tool

The tool (semi-bot) that I have been working on, Citation Tool] has reached a usable and useful state, I believe. The purpose of this tool is several fold, but the main (and implemented) goal is the detection and guided correction of errors in m:Cite.php markup.

As of this exact moment, the tool does the correct diagnosis of two types of errors. By later today, it should also be able to propose specific modified text that corrects the errors (sometimes requiring operator decisions). The web page for the tool also links back to the edit page for a given corrected article. Notice that any modification made based on the advice of Citation Tool is made under the user's own WP username. The two types of problems currently identified are:

  1. Multiple <ref name=...> tags with the same name but different contents (hence hiding all but the first in the rendered page).
  2. Empty <ref name=...> tags that occur before ones with content. Same basic problem, but this is especially easy to inadvertantly create if articles are reorganized.

These type of errors seem to occur quite frequently "in the wild".

The proposed changes made by Citation Tool do not change the referencing style or technology used on a page (currently: plans are underway to aid insertion of Harvard references as an adjunct to footnotes, where a mixed style is appropriate). So as far as I can see, the changes proposed by the tool should be non-controversial. The only possible issue I can see is that editors might disagree about whether a currently hidden footnote content is or is not better than the one that had been visible; but that's a pretty regular editorial/content issue, per article.

Well... the other issue is that the tool might be buggy, since it hasn't been banged on by anyone other than me yet. That's why I'd appreciate some other people using it, and paying attention to results. If the diagnosis or proposed solution seems to be wrong for certain pages, that matter needs to be identified and fixed. Lulu of the Lotus-Eaters 21:41, 28 April 2006 (UTC)

Grouping the references

At many cases, we have a few grouping of references (At each section), but the MediaWiki refer to all of them as one group so the code:

Hello<ref> try </ref> 
World <ref> try again </ref>

Will generated :

  1. try

World [1]

  1. try again

While we want (Of course with links):
1. ↑ try
World [4]
1. ↑ try again
This problem can be easy (at the user level...) solve by adding the a group paratemeter, so the full syntax will be :
<ref name="name" group="group name">bla bla</ref>
<references group="group name"/>
Thanks, Troll Refaim 17:03, 25 April 2006 (UTC)

Another one for the "known issues"...

<ref> tags aren't parsed when they are located in the descriptions of images inside <gallery> tags :( --Grm wnr 00:30, 30 April 2006 (UTC)

Promblems in 1.6.10

I get a whole mess of promblems after installing this.

array(1) { ["ParserClearState"]=> array(2) { [0]=> array(2) { [0]=> &NULL [1]=> string(10) "clearState" } [1]=> array(2) { [0]=> &object(cite)(6) { ["mRefs"]=> array(0) { } ["mOutCnt"]=> int(0) ["mInCnt"]=> int(0) ["mBacklinkLabels"]=> NULL ["mParser"]=> NULL ["mInCite"]=> bool(false) } [1]=> string(10) "clearState" } } } Unknown datatype in hooks for ParserClearState


   * GlobalFunctions.php line 602 calls wfbacktrace()
   * Hooks.php line 85 calls wfdebugdiebacktrace()
   * Parser.php line 172 calls wfrunhooks()
   * Parser.php line 208 calls parser::clearstate()
   * Article.php line 2245 calls parser::parse()
   * Article.php line 1473 calls article::editupdates()
   * EditPage.php line 683 calls article::updatearticle()
   * EditPage.php line 294 calls editpage::attemptsave()
   * EditPage.php line 147 calls editpage::edit()
   * Wiki.php line 381 calls editpage::submit()
   * Wiki.php line 50 calls mediawiki::performaction()
   * index.php line 123 calls mediawiki::initialize()

Perhaps same case, please test this patch (Bug 11174,bugzilla:11174). --Cory 01:27, 4 September 2007 (UTC)

Author's name

As to the "fix" for 1.9.2's inability to accept the name "Arnfjörð", I believe the proper transliteration would be "Arnfjorth", not "Arnfjoro". However, my linguistic-fu is not strong. 02:35, 5 August 2007 (UTC)

Another "Grouping the references" solution?

Another way to solve the problem of using cite within a section would be to zap the existing list of references when the <reference /> tag is processed, for example, in Cite.php:

676                      $content = implode( "\n", $ent );
677                      $this->clearState(); //reset reference list and counter

This change lets you use multiple <reference/> tags in one page and seems to work fine, albeit with limited testing. This seems like good coding practice, if nothing else, and should be rather harmless, shouldn't it?. I suppose it would break any existing wikitext that relies on the current implementation to output footnotes twice, but why would anyone want to do that? FAM 13:42, 6 September 2007 (UTC)

Link Magic broken inside <ref>'s

The 'link magic' that allows you to cleanly link to disambig'd articles is... busted when used inside of <ref>'s

You can normally write [[The Bourne Identity (novel)|]] and it will convert to The Bourne Identity, automatically removing the parenthetical disambig at the end. But when used in a <ref>...

[...] Ludlum's earlier work <ref>Notably [[The Bourne Identity (novel)|]].</ref>

The link is completely unrendered:

  1. Notably [[The Bourne Identity (novel)|]].

The workaround (setting the alt-text explicitly) works fine. But this is both messy and inelegant for obvious reasons.

I suspect this hinges upon when the early parts of link magic parsed relative to the cite extension- but I haven't looked intot he code to say for certain. -Derik04:01, 10 September 2007 (UTC)

Performance problems


I already like this extension and currently our lab. is using it to create internal documentation such as paper writting and other collaborative works. The problem becomes when the article, and consequently the number of references in it, grows. The mediawiki performance slow downs for articles containing references if compared with others with similar size (without refs) in the same server. So, anybody has a suggestion about to increase the server performance?.

Server has 2 GB and is a Pentium III with 100 Mbps ethernet card directly running in the Internet.

Suppressing link and backlink generation

This seems to me very easy to implement and potentially very useful. The idea grows out of some recent discussion on various Wikipedia talk pages.

If a new tag name something like Refhide were defined and used like <Refhide>...</Refhide>, cite.php could set a variable like $mInRefhide TRUE inside that block. Then, when processing <Ref name=whatever>...</Ref> occurrences while $mInRefhide is TRUE, cite.php could (1) not generate a link and (2) not stack backlink information. These items would all have one or more matching <Ref name=whatever/> siblings somewhere in the article text.

That would allow all <Ref name=whatever>...</Ref> declarations to be placed in an editor-chosen ordering inside of a <Refhide>...</Refhide> block at the top of the article. The items in the expanded <References/> list would then be expanded in an order chosen by article authors. -- Wtmitchell 05:32, 17 September 2007 (UTC)

The comment above was posted on the associated page at meta.wikimedia but I think this might actually be the right place for the comment. If this is really as simple as Wtmitchell suggests then I strongly suggest we consider this slight modification. This would significantly improve the editability of heavily cited articles. I'm active in the Featured Article candidates process at English Wikipedia, and the extensive use of citation in-text has made some of our best articles virtually impossible to read and copy-edit. This style would give editors another option, but without creating any backwards compatibility issues, as such proposals have in the past. We've brought this up several places on en.wikipedia and it's been popular to have the option. --JayHenry 00:56, 19 September 2007 (UTC)

I have coded and tested this on a local local test wiki. It involves some minor changes to cite.php adding/setting one boolean variable and some code changes involving that variable's state. I'm not sure where to go from here. As implemented, it is backwards compatible with current wikitext and introduces <ref decl=X>...</ref> as a new alternative to <ref name=X>...</ref>. Using this, ref'd footnotes can be invisibly declared early in the wikitext, and expand in order of their invisible declaration. For example, wikitext like:

<ref decl=Adams>Adams, addressing the people</ref>
<ref decl=Jones>Jones, addressing the people</ref>
<ref decl=Zzuze>Zzuze, addressing the people</ref>

Zzuze said A<ref name=Zzuze />, Adams then said C<ref name=Adams />, and Jones responded B<ref name=Jones />. Zzuze then summed it all up<ref name=Zzuze />.


would produce output which looks something like:

Zzuze said A[3], Adams then said C[1], and Jones responded B[2]. Zzuze then summed it all up[3].
1. ^ a Adams, addressing the people
2. ^ a Jones, addressing the people
3. ^ a b Zzuze, addressing the people

(with the links and backlinks working as expected, though). Altogether, about 20 lines of cite.php change — about five of those lines being added comments. I'm not sure what do do from here. Suggestions? -- Boracay Bill 08:27, 2 January 2008 (UTC)

This looks interesting, could you submit the patch to bugzilla?
Maybe this could be combined with a facility to allow users to declare reference text later without using it, i.e.:
<ref name="foo"/> blah blah <ref decl="foo">cite text</ref> <references/>.
Then references used inline could be declared either at the start or end of the article. --Ævar Arnfjörð Bjarmason 05:49, 18 March 2008 (UTC)
I have submitted bugzilla bug number 12796, which includes modified cite.php code to implement this. The submitted bug has been awaiting review for some months now.
Note — footnotes are expanded in the <references /> list in the order in which they were encountered. As I've implemented this, in order for editors to control the order of the expanded footnotes, the footnote declarations would need to be declared in the desired order before being otherwise encountered (i.e., at or near the start of the article).. -- 06:14, 18 March 2008 (UTC)

Formatting problem: Included pages & Parser.php

I have moved the following from the Extension page. Thanks to Brion Vibber I now know that it only applies if you upgrade from Mediawiki 1.7 (or lower) and do not also download the latest Cite.php files!Jonathan3 22:43, 19 September 2007 (UTC)

I needed to remove the "Information on include size limits" HTML comment which Parser.php produces, as it breaks formatting following cite.php reference numbers. I am including (transcluding?) pages which themselves have cite.php references. The pages were only adversely affected when included; they were fine otherwise.

			$text .= ""; #JW ADDING THIS

#			$text .= "<!-- \n" .
#				"Pre-expand include size: {$this->mIncludeSizes['pre-expand']} bytes\n" .
#				"Post-expand include size: {$this->mIncludeSizes['post-expand']} bytes\n" .
#				"Template argument size: {$this->mIncludeSizes['arg']} bytes\n" .
#				"Maximum: $max bytes\n" .
#				"-->\n";

Intermixed citations: edit box solution?

A criticism of cite.php is that the intermixing of citation with text, makes the text harder to read. A possible solution is seen in certain Wysiwig editors, where the editing box can be switched between HTML and WYSIWYG modes (see for example the FCKeditor demo

Applying this to the Mediawiki editor, a "toggle" button could be added, that toggles between displaying citations, and hiding them (or showing just a <ref ..> placement label, that expands when the cursor moves over it?). Alas I have no idea how to implement this. I don't even know how Wikipedia extends the functionality of its edit box. --Ian Tresman. -- 16:50, 26 November 2007 (UTC)

section edit preview

Would it be possible to make this extension automatically add a <references /> "preview" under the normal preview-section if the section has any <ref> tags ? Cause that is one of my biggest problems with cite. You just can't preview them in editsection mode. 16:30, 6 December 2007 (UTC)

installation trouble

I am running a own wiki with mediawiki version 1.10.0.

I tried to install extension Cite

following the description, I added require_once("$IP/extensions/Cite/Cite.php"); in localsettings.php and the files in the folder extensions

when I openend my wiki again I got the warning Fatal error: Call to undefined function wfLoadExtensionMessages() in /var/www/info-db/extensions/Cite/Cite.php on line 32

What ist wrong?

Fergus 21:20, 3 January 2008 (UTC)

wfLoadExtensionMessages()is introduced since 1.11. Download 1.10 branches extensions Extension talk:ConfirmEdit#undefined function wfLoadExtensionMessages

Problem with cite.php when not logged in

I installed cite.php on a Mediawiki 1.11.0 installation, and it works great when logged in, but the references do not appear for users who are not logged in. This fella has had the same problem [2]. I notice it isn't a problem for Wikipedia articles, which often use the {{reflist}} template. Does anyone know why cite.php doesn't seem to work for users who are not logged in (and the fix)? Dave2008 January 5 2008

Have a look at Extension talk:Cite#Blank when not logged in--Ob.helm 18:20, 12 December 2008 (UTC)

Question about misrendered Backlink


according to the entry on the help page "Misrendered backlink" i have the question "Where can i edit the backlink sign?" I searched the files a couple of times, but i could not find it. In my case always a "?" is rendered. If i search for "?" or the uparrow i do not get a hit. Can you please tell me exactly where to edit this paramter or value?

kind regards
TurboKanne, 2 February 2008

Problem solved, after a while i found out, that Special:Allmessages allows me to change the Cite-Reference Symbol.
TurboKanne, 11 February 2008

The contents of the footnote in a tool tip

I have tried to make the contents of the footnote to be able to be checked by stopping the pointer on the reference link. That's what I have tried to set as the value of "Cite reference link":

<sup id="$1" class="reference" title="$3">[[#$2|$3]]</sup>

It didn't work. I have also tried variables $1 and $2. So in which variable are the contents hiding? --Erkkimon

I'd be very interested in this as well. It seems to me that having the contents in the tooltip would save a lot of time. Cronje 00:20, 8 November 2010 (UTC)

Hack to Handle Muliple Reference Types Simultaneously

I need to create a hack of the Cite extension to simultaneously reference text in three different ways on the same page:

  • Citations of content source: the standard use of the Cite extension.
  • Notes or comments to qualify or clarify statements: a modified use of the Cite extension, but with letters instead of numbers and a separate "legend" for the reference list.
  • On-page definitions for terminology: a function to add a page-specific glossary of terms used in the article.

The text below illustrates the application:

Dumbo is a 1941 film produced by Walt Disney ..... The main character is Jumbo Jr., a semi-anthropomorphic elephant who is cruelly nicknamed Dumbo. He is ridiculed for his big ears, but in fact he is capable of flying [a] by using them as wings [1].


1. Wikipedia, the free encyclopedia


a. There are no documented cases of elephants that have the ability to fly


The attribution of uniquely human characteristics and qualities to nonhuman beings.

It is possible to make minor modifications to the Cite extension to reference any one of the three data types in any single format. However, handling all three data types and rendering them differently is a little more involved.

The simplest solution (for the hacker) is to clone the Cite extension for each of the two alternative uses, rename the clones, and alter the code to render the appropriate results. Since this solution really runs three copies of the Cite code, I suspect that there is a lot of redundancy and inefficiency.

Another solution is to introduce four new tags into the extension, perhaps <item> & <comments/> and <term> & <definitions/>; expand the array to accept data collected from <ref>, <item> and <term> hooks; and have the callback functions each query the array for the proper data. The question is whether this solution is more advantageous than the three-clone solution.

Any thoughts?

Thanks, Furboy 22:30, 11 February 2008 (UTC)

I want to do the same thing. Any comments are appreciated.--ExplicitImplicity 10:01, 10 April 2009 (UTC)
Did you read Extension:Cite/Cite.php#Grouped references? --Mormegil 22:19, 10 April 2009 (UTC)

Reference to HEAD unclear

In Installation secion of the article it references something called "HEAD".

Note: Cite.php requires hooks in the main MediaWiki code found in HEAD as of 2005-12-24 23:05:18Z It might operate on earlier versions of MediaWiki, but it won't be operating properly.

I don't know what HEAD is. Does it make sense to hyperlink this word to an article that explains that? (I don't know what hooks are either). Thanks, 17:26, 14 February 2008 (UTC)

Reference List?

My employer has nstalled cite.php, however the {reflist} tag does not appear to be working, though the in-article citations using the <ref> </ref> tags are working. How do I enable the template to work? 02:20, 18 February 2008 (UTC)

Mediawiki 1.12?

Has anyone gotten this to work with MW 1.12?

Hi. I also could not get it to work with 1.11 or 1.12. I did not had the time to play around: maybe we need to add the other files in the svn? - Regards, JdV 08.06.08
I downloaded the extension via the links to the three files in the upper right box of the article page and installed it in extensions/Cite directory (and saw to it that owner/groups permissions were same as for the other extensions). I had problems to get it to work with version 1.10, as mentioned in the article. So I upgraded MediaWiki (via upgrade.php, as discussed in the MediaWiki Upgrade manual) from 1.10 to 1.12. and then had no problems with this extension (and I even loaded it in the last line of LocalSettings.php). It works very well (BTW, I'm using Debian 4 with latest versions of Apache 2.2, PHP5.2, MySQL5.1) - Regards, Kai 24.06.08
Yes Corsulian 18:10, 26 August 2008 (UTC)

Grouping references does not support DBCS characters

The extension "Cite" offers <ref> & <references /> tags and an attribution "group" for usage. However, the value of the attribution "group" can not be DBCS characters. I think supporting DBCS characters will be more friendly and convenient for those users in CJK.-- 12:30, 22 May 2008 (UTC)

see Bugzilla:14216.--Fdcn 16:36, 3 June 2008 (UTC)

Fatal error - looking for Cite/Cite_body.php

Warning: __autoload(/home/barista/www/testwiki/extensions/Cite/Cite_body.php) [function.--autoload]: failed to open stream: No such file or directory in /home/barista/www/testwiki/includes/AutoLoader.php on line 328

Fatal error: __autoload() [function.require]: Failed opening required '/home/barista/www/testwiki/extensions/Cite/Cite_body.php' (include_path='/home/barista/www/testwiki:/home/barista/www/testwiki/includes:/home/barista/www/testwiki/languages:.:/usr/local/lib/php') in /home/barista/www/testwiki/includes/AutoLoader.php on line 328

Using MediaWiki 1.10.4, PHP 5.0.4 (cgi), and MySQL 4.0.18 (Standard).

I didn't see a Cite_body.php file to download. --Barista 18:51, 8 June 2008 (UTC)

I'm getting the same error using MediaWiki 1.12.0, PHP 5.2.6, and MySQL 5.0.45. --Whesleymccabe 18:47, 9 June 2008 (UTC)

Fixed: download 'Cite_body.php' from here and place it in the 'extensions/Cite' directory. --Whesleymccabe 20:20, 9 June 2008 (UTC)

URL Expansion

First of all, I've been using this extension for quite some time and it's quite amazing. Thank you, developers.

Now, questions. Here's an example of a ref tags in one my article's bodies and the reference that is produced:


<ref>{{Citation | title = George Mason University Fraternity and Sororities Grade Report Fall 2007 | date = 2007 | url = http://sa.gmu.edu/fsl/FSL_FALL_2007_Grades.pdf | accessdate = July 10, 2008}}</ref>


1. ^ George Mason University Fraternity and Sororities Grade Report Fall 2007, 2007, <http://sa.gmu.edu/fsl/FSL_FALL_2007_Grades.pdf>. Retrieved on 10 July 2008

Now, I was initially expecting the title of any URL cited to become a hyperlink. It does that, but then also shows the actual URL between the chevrons (pointy brackets). You can see how this is redundant and, while not the end of the world, it's slightly inconvenient. Any way to keep that from happening? Also, the little document icon is nice but is it possible to have a .pdf link display a wee little Adobe image and so forth for other file types? And am I missing a step in making it so that references are generated in small text? Corsulian 18:25, 26 August 2008 (UTC)

Nevermind on the pdf icon. There are entries for that icon in common.css but it took replacing the document.png path in main.css to get them to show - remember to edit the margin to 17px so there's no overlap. Corsulian 22:15, 26 August 2008 (UTC)
Also nevermind the small font. I'm guessing I was mistaken when I thought code in common.css would be read in addition to the selected template main.css? Anyway, that much is fixed. Just redundant URL remains on my little quandary list. Corsulian 23:38, 26 August 2008 (UTC)

Link Expansion

Still unable to get these URLs not to expand. I was thinking perhaps it had to do with these entries from common.css but putting them in my main.css hasn't changed anything:
.plainlinksneverexpand a.external.text:after {
   display: none !important;
.plainlinksneverexpand a.external.autonumber:after {
   display: none !important;

Corsulian 15:14, 27 August 2008 (UTC)

As noted in the above section, this is the difference between expected and actual outcome:

1. ^ George Mason University Fraternity and Sororities Grade Report Fall 2007, 2007, <http://sa.gmu.edu/fsl/FSL_FALL_2007_Grades.pdf>. Retrieved on 10 July 2008


1. ^ George Mason University Fraternity and Sororities Grade Report Fall 2007, 2007, Retrieved on 10 July 2008

Multiple qutoes simplification

Thnakyou for such a useful tool, I have a request/suggestion to make it a bit simpler for us 'newbies'. I have just been using multiple references - and also trying to work out why some text in a wikipedia article was not appearing, rooting around and checking refs / tags etc. I finally realised that the secondary occurrences weren't ended with a slash i.e. <ref name="multiple" > instead of <ref name="multiple" />, as in the notes you have mentioned using <ref name="multiple"> is pointless</ref> why not do away with that option and allow the parser to take all secondary <ref name="multiple"> as <ref name="multiple" />, might save some other editor headaches ...? Leevanjackson 19:38, 26 August 2008 (UTC)

Because it is not correct xml. Jeblad 14:00, 4 September 2008 (UTC)

Zero-based counting

The footnote which looks like [1] links to the anchor #cite_note-0. Can't cite.php be taught to use the same fingers as the rest of us, starting with no. 1?

[And why not put quotation marks around the reference's and note's href attributes, for consistency?] Michael Z. 2008-08-27 16:11 z

Variation for refs in the final references block

There are a fix described at User:Jeblad/Cite for adding refs at the final references block. This is a slight variation to the usual extension to add citations and references to wikitext. This variant also makes it possible to list the citations inside the references-tag, not only the ref-tag. This moves large templates out of the wikitext, making the whole text more readable while editing.

The citations or references can be identified inside the references-tag by starting at the leftmost position, then running up to a pipe (|), equal sign (=), colon (:), newline or carriage return. Extra text that is part of this citation can continue on the next line if it is properly indented – that is any indention with a space or a tab should work. Next line starting in the leftmost position will terminate the reference. It will then follow that this should start with a legal identifier.

The form with the equal sign (=) could create troubles with another proposed variation which will collect meta information from external sites. Also it seems like the pipe (|) could create problems in a similar situation. It is therefore strongly advised to use the form with the colon (:).

Traditional style for a reference

This is text<ref name="identifier">Citation</ref>
<references />

Alternate style for a reference

This is text<ref name="identifier" />
  and more text

Note that the code is not properly tested, and is a replacement for Cite.php from Extension:Cite. It is also not checked against the newer grouping variation of the Cite.pm. Probably the two versions should be merged. Jeblad 12:52, 4 September 2008 (UTC)

Sufficient changes are shown in the diff and the code for a complete solution are at User:Jeblad/Cite_body.php. It is also necessary to do an additional change, with diff, as in User:Jeblad/Cite.php. There might be other necessary changes. Jeblad 19:34, 4 September 2008 (UTC)

It would be a great feature removing all templates from the main text. Is it possible to implement this? (so it can be used on all wikis especially en-wiki and no-wiki) Nsaa 22:44, 4 September 2008 (UTC)

Added code to make a printout of references that isn't used in the refs, still it is added in the references. This makes it possible to use references as blocks underneath «Literature» and «External links», and those referenced will get backlinks while those that isn't used will be without such backlinks. Those referenced in the text will be counted first while those that isn't are appended to the list. There are one update to the localization of User:Jeblad/Cite.i18n.php, that is the message for 'cite_references_link_none'. Jeblad 23:53, 4 September 2008 (UTC)

There is one last bug that is correct handling of anonymous references. If a entry is made without any name in the references tag, it will overwrite previous anonymous entries. One small fix and all entries with a leading colon (:) are correctly detected as anonymous. Lines without a colon (:) will be silently dropped, so they can be used for commenting. Jeblad 00:22, 5 September 2008 (UTC)

The later versions only uses the form with a colon (:) to identify the name of the references. Jeblad 21:10, 6 September 2008 (UTC)

Seem excessively complicated: My suggestion would be; use of
<references group="xyz"> <ref name="asdf">Easter bunny.</ref><ref name="qwer">Mooo</ref> <ref name="zxcv"/> </references>  <references group="xyz"/>
. In that example:
  1. any use of ref like
     <references> <ref>...</ref> <!-- or --><ref/> <!-- inside an enclosing --> </references>
    block removes a reference from the automatic list
  2. <references> <ref name="jkl">...</ref> <!-- inside an enclosing --> </references>
    provides an in-place definition
  3. <references> <ref name="jkl"/> <!-- inside an enclosing --> </references>
    expands a definition in-place.
  4. <references/>
    alone, expands all automatic references remaining.
Everything should to apply within its correct group="" scope. The result of that should allow bibliography styles:
Do it like this<ref name="mos-dates">Manual of Style<ref group="bib" name="mos"/>, Dates</ref>
and that<ref name="mos-moo">Manual of Style<ref group="bib" name="mos"/><ref name="good-practice">lala</ref>,
  Transliteration of Bovine language</ref>.
Remember to take care with negative dates!<ref name="mos-dates"/>

{{reflist}}  <!-- Expands default references group -->

<references group="bib">
<ref name="mos">{{cite web|work=Wikifoo|title=Manual of Style|url=...}}</ref>
<ref name="good-practice"/>

;All the rest
<references group="bib"/>  <!-- Expands all non-manually listed -->
The alternative to relying on overloading ref is to add a refdef tag that causes expansion, or definition, and always acts as the definition/endpoint. —Sladen 14:44, 25 September 2008 (UTC)
I like this suggestion :-) when will it get implemented? רנדום 18:16, 6 October 2008 (UTC)

Version for 1.13

After updating to MW1.13, lines after a ref tag would show in a box (as if they had a space before the line). The 1.13 update (currently at http://upload.wikimedia.org/ext-dist/Cite-MW1.13-r38539.tar.gz) found on the download snapshot fixed that. --LRG 07:53, 6 October 2008 (UTC)

Flexible display of citation references

Right now it looks like the square brackets are hard-wired into the citation link, and there is no way to alter this using CSS.

Adding a simple span would make it much more flexible, allowing CSS to hide or reformat the numeral, the brackets, or both, for registered users or in a project style sheet.

 <sup id="cite_ref-0" class="reference"><a href="#cite_note-0" title="">[<span>1</span>]</a></sup>

There's some discussion at the en: Village Pump about letting users change the display. Michael Z. 2008-11-04 16:42 z

Never mind: I discovered the preference at en:MediaWiki:Cite reference linkMichael Z. 2008-11-04 20:02 z

Footnote symbols/link clustering

I have just written some code implementing a few new features. See w:User_talk:Ævar_Arnfjörð_Bjarmason#Footnotes, clustered links.— 13:33, 7 November 2008 (UTC)

nested refs

This may already have been addressed, but there's a problem that nested refs are not supported. For example, in en:rongorongo I used the group= tag for footnotes. However, several of the footnotes are themselves referenced. When I tried putting a <ref> tag in the footnote, it didn't parse, so we ended up with <ref> tags for references in the text, but inline citations for references in the footnotes. That seems a bit contrived for a FA. Kwamikagami 20:05, 14 November 2008 (UTC)

I think you can do this with #tag:ref, see en:Template_talk:Reflist/Archive_2008#Q_regarding_refgroups. --Gadget850 01:12, 4 December 2008 (UTC)

Implemented someday?

Will this reference style ever be implemented:

Lorem ipsum<ref name="one" /> dolor sit amet.<ref name="two" />
<ref name="one">one</ref>
<ref name="two">two</ref>

It has been discussed in the meta-discussion ages ago, but the extension still doesn't seem to support this formatting style. I would find this absolutely superb in terms of clarity even though it would mean overloading <ref>. -- 21:20, 15 November 2008 (UTC)

Duplicate XHTML id


Link reg tags, with <sup /> always use given ref key as XHTML id value. So if you have <ref name="toto">Ref text</ref> and then <ref name="toto" /> you will get XHTML like following :

<sup id="_ref-toto">...First link...</sup>
<sup id="_ref-toto">...Second link...</sip>

Such XHTML code is not fully compliant as there should not be more than one tag with id="toto" in the same document.

My proposition to fix that is to modify linkRef function so if link XHTML code to be generated is for a ref previously defined, id was not put in <sup /> tag. It's quite simple using $mRefs[$key]['count'] (if == 0 use code for first link, if > 0 use code for following links).

From there it seems that Parser::recursiveTagParse used in this extension call clearState, so between each <ref /> state is reset and so $mRefs, and so test in linkRef could not be checked properly.

I've just added a skip flag, maybe a more elegant fix should be done.

Thanks for this great extension.

Index: Cite_body.php
--- Cite_body.php	(revision 43760)
+++ Cite_body.php	(working copy)
@@ -54,6 +54,14 @@
 	 * @var array
 	var $mRefs = array();
+	/**
+	 * Skip flag to avoid clearing state
+	 * between each <ref> using recursiveTagParse
+	 * 0  = Do not skip
+	 * >0 = Skip
+	 */
+	var $mSkipClearState = 0;
 	 * Count for user displayed output (ref[1], ref[2], ...)
@@ -544,6 +552,13 @@
 	function linkRef( $group, $key, $count = null, $label = null, $subkey = '' ) {
 		global $wgContLang;
+                $msgKey = 'cite_reference_link';
+		if ($this->mRefs[$key]['count'] > 0) {
+			$msgKey = 'cite_reference_link_notfirst';
+		}
@@ -592,6 +607,8 @@
 	function parse( $in ) {
 		if ( method_exists( $this->mParser, 'recursiveTagParse' ) ) {
 			// New fast method
+			$this->mSkipClearState = 1;
 			return $this->mParser->recursiveTagParse( $in );
 		} else {
 			// Old method
@@ -657,6 +674,13 @@
 		# a <ref> tag
 			return true;
+		if ($this->mSkipClearState-- > 0) {
+			// test and set check to avoid
+			// clear state between each <ref>
+			// when using Parser::recursiveTagParse
+			return true;
+		}
 		$this->mGroupCnt = array();
 		$this->mOutCnt = -1;
Index: Cite.i18n.php
--- Cite.i18n.php	(revision 43760)
+++ Cite.i18n.php	(working copy)
@@ -57,6 +57,7 @@
 	'cite_references_link_suffix'      => '',
 	'cite_reference_link'                              => '<sup id="$1" class="reference">[[#$2|<nowiki>[</nowiki>$3<nowiki>]</nowiki>]]</sup>',
+	'cite_reference_link_notfirst'			   => '<sup class="reference">[[#$2|<nowiki>[</nowiki>$3<nowiki>]</nowiki>]]</sup>',
 	'cite_references_link_one'                         => '<li id="$1">[[#$2|â�,F��(B]] $3</li>',
 	'cite_references_link_many'                        => '<li id="$1">â�,F��(B $2 $3</li>',
 	'cite_references_link_many_format'                 => '<sup>[[#$1|$2]]</sup>',
Note that there is a patch at bugzilla:10537 which would change the way these are numbered. that change seems reasonably sane, but it's bundled with some other message changes that look undesirable. That may also accomplish what you're looking for, iirc it included the number in in the ID, and we checked that carefully for ID collisions. -Steve Sanbeg 21:23, 20 November 2008 (UTC)

<ref> and <noinclude>

I'm editing on fr.wikisource where we use a lot transclusion. The last time I check, i.e. one year ago, there were no problem using <noinclude></noinclude> or <includeonly></includeonly> inside <ref></ref>. Now, it is not working anymore. <ref> does not take into account them. In transclusion, it leaves the <noinclude></noinclude> part and does not include the <includeonly></includeonly> part. Does it come from <ref> or do I need to search somewhere else ? thanks Andre315 08:34, 10 December 2008 (UTC)

I suspect the new preprocessor, which has a different way of handling tags, handles the includeonly, etc. differently when they're nested in an extension. I doubt it's related to <ref>, you'd probably see the same affect with, i.e. <poem> -Steve Sanbeg 20:25, 12 December 2008 (UTC)

Wiki preformatted text inside <ref> not supported?

I notice that Wiki preformatted text is not supported, like here:


The "preformatted" renders just as plain text. Is this on purpose? Does anybody know why or even has a reference to the MediaWiki code?

Reflist disappears when anon editing is disabled and viewing page as anon

I have this wiki: http://sandbox1.krcla.org/docs/Immigrants_%26_Voting with MediaWiki 1.13.3 and the latest SVN snapshot of Cite.

I also made the wiki read-only by doing this:

$wgGroupPermissions['*'    ]['createaccount']   = false;                // 1.5.0
$wgGroupPermissions['*'    ]['read']            = true;         // 1.5.0
$wgGroupPermissions['*'    ]['edit']            = false;                // 1.5.0
$wgGroupPermissions['*'    ]['createpage']      = false;                // 1.6.0
$wgGroupPermissions['*'    ]['createtalk']      = false;                // 1.6.0

At the bottom of http://sandbox1.krcla.org/docs/Immigrants_%26_Voting , the reflist does not show up if the user is anonymous. When I log in , then it does show up. Try it yourself. I made an account with the ID dummy and password test (the login link is at the top right)

When I allow anonymous editing by commenting out the read permission, then the reflist shows up.

What's wrong?

--Yonghokim 08:30, 14 January 2009 (UTC)

Ah, crap. It suddenly started working again! Did the SVN snapshot overwrite kick in after 10 minutes?!?!? Nevermind, problem fixed by itself. --Yonghokim 08:48, 14 January 2009 (UTC)

Getting unparsed code at the top of the page

Since installing this extension, occasionally I get unparsed code at the top of the rendered page. For example: "

  1. array(2) { [0]=> string(180) " Brendan M. Gillen..."

If I reload the page, it goes away. But will do it again if I manually search for another entry or type in it's URL. And then a reload also clears up the page. It is doing this as a sysop and a guest view. IE7 and Firefox. MW 1.13.3., Apache 2.0.63, PHP v 5.2.8. Is this a CSS or php caching problem or something else?

Edit: It's definitely a caching issue. If I play with the types of caching (from CACHE_ANYTHING to CACHE_NONE, etc), I can either make the unparsed text stay up there, no matter how many times I reload, or see it once, then go away on a reload. Perhaps I need to place the "require" call in a different spot in the LocalSettings.php? Note: I tried that too, but ParserFunctions.php MUST come before the Cite.php, or it really blows up.

Edit again: Okay, it's something wrong with my parser for sure. It happens on all skins, and it happens when I disable all added extensions except Cite and ParserFunctions. If I disable ParserFunctions, it doesn't work at all (get the "Undefined" error).


Sorry, no answer but a similar issue with this extension over at WikID. The extension performs perfectly when it has just been implemented, but on many (but not all) pages the cite parser extension tag breaks after several (two?) days. At this point the parser tag displays on the page just as it has been typed on the edit page instead of being parsed and loading the familiar citation identifier/finger. Since an extended web search has not yielded any others who are experiencing this exact problem, I'm guessing that something strange has happened to our MediaWiki install. Perhaps a parser error for us too, since the same issue occurs with the videoflash extension. Could someone point me in the right direction of solving this problem? Many thanks in advance!
Convergencenl 22:35, 15 February 2011 (UTC)

Fatal error with Mediawiki 1.13.3

When I place the Cite extension on my wiki, I get the following error :

Fatal error: Call to undefined method ParserOptions::getIsSectionPreview()
in /home/butonthe/public_html/w/extensions/Cite/Cite_body.php on line 674

Any idea what I should do ? I'm using the latest snapshot of Cite, on Mediawiki 1.13.3. 13:27, 28 January 2009 (UTC)

Have you tried this?: http://www.gossamer-threads.com/lists/wiki/mediawiki-cvs/156169?page=last 15:59, 28 January 2009 (UTC)
Yes, that works now. Thanks. 16:48, 28 January 2009 (UTC)
I have the same problem. Why do I need to modify core files so this extension works? Is everyone has this problem? -- 16:12, 10 February 2009 (UTC)
Download the version of the extension that matches the version of MediaWiki you're running. —Emufarmers(T|C) 11:32, 11 February 2009 (UTC)
I have 1.13.3 and downloaded the version for 1.13.x and it is now ok -- 15:35, 13 February 2009 (UTC)

Space/newlines after footnote markers

On MediaWiki 1.12.0 and Cite.php as included in Ubuntu 8.10 package mediawiki-extensions, I am observing that <ref>…</ref> makes the parser behave as if it expanded to something with a newline at the end. For example, putting a space immediately after the </ref> causes the following text to be treated as preformatted.

Applying the revision 33026 solved the problem. I have filed a bug report to that effect on the Ubuntu bug tracker.

Fatal error with Mediawiki 1.10.1

Fatal error: Call to undefined function wfLoadExtensionMessages() in /web/docs/w/extensions/Cite/Cite_body.php on line 30

permissions in Cite are 777 as well as extensions. got subversion here 1.10.1. http://svn.wikimedia.org/svnroot/mediawiki/trunk/extensions/Cite/

Any help is appreciated. Thanks

Sounds like your versions of Cite & MediaWiki aren't compatable; try upgrading. -Steve Sanbeg 19:29, 11 March 2009 (UTC)

Printing the content between <ref> tags

How is it possible? In what variable is the content between <ref> tags stored or is some pseudo-template needed? --Erkkimon

I don’t understand the question. To print the references, you use <references/>, as explained on the page. The content of references is stored inside a private variable of the Cite extension. --Mormegil 09:07, 4 April 2009 (UTC)

Numbering Problem

When including a <googlemap>-tag in a page, <references/> does not list the references from above the <googlemap>-tag. Numbering of the references below the <googlemap>-tag starts from the beginning. Naming the <ref>-tags doesn't help. Any idea? --Ralf72 19:06, 11 March 2009 (UTC)

I'm not familiar with googlemap, but it sounds like it's doing some recursive parsing in the tag; possibly calling the wrong method, which is calling a hook that causes cite to reset its internal state, as it normally does at the end of the page. -Steve Sanbeg 19:29, 11 March 2009 (UTC)
Thank you Steve for your answer. Unluckily, I am not familiar with coding in php. However, I can read it and I can modify it to some extent. --Ralf72 20:20, 9 April 2009 (UTC)

A proposal to simplify and improve footnote markup in Wikipedia

Wikipedia offers a simple and powerful method to create footnotes (a.k.a. references) through the "ref" element in the wiki markup. The resulting HTML markup, however, is more complex than necessary. This study shows how the number of elements required to represent a footnote can be halved, while improving the reusability of the content.

--Howcome 13:10, 3 April 2009 (UTC)

PROBLEM: ref in a template

on my own wiki, I wanted to use a Template like

{{cite|To be or not to be, that is the question.|Shakespeare: Hamlet}}

the actual template looks like this:


however, when I apply this now, the footnote is not shown, instead {{{2}}} (literally that string, not the content of the variable) is given as the footnote. Do tag-extensions always override the template-variables? Anyone knows what the problem is and how to fix it?--ExplicitImplicity 09:52, 10 April 2009 (UTC)


Solved my problem. Simply replace




and it works as it should. --ExplicitImplicity 10:12, 10 April 2009 (UTC)

Template usage of #tag:ref and {{Reflist}}

We used the solution as described ( "{{{1}}}"{{#tag:ref|{{{2}}}}} ) on our tempplate on Mediawiki 1.15.1 with Cite (Version r47190) and we are aware of Bugzilla Report 2257 but neither <references /> nor {{Reflist}} shows the right result. We would have expected that we finally could use the extension within templates but it still doesn't work.

Is their a final solution for Cite.php or is it just not working with templates and the generating of reference list? -- Thanks

From criticism section: references body in reference sections

Having the content of a reference within the article body makes the text confusing to edit and discourages new users to contribute. A reference is lengthy and complicated, while the short form <ref name="name"/> (with the closed tag) is brief and elegant. A solution, which require no software changes, is already mentioned in the Criticism section:

A possible solution would be to have the actual reference section contain all of the references with given names, then throughout the article, simply reference by name, instead of the full citation.

This is already supported by current software, here is an example of a wikipedia article using this approach. As you can see, the footnotes numbers appear also in the first line of the "Notes" section, because they are repeated there, to put the references bodis out of the article content. The obstacle to this is to have the Wikipedia guidelines to explicitly recognize it as one of the possible styles, otherwise there will always be someone reverting them ( as happened in the cited example ).--Sum 16:29, 11 April 2009 (UTC)

Mediawiki 1.14

Does it works in it also.--Yousaf465 03:01, 24 April 2009 (UTC)

I'm tentatively going to say no. See #Fatal error with Mediawiki 1.14.0 below. Willscrlt (Talk) 07:52, 1 June 2009 (UTC)

Cite_body.php modified to allow ref bodies to be declared outside of article prose

I have what appears to be a working modified version of Cite_body.php from Cite-MW1.14-r45577 which allows the content of Refs to be declared outside of the flow of the main article prose. It should be transparently backwards compatable with current wikitext for the Cite extension. It adds support for an optional Ref tag attribute named hide. From the editor's perspective, if the hide attribute is present in a Ref tag, two things are done:

  1. Generation of the superscripted forward-link to the expanded references is suppressed;
  2. Generation of the associated backlink in the expanded References item is suppressed (and appropriate adjustments are made in the other backlinks if needed).

Instead of writing something like:

Lorem ipsum dolor sit amet,<ref name=c1>This is a comment which should be placed in the References section</ref> consectetur adipisicing elit,<ref name=c2>This is another comment which should be placed in the References section</ref> sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.<ref name=c1 /><ref name=c2 /> Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.<ref name=c2 /> Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.<ref name="NoteOrCite">This is yet another comment, or perhaps a citation of [http://something.somewhere.com some supporting source]</ref> Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.<ref name=NoteOrCite />

An editor could write something like:

Lorem ipsum dolor sit amet,<ref name=c1 /> consectetur adipisicing elit,<ref name=c2 /> sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.<ref name=c1 /><ref name=c2 /> Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.<ref name=c2 /> Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.<ref name=NoteOrCite /> Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.<ref name=NoteOrCite />

<div style="display:none">
<ref hide name=c1>This is a comment which should be placed in the References section</ref>
<ref hide name=c2>This is another comment which should be placed in the References section</ref>
<ref hide name="NoteOrCite">This is yet another comment, or perhaps a citation of [http://something.somewhere.com some supporting source]</ref>

Additionally, an editor wishing to control the order of the expanded References items (perhaps, say, to separate footnotes from citations (I know that the optional group= attribute provides another way of doing that. This modification should work compatibly with that.), or to order citations by author name, etc.) could declare that block of hidden Refs ahead of article prose, ordered in their desired order of appearance.

Would anyone having a mediawiki-1.14.0 based test wiki handy like to try this out? All that would be needed should be to move the current Cite/Cite_body.php aside and drop this modified one in instead. I just got it working today and haven't done much testing, but it seems to work well enough and the modifications to Cite_body.php from Cite-MW1.14-r45577 are not very extensive. Let me know on my Wikipedia talk page (I check that at least once a day; I may not check for responses here that often.). -- 03:32, 11 May 2009 (UTC) (added) Two things:

  1. The purpose of the <div style="display:none"> enclosing the declaration of the hidden references above is to hide the newlines between the declarations.
  2. The modified Cite_body.php code can be found here. -- Boracay Bill 03:42, 11 May 2009 (UTC)

(update) I've fixed some bugs in the modified cite.php code located here; it seems to be working OK now. I'll try to get around to posting it to Wikimedia Bugzilla sometime soon. I'd still appreciate any feedback. -- Boracay Bill 06:43, 24 May 2009 (UTC)

This is great stuff! I'll test it as soon as I get a grasp with mediawiki. Thanks! --Sum 24 May 2009 (UTC)
It is now up at Bugzilla:18890. -- 12:48, 24 May 2009 (UTC)

(update) A test wiki with the modified Cite_body.php file installed is (currently) available at http://siteslot.com/testwiki/ -- Boracay Bill 12:16, 25 May 2009 (UTC)

Fatal error with Mediawiki 1.14.0

Fatal error: Call to undefined method ParserOptions::getIsSectionPreview()
in /w/extensions/Cite/Cite_body.php on line 669

I have MW 1.14.0 and downloaded both the 1.14.x and current development version snapshots, and received the error message shown above (similar to #Fatal error with Mediawiki 1.13.3 above except with a different line number). I looked at the suggestion above for 1.13.3, and couldn't figure out what it meant or what I was supposed to do with it. So I tried commenting out line 699, and it seems to work just fine. I would appreciate it if somebody who understands this stuff well could tell me if this was a good patch or a bad one that will break something else.

Technical details: MediaWiki 1.14.0, PHP 5.2.6 (cgi-fcgi), MySQL 5.0.67-log, Cite (r50967), ParserFunctions (Version 1.2.0). That's all I have installed (it's a new installation).

Thanks! Willscrlt (Talk) 07:54, 1 June 2009 (UTC)

That should be of your least concern. Even if you remove the line that interrupts the extension from stabilisation on the wiki, AutoLoader.php cannot read Cite_body.php, which is an even bigger issue. I suggest downloading the version compatible for 1.13.x as it seems to work perfectly on 1.14.0. --Napoleon 00:21, 16 June 2009 (UTC)



Instead of clicking on the note in the text (that scrolls the page to the footnote), why not add a title attribute to the note? This title would contain the note itself. Then moving your mouse over the note number would show the title attribute (like when you hover an image or something else having this attribute).--Gandalfcobaye 12:39, 6 July 2009 (UTC)

'Link-back' from References section

It would be nice to have the References section contain links back to the spot in the text where the ref was. I imagine this could be done by simply inserting anchor tags into the page HTML, but I don't know if all (any?) web-browsers will automatically scroll the page to a anchor which is 'above' the current location in the page. Several of the large journal databases have this function, which is nice when you want to check to see what a reference is, and then continue reading. The idea above about a title (I assume this is like a floating tool-tip type HTML layer?) is another idea.

However, I don't know enough PHP to edit the cite.php file - nor do I have a local mediawiki installation or appropriate setup to test it.-- Jim Witte (no account yet)

Mmmm… but the references do contain backlinks already… See e.g. Extension:Cite/Wikitext archive (Cite.php)#<references />: the up arrow or the numbered references in case of multiple uses is a hyperlink. --Mormegil 09:52, 13 July 2009 (UTC)

Feature / Support request - prefix and suffix in multiples

Hi, in the humanities and discursive disciplines this problem occurs:

<ref name="Foo2001Bar">Properly formatted citation of Foo, "Bar studies" Place: Press, 2001.</ref> (pages 1-10) <ref name="Foo2001Bar"/> (pages 11-20).

Now it would be incredibly useful to be able to:

 <ref name="Foo2001Bar" suffix="Pages 1-10"/>
 <ref name="Foo2001Bar" suffix="Pages 11-20, [[Dixon]] disagrees about [[Baz]] however."/>

Is this a reasonable request, does this function already exist in alternate forms? 03:26, 25 September 2009 (UTC)

See en:template:r. -- 17:49, 13 November 2009 (UTC)

Grouped references with different aspect

I don't like very much this [footnotes 1] and so: Italian books use different markers for different groups of notes, e.g. I'm reading a book which has for types of notes: author, editor of the original work, translator, editor of the translated book, and they use:

  • a b c d e...
  • 1 2 3 4 5...
  • I II III IV V...
  • * ** *** **** *****...

Is it possible to customize css for different groups of references? --Nemo bis 08:36, 27 September 2009 (UTC)

No, I believe that would require modifications to the code. Although they aren't very difficult, and in fact have been implemented at various times (at least for the alphabetic) there hasn't been enough support for them so far to get them deployed. -Steve Sanbeg 20:06, 30 September 2009 (UTC)
Why? Can you link a discussion/bug? Thank you for the reply, Nemo bis 17:36, 1 October 2009 (UTC)

Duplicate reference number in footnotes

Sometimes when I am browsing with SeaMonkey 1.18 I get two different references appearing in the footnotes section that have the same number. It occurs depending on what font size I am using. It seems to always duplicate the number of the first reference that appears in the second column when reflist|2 is used. - User:Shiftchange

Update: It only occurs when the font size is less than 100% of the browser default and doesn't only appear at the top of the second column, it can duplicate a reference number anywhere in the second column. - User:Shiftchange

Does not work with Google Maps Extension.

Does not work with Google Maps Extension. Do not show if <references/> is after </ googlemap> If it is before it is OK.--Skarabeusz 15:02, 7 February 2010 (UTC)


Is there a way to make the tags <ref></ref> refer to a <references/> which is not beneath them, but above? Thank you.-- 19:42, 18 February 2010 (UTC)

Separating references from text - How?

The Cite documentation describes that it is possible to move the references into the <references /> section. The documentation page suggests to do the following:

   According to scientists, the Sun is pretty big.<ref name="miller"/>
    The Moon, however, is not so big.<ref name="smith"/>

    <ref name="miller">E. Miller, The Sun, (New York: Academic Press, 2005), 23-5.</ref>
    <ref name="smith">R. Smith, "Size of the Moon", Scientific American, 46 (April 1978):    44-6.</ref>

However, it doesn't seem to work on my wiki. What is the problem? We have mediawiki version 1.15.1 and Cite version r47190 installed. Thanks for advice. Juttavd 24 March 2010

I'm having the same problem. When I click "Download snapshot", choose "1.15.x", and click "Continue", I get a file named "Cite-MW1.15-r48711.tar.gz". But the version of Cite.php in that archive contains the text "$LastChangedRevision: 47190 $", and when I install it, Special:Version shows me "Cite (Version r47190)". Apparently an old revision which does not support separating references from text (r47190) has been put in an archive which is supposed to contain a newer revision (r48711). Can someone fix this? Tim Smith 20:26, 22 April 2010 (UTC)

I'm having the same problem. X-romix 11:00, 23 April 2010 (UTC)

Handling the empty reflist better

I raised a question here and it was suggested there that I bring it here. When an article has no references it, template reflist returns nothing. Would it be possible to instead have it return an error message or (better) transclude another template to do that? LeadSongDog 03:58, 25 March 2010 (UTC)

Running 1.15.3, brand new Cite.php Extension BREAKS Special:AllMessages

I just installed the extension, works fantastic! I love the references it creates. However when I attempted to make this customization I found out that the Citation extension is causing my Special:AllMessages page to render blank. Help? --Urda 12:30, 19 April 2010 (UTC)

I'v made an alternative extension (to support Harvard-style references)

Example of Harvard references support.

Extension:HarvardReferences supports Harvard-style references, e.g. Smith 2008:1. It compatible with Cite.php and can be used jointly. Harvard references is more traditional for scientific literature. Jimbo strongly supports this proposal. :-)

  • Link - in square brackets:
    [Smith 2008]
  • Anchor to link -
    [*Smith 2008]

--X-romix 11:29, 23 April 2010 (UTC)

Two renditions of {{#tag:references}} is quirky

In attempting to have two sets of references on a page, and the need to call references using {{#tag:references}}. I am finding that the first call and the second call are the same (example). Whereas if I use <references /> twice, the rendition of references is fine (example). Someone suggested that #tag: plays around with the parser order (eg, to pass parsed wiki text to the tag), which is why the behaviour may change in cases like this. This is outside of my comfort zone, so I am bringing the issue here. — billinghurst sDrewth 10:08, 25 April 2010 (UTC)

You need to explicitly close the <references/> tag by using any parameter, even a dummy. Since you are using {{smallrefs}}, just change it to {{smallrefs|close=1}}. You could add the close to the template to make it automatic. --Gadget850 15:11, 23 May 2010 (UTC)

Does Cite work in 1.15?

I'm getting "Unknown extension tag" on pages that user "ref" - looks like the parser hooks aren't coming in. Special:Version shows Cite in "Special pages" but not "parser hooks". --Sfoskett 16:45, 27 May 2010 (UTC)

Citations in forms

Hi all,

Does anyone have any ideas on defining references in forms? Also, would template:cite work within other templates? Examples of usage?


Veryhuman 19:55, 14 June 2010 (UTC)

Cite version from SVN (trunk) returns errors

The input:


Returns "cite_link_label_group" within the bracketed superscript when I load the page. Inserting any additional refs causes a red error: Cite error: Ran out of custom link labels for group "". Define more in the MediaWiki:$2 message.]

I have not done anything fancy. This is the most vanilla possible use of this extension, and I do not understand why it wouldn't work. I was also very surprised to learn that something as fundamental to wikis as citations/references isn't actually part of the core software. Are there any plans to integrate the extension into a future version of MW? And maybe a version that's not so complicated and bug-prone? DoubleSuitedChris 01:40, 18 June 2010 (UTC)

I had the same problem with the trunk version of SVN. Take the version for 1.15 and it's works fine.
I'll try it. If it works I'll give you a kiss. DoubleSuitedChris 23:14, 18 June 2010 (UTC)
YES. THANK YOU. DoubleSuitedChris 23:20, 18 June 2010 (UTC)

Same problem

Has anyone solved this problem yet? I'm still having this problem with the version from SVN (version 1.15 works fine though). --Figure002

Same problem for me. Using latest Cite version (r71548) and MediaWiki 1.16.0 (r70102) --TnEaM 10:32, 24 August 2010 (UTC)

The snapshot for 1.15.x appears to be broken in the same way now (30 August 2010). Which revision is the last known good version?

The 1.15 branch of Cite hasn't been modified in 16 months. I downloaded the 1.15 snapshot from the Extension Distributor and it is indeed the 1.15 snapshot as it should be. I installed that version and it did indeed solve the problem. Perhaps you accidentally selected the wrong version, or the Extension Distributor screwed up and gave you the wrong file. Try downloading it again. The 1.15 branch of the Cite extension should not be giving you the same problem that the trunk version does. Reach Out to the Truth 01:27, 30 August 2010 (UTC)

I installed a clean mediawiki, no fancy stuff. Only extensions are Cite and Parser from trunk, getting this same error. Magister Mathematicae 04:47, 11 September 2010 (UTC)

I had the same problem with SVN, and version Cite-MW1.16-r62678 works. But you need to re-edit a page to get it updated. Alkarex 09:38, 14 September 2010 (UTC)
Hard to believe this hasn't been fixed, but thank you, Alkarex! I checked out r62678 and it works just fine. JustinForce 20:47, 28 September 2010 (UTC)
In looking over the code, it appears that there's a constant created to manage the 'default' group, however it is set at which is empty, instead of NULL. However, some of the methods in Cite_body.php don't appear to be treating EMPTY as NULL. Mean Dean 04:54, 30 November 2010 (UTC)

A bolt DIY ref-like trick for proofread (transcluded) references

Please take a look if you like to the code into it:s:Il giaurro/Note. Follow the links, then find the same reference into original Page: namespace where text comes from.

It's a test for finely customizable refs, where:

  1. the text of reference stays exacly where it is on the original page even if link & text are into different pages;
  2. the format and the content of reference link is absolutely free;
  3. cross link between link to reference and text of reference is running both in original and transcluded version.
  4. highlighting is running (even if only the linking mark/the number of the reference is highlighted).

The drawback is: the needed code is difficult (the needed template requires 6 parameters: anchor name, link display, and 4 addresses of pages), but by experience I saw that's much more an issue of paste & copy than a true quiz. And consider... it's a test only, to see if "it runs". And it runs. --Alex brollo 11:47, 25 August 2010 (UTC)

Incompatibilities with DynamicPageList?

I'm using this extension and DynamicPageList. The following example results in an empty reference list (the [1] is shown as expected):

Foo <ref>Test</ref>
category = somecat
<references />

If, instead, I write <references /> before <DynamicPageList>, the reference list appears. I'm using MediaWiki 1.16.0 and probably Cite rev 62678 and DynamicPageList rev 61471. -- PapaNappa 17:57, 19 September 2010 (UTC)

Cite/ref error

We are creating an off-line version of the wikipedia, but we continue to have problems getting some citation items to render correctly. When using the cite template and citing a paper or journal and the URL tag is missing, you get an error in the citation list at the bottom with error "Missing operand for >". (see example below from the article Cyprus).

^ Drayton, Penny (January 1993). [Expression error: Missing operand for > "Aphrodite's island"]. Wood & water 2 (41). Cited by: Trubshaw, Bob (February 1993). "The Black Stone – the Omphalos of the Goddess". Mercian Mysteries (14). Retrieved 2006-11-12.

I wonder if anyone else is having the same problem... I am using MediaWiki 1.16.0 with ParserFunctions-MW1.16-r62695 and Cite-MW1.16-r62678.

Thanks -- sal9000 15:33, 20 October 2010 (UTC)

Empty Group Label Error

After installing Cite.php, I found I kept running into the same error on a new MediaWiki project I'm working on:

[Cite error: Ran out of custom link labels for group "". Define more in the [[MediaWiki:cite_link_label_group-default]] message.]

Basically an error because I had no custom label defined for a group that would otherwise be NULL.

Just to make sure I hadn't blown things up with previously installed extensions, on a different domain, I installed a fresh version of MediaWiki 1.16.0, and then installed Extension:Cite/Cite.php.

Same error.

I then dug into the code a bit. I saw in the code a constant defined to an empty string named 'CITE_DEFAULT_GROUP', however further in the code, I saw checks for NULL values, but not an EMPTY vaoue. Here's how I eventually go things working:

  • Starting in ssh:
  cd $MY_WIKI_FILEPATH/extensions/Cite
  cp Cite.php Cite.php.orig
  ls -1 Cite.php | xargs perl -p -i -e "s/'CITE_DEFAULT_GROUP',\s*''/'CITE_DEFAULT_GROUP', 'default'/;"
  ls -1 Cite.php | xargs perl -p -i -e "s/wgAllowCiteGroups\s*=\s*true/wgAllowCiteGroups = false/;"
  • I then created the page via my browser:
  • I entered numbers from 1 to 99 and saved the page.
  • Finally, I re-edited my test page, simply saving it, which it then rendered correctly.

I then tried this same solution to my actual work in progress which already had numerous extensions. The work-around worked here as well.

I'm not sure if this is the right approach to the problem I ran into, especially as I'm basically 'turning off' the group attribute. However, after looking around for a couple of days, I figured I'd better post my solution as it either may help developers seeking to debug issues, or content providers trying to get simple references to work.

Especially as during my google searches for a solution, I found several sites rendering the "Ran out of custom link labels for group="" " error.

Mean Dean 04:38, 30 November 2010 (UTC)

Hi. I got the same error. I had installed the trunk version. Then, I just reinstalled the files for the MW 1.16x version and it worked. Hope it helps you. --Fmaestre 08:46, 3 December 2010 (UTC)

User-customizeable reference list numbering/lettering/bulleting

It is sometimes beneficial to mix different list numbering systems, for example use lettered references for table notes and numbered references for the main text. There are multiple instances of this use on the English Wikipedia, especially when there are long and detailed tables - for example PlayStation 3 , PlayStation 3 hardware, Master boot record, etc.

However, even though the format of the reference list is customizeable by the admin (Extension:Cite/Cite.php#Customization), the user is limited to using the same global list style for all groups, as defined in the configuration. Presenting a lettered or bulleted list can only be achieved with the {{ref}} template, which has the drawback of not supporting aggregation of multiple instances of the same reference into a single list item, unlike like the now-convenient <ref name=a/> syntax.

Can the <references/> tag be expanded to allow the user to explicitly define the numbering style, something like <references group=a style="list-style-type: none> ??? -- 17:28, 6 December 2010 (UTC)

Version r66749 implements the ability to create custom link labels.w:en:Wikipedia:Manual of Style (footnotes)/Cite link labels Don't know if or when that would be implemented. --Gadget850 15:41, 26 January 2011 (UTC)

Suppress Error Message

Is there any way to suppress error messages? I'm using the DynamicPageList extension to generate a portion of a random article to appear on the main page of my wiki, but I keep seeing the error Cite error: <ref> tags exist, but no <references/> tag was found in bright red text. I believe this is happening because I'm only including about half of the article, and the <references/> tag appears at the end. -- Tfinelli 20:28, 13 December 2010 (UTC)

I've got a similiar problem, I am using the SimpleTable extension with the <tab>-Tags instead and it shows me that error after every </tab>-Tag, even though the reference link works fine. -- 21:52, 24 January 2011 (UTC)
So have I. There should be a tag like
<references togglemsg="off" />
--Robis 03:05, 29 January 2011 (UTC)

Fatal error: Call to undefined function wfMessage() in /w/extensions/Cite/Cite_body.php on line 947

I don't understand how this hasn't been encountered before. I don't see how this could be an issue only on my configuration. I updated from 1.16.0 to 1.16.1 and now I get this error. This breaks any page with references, essentially destroying any wiki with the error unless they disable Cite, in which case you are left with pages that have empty references sections. -- (Talk), 1 February 2011 21:36

Same here. I just followed, what is said in the German instructions. But we must not check the German but the English version! Extension:Cite/Cite.php#Installation -- 12:07, 11 February 2011 (UTC)
Make sure that in your extensions/Cite directory you have copied all the files included in the Extension:Cite not only the three files from Extension:Cite/Cite.php
No, it's still not working. I suppose some problem with php version.--Ip178 09:58, 24 June 2011 (UTC)
OK. Current version (1.17) is bugged, but 1.16 works fine ! Snaps.1.16--Ip178 07:32, 27 June 2011 (UTC)
I am getting a similar error, running 1.18:
Fatal error: Call to undefined function wfmessage() in /extensions/Cite/Cite_body.php on line 1007

Cite and <dpl> Tag

FYI: <dpl> breaks the autonumber


== Another Level2 ==
== Yet another Level 2 ==
<references />

"bar" is a number '1' (should be '2') again and in notes you cann see only 'bar'. foo is curiously '1' too, but not present in notes. You must avoid >dpl> tag between references. 13:56, 20 April 2011 (UTC)

Cite 1.16.x not working with Map extension

I have an article containing parser function statements for the Map extension. If a ref tag is added before or between these statements references is empty. If the ref tag follows the Map statements then references renders correctly.

Automatically detecting the presence (or absence) of ref tags

I’m working a lot with template-based pages, most notably semantic forms, and I was wondering if parser functions, magic words or other special functions could be used to simply register the existence or absence of <ref> tags on the page. In this way, it would be possible to make the appearance of <references/> (or Wikipedia’s {{reflist}}) on the bottom of the page conditional on the presence of <ref> tags. For instance, using parser functions in the template one could think of something like:

{{#if: …. |<br>
{{reflist}} }}

where obviously something would need to be used in place of the dots.

I’m sure many others would consider this useful, so hopefully there’s a way to do it. Regards, Cavila MW 1.17, MySQL 5.1.57, Php 5.2.17 11:05, 12 August 2011 (UTC)

Just adding to the previous message that I've already tried it in the following manner:

{{reflist}} }}

but {{reflist}} does not return an empty string, so the trick fails. Time for a feature request? Cavila MW 1.17, MySQL 5.1.57, Php 5.2.17 12:05, 14 August 2011 (UTC)

It appears that there is one solution to the above example, though it is not ideal as it can only be implemented site-wide, i.e. for every instance in which the reference list appears: edit the page MediaWiki:Cite references prefix and include the prefix of your preference (in front of the ol class-tag - do not remove it). Just use normal wiki syntax for subheadings. Thanks people for all the help : ). Cavila MW 1.17, MySQL 5.1.57, Php 5.2.17 12:24, 17 August 2011 (UTC)
Another disadvantage to be aware of: if you set multiple columns in template:reflist, the prefix will become part of the first column rather than a proper header above it. Cavila MW 1.17, MySQL 5.1.57, Php 5.2.17 12:42, 17 August 2011 (UTC)

optional displaying of group name in reference

When using grouped references, the name of the group is displayed in the reference link. So <ref group="group-a">the reference text</ref> will be rendered as [group-a 1].

Sometimes this behavior is not desired. However, in order to make displaying the group name optional, one has to edit the source code of the Cite extension. Here is what to do:

In extensions/Cite/Cite.php add the line

$wgShowCiteGroupNames = true;  

In extensions/Cite/Cite_body.php in the function linkRef change the line

( ( $group == CITE_DEFAULT_GROUP ) ?  : "$group " ) . $wgContLang->formatNum( $label ) )


( ( $group == CITE_DEFAULT_GROUP  || !$wgShowCiteGroupNames ) ?  : "$group " ) . $wgContLang->formatNum( $label ) )

And last but not least in your LocalSettings.php after the line



$wgShowCiteGroupNames = false;

The group names will now not be displayed anymore in the references in the entire wiki. To switch it back to the default behavior just remove the additional line in the LocalSettings.php.

These changes fixed the problem for us (running several wikis from the same code base, so just removing the "$group "-part was not wanted). I just wanted to share this solution, if somebody has similar problems. Additionally these changes could also be added to the code of the extension, since the behavior of the extension only changes, when the additional settings variable is used. What do you thing? Feedback is welcome.

Kind regards, --Frog23 15:51, 28 September 2011 (UTC)

Thanks for sharing that with us. I think it would be worth adding to the documentation. Cavila MW 1.17, MySQL 5.1.57, Php 5.2.17 14:17, 29 September 2011 (UTC)

Finding footnoted articles

Is there a way to find which articles contain footnotes? The cite extension is not working properly and footnotes are not visible unless someone is signed in. Our wiki is archived and users cannot sign-in on archived versions and therefore don't see footnotes. Therefore, I want to identify pages with footnotes with a view to extract the in-line citations as standard text. We're using MW 1.15.1 - Any ideas? --Guy Grannum 14:56, 10 October 2011 (UTC)

A risky yet powerful way to find and maybe also correct the references would be Extension:MassEditRegex. It let's you search the Wiki syntax with regular expressions. If you just use the preview button, you just see the list of pages. But be sure to back up your database before you run this. There might be better solutions for your problem. This is just the first that popped into my head. --Frog23 14:46, 11 October 2011 (UTC)

Format of cite_reference_link — how to?

Hi, I'd like to use the cite reference link format without square brackets[3], but with numbers or letters only3. This alone is easy to handle by removing the square brackets from MediaWiki:cite_reference_link. But now I need to seperate multiple links, otherwise they will be read as one number3812, instead of several items3,8,12. How can I define a seperator (comma, slash etc.) for multiple references? Thank you --Robis 18:27, 6 November 2011 (UTC)

Moved from main page

Shouldn't have this on main page.

Current problems

Problems with cite.php

Cite returns "cite_link_label_group"

The input:


Returns "cite_link_label_group" within the bracketed superscript when I load the page. I've tried with all versions of cite from 1.14 and up to trunk version with the same result. Running MewdiaWiki 1.16 with Swedish locale. Please help. (I've currently abandoned the idea of using this extension since it just doesn't do the job and lacks support. Sorry guys.) Thanks anyway.

Lars Svensson Setpember 12 2010.

Yes, I have had the same problem with SVN version and got back to version Cite-MW1.16-r62678 to get it to work. But you need to re-edit a page to get it updated. See the discussion page for such matters. All the best. Alkarex 09:42, 14 September 2010 (UTC)

My Fix

I had this problem until I checked the version of "Cite" that I was running. I had the wrong version. Try checking your version of MediaWiki and re-download the correct "Cite" version. Now it's A-OK.

Problem with cites and references

I installed MediaWiki 1.15.1 For solving the problem with cites and references I made the following as I was suggested:

  • Download the snapshot that matches your version of MediaWiki and put it in the extensions directory. (done)
  • Add the following line to LocalSettings.php:
  • $IP/extensions/Cite/Cite.php; (done)
  • $IP/includes/DefaultSettings.php; (done)

And don´t work

Any suggestion or help? Thanks in advance Coconuts34 18:15, 11 November 2009 (UTC)

Remove this line. "$IP/includes/DefaultSettings.php;" This is likely already called in your LocalSettings.php. All you need to do is make sure that "$IP/extensions/Cite/Cite.php;" comes after "$IP/includes/DefaultSettings.php;". 16:17, 14 December 2009 (UTC)

-Thanks a lot for your help! Coconuts34

Fatal error: Call to undefined function wfloadextensionmessages

Fatal error: Call to undefined function wfloadextensionmessages() in /home/extensions/Cite/Cite.php on line 32.

This error was received once extension was added. $wgExtensionMessagesFiles works only with version 1.11. Update your version. or download 1.10 branches extensions

Apache error

PHP logs an error in the Apache error log: (MediaWiki 1.6.8, PHP 4.4.4, Apache 1.3.37)

[error] PHP Notice: Use of undefined constant __METHOD__ - assumed '__METHOD__' in extensions/Cite/Cite.php on line 609
[error] PHP Notice: Use of undefined constant __METHOD__ - assumed '__METHOD__' in extensions/Cite/Cite.php on line 612
I was able to fix this by placing single quotes around __METHOD__ on both lines (609 & 612)
This is because the __METHOD__ is only available since PHP 5, using '__METHOD__' is not a correct fix. --Løde

Version 1.6.8

It doesn't work with version 1.6.8! I eventually got cite.php working with "13660" but not "13826" versions. My error messages appeared at the top of the page:

Cannot modify header information - headers already sent by (output started at /****/wiki/extensions/Cite.i18n.php:399) in /****/OutputPage.php on line 575
Cannot modify header information - headers already sent by (output started at /****/wiki/extensions/Cite.i18n.php:399) in /****/wiki/includes/OutputPage.php on line 576

[This error can occur if there is an extra (not visible) character in the php file. It seems to happen a lot of with desktop editors, at least on Windows. Try editing the file using your shell account (pico or vi) and remove any leading or trailing characters.]

Misrendered anchor link character

??? appears in rendered pages instead of ↑ — it might be possible to fix this by replacing the up arrow character with &#8593; (the corresponding HTML entity; rendered ↑). Alternatively, the caret (^) can probably be used as a substitute.


  • Using <ref> in templates breaks numbering:Issue with MediaWiki regarding in what order things are parsed
  • Using <ref> within a template will create correctly numbered reference mark but it will be missing from the output of a <references/> on the calling page (example) unless the references tag is transcluded too!
  • It's impossible to pass template arguments to <ref>, e.g. <ref name={{{1}}}>, with older versions of MediaWiki, see bug 4529. As of 1.12+, it is possible to do template arguments with the #tag: magic word inside of the template:
{{#tag:ref|Template {{{1|substitution}}} works!|name={{{2|default}}}}}
  • Template substitution misrenders inside <ref> tag.

HTML parameters

  • The citation links generated by <ref> and the backlinks generated by <references> have an empty title attribute (<a href="..." title="">...)
    Issue with MediaWiki, not this extension. MediaWiki will generate output like <a href="#foo" title="">bar</a> when given input like [[#foo|bar]]
  • Missing name= anchors for backwards compatibility (5567)
    • The generated <a href="#_note-n"> links should have a name="_ref-n".
    • The generated <a href="#_ref-n"> links should have a name="_note-n".
      This currently seems to be working.

HTML commenting-out doesn't work

Commenting out <ref> with HTML comments <!--…--> hides the citation but the reference still appears on the list

This would appear to be a parser error…
Seems to be fixed with the new parser. — 14:16, 2 February 2008 (UTC)


cite.php cannot be nested properly in ParserFunctions. For example, "{{#ifeq:1|2|<ref>true</ref>|<ref>false</ref>}}" will return both "true" and "false" as references regardless of the result of the ParserFunction. However, ParserFunctions work perfectly inside <ref> tags.

How about you try "<ref>{{#ifeq:1|2|true|false}}</ref>"? MC10 02:52, 21 April 2010 (UTC)
Yes, but you will have to use {{#tag:ref| {{#ifeq:1|2|true|false}} }} -- 21:03, 20 February 2011 (UTC)

Blank Special:Version

It seems that the following code causes v1.9.2's Special:version page to go blank:
'author' => 'Ævar Arnfjörð Bjarmason',
Changing it to this fixes it (apologies if it's 'translated' wrong):
'author' => 'AEvar Arnfjord Bjarmason',


Contents of non-first named <ref> are not rendered, even if all prior tags with same name are empty.

Missing preview

There is no preview for inline citations. This is especially annoying when editing only a section of a page. (Bug 5984)

Users without edit privileges can't see references if sysops can

The following combination of $wgGroupPermissions makes references invisible to users who aren't logged in (Bug 11224). This bug started sometime after Mediawiki 1.9.3. and persists to 1.13.2

$wgGroupPermissions['*']['edit'] = false;
$wgGroupPermissions['sysop']['edit'] = true;


A current work-around is to set

$wgGroupPermissions['*']['edit'] = false;

and not grant any editing rights to sysops. Users who are sysops would then need to be part of another group with editing privileges.

Partial fix available

This bug was partially fixed in revision 36333. Reinstall Cite.php and the references would become visible (thus the above workaround is not necessary). However, some bogus behaviour persists: all reference hyperlinks are linked to the first footnote below (instead of their corresponding numbers), all backwards hyperlinks from footnotes jump to the first reference in the text (instead of their corresponding numbers), and references in transcluded pages are not properly handled.

See the discussion page for further ideas on the problem.

Grouping references

If I do Blah<ref>foo</ref><ref>bar</ref><ref>baz</ref><ref>qux</ref> Walla., I get:

Blah[1][2][3][4] Walla.

instead of

Blah[1][4] Walla.

Reuse of a name ref, with a different page number

Hi Cite.php folks. I want to accomplish a better job of getting good citations in Wikipedia, but don't know much about the code (including cite.php) that makes it work.

Is there any way to reuse a named reference in an article—e.g., <ref name=Jones2003/>, including all the citation metadata that is part of that source—only add a new/different page number so that the citation can be easily reused without repeating all of the source metadata just to get a new page number in the cite?

In short, has anyone written the code and defined the syntax that would allow me to do something like <ref name=Jones2003/ |page=252> even though the original page reference the first time Jones2004 was used was, say, "|page=145"?

Thanks. N2e 16:00, 13 December 2011 (UTC)

See for example en:Ernest Augustus I of Hanover - it uses citation templates and two sections - References and Bibliography. See also the {{rp}} template for another method. --V111P 10:27, 24 December 2011 (UTC)
Thanks very much V111P! The {{rp}} template looks like a very useful tool for accomplishing what I would like to achieve. I will try to make an initial use of it in the next few weeks and see how it goes. N2e 16:18, 3 January 2012 (UTC)

Changing the a, b, c in multiple usage of single ref

Extension:Cite/Cite.php#Set_references_to_use_.5E_and_letters_like_Wikipedia provides instructions for changing the default mediawiki ref look to that of wikipedia. However, it doesn't tell how to change the a,b,c to one's local language. Is it set via MediaWiki:Cite references link many format backlink labels? --Siddhartha Ghai 06:06, 8 January 2012 (UTC)


I recently performed a first time installation of MediaWiki. My boss wanted footnote capabilities so I installed Cite.

After much frustration, I finally realized that Cite required a dependency called "ParserFunctions." This was not obvious from the installation instructions. Even though there was a "ParserFunctions" directory in my installation's "extentions" directory it was not otherwise enabled out of the box.

It would have been nice to know and I feel this should be mentioned in the installation notes.

Special categories

Is it possible to implement the functionality for adding pages with errors ("Cite error: <ref> tag with name "refname" defined in <references> is not used in prior text.") to some special category (f.e. "Category:Articles with Cite errors")? --Hayk (talk) 19:08, 2 April 2012 (UTC)