Marcoil has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/170936

Change subject: Use CSS to style Cite references
......................................................................

Use CSS to style Cite references

Remove directly outputting reference numbers and text for <ref>s and
<references>, use CSS instead to add those so that it can be configured
per-wiki.

Change tests results to reflect new HTML output.

Right now it provides pixel-perfect renditions of refs in enwiki and
eswiki, and initial support for fawiki (which can't be tested with current
phantomjs). The CSS is served directly in <style> elements in <head>,
in the end it will be served from core and styled per-wiki in global.css
or something similar.

Also changes to Cite.php will be necessary to change it to use this same
CSS instead of system messages.

Related to bugs #49538, #43235 and #71803.

Change-Id: I21fbbd3247bf7801e5ef9bd5312f95777f4dd6ef
---
M lib/ext.Cite.js
M lib/mediawiki.DOMPostProcessor.js
M tests/parserTests.txt
3 files changed, 141 insertions(+), 82 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/services/parsoid 
refs/changes/36/170936/1

diff --git a/lib/ext.Cite.js b/lib/ext.Cite.js
index bd54427..8318869 100644
--- a/lib/ext.Cite.js
+++ b/lib/ext.Cite.js
@@ -198,8 +198,7 @@
 
 RefGroup.prototype.renderLine = function(refsList, ref) {
        var ownerDoc = refsList.ownerDocument,
-               arrow = ownerDoc.createTextNode('↑'),
-               li, a;
+               li, a, reftext_span;
 
        // Generate the li and set ref content first, so the HTML gets parsed.
        // We then append the rest of the ref nodes before the first node
@@ -208,39 +207,41 @@
                'about': "#" + ref.target,
                'id': ref.target
        });
-       li.innerHTML = ref.content;
+       reftext_span = ownerDoc.createElement('span');
+       reftext_span.setAttribute('class', 'reference-text');
+       reftext_span.innerHTML = ref.content;
+       li.appendChild(reftext_span);
 
        var contentNode = li.firstChild;
-
-       // 'mw:referencedBy' span wrapper
-       var span = ownerDoc.createElement('span');
-       span.setAttribute('rel', 'mw:referencedBy');
-       li.insertBefore(span, contentNode);
 
        // Generate leading linkbacks
        if (ref.linkbacks.length === 1) {
                a = ownerDoc.createElement('a');
                DU.addAttributes(a, {
-                       'href': '#' + ref.linkbacks[0]
+                       'href': '#' + ref.linkbacks[0],
+                       'rel': 'mw:referencedBy'
                });
-               a.appendChild(arrow);
-               span.appendChild(a);
+               if (ref.group) {
+                       a.setAttribute('data-mw-group', ref.group);
+               }
+               li.insertBefore(a, contentNode);
        } else {
-               span.appendChild(arrow);
+               // 'mw:referencedBy' span wrapper
+               var span = ownerDoc.createElement('span');
+               span.setAttribute('rel', 'mw:referencedBy');
+               li.insertBefore(span, contentNode);
+
                ref.linkbacks.forEach(function(linkback, i) {
                        a = ownerDoc.createElement('a');
                        DU.addAttributes(a, {
                                'href': '#' + ref.linkbacks[i]
                        });
-                       a.appendChild(ownerDoc.createTextNode(ref.groupIndex + 
'.' + i));
-                       // Separate linkbacks with a space
-                       span.appendChild(ownerDoc.createTextNode(' '));
+                       if (ref.group) {
+                               a.setAttribute('data-mw-group', ref.group);
+                       }
                        span.appendChild(a);
                });
        }
-
-       // Space before content node
-       li.insertBefore(ownerDoc.createTextNode(' '), contentNode);
 
        // Add it to the ref list
        refsList.appendChild(li);
@@ -400,10 +401,13 @@
 
        // refIndex-a
        var refIndex = doc.createElement('a');
-       refIndex.setAttribute('href', '#' + ref.target);
-       refIndex.appendChild(doc.createTextNode(
-               '[' + ((group === '') ? '' : group + ' ') + ref.groupIndex + ']'
-       ));
+       DU.addAttributes(refIndex, {
+               'href': '#' + ref.target,
+               'style': 'counter-reset: mw-Ref ' + ref.groupIndex + ";"
+       });
+       if (ref.group) {
+               refIndex.setAttribute('data-mw-group', ref.group);
+       }
        span.appendChild(refIndex);
 
        if (!nestedInReferences) {
diff --git a/lib/mediawiki.DOMPostProcessor.js 
b/lib/mediawiki.DOMPostProcessor.js
index c161b02..809ba88 100644
--- a/lib/mediawiki.DOMPostProcessor.js
+++ b/lib/mediawiki.DOMPostProcessor.js
@@ -359,6 +359,54 @@
                appendToHead( document, 'link', { rel: 'stylesheet', href: 
styleURI } );
        }
 
