Having delved into Cite_body.php, I've come accross this (Cite_body.php:569)
# The following assumes that the parsed <ref>s sent within
# the <references> block were the most recent calls to
# <ref>. This assumption is true for all known use cases,
# but not strictly enforced by the parser. It is possible
# that some unusual combination of #tag, <references> and
# conditional parser functions could be created that would
# lead to malformed references here.
If I comment out line 582:
$this->rollbackRef( $type, $ref_key, $ref_group, $ref_index );
Then my references reappear, albeit with no counts (and therefore the
links from article to references and visa versa don't work)
So, it would appear that the parser is parsing the <ref> calls within
the <references> block before it parses the <ref>'s in the templates
above.
Leaving that line uncommented, I've tried reformatting templates in
various ways to attempt to stumble accross something which the parser
can parse in the order indended, but I haven't found any combination of
template changes which helps.
I'll continue to dig in Cite and try and come up with a bugfix, but as
unfamiliar with the internals of Cite as I am, if anyone has any tips
they would be greatly appreciated.
Thanks
Andru
On 2013-03-19 09:50:27 +0000, Andru Vallance said:
I'm a dev for
PracticalPlants.org, a semantic wiki
of plant use
information. We've had long running mysterious problems with Cite which
have been difficult to pin down, but since upgrading to MW 1.20.3 and
Cite 1.20, the problem has become much worse.
All our references on plant articles are at least 2 templates deep -
the first template is a template used with semantic forms, the second
is the Ref template we use.
The result is that Cite outputs the following Cite error for every reference:
Cite error: <ref> tag with name "PFAFimport-1" defined in
<references>
is not used in prior text.
The ref tag name is most certainly used in the prior text in all cases.
The <references> tag is placed after all <ref> (actually {{#tag:ref}})
calls.
If I place a <ref name="PFAFimport-1"/> or use our ref template {{Ref |
PFAFimport-1}} directly in the wikitext after the semantic forms
template then Cite lists it, so it seems like it's something to do with
it being in a second level template. Again, the ref tag with that name
is certainly being output, and indeed it's rendered inline as a
reference, it just fails to list it in the <references> section.
Has anyone experienced anything similar? Anyone have any ideas?
_______________________________________________
MediaWiki-l mailing list
MediaWiki-l(a)lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-l