Hi Ron,

Thanks for the detailed bug report. I am glad to report back that it has 
already been fixed in our latest 12.2 release [1,2].

Cheers,
Christian

[1] https://github.com/BaseXdb/basex/issues/2575
[2] https://basex.org/download/

________________________________
Von: ron.vdbranden--- via BaseX-Talk <[email protected]>
Gesendet: Mittwoch, 4. Februar 2026 18:05
An: BaseX <[email protected]>
Betreff: [basex-talk] BaseX-12.1: HTML 5.0 serialization difference


Hi,

I've noticed a serialization difference since updating to BaseX-12.1, and am 
wondering if this is intentional or not.

When serializing as HTML 5.0, the character escaping in <script> tags seems to 
be influenced by the presence of preceding <script> tags that are either empty 
or only contain collapsible whitespace:

  *   when a <script> element follows a non-empty (or non-collapsible) <script> 
element, special characters like &, <, and > are unescaped in the output
     *
input:

<head>
  <script><![CDATA[& < > ]]></script>
  <script src="test">//</script>
  <script>&amp; &lt; &gt;</script>
</head>
! serialize(., map {"method":"html", "version":"5.0"})

     *
output:

<head>
  <meta charset="UTF-8">
  <script>& < > </script>
  <script src="test">//</script>
  <script>& < ></script>
</head>

  *   when, however, a <script> element follows an empty (or collapsible) 
<script> element, special characters like &, <, and > are escaped in the output
     *
input:

<head>
  <script><![CDATA[& < > ]]></script>
  <script src="test"></script>
  <script>&amp; &lt; &gt;</script>
</head>
! serialize(., map {"method":"html", "version":"5.0"})

     *
output:

<head>
  <meta charset="UTF-8">
  <script>& < > </script>
  <script src="test">//</script>
  <script>&amp; &lt; &gt;</script>
</head>

I'm wondering if this is intentional or a bug?

Best,

Ron

Reply via email to