+       // TEMP: Send the Cite CSS styles from here temporarily until they are
+       // incorporated into Parsoid CSS
+       var commonCiteStyle = document.createElement('style'),
+               commonCiteStyleContent = document.createTextNode(
+                       '[rel="mw:referencedBy"]{counter-reset:mw-linkback 0}' +
+                       '[rel="mw:referencedBy"]::before{content:"^ 
";font-weight:700}' +
+                       'span[rel="mw:referencedBy"]::before{font-weight:400}' +
+                       'span[rel="mw:referencedBy"] 
a::before{counter-increment:mw-linkback;' +
+                               
'content:counter(mw-linkback,lower-alpha);vertical-align:super;' +
+                               
'font-weight:700;font-style:italic;padding-right:.4em}' +
+                       'span.reference{font-size:80%}' +
+                       'span.reference a[data-mw-group]::after{' +
+                               'content:"[" attr(data-mw-group) " " 
counter(mw-Ref,decimal) "]"}' +
+                       'span.reference a::after{content:"[" 
counter(mw-Ref,decimal) "]"}');
+       commonCiteStyle.setAttribute('type', 'text/css');
+       commonCiteStyle.appendChild(commonCiteStyleContent);
+       document.head.appendChild(commonCiteStyle);
+
+       // Append the Cite CSS for languages we currently support
+       var langCiteStyleContent;
+       if (env.conf.wiki.iwp === 'enwiki') {
+               langCiteStyleContent = document.createTextNode(
+                       '[rel="mw:referencedBy"]::before{content:"^ "}' +
+                       'span[rel="mw:referencedBy"] 
a::before{line-height:1;font-size:80%}');
+       } else if (env.conf.wiki.iwp === 'eswiki') {
+               langCiteStyleContent = document.createTextNode(
+                       '[rel="mw:referencedBy"]::before{content:"↑ "}' +
+                       'span[rel="mw:referencedBy"] 
a::before{line-height:1em;font-size:smaller}');
+       } else if (env.conf.wiki.iwp === 'fawiki') {
+               langCiteStyleContent = document.createTextNode(
+                       'ol.references{counter-reset:mw-linkback}' +
+                       'ol.references li{counter-increment:mw-linkback}' +
+                       '[rel="mw:referencedBy"]{counter-reset:mw-linkback -1}' 
+
+                       '[rel="mw:referencedBy"]::before{content:"↑ 
";font-weight:400}' +
+                       'span[rel="mw:referencedBy"] 
a::before{line-height:1;font-size:80%;' +
+                               
'counter-increment:mw-linkback;content:counters(mw-linkback,"٫",persian)}' +
+                       'span[rel="mw:referencedBy"] a{display:inline-block}' +
+                       'span.reference a[data-mw-group]::after{' +
+                               'content:"[" attr(data-mw-group) " " 
counter(mw-Ref,persian) "]"}' +
+                       'span.reference a::after{content:"[" 
counter(mw-Ref,persian) "]"}');
+       }
+       if (langCiteStyleContent) {
+               var langCiteStyle = document.createElement('style');
+               langCiteStyle.setAttribute('type', 'text/css');
+               langCiteStyle.appendChild(langCiteStyleContent);
+               document.head.appendChild(langCiteStyle);
+       }
+
        // stick data-parsoid in the head
        if ( psd.storeDataParsoid ) {
                var dp = JSON.stringify( DU.getDataParsoid( document ) );
diff --git a/tests/parserTests.txt b/tests/parserTests.txt
index 628d3cb..682a584 100644
--- a/tests/parserTests.txt
+++ b/tests/parserTests.txt
@@ -19187,9 +19187,9 @@
 B <ref name="x">foo</ref>
 C <ref name="y" />
 !! html
-<p>A <span about="#mwt2" class="reference" id="cite_ref-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"foo"},"attrs":{}}'><a 
href="#cite_note-1">[1]</a></span>
-B <span about="#mwt4" class="reference" id="cite_ref-x-2-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"foo"},"attrs":{"name":"x"}}'><a 
href="#cite_note-x-2">[2]</a></span>
-C <span about="#mwt6" class="reference" id="cite_ref-y-3-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","attrs":{"name":"y"}}'><a 
href="#cite_note-y-3">[3]</a></span></p>
+<p>A <span about="#mwt2" class="reference" id="cite_ref-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"foo"},"attrs":{}}'><a 
href="#cite_note-1"></a></span>
+B <span about="#mwt4" class="reference" id="cite_ref-x-2-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"foo"},"attrs":{"name":"x"}}'><a 
href="#cite_note-x-2"></a></span>
+C <span about="#mwt6" class="reference" id="cite_ref-y-3-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","attrs":{"name":"y"}}'><a 
href="#cite_note-y-3"></a></span></p>
 !!end
 
 !!test
@@ -19200,8 +19200,8 @@
 A <ref name="x">foo</ref>
 B <ref name="x" />
 !! html
-<p>A <span about="#mwt2" class="reference" id="cite_ref-x-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"foo"},"attrs":{"name":"x"}}'><a 
href="#cite_note-x-1">[1]</a></span>
-B <span about="#mwt4" class="reference" id="cite_ref-x-1-1" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","attrs":{"name":"x"}}'><a 
href="#cite_note-x-1">[1]</a></span></p>
+<p>A <span about="#mwt2" class="reference" id="cite_ref-x-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"foo"},"attrs":{"name":"x"}}'><a 
href="#cite_note-x-1"></a></span>
+B <span about="#mwt4" class="reference" id="cite_ref-x-1-1" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","attrs":{"name":"x"}}'><a 
href="#cite_note-x-1"></a></span></p>
 !!end
 
 !!test
@@ -19213,9 +19213,9 @@
 B <ref name=" x " />
 C <ref name= x  />
 !! html
-<p>A <span about="#mwt2" class="reference" id="cite_ref-x-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"foo"},"attrs":{"name":"x"}}'><a 
href="#cite_note-x-1">[1]</a></span>
-B <span about="#mwt4" class="reference" id="cite_ref-x-1-1" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","attrs":{"name":"x"}}'><a 
href="#cite_note-x-1">[1]</a></span>
-C <span about="#mwt6" class="reference" id="cite_ref-x-1-2" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","attrs":{"name":"x"}}'><a 
href="#cite_note-x-1">[1]</a></span></p>
+<p>A <span about="#mwt2" class="reference" id="cite_ref-x-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"foo"},"attrs":{"name":"x"}}'><a 
href="#cite_note-x-1"></a></span>
+B <span about="#mwt4" class="reference" id="cite_ref-x-1-1" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","attrs":{"name":"x"}}'><a 
href="#cite_note-x-1"></a></span>
+C <span about="#mwt6" class="reference" id="cite_ref-x-1-2" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","attrs":{"name":"x"}}'><a 
href="#cite_note-x-1"></a></span></p>
 !!end
 
 # NOTE: constructor is a predefined property in JS and constructor as a 
ref-name can clash with it if not handled properly)
@@ -19226,7 +19226,7 @@
 !! wikitext
 A <ref name="constructor">foo</ref>
 !! html
-<p>A <span about="#mwt2" class="reference" id="cite_ref-constructor-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"foo"},"attrs":{"name":"constructor"}}'><a
 href="#cite_note-constructor-1">[1]</a></span></p>
+<p>A <span about="#mwt2" class="reference" id="cite_ref-constructor-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"foo"},"attrs":{"name":"constructor"}}'><a
 href="#cite_note-constructor-1"></a></span></p>
 !!end
 
 !!test
