In section 8.2.4.26 the spec says: > If the next six characters are an ASCII case-insensitive match for the > word "PUBLIC", then consume those characters and switch to the before > DOCTYPE public identifier state.
The P has already been consumed at the beginning of this section. Thus, I believe it should read: If this character and the next five characters are an ASCII case-insensitive match for the word "PUBLIC", etc. Same goes for the match for SYSTEM. Cheers, Edward