Подтвердить что ты не робот

DTD с RFDa и XHTML 1.0 Переходная поддержка

Существует ли тип документа W3C, доступный как с переходной поддержкой XHTML 1.0, так и с поддержкой RDFa?

Я знаю XHTML + RDFa 1.0 (http://www.w3.org/MarkUp/DTD/xhtml-rdfa-1.dtd) DTD, но это XHTML 1.1, который несовместим с моим текущим сайтом, Похоже, что есть также HTML4 + RDFa 1.0 (http://www.w3.org/MarkUp/DTD/html4-rdfa-1.dtd).

Моя главная причина не обслуживать XHTML 1.1 - это обозреватель Internet Explorer, хотя я мог бы, вероятно, использовать его как text/html для пользователей IE, если нет другого способа.

4b9b3361

Ответ 1

Я не верю, что есть такой DTD, нет.

HTML становится все более фрагментированным, и создание DTD для каждой возможной комбинации не будет практичным. HTML5 не основан на SGML и эффективно отказывается от DTD. В будущем валидаторы, вероятно, придется изменить, чтобы они вызывали в коллекциях компонентов, таких как RDFa и ARIA, и указывали в своих результатах, какие коллекции необходимы, чтобы позволить каждому конкретному фрагменту маркировки соответствовать.

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

Теперь XHTML + RDFa 1.0 может быть определен DTD как расширение XHTML 1.1, но на самом деле это не XHTML 1.1, а XHTML 1.0 не является переходным или строгим, или даже ничего, кроме "XHTML + RDFa 1.0",

Итак, вы можете принять прагматичный подход к сервису. Рассмотрим отношение HTML5 к этому. В нем говорится, что все, что вы используете как text/html, представляет собой сериализацию HTML-модели объекта, независимо от любого объявленного DOCTYPE. Это на практике то, что делают браузеры.

Аналогично, все, что вы используете с типом содержимого XML, например application/xhtml + xml, представляет собой сериализацию XML. Те части XML, которые имеют пространство имен xhtml, составляют XHTML.

Таким образом, на практике вы можете без проблем работать со своим XHTML + RDFa 1.0 в виде text/html или application/xhtml + xml при условии, что эта надбавка соответствует требованиям для документов многоугольника.

Это оставляет проверку. Оставляя в стороне RDFa, есть ли какая-либо надбавка, что вы используете этот совместимый XHTML 1.0 Transitional, но не соответствующий XHTML 1.1? Если да, то вам достаточно заботиться о полной проверке, чтобы либо изменить их, либо отказаться от использования RDFa? Предположительно, вы используете RDFa для своих пользователей, а проверка - это, по сути, удобный инструмент для вас.

Недавно я столкнулся с подобной ситуацией, когда решил добавить атрибуты ARIA на мои страницы XHTML 1.0. Я решил, что Accessibility trumps Validity, и я бы добавил атрибуты и забыл о том, что мои страницы были действительны на 100%.

Ответ 2

В действительности, если вы не заинтересованы в реализации DTD, практически нет различий между различными версиями XHTML, и почти никогда не существует истинной причины не использовать XHTML 1.1. Каким образом ваш сайт зависит от версии 1.0? Если вы можете получить свой сайт с 1.0 строгим, то переход от него к 1.1 не должен вызывать проблем, потому что по существу единственное различие - это модульное DTD, которое действительно не имеет никаких недостатков.

Если вы все еще боретесь с философской проблемой XHTML MIME, я бы не волновался, потому что концептуальное обслуживание неправильного типа медиа с более организованным 1.1 DTD не является чем-то вроде преступления, чем с 1.0. Причина, по которой RDFa реализована, поскольку она заключается в том, что добавление модуля RDFa в DTD XHTML 1.1 включает только добавление нескольких строк в основной модуль. Выполнение этого в 1.0 DTD было бы сложнее и не так чисто.

Некоторые другие вещи, которые следует учитывать, это то, что спецификация второго выпуска XHTML 1.1 включает реализацию схемы XML. Кроме того, последний рабочий проект XHTML + RDFa 1.1, наконец, отбрасывает (глупое) требование для полного определения типа doctype, поэтому вы можете использовать только проверку схемы. Это было бы очень хорошо, если бы вы могли найти способ использовать XML-методы XMTML, потому что для получения рендеринга стандартного режима в браузерах, поддерживающих его, не требуется декларация типа doctype (все они, но IE8 и ниже).