@@ -19240,10 +19240,11 @@
 
 <references />
 !! html
-<p>A <span about="#mwt2" class="reference" id="cite_ref-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"This is a &lt;b 
data-parsoid=&#39;{\"dsr\":[19,40,3,3]}&#39;>&lt;a rel=\"mw:WikiLink\" 
href=\"./Bolded_link\" title=\"Bolded link\" 
data-parsoid=&#39;{\"stx\":\"simple\",\"a\":{\"href\":\"./Bolded_link\"},\"sa\":{\"href\":\"bolded
 link\"},\"dsr\":[22,37,2,2]}&#39;>bolded link&lt;/a>&lt;/b> and this is a 
&lt;span about=\"#mwt3\" typeof=\"mw:Transclusion\" 
data-parsoid=&#39;{\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]],\"dsr\":[55,76,null,null]}&#39;
 
data-mw=&#39;{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"transclusion\"}},\"i\":0}}]}&#39;>transclusion&lt;/span>\n"},"attrs":{}}'><a
 href="#cite_note-1">[1]</a></span></p>
+<p>A <span about="#mwt2" class="reference" id="cite_ref-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"This is a &lt;b 
data-parsoid=&#39;{\"dsr\":[19,40,3,3]}&#39;>&lt;a rel=\"mw:WikiLink\" 
href=\"./Bolded_link\" title=\"Bolded link\" 
data-parsoid=&#39;{\"stx\":\"simple\",\"a\":{\"href\":\"./Bolded_link\"},\"sa\":{\"href\":\"bolded
 link\"},\"dsr\":[22,37,2,2]}&#39;>bolded link&lt;/a>&lt;/b> and this is a 
&lt;span about=\"#mwt3\" typeof=\"mw:Transclusion\" 
data-parsoid=&#39;{\"pi\":[[{\"k\":\"1\",\"spc\":[\"\",\"\",\"\",\"\"]}]],\"dsr\":[55,76,null,null]}&#39;
 
data-mw=&#39;{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"transclusion\"}},\"i\":0}}]}&#39;>transclusion&lt;/span>\n"},"attrs":{}}'><a
 href="#cite_note-1"></a></span></p>
 
 <ol class="references" typeof="mw:Extension/references" about="#mwt5" 
data-mw='{"name":"references","attrs":{}}'>
-<li about="#cite_note-1" id="cite_note-1"><span rel="mw:referencedBy"><a 
href="#cite_ref-1-0">↑</a></span> This is a <b><a rel="mw:WikiLink" 
href="./Bolded_link" title="Bolded link">bolded link</a></b> and this is a 
<span about="#mwt3" typeof="mw:Transclusion" 
data-mw='{"parts":[{"template":{"target":{"wt":"echo","href":"./Template:Echo"},"params":{"1":{"wt":"transclusion"}},"i":0}}]}'>transclusion</span>
+<li about="#cite_note-1" id="cite_note-1"><a href="#cite_ref-1-0" 
rel="mw:referencedBy"></a><span class="reference-text">This is a <b><a 
rel="mw:WikiLink" href="./Bolded_link" title="Bolded link">bolded link</a></b> 
and this is a <span about="#mwt3" typeof="mw:Transclusion" 
data-mw='{"parts":[{"template":{"target":{"wt":"echo","href":"./Template:Echo"},"params":{"1":{"wt":"transclusion"}},"i":0}}]}'>transclusion</span>
+</span>
 </li>
 </ol>
 !!end
@@ -19261,12 +19262,13 @@
 
 <references />
 !! html
-<p>A <span about="#mwt2" class="reference" id="cite_ref-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"foo\n bar\n baz\n"},"attrs":{}}'><a 
href="#cite_note-1">[1]</a></span></p>
+<p>A <span about="#mwt2" class="reference" id="cite_ref-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"foo\n bar\n baz\n"},"attrs":{}}'><a 
href="#cite_note-1"></a></span></p>
 
 <ol class="references" typeof="mw:Extension/references" about="#mwt4" 
data-mw='{"name":"references","attrs":{}}'>
-<li about="#cite_note-1" id="cite_note-1"><span rel="mw:referencedBy"><a 
href="#cite_ref-1-0">↑</a></span> foo
+<li about="#cite_note-1" id="cite_note-1"><a href="#cite_ref-1-0" 
rel="mw:referencedBy"></a><span class="reference-text">foo
  bar
  baz
+</span>
 </li>
 </ol>
 !!end
@@ -19291,10 +19293,10 @@
 
 <references />
 !! html
-<p>A <span about="#mwt2" class="reference" id="cite_ref-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"foo\n\nbar\n\n\nbaz\n\n\n\nbooz\n"},"attrs":{}}'><a
 href="#cite_note-1">[1]</a></span></p>
+<p>A <span about="#mwt2" class="reference" id="cite_ref-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"foo\n\nbar\n\n\nbaz\n\n\n\nbooz\n"},"attrs":{}}'><a
 href="#cite_note-1"></a></span></p>
 
 <ol class="references" typeof="mw:Extension/references" about="#mwt4" 
data-mw='{"name":"references","attrs":{}}'>
-<li about="#cite_note-1" id="cite_note-1"><span rel="mw:referencedBy"><a 
href="#cite_ref-1-0">↑</a></span> foo
+<li about="#cite_note-1" id="cite_note-1"><a href="#cite_ref-1-0" 
rel="mw:referencedBy"></a><span class="reference-text">foo
 
 bar
 
@@ -19317,9 +19319,9 @@
 
 <references />
 !! html
-<p>A <span about="#mwt2" class="reference" id="cite_ref-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"foo &lt;span typeof=\"mw:Nowiki\" 
data-parsoid=&#39;{\"src\":\"{{\",\"dsr\":[12,14,0,0]}&#39;>{{&lt;/span>echo|"},"attrs":{}}'><a
 href="#cite_note-1">[1]</a></span> B C<span typeof="mw:Nowiki">}}</span></p>
+<p>A <span about="#mwt2" class="reference" id="cite_ref-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"foo &lt;span typeof=\"mw:Nowiki\" 
data-parsoid=&#39;{\"src\":\"{{\",\"dsr\":[12,14,0,0]}&#39;>{{&lt;/span>echo|"},"attrs":{}}'><a
 href="#cite_note-1"></a></span> B C<span typeof="mw:Nowiki">}}</span></p>
 <ol class="references" typeof="mw:Extension/references" about="#mwt4" 
data-mw='{"name":"references","attrs":{}}'>
-<li about="#cite_note-1" id="cite_note-1"><span rel="mw:referencedBy"><a 
href="#cite_ref-1-0">↑</a></span> foo <span 
typeof="mw:Nowiki">{{</span>echo|</li>
+<li about="#cite_note-1" id="cite_note-1"><a href="#cite_ref-1-0" 
rel="mw:referencedBy"></a><span class="reference-text">foo <span 
typeof="mw:Nowiki">{{</span>echo|</span></li>
 </ol>
 !!end
 
@@ -19331,9 +19333,9 @@
 A <ref> foo <!--</ref> B C
 <references />
 !! html
-<p>A <span about="#mwt2" class="reference" id="cite_ref-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"foo &lt;!---->"},"attrs":{}}'><a 
href="#cite_note-1">[1]</a></span> B C</p>
+<p>A <span about="#mwt2" class="reference" id="cite_ref-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"foo &lt;!---->"},"attrs":{}}'><a 
href="#cite_note-1"></a></span> B C</p>
 <ol class="references" typeof="mw:Extension/references" about="#mwt4" 
data-mw='{"name":"references","attrs":{}}'>
-<li about="#cite_note-1" id="cite_note-1"><span rel="mw:referencedBy"><a 
href="#cite_ref-1-0">↑</a></span> foo <!----></li>
+<li about="#cite_note-1" id="cite_note-1"><a href="#cite_ref-1-0" 
rel="mw:referencedBy"></a><span class="reference-text">foo <!----></span></li>
 </ol>
 !!end
 
@@ -19346,11 +19348,11 @@
 
 <references />
 !! html
-<p>A <span about="#mwt2" class="reference" id="cite_ref-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"&lt;b 
data-parsoid=&#39;{\"stx\":\"html\",\"autoInsertedEnd\":true,\"dsr\":[8,16,3,0]}&#39;>
 foo &lt;/b>"},"attrs":{}}'><a href="#cite_note-1">[1]</a></span> B C</p>
+<p>A <span about="#mwt2" class="reference" id="cite_ref-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"&lt;b 
data-parsoid=&#39;{\"stx\":\"html\",\"autoInsertedEnd\":true,\"dsr\":[8,16,3,0]}&#39;>
 foo &lt;/b>"},"attrs":{}}'><a href="#cite_note-1"></a></span> B C</p>
 
 
 <ol class="references" typeof="mw:Extension/references" about="#mwt4" 
data-mw='{"name":"references","attrs":{}}'>
-<li about="#cite_note-1" id="cite_note-1"><span rel="mw:referencedBy"><a 
href="#cite_ref-1-0">↑</a></span> <b 
data-parsoid='{"stx":"html","autoInsertedEnd":true}'> foo </b></li>
+<li about="#cite_note-1" id="cite_note-1"><a href="#cite_ref-1-0" 
rel="mw:referencedBy"></a><span class="reference-text"><b 
data-parsoid='{"stx":"html","autoInsertedEnd":true}'> foo </b></span></li>
 </ol>
 !!end
 
@@ -19362,8 +19364,8 @@
 A <ref>foo</ref> B
 C <ref>bar</ref> D
 !! html
-<p>A <span about="#mwt2" class="reference" id="cite_ref-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"foo"},"attrs":{}}'><a 
href="#cite_note-1">[1]</a></span> B
-C <span about="#mwt4" class="reference" id="cite_ref-2-0" rel="dc:references" 
typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"bar"},"attrs":{}}'><a 
href="#cite_note-2">[2]</a></span> D</p>
+<p>A <span about="#mwt2" class="reference" id="cite_ref-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"foo"},"attrs":{}}'><a 
href="#cite_note-1"></a></span> B
+C <span about="#mwt4" class="reference" id="cite_ref-2-0" rel="dc:references" 
typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"bar"},"attrs":{}}'><a 
href="#cite_note-2"></a></span> D</p>
 !!end
 
 !!test
@@ -19381,8 +19383,8 @@
 <p><!--the newline at the end of this line moves out of the p-tag-->a</p>
 
 
-<p>b<!--the newline at the end of this line stays inside the p-tag--> <span 
about="#mwt2" class="reference" id="cite_ref-1-0" rel="dc:references" 
typeof="mw:Extension/ref" data-mw='{"name":"ref","attrs":{}}'><a 
href="#cite_note-1">[1]</a></span>
-<span about="#mwt4" class="reference" id="cite_ref-2-0" rel="dc:references" 
typeof="mw:Extension/ref" data-mw='{"name":"ref","attrs":{}}'><a 
href="#cite_note-2">[2]</a></span></p>
+<p>b<!--the newline at the end of this line stays inside the p-tag--> <span 
about="#mwt2" class="reference" id="cite_ref-1-0" rel="dc:references" 
typeof="mw:Extension/ref" data-mw='{"name":"ref","attrs":{}}'><a 
href="#cite_note-1"></a></span>
+<span about="#mwt4" class="reference" id="cite_ref-2-0" rel="dc:references" 
typeof="mw:Extension/ref" data-mw='{"name":"ref","attrs":{}}'><a 
href="#cite_note-2"></a></span></p>
 
 <p>c</p>
 !!end
@@ -19396,8 +19398,8 @@
 <ref>bar
 </ref> B
 !! html
-<p><span about="#mwt2" class="reference" id="cite_ref-1-0" rel="dc:references" 
typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"foo"},"attrs":{}}'><a 
href="#cite_note-1">[1]</a></span> A
-<span about="#mwt4" class="reference" id="cite_ref-2-0" rel="dc:references" 
typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"bar\n"},"attrs":{}}'><a 
href="#cite_note-2">[2]</a></span> B</p>
+<p><span about="#mwt2" class="reference" id="cite_ref-1-0" rel="dc:references" 
typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"foo"},"attrs":{}}'><a 
href="#cite_note-1"></a></span> A
+<span about="#mwt4" class="reference" id="cite_ref-2-0" rel="dc:references" 
typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"bar\n"},"attrs":{}}'><a 
href="#cite_note-2"></a></span> B</p>
 !!end
 
 !!test
