|
|
|||||||||||||||||||||||||||||
|
Будущее HTML: Часть 2. XHTML 2.0Источник: IBM developerWorks Россия Эдд Дамбилл (Edd Dumbill), председатель, XTech Conference
В предыдущей статье этой серии показано, почему HTML нуждается в обновлении как для решения проблем, так и для того, чтобы соответствовать растущим требованиям, которые встали перед web-страницами и приложениями. Я рассказал о деятельности рабочей группы по разработке гипертекстовых приложений для интернета (Web Hypertext Application Technology Working Group, WHATWG), свободной ассоциации разработчиков браузеров, занимающихся разработкой спецификаций Web Applications 1.0 и Web Forms 2.0. В этой статье мы познакомимся с работой консорциума World Wide Web Consortium (W3C) по созданию новой версии спецификации XHTML, а также с их ответом на потребность в поведении "rich client", демонстрируемого приложениями Ajax. В W3C четыре рабочих группы, которые работают над спецификациями в конкретных областях:
Ссылка на каждую из этих спецификаций есть в конце статьи. В этой статье речь пойдет, главным образом, о работе группы HTML, но имеет смысл рассмотреть каждую из упомянутых рабочих групп, чтобы получить понимание того, как их работа влияет на будущее web-технологий. XFormsXForms - преемник сегодняшних форм HTML от W3C. Эта спецификация предназначена для обеспечения более полной функциональности; передача результатов приложению для обработки осуществляется в виде XML-документа. XForms являются модульными, поэтому их можно использовать в любом контексте, а не только присоединенными к XML. Основные отличия XForms от форм HTML:
Поскольку XHTML 2.0 является модульным языком, он импортирует формы XForms в виде модулей для повышения функциональности своих форм. Web APIРабочая группа Web API конcорциума W3C занимается определением стандартного API для разработки приложений на стороне клиента. Первая и самая известная из разработок этой группы - функция Среди дополнительных API, которые сейчас находятся в стадии разработки, вероятно, будут:
Поскольку эти API не нуждаются в реализации в тандеме с XHTML 2.0, браузеры в ближайшие несколько лет в будущем, вероятно, будут поддерживать обе эти технологии, чтобы обеспечить полнофункциональную платформу для web-приложений. Форматы web-приложений (Web Application Formats)XHTML 2.0 - это всего лишь часть вопроса об интерфейсе пользователя web-приложения , но это не все. Такие технологии, как XUL от Mozilla и XAML от Microsoft способствуют использованию расширенного словаря XML в пользовательских интерфейсах. Рабочая группа Web Application Formats Working Group занимается разработкой декларативного формата описания интерфейсов пользователя тем же способом, что и XUL или XAML, а также разработкой XBL2, декларативного языка, который обеспечит связь между пользовательской разметкой и существующими технологиями. В основном, XBL2 предоставляет программистам способ написания виджетов для web-приложений. Почему XHTML 2.0?Задачей XHTML 1.0 был переход HTML на свойственный XML словарь. Эта спецификация ввела ограничения синтаксиса XML в HTML: регистрозависимость, принудительное заключение в двойные кавычки значений атрибутов и симметричные тэги. Таким образом XHTML 2.0 пытается решить проблемы HTML как языка для разметки web-страниц. В своей презентации на конференции XTech 2005 в Амстердаме, сотрудник W3C Стивен Пембертон (Steven Pemberton) выразил цели проекта XHTML 2.0:
Эти цели определенно покажутся достойными похвалы любому, кто какое-то время работал с HTML. Теперь я более подробно расскажу о некоторых способах их достижения в XHTML 2.0. Разделы и параграфыЯ помню, как много лет назад, когда я только пришел в HTML, я испытал некоторое удивление по поводу текстовых структурных элементов этого языка. Зачем нужны шесть уровней заголовков, и в какой ситуации можно было бы применить их все? Итак, почему бы заголовкам каким-либо образом не включать разделы, которые они озаглавливают? У XHTML 2.0 есть ответ на этот вопрос благодаря новым элементам
Это более логичное структурирование, чем в XHTML 1.0, и оно будет ближе пользователям многих других словарей. Одно из существенных преимуществ для программистов заключается в том, что они смогут включать разделы материалов прямо в документ, при этом не нужно переделывать номера уровней заголовков. После этого для заголовков можно использовать стили CSS. Хотя ожидается, что реализация XHTML 2.0 в браузерах по умолчанию будет включать кое-что из описанного здесь как предварительно заданные параметры, но если написать их явным образом, они могут выглядеть примерно так (если абстрагироваться от спецификации XHTML 2.0):
Еще одно логическое несоответствие в XHTML 1.0 заключается в том, что необходимо закрыть абзац, чтобы использовать список. По сути, абзацы следует закрывать для использования любых блочных элементов (блоков цитат, преформатированных разделов, таблиц и т. д.). Поступать так не всегда логично, если материал может вполне правомерно использоваться как часть одного абзаца. XHTML 2.0 устраняет это ограничение. Единственное, чего нельзя делать - это помещать один абзац в другой. ИзображенияТэг В XHTML 2.0 появляется элегантное решение этой проблемы: возможность любому элементу иметь атрибут Тэг
Это особенно приятная новость для таких языков, как японский для которого комментарии Ruby требуют строчной разметки, которая до этого была невозможна в значении атрибута. XHTML 2.0 предлагает более общую форму включения изображения в элемент Расширяемая семантикаHTML всегда имел некоторые элементы с семантическими ассоциациями, например, Идя еще дальше этих особых методов, XHTML 2.0 вводит метод для описания метаданных типа RDF в документе. Выражения RDF составляются из троек (субъект, свойство, объект). Например, может существовать тройка: "мой автомобиль", " изображен", "красным цветом". Атрибут И, наконец, третье значение в тройке является содержимым элемента, к которому применяются атрибуты
Теперь давайте рассмотрим еще один пример, приведенный Пембертоном, который показывает, как использовать метаданные в теле реального документа:
Заголовок обозначается как название документа XHTML 2.0 и определяется как строковый заголовок. Наконец, нам не придется больше дважды писать заголовок в каждом документе! Благодаря простой технологии преобразования GRDDL (Gleaning Resource Descriptions from Dialects of Languages (Очистка описаний ресурса от диалектов различных языков)), мы получили единый стандарт для извлечения RDF-метаданных из документов XHTML 2.0. XHTML 2.0 включает и много других изменений, часть из которых связана с параллельной разработкой спецификации XForms. В этой статье я не смогу охватить их все. Тем не менее, это значительный скачок в развитии по сравнению с XHTML 1.0. Еще несколько новых особенностей XHTML 2.0Вам не надоело писать Для обеспечения доступности XHTML 2.0 теперь предлагает атрибут Браузеры в настоящее время поддерживают некоторое перемещение фокуса при помощи клавиши Tab , но это может быть произвольным. Новые атрибуты Подготовка к XHTML 2.0Несмотря на масштаб изменений в будущем, в XHTML 2.0 все еще можно узнать HTML. Хотя в нем есть новые элементы, многое в XHTML 2.0 работает, как раньше. Элементы Однако миссия XHTML 2.0 заключается не в сохранении строгой обратной совместимости синтаксиса, поэтому интерпретаторы HTML в современных браузерах не смогут вполне справиться с выразительными средствами документов XHTML 2.0. Тем не менее, большинство web-браузеров сегодня хорошо справляются с произвольной интерпретацией XML-плюс-CSS, а многое из XHTML 2.0 может быть интерпретировано этим способом -- даже если вы при этом не получите семантических улучшений. Некоторые из отличий XHTML 2.0 очень существенны -- переход к XForms является одним из самых заметных, как и полный отказ от не-XML наследия HTML. Поэтому вы не можете переключить ваши сайты на управление XHTML 2.0 прямо сейчас, но зато можете сделать приготовления на будущее:
Наконец, обратите внимание на то, что XHTML 2.0 - это все еще не окончательная спецификация. На момент написания нашей статьи она все еще находится в W3C в стадии рабочего черновика (Working Draft), что означает, что ей еще нужно пройти некоторый путь, прежде чем она достигнет стадии Recommendation (Рекомендуемая спецификация). Важно, что может быть еще и стадия Candidate Recommendation (кандидат в рекомедуемые спецификации), которая используется для накопления опыта реализации. Вероятно, XHTML 2.0 не станет рекомендуемой спецификацией W3C (Recommendation) до 2007 года, в соответствии с рабочим планом рабочей группы W3C по HTML. Это означает, что 2006 год станет годом получения важного опыта размещения. Сравнение W3C XHTML 2.0 с WHATWG HTML 5В этих двух статьях я рассказал о точках излома спецификаций HTML 5 от WHATWG и XHTML 2.0 от W3C. Эти две инициативы в корне различаются: Организованная пользователями WHATWG стремится к поэтапному усовершенствованию HTML 4 и XHTML 1.0, тогда как финансируемая консорциумом спецификация XHTML 2.0 представляет собой комплексную реорганизацию языка HTML. Хотя эти две спецификации очень разные, они не являются несовместимыми. Некоторые из наиболее понятных разработок спецификации WHATWG уже получили реализацию в браузерах, а часть разработок WHATWG фактически представляет собой расширения HTML. Самые значительные из них, например, Если посмотреть еще дальше, подход XHTML 2.0 предлагает очищенный словарь для web, в котором модульная обработка XML, CSS и ECMAScript быстро станет нормой. Встроенным устройствам, например, телефонам и цифровым телевизорам, нет необходимости поддерживать традиционные средства беспорядочного HTML, они свободно могут воспользоваться преимуществами XHTML 2.0 как чистого XML-словаря. Кроме того, новые функции, способствующие доступности и интернационализации, делают XHTML 2.0 первым словарем документа XML , который можно обоснованно назвать универсальным, а, следовательно, прочной и экономичной основой для многих попыток, основанных на использовании разметки. Как и прошлое, будущее HTML будет разным -- некоторые могут назвать его беспорядочным -- но я думаю, что XHTML 2.0 в конце концов получит широкое распространение и применение. Если бы это был единственный словарь XML в Web, возможно, возникли бы некоторые вопросы, но, поскольку браузеры готовы работать с SVG, XForms и другими технологиями, XHTML 2.0 начинает выглядеть точно так же, как любой из этих основанных на XML словарей. Ссылки по теме
|
|