Entities in RCDATA with escape flag (detailed review of parsing algorithm)

(This is part of my detailed review of the parsing algorithm.)

In the Data State the spec says:
> U+0026 AMPERSAND (&)
>     When the content model flag is set to one of the PCDATA or  
> RCDATA states: switch to the entity data state.
>     Otherwise: treat it as per the "anything else" entry below.

html5lib tests, WebKit trunk, Firefox 2.0.0.4 and (I've been told)  
IE7 disagree. Opera 9.20 agrees with the spec, though.

To match three of the top four engines, the spec should say:
U+0026 AMPERSAND (&)
     When the content model flag is set to one of the PCDATA or  
RCDATA states *and the escape flag is false*: switch to the entity  
data state.
     Otherwise: treat it as per the "anything else" entry below.

Test case:
http://hsivonen.iki.fi/test/entity-in-escaped-title.html

-- 
Henri Sivonen
hsivonen@iki.fi
http://hsivonen.iki.fi/

Received on Monday, 16 July 2007 10:15:11 UTC