Document.getElementById () возвращает элемент с именем, равным указанному id

Я уже упоминал вэто ТАК о забавном поведении для IE6 / 7 (и некоторых версий Opera) в этомdocument.getElementById может найти элемент, чейname атрибут определен, но неid атрибут, такой, что

function f() {
    document.getElementById("a1").value = ...;
}
...
<input name="a1" ...></input>

на самом деле работает в этих версиях.

Поискав в сети я нашелэтот отчет об ошибке Крисом Блумом, в котором пользователь по имени Мило ван дер Лей указывает на следующее (как он сказал вэто спецификация w3c):

В их защиту: «Атрибуты id и name имеют одно и то же пространство имен».

Что это значит, что атрибуты id и name имеют одно и то же пространство имен? Почему этого условия будет достаточно для IE6 / 7 / Opera, чтобы реализовать это поведение в своем движке JS?

Ответы на вопрос(1)

Ваш ответ на вопрос