if "años" then "años -> years"
si entiendo bien, tu planteamiento parte de la base que el usuario armó mal su html (cosa que es culpa del usuario y no de tu validador!)... lo que podrías hacer es transformar la eñe (y tambien te va a pasar con los acentos!) a entidades:
ñ -> ñ
pero eso también te va a dar un warning... así que no creo que puedas hacer nada salvo sustituir
á -> a
ñ -> n
etc...
otra opción que se me ocurre es detectar los ids mal formados y soltarle una advertencia al mismo usuario del estilo "se ha detectado html mal formado, para que este validador funcione necesitará arreglarlo" o algo así..