Revamp entity decoding to be more like HTML5.
[htmlpurifier.git] / library / HTMLPurifier / ConfigSchema / schema / Core.LegacyEntityDecoder.txt
blob392b4364934b90129e8974541be8673d95dcabbd
1 Core.LegacyEntityDecoder
2 TYPE: bool
3 VERSION: 4.9.0
4 DEFAULT: false
5 --DESCRIPTION--
6 <p>
7     Prior to HTML Purifier 4.9.0, entities were decoded by performing
8     a global search replace for all entities whose decoded versions
9     did not have special meanings under HTML, and replaced them with
10     their decoded versions.  We would match all entities, even if they did
11     not have a trailing semicolon, but only if there weren't any trailing
12     alphanumeric characters.
13 </p>
14 <table>
15 <tr><th>Original</th><th>Text</th><th>Attribute</th></tr>
16 <tr><td>&amp;yen;</td><td>&yen;</td><td>&yen;</td></tr>
17 <tr><td>&amp;yen</td><td>&yen;</td><td>&yen;</td></tr>
18 <tr><td>&amp;yena</td><td>&amp;yena</td><td>&amp;yena</td></tr>
19 <tr><td>&amp;yen=</td><td>&yen;=</td><td>&yen;=</td></tr>
20 </table>
21 <p>
22     In HTML Purifier 4.9.0, we changed the behavior of entity parsing
23     to match entities that had missing trailing semicolons in less
24     cases, to more closely match HTML5 parsing behavior:
25 </p>
26 <table>
27 <tr><th>Original</th><th>Text</th><th>Attribute</th></tr>
28 <tr><td>&amp;yen;</td><td>&yen;</td><td>&yen;</td></tr>
29 <tr><td>&amp;yen</td><td>&yen;</td><td>&yen;</td></tr>
30 <tr><td>&amp;yena</td><td>&yen;a</td><td>&amp;yena</td></tr>
31 <tr><td>&amp;yen=</td><td>&yen;=</td><td>&amp;yen=</td></tr>
32 </table>
33 <p>
34     This flag reverts back to pre-HTML Purifier 4.9.0 behavior.
35 </p>
36 --# vim: et sw=4 sts=4