@@ -19409,10 +19411,10 @@
 
 <references />
 !! html
-<p><span about="#mwt2" class="reference" id="cite_ref-1-0" rel="dc:references" 
typeof="mw:Extension/ref" data-mw='{"name":"ref","body":{"html":"foo 
&amp;lt;ref>bar&amp;lt;/ref> baz"},"attrs":{}}'><a 
href="#cite_note-1">[1]</a></span></p>
+<p><span about="#mwt2" class="reference" id="cite_ref-1-0" rel="dc:references" 
typeof="mw:Extension/ref" data-mw='{"name":"ref","body":{"html":"foo 
&amp;lt;ref>bar&amp;lt;/ref> baz"},"attrs":{}}'><a 
href="#cite_note-1"></a></span></p>
 
 <ol class="references" typeof="mw:Extension/references" about="#mwt5" 
data-mw='{"name":"references","attrs":{}}'>
-<li about="#cite_note-1" id="cite_note-1"><span rel="mw:referencedBy"><a 
href="#cite_ref-1-0">↑</a></span> foo &lt;ref>bar&lt;/ref> baz</li>
+<li about="#cite_note-1" id="cite_note-1"><a href="#cite_ref-1-0" 
rel="mw:referencedBy"></a><span class="reference-text">foo &lt;ref>bar&lt;/ref> 
baz</span></li>
 </ol>
 !!end
 
@@ -19426,10 +19428,11 @@
 
 <references />
 !! html
-<p>A1 <span about="#mwt3" class="reference" id="cite_ref-a-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"foo"},"attrs":{"name":"a"}}'><a 
href="#cite_note-a-1">[1]</a></span> A2 <span about="#mwt4" class="reference" 
id="cite_ref-a-1-1" rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","attrs":{"name":"a"}}'><a 
href="#cite_note-a-1">[1]</a></span>
-B1 <span about="#mwt7" class="reference" id="cite_ref-b-2-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","attrs":{"name":"b"}}'><a 
href="#cite_note-b-2">[2]</a></span> B2 <span about="#mwt8" class="reference" 
id="cite_ref-b-2-1" rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"bar"},"attrs":{"name":"b"}}'><a 
href="#cite_note-b-2">[2]</a></span></p>
+<p>A1 <span about="#mwt3" class="reference" id="cite_ref-a-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"foo"},"attrs":{"name":"a"}}'><a 
href="#cite_note-a-1"></a></span> A2 <span about="#mwt4" class="reference" 
id="cite_ref-a-1-1" rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","attrs":{"name":"a"}}'><a 
href="#cite_note-a-1"></a></span>
+B1 <span about="#mwt7" class="reference" id="cite_ref-b-2-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","attrs":{"name":"b"}}'><a 
href="#cite_note-b-2"></a></span> B2 <span about="#mwt8" class="reference" 
id="cite_ref-b-2-1" rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"bar"},"attrs":{"name":"b"}}'><a 
href="#cite_note-b-2"></a></span></p>
 
-<ol class="references" typeof="mw:Extension/references" about="#mwt10" 
data-mw='{"name":"references","attrs":{}}'><li about="#cite_note-a-1" 
id="cite_note-a-1"><span rel="mw:referencedBy">↑ <a 
href="#cite_ref-a-1-0">1.0</a> <a href="#cite_ref-a-1-1">1.1</a></span> 
foo</li><li about="#cite_note-b-2" id="cite_note-b-2"><span 
rel="mw:referencedBy">↑ <a href="#cite_ref-b-2-0">2.0</a> <a 
href="#cite_ref-b-2-1">2.1</a></span> bar</li>
+<ol class="references" typeof="mw:Extension/references" about="#mwt10" 
data-mw='{"name":"references","attrs":{}}'><li about="#cite_note-a-1" 
id="cite_note-a-1"><span rel="mw:referencedBy"><a href="#cite_ref-a-1-0"></a><a 
href="#cite_ref-a-1-1"></a></span><span class="reference-text">foo</span></li>
+<li about="#cite_note-b-2" id="cite_note-b-2"><span rel="mw:referencedBy"><a 
href="#cite_ref-b-2-0"></a><a href="#cite_ref-b-2-1"></a></span><span 
class="reference-text">bar</span></li>
 </ol>
 !!end
 
@@ -19443,10 +19446,11 @@
 
 <references />
 !! html
-<p>A <span about="#mwt2" class="reference" id="cite_ref-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"foo"},"attrs":{}}'><a 
href="#cite_note-1">[1]</a></span></p>
+<p>A <span about="#mwt2" class="reference" id="cite_ref-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"foo"},"attrs":{}}'><a 
href="#cite_note-1"></a></span></p>
 
 <ol class="references" typeof="mw:Extension/references" about="#mwt4" 
data-mw='{"name":"references","attrs":{}}'>
-<li about="#cite_note-1" id="cite_note-1"><span rel="mw:referencedBy"><a 
href="#cite_ref-1-0">↑</a></span> foo</li></ol>
+<li about="#cite_note-1" id="cite_note-1"><a href="#cite_ref-1-0" 
rel="mw:referencedBy"></a><span class="reference-text">foo</span>
+</li></ol>
 !!end
 
 !!test
@@ -19458,11 +19462,11 @@
 
 <references />
 !!html
-<p><span class="reference" id="cite_ref-a_b-1-0" rel="dc:references" 
typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"foo"},"attrs":{"name":"a b"}}'><a 
href="#cite_note-a_b-1">[1]</a></span>
+<p><span class="reference" id="cite_ref-a_b-1-0" rel="dc:references" 
typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"foo"},"attrs":{"name":"a b"}}'><a 
href="#cite_note-a_b-1"></a></span>
 </p>
 
 <ol class="references" typeof="mw:Extension/references" 
