Почему этот простой код не проверит?

У меня есть некоторый очень простой код, ниже которого я не могу добраться для проверки на http://validator.w3.org/check, и ошибки имеют мало смысла мне. Я озадачен здесь, кто-либо может видеть/понимать проблему (проблемы)?

Код:


 
 
     
        Test Mobile Site 
         
     
     
        
Why won't you validate for me? :(

Ошибки:

Ошибка: Строка 18, Столбец 46: Вход не является надлежащим UTF-8, укажите на кодирование! Байты: 0x92 0x53 0x20 0x52

Ошибка: Строка 69, Столбец 17: условное ключевое слово раздела INCLUDE или IGNORE ожидается

Ошибка: Строка 73, Столбец 39: xmlParseElementDecl: 'ПУСТОЙ', 'ЛЮБОЙ' или' (' ожидаемый

Ошибка: Строка 73, Столбец 39: ошибка Содержания во внешнем подмножестве

1
задан Denis Hoctor 25 June 2010 в 08:33
поделиться

2 ответа

Ну, это был мой второй раз, когда я пытался понять это, и, покопавшись, я вижу, что в июле 2008 года W3C выпустил xHTML Basic 1.1, который теперь заменяет xHTML Mobile Profile 1.2 из Open Mobile. Альянс.

Мораль истории: вы найдете множество примеров использования MP 1.2 DTD в мобильных примерах в Интернете, но вам нужно использовать:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML Basic 1.1//EN" "http://www.w3.org/TR/xhtml-basic/xhtml-basic11.dtd">

, если вы хотите правильно проверить. Надеюсь, это поможет кому-то другому не тратить зря потраченное мной время!

Ссылка: http://en.wikipedia.org/wiki/XHTML#XHTML_Basic_and_XHTML-MP

1
ответ дан 2 September 2019 в 23:31
поделиться

Да, XHTML Mobile Profile DTD - фикция. Вы никогда не проверите ни один документ, использующий его.

Проблема в http://www.openmobilealliance.org/tech/DTD/xhtmlmp12-form-1.mod, который является версией модуля XHTML Forms, который OMA изменила, чтобы добавить один атрибут, inputmode. Они умудрились испортить его, вставив этот комментарий с умной цитатой из MS Word в модуль:

NO REPRESENTATIONS OR WARRANTIES (WHETHER EXPRESS OR IMPLIED) ARE
MADE BY THE OPEN MOBILE ALLIANCE OR ANY OPEN MOBILE ALLIANCE MEMBER
OR ITS AFFILIATES REGARDING ANY OF THE IPR’S REPRESENTED ON THE OMA

и сохранив его как cp1252 вместо кодировки по умолчанию для сущностей XML, UTF-8. Это приводит к точной ошибке о недопустимой последовательности UTF-8, которая затем, похоже, сбивает валидатор с толку, не позволяя правильно разобрать следующие объявления сущностей.

(Вдвойне комично, что эта ошибка кодировки вызвана базовой грамматической ошибкой - апострофом в grocers. Но поскольку OMA - те самые шутники, которые устроили нам фиаско с WAP, возможно, такого уровня некомпетентности и следовало ожидать.)

.
1
ответ дан 2 September 2019 в 23:31
поделиться
Другие вопросы по тегам:

Похожие вопросы: