That was a good read. I reread the relevant section of the HTML5 spec and noticed an error in an example:
> For example, ¬in will be parsed as "¬in" whereas ¬in will be parsed as "∉".
Only a small minority of the named character references are permitted without a closing semicolon, and notin is not one of them. So ¬in is actually parsed as "¬in". ∉ is parsed as "∉".
> For example, ¬in will be parsed as "¬in" whereas ¬in will be parsed as "∉".
Only a small minority of the named character references are permitted without a closing semicolon, and notin is not one of them. So ¬in is actually parsed as "¬in". ∉ is parsed as "∉".
https://html.spec.whatwg.org/#parse-error-missing-semicolon-...