data-mw='{"name":"references","attrs":{}}'>
-<li id="cite_note-a_b-1"><span rel="mw:referencedBy"><a 
href="#cite_ref-a_b-1-0">↑</a></span> foo</li>
+<li id="cite_note-a_b-1"><a href="#cite_ref-a_b-1-0" 
rel="mw:referencedBy"></a><span class="reference-text">foo</span></li>
 !!end
 
 !!test
@@ -19485,10 +19489,10 @@
 
 <references group="a" />
 !! html
-<p>A <span about="#mwt2" class="reference" id="cite_ref-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"foo"},"attrs":{"group":"a"}}'><a 
href="#cite_note-1">[a 1]</a></span>
-B <span about="#mwt4" class="reference" id="cite_ref-2-0" rel="dc:references" 
typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"bar"},"attrs":{"group":"b"}}'><a 
href="#cite_note-2">[b 1]</a></span></p>
+<p>A <span about="#mwt2" class="reference" id="cite_ref-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"foo"},"attrs":{"group":"a"}}'><a 
href="#cite_note-1" data-mw-group="a"></a></span>
+B <span about="#mwt4" class="reference" id="cite_ref-2-0" rel="dc:references" 
typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"bar"},"attrs":{"group":"b"}}'><a 
href="#cite_note-2" data-mw-group="b"></a></span></p>
 
-<ol class="references" typeof="mw:Extension/references" about="#mwt6" 
data-mw='{"name":"references","attrs":{"group":"a"}}'><li about="#cite_note-1" 
id="cite_note-1"><span rel="mw:referencedBy"><a 
href="#cite_ref-1-0">↑</a></span> foo</li>
+<ol class="references" typeof="mw:Extension/references" about="#mwt6" 
data-mw='{"name":"references","attrs":{"group":"a"}}'><li about="#cite_note-1" 
id="cite_note-1"><a href="#cite_ref-1-0" rel="mw:referencedBy" 
data-mw-group="a"></a><span class="reference-text">foo</span></li>
 </ol>
 !!end
 
@@ -19505,14 +19509,14 @@
 
 <references />
 !! html
-<p>A <span about="#mwt2" class="reference" id="cite_ref-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"foo"},"attrs":{}}'><a 
href="#cite_note-1">[1]</a></span></p>
+<p>A <span about="#mwt2" class="reference" id="cite_ref-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"foo"},"attrs":{}}'><a 
href="#cite_note-1"></a></span></p>
 
-<ol class="references" typeof="mw:Extension/references" about="#mwt4" 
data-mw='{"name":"references","attrs":{}}'><li about="#cite_note-1" 
id="cite_note-1"><span rel="mw:referencedBy"><a 
href="#cite_ref-1-0">↑</a></span> foo</li>
+<ol class="references" typeof="mw:Extension/references" about="#mwt4" 
data-mw='{"name":"references","attrs":{}}'><li about="#cite_note-1" 
id="cite_note-1"><a href="#cite_ref-1-0" rel="mw:referencedBy"></a><span 
class="reference-text">foo</span></li>
 </ol>
 
-<p>B <span about="#mwt6" class="reference" id="cite_ref-2-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"bar"},"attrs":{}}'><a 
href="#cite_note-2">[1]</a></span></p>
+<p>B <span about="#mwt6" class="reference" id="cite_ref-2-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"bar"},"attrs":{}}'><a 
href="#cite_note-2"></a></span></p>
 
-<ol class="references" typeof="mw:Extension/references" about="#mwt8" 
data-mw='{"name":"references","attrs":{}}'><li about="#cite_note-2" 
id="cite_note-2"><span rel="mw:referencedBy"><a 
href="#cite_ref-2-0">↑</a></span> bar</li>
+<ol class="references" typeof="mw:Extension/references" about="#mwt8" 
data-mw='{"name":"references","attrs":{}}'><li about="#cite_note-2" 
id="cite_note-2"><a href="#cite_ref-2-0" rel="mw:referencedBy"></a><span 
class="reference-text">bar</span></li>
 </ol>
 !!end
 
@@ -19530,15 +19534,16 @@
 
 <references />
 !! html
-<p>A <span about="#mwt2" class="reference" id="cite_ref-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"afoo"},"attrs":{"group":"a"}}'><a 
href="#cite_note-1">[a 1]</a></span>
-B <span about="#mwt4" class="reference" id="cite_ref-2-0" rel="dc:references" 
typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"bfoo"},"attrs":{}}'><a 
href="#cite_note-2">[1]</a></span></p>
+<p>A <span about="#mwt2" class="reference" id="cite_ref-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"afoo"},"attrs":{"group":"a"}}'><a 
href="#cite_note-1" data-mw-group="a"></a></span>
+B <span about="#mwt4" class="reference" id="cite_ref-2-0" rel="dc:references" 
typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"bfoo"},"attrs":{}}'><a 
href="#cite_note-2"></a></span></p>
 
-<ol class="references" typeof="mw:Extension/references" about="#mwt6" 
data-mw='{"name":"references","attrs":{"group":"a"}}'><li about="#cite_note-1" 
id="cite_note-1"><span rel="mw:referencedBy"><a 
href="#cite_ref-1-0">↑</a></span> afoo</li>
+<ol class="references" typeof="mw:Extension/references" about="#mwt6" 
data-mw='{"name":"references","attrs":{"group":"a"}}'><li about="#cite_note-1" 
id="cite_note-1"><a href="#cite_ref-1-0" rel="mw:referencedBy" 
data-mw-group="a"></a><span class="reference-text">afoo</span></li>
 </ol>
 
-<p>C <span about="#mwt8" class="reference" id="cite_ref-3-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"cfoo"},"attrs":{}}'><a 
href="#cite_note-3">[2]</a></span></p>
+<p>C <span about="#mwt8" class="reference" id="cite_ref-3-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"cfoo"},"attrs":{}}'><a 
href="#cite_note-3"></a></span></p>
 
-<ol class="references" typeof="mw:Extension/references" about="#mwt10" 
data-mw='{"name":"references","attrs":{}}'><li about="#cite_note-2" 
id="cite_note-2"><span rel="mw:referencedBy"><a 
href="#cite_ref-2-0">↑</a></span> bfoo</li><li about="#cite_note-3" 
id="cite_note-3"><span rel="mw:referencedBy"><a 
href="#cite_ref-3-0">↑</a></span> cfoo</li>
+<ol class="references" typeof="mw:Extension/references" about="#mwt10" 
data-mw='{"name":"references","attrs":{}}'><li about="#cite_note-2" 
id="cite_note-2"><a href="#cite_ref-2-0" rel="mw:referencedBy"></a><span 
class="reference-text">bfoo</span></li>
+<li about="#cite_note-3" id="cite_note-3"><a href="#cite_ref-3-0" 
rel="mw:referencedBy"></a><span class="reference-text">cfoo</span></li>
 </ol>
 !!end
 
@@ -19555,11 +19560,13 @@
 This should just get lost.
 </references>
 !! html
-<p>A <span about="#mwt2" class="reference" id="cite_ref-a-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","attrs":{"name":"a"}}'><a 
href="#cite_note-a-1">[1]</a></span>
-B <span about="#mwt4" class="reference" id="cite_ref-b-2-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"bar"},"attrs":{"name":"b"}}'><a 
href="#cite_note-b-2">[2]</a></span></p>
+<p>A <span about="#mwt2" class="reference" id="cite_ref-a-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","attrs":{"name":"a"}}'><a 
href="#cite_note-a-1"></a></span>
+B <span about="#mwt4" class="reference" id="cite_ref-b-2-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"bar"},"attrs":{"name":"b"}}'><a 
href="#cite_note-b-2"></a></span></p>
 
 
-<ol class="references" typeof="mw:Extension/references" about="#mwt6" 
data-mw='{"name":"references","body":{"extsrc":"&lt;ref 
name=\"a\">foo&lt;/ref>\nThis should just get lost.","html":"\n&lt;span 
about=\"#mwt8\" class=\"reference\" rel=\"dc:references\" 
typeof=\"mw:Extension/ref\" data-parsoid=&#39;{\"src\":\"&amp;lt;ref 
name=\\\"a\\\">foo&amp;lt;/ref>\",\"dsr\":[59,82,14,6]}&#39; 
data-mw=&#39;{\"name\":\"ref\",\"body\":{\"html\":\"foo\"},\"attrs\":{\"name\":\"a\"}}&#39;>&lt;a
 href=\"#cite_note-a-1\">[1]&lt;/a>&lt;/span>\n"},"attrs":{}}'><li 
about="#cite_note-a-1" id="cite_note-a-1"><span rel="mw:referencedBy"><a 
href="#cite_ref-a-1-0">↑</a></span> foo</li><li about="#cite_note-b-2" 
id="cite_note-b-2"><span rel="mw:referencedBy"><a 
href="#cite_ref-b-2-0">↑</a></span> bar</li>
+<ol class="references" typeof="mw:Extension/references" about="#mwt6" 
data-mw='{"name":"references","body":{"extsrc":"&lt;ref 
name=\"a\">foo&lt;/ref>\nThis should just get lost.","html":"\n&lt;span 
about=\"#mwt8\" class=\"reference\" rel=\"dc:references\" 
typeof=\"mw:Extension/ref\" data-parsoid=&#39;{\"src\":\"&amp;lt;ref 
name=\\\"a\\\">foo&amp;lt;/ref>\",\"dsr\":[59,82,14,6]}&#39; 
data-mw=&#39;{\"name\":\"ref\",\"body\":{\"html\":\"foo\"},\"attrs\":{\"name\":\"a\"}}&#39;>&lt;a
 href=\"#cite_note-a-1\" style=\"counter-reset: mw-Ref 
1;\">&lt;/a>&lt;/span>\n"},"attrs":{}}'>
+<li about="#cite_note-a-1" id="cite_note-a-1"><a href="#cite_ref-a-1-0" 
rel="mw:referencedBy"></a><span class="reference-text">foo</span></li>
+<li about="#cite_note-b-2" id="cite_note-b-2"><a href="#cite_ref-b-2-0" 
rel="mw:referencedBy"></a><span class="reference-text">bar</span></li>
 </ol>
 !!end
 
@@ -19570,7 +19577,7 @@
 !! wikitext
 <ref>Foo</ref> {{echo|<references />}}
 !! html
-<p><span about="#mwt3" class="reference" id="cite_ref-1-0" rel="dc:references" 
typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"Foo"},"attrs":{}}'><a 
href="#cite_note-1">[1]</a></span></p> <ol class="references" 
typeof="mw:Extension/references mw:Transclusion" about="#mwt4" 
data-mw='{"parts":[{"template":{"target":{"wt":"echo","href":"./Template:Echo"},"params":{"1":{"wt":"&lt;references
 />"}},"i":0}}]}'><li about="#cite_note-1" id="cite_note-1"><span 
rel="mw:referencedBy"><a href="#cite_ref-1-0">↑</a></span> Foo</li></ol>
+<p><span about="#mwt3" class="reference" id="cite_ref-1-0" rel="dc:references" 
typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"Foo"},"attrs":{}}'><a 
href="#cite_note-1"></a></span></p> <ol class="references" 
typeof="mw:Extension/references mw:Transclusion" about="#mwt4" 
data-mw='{"parts":[{"template":{"target":{"wt":"echo","href":"./Template:Echo"},"params":{"1":{"wt":"&lt;references
 />"}},"i":0}}]}'><li about="#cite_note-1" id="cite_note-1"><a 
href="#cite_ref-1-0" rel="mw:referencedBy"></a><span 
class="reference-text">Foo</span></li></ol>
 !!end
 
 !! test
@@ -19587,12 +19594,12 @@
 <ref name="b">foo</ref>
 </references>
 !! html
-<p>A <span about="#mwt2" class="reference" id="cite_ref-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"foo bar for a"},"attrs":{}}'><a 
href="#cite_note-1">[1]</a></span>
-B <span about="#mwt4" class="reference" id="cite_ref-b-2-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","attrs":{"group":"X","name":"b"}}'><a 
href="#cite_note-b-2">[X 1]</a></span></p>
+<p>A <span about="#mwt2" class="reference" id="cite_ref-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"foo bar for a"},"attrs":{}}'><a 
href="#cite_note-1"></a></span>
+B <span about="#mwt4" class="reference" id="cite_ref-b-2-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","attrs":{"group":"X","name":"b"}}'><a 
href="#cite_note-b-2" data-mw-group="X"></a></span></p>
 
