The <p> and <a> elements on the OPAC search results pages (opac-search.pl) and lists pages (opac-shelves.pl) contain invalid attributes: "xmlns:str="http://exslt.org/strings" These seem to be leaking through from the XSLT. For example: <a xmlns:str="http://exslt.org/strings" href="/cgi-bin/koha/opac-detail.pl?biblionumber=18566&query_desc=kw%2Cwrdl%3A%20spin" class="title"><span class="term">Spin</span> a silver dollar; story of a desert trading-post; illus. with color reproductions of the work of the Navaho boy artist, Little No-Shirt (Beatien Yazz). </a>
It might come from a exslt change. If I have only the "include" in MARC21slim2OPACResults.xsl I am seeing different nodes getting this attribute. xmlns:str="http://exslt.org/strings"
Created attachment 114298 [details] [review] Bug 27178: Add 'str' namespace to exclude-result-prefixes Some nodes in the generated HTML document contain the 'str' namespace. For instance, at the OPAC on the search result list, you can see: <a xmlns:str="http://exslt.org/strings" href="/cgi-bin/koha/opac-detail.pl?biblionumber=18566&query_desc=kw%2Cwrdl%3A%20spin" class="title"> The solution is to add 'str' to exclude-result-prefixes. From https://developer.mozilla.org/en-US/docs/Web/XSLT/Element/stylesheet """ Specifies any namespace used in this document that should not be sent to the output document. The list is whitespace separated. """ Test plan: 0. Don't apply this patch 1. Launch a search at the OPAC 2. Inspect the title link for the records => Note the 'xmlns:str' attribute on tag "a" 3. Apply this patch 4. restart_all 5. Repeat 1. and 2. => Note that the attribute is gone now. QA will check that no other occurrences is missing (note that one NORMARC xsl is missing it, but NORMARC is deprecated)
Created attachment 114308 [details] [review] Bug 27178: Add 'str' namespace to exclude-result-prefixes Some nodes in the generated HTML document contain the 'str' namespace. For instance, at the OPAC on the search result list, you can see: <a xmlns:str="http://exslt.org/strings" href="/cgi-bin/koha/opac-detail.pl?biblionumber=18566&query_desc=kw%2Cwrdl%3A%20spin" class="title"> The solution is to add 'str' to exclude-result-prefixes. From https://developer.mozilla.org/en-US/docs/Web/XSLT/Element/stylesheet """ Specifies any namespace used in this document that should not be sent to the output document. The list is whitespace separated. """ Test plan: 0. Don't apply this patch 1. Launch a search at the OPAC 2. Inspect the title link for the records => Note the 'xmlns:str' attribute on tag "a" 3. Apply this patch 4. restart_all 5. Repeat 1. and 2. => Note that the attribute is gone now. QA will check that no other occurrences is missing (note that one NORMARC xsl is missing it, but NORMARC is deprecated) Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Great work, well found Jonathan!
Created attachment 114684 [details] [review] Bug 27178: Add 'str' namespace to exclude-result-prefixes Some nodes in the generated HTML document contain the 'str' namespace. For instance, at the OPAC on the search result list, you can see: <a xmlns:str="http://exslt.org/strings" href="/cgi-bin/koha/opac-detail.pl?biblionumber=18566&query_desc=kw%2Cwrdl%3A%20spin" class="title"> The solution is to add 'str' to exclude-result-prefixes. From https://developer.mozilla.org/en-US/docs/Web/XSLT/Element/stylesheet """ Specifies any namespace used in this document that should not be sent to the output document. The list is whitespace separated. """ Test plan: 0. Don't apply this patch 1. Launch a search at the OPAC 2. Inspect the title link for the records => Note the 'xmlns:str' attribute on tag "a" 3. Apply this patch 4. restart_all 5. Repeat 1. and 2. => Note that the attribute is gone now. QA will check that no other occurrences is missing (note that one NORMARC xsl is missing it, but NORMARC is deprecated) Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Pushed to master for 21.05, thanks to everybody involved!
Pushed to 20.11.x for 20.11.02
Pushed to 20.05.x for 20.05.8
Not backported to oldoldstable (19.11.x). Feel free to ask if it's needed.