-<ol class="references" typeof="mw:Extension/references" about="#mwt6" 
data-mw='{"name":"references","attrs":{}}'><li about="#cite_note-1" 
id="cite_note-1"><span rel="mw:referencedBy"><a 
href="#cite_ref-1-0">↑</a></span> foo bar for a</li></ol>
+<ol class="references" typeof="mw:Extension/references" about="#mwt6" 
data-mw='{"name":"references","attrs":{}}'><li about="#cite_note-1" 
id="cite_note-1"><a href="#cite_ref-1-0" rel="mw:referencedBy"></a><span 
class="reference-text">foo bar for a</span></li></ol>
 
-<ol class="references" typeof="mw:Extension/references" about="#mwt8" 
data-mw='{"name":"references","body":{"extsrc":"&lt;ref 
name=\"b\">foo&lt;/ref>","html":"\n&lt;span about=\"#mwt10\" 
class=\"reference\" rel=\"dc:references\" typeof=\"mw:Extension/ref\" 
data-parsoid=&#39;{\"src\":\"&amp;lt;ref 
name=\\\"b\\\">foo&amp;lt;/ref>\",\"dsr\":[96,119,14,6]}&#39; 
data-mw=&#39;{\"name\":\"ref\",\"body\":{\"html\":\"foo\"},\"attrs\":{\"name\":\"b\"}}&#39;>&lt;a
 href=\"#cite_note-b-2\">[X 1]&lt;/a>&lt;/span>\n"},"attrs":{"group":"X"}}'><li 
about="#cite_note-b-2" id="cite_note-b-2"><span rel="mw:referencedBy"><a 
href="#cite_ref-b-2-0">↑</a></span> foo</li></ol>
+<ol class="references" typeof="mw:Extension/references" about="#mwt8" 
data-mw='{"name":"references","body":{"extsrc":"&lt;ref 
name=\"b\">foo&lt;/ref>","html":"\n&lt;span about=\"#mwt10\" 
class=\"reference\" rel=\"dc:references\" typeof=\"mw:Extension/ref\" 
data-parsoid=&#39;{\"src\":\"&amp;lt;ref 
name=\\\"b\\\">foo&amp;lt;/ref>\",\"dsr\":[96,119,14,6]}&#39; 
data-mw=&#39;{\"name\":\"ref\",\"body\":{\"html\":\"foo\"},\"attrs\":{\"name\":\"b\"}}&#39;>&lt;a
 href=\"#cite_note-b-2\" style=\"counter-reset: mw-Ref 1;\" 
data-mw-group=\"X\">&lt;/a>&lt;/span>\n"},"attrs":{"group":"X"}}'><li 
about="#cite_note-b-2" id="cite_note-b-2"><a href="#cite_ref-b-2-0" 
rel="mw:referencedBy" data-mw-group="X"></a><span 
class="reference-text">foo</span></li></ol>
 !! end
 
 !! test
@@ -19602,7 +19609,7 @@
 !! wikitext
 <ref name="test &amp; me">hi</ref>
 !! html
-<p><span about="#mwt2" class="reference" id="cite_ref-test_&amp;_me-1-0" 
rel="dc:references" typeof="mw:Extension/ref" data-parsoid='{"src":"&lt;ref 
name=\"test &amp;amp; me\">hi&lt;/ref>"}' 
data-mw='{"name":"ref","body":{"html":"hi"},"attrs":{"name":"test &amp; 
me"}}'><a href="#cite_note-test_&amp;_me-1">[1]</a></span></p>
+<p><span about="#mwt2" class="reference" id="cite_ref-test_&amp;_me-1-0" 
rel="dc:references" typeof="mw:Extension/ref" data-parsoid='{"src":"&lt;ref 
name=\"test &amp;amp; me\">hi&lt;/ref>"}' 
data-mw='{"name":"ref","body":{"html":"hi"},"attrs":{"name":"test &amp; 
me"}}'><a href="#cite_note-test_&amp;_me-1"></a></span></p>
 !! end
 
 # This test is wt2html only because we're permitting the serializer to produce
@@ -19616,11 +19623,11 @@
 
 <references>
 !! html
-<p>a<span about="#mwt2" class="reference" id="cite_ref-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"foo"},"attrs":{}}'><a 
href="#cite_note-1">[1]</a></span></p>
+<p>a<span about="#mwt2" class="reference" id="cite_ref-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"foo"},"attrs":{}}'><a 
href="#cite_note-1"></a></span></p>
 
 
 <ol class="references" typeof="mw:Extension/references" about="#mwt4" 
data-mw='{"name":"references","attrs":{}}'>
-<li about="#cite_note-1" id="cite_note-1"><span rel="mw:referencedBy"><a 
href="#cite_ref-1-0">↑</a></span> foo</li></ol>
+<li about="#cite_note-1" id="cite_note-1"><a href="#cite_ref-1-0" 
rel="mw:referencedBy"></a><span class="reference-text">foo</span></li></ol>
 !! end
 
 !! test
@@ -20763,7 +20770,7 @@
 foo <ref>''a''
  b</ref>
 !! html
-<p>foo <span about="#mwt2" class="reference" id="cite_ref-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"&lt;i 
data-parsoid=&#39;{\"dsr\":[9,14,2,2]}&#39;>a&lt;/i>\n b"},"attrs":{}}'><a 
href="#cite_note-1">[1]</a></span></p>
+<p>foo <span about="#mwt2" class="reference" id="cite_ref-1-0" 
rel="dc:references" typeof="mw:Extension/ref" 
data-mw='{"name":"ref","body":{"html":"&lt;i 
data-parsoid=&#39;{\"dsr\":[9,14,2,2]}&#39;>a&lt;/i>\n b"},"attrs":{}}'><a 
href="#cite_note-1"></a></span></p>
 !! end
 
 !! test

-- 
To view, visit https://gerrit.wikimedia.org/r/170936
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I21fbbd3247bf7801e5ef9bd5312f95777f4dd6ef
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/services/parsoid
Gerrit-Branch: master
Gerrit-Owner: Marcoil <marc...@wikimedia.org>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to