Расширенный язык разметки документов XML

Автор работы: Пользователь скрыл имя, 17 Октября 2012 в 01:14, курсовая работа

Описание работы

Развитие HTML в определенном смысле зашло в тупик - новые теги уже не нужны, поскольку хватает существующих, к тому же акцент разработки веб-страниц сместился на стили, которые расширяют возможности по оформлению документов. Естественно, CSS никак не подменяет HTML, но зато позволяет использовать ограниченный набор тегов, а вид элементов, их положение и различные параметры задавать через стили.

Содержание работы

ВВЕДЕНИЕ 3
ГЛАВА1. СУЩНОСТЬ XML 5
ГЛАВА2. ВАЛИДАЦИЯ XHTML ДОКУМЕНТОВ…………………..…....….9
2.1 Строго конформные документы…………………………………....…..12
2.2 Использование XML с другими пространствами имен…….……....…13
2.3 Конформность пользовательских агентов…………………..……..…..14
ГЛАВА3. БУДУЩЕЕ HTML ……………...……………………..…………….21
ЗАКЛЮЧЕНИЕ………………………………………………………...….…….31
СПИСОК ЛИТЕРАТУРЫ…………..…………………………………………...32

Файлы: 1 файл

инфор.12.doc

— 134.50 Кб (Скачать файл)

Улучшенная  интернационализация;

Улучшенные  формы: Необходимые давно назревшие  усовершенствования!

Снизить необходимость  использования сценариев: Включить типичные применения сценариев в синтаксис самого HTML;

Улучшенная  семантика: Упростить интеграцию HTML с семантическими web-приложениями.

Разделы и параграфы.

Я испытываю  некоторое удивление по поводу текстовых  структурных элементов этого языка. Зачем нужны шесть уровней заголовков, и в какой ситуации можно было бы применить их все? Итак, почему бы заголовкам каким-либо образом не включать разделы, которые они озаглавливают? У XHTML 2.0 есть ответ на этот вопрос благодаря новым элементам <section> и <h> (заголовок):

<section>

<h>Level 1 heading</h>

...

<section>

<h>Level 1 heading</h>

...

</section>

</section>

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

После этого  для заголовков можно использовать стили CSS. Хотя ожидается, что реализация XHTML 2.0 в браузерах по умолчанию будет включать кое-что из описанного здесь как предварительно заданные параметры, но если написать их явным образом, они могут выглядеть примерно так (если абстрагироваться от спецификации XHTML 2.0):

h {font-family: sans-serif; font-weight: bold; font-size: 200%}

section h {font-size: 150%} /* Заголовок второго уровня */

section section h {font-size: 120%} /* Заголовок третьего уровня */

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

Изображения.

Тэг <img> в HTML на самом деле имеет довольно ограниченную гибкость. Как отмечает Пембертон, он не предоставляет никакого механизма нейтрализации ошибки, за исключением альтернативного текста alt (что препятствует утверждению новых форматов изображения), текст в тэгах alt нельзя разметить, а атрибут longdesc никогда не войдет в моду из-за своей неуклюжести. (longdesc используется для того, чтобы указать URI более полного описания изображения, чем то, что приводится в атрибуте alt)

В XHTML 2.0 появляется элегантное решение этой проблемы: возможность любому элементу иметь  атрибут src. Браузер впоследствии заменяет содержимое элемента содержимым, которое находится по указанному URI. В самом простом случае это изображение. Но нигде не сказано, что это не может быть SVG, XHTML или любой другой тип содержимого, которое способен интерпретировать браузер.

Тэг <img> как  таковой остается, но теперь он может включать содержимое. Новое действие атрибута src означает, что текст alt теперь представляет собой содержимое элемента, как в этом примере разметки:

<p><imgsrc="http://example.com/water. png">H<sub>2</sub>O</img></p>

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

XHTML 2.0 предлагает  более общую форму включения  изображения в элемент <object>, который можно применять для включения любого вида объектов - от изображений и клипов до исполняемого кода наподобие технологий Flash или Java. Это дает возможность использовать изящную технику для обработки постепенного уменьшения возможностей в зависимости от свойств браузера; можно внедрять несколько элементов <object> один в другой. Например, flash-ролик можно поместить на самый внешний уровень, видеофайл AVI внутрь flash-ролика, фотоизображение внутрь avi-файла и, наконец, фрагмент текста в центре группы вложенных объектов. Смотрите Модуль объектов XHTML, где приведена дополнительная информация по этой теме.

Расширяемая семантика.

HTML всегда имел  некоторые элементы с семантическими  ассоциациями, например, <address> и  <title>. Проблема заключается в  том, что таких элементов мало, и они не являются расширяемыми. Между тем, предпринимались попытки использовать атрибут class для того, чтобы привнести семантику в элементы HTML. Это расширение задач атрибута class по сравнению с тем, для чего он был создан; такое применение атрибута затрудняется тем, что он преимущественно используется для применения стилей CSS. (Некоторых людей раздражает такое утверждение задачи атрибута class, но со вторым применением трудно спорить).

Идя еще дальше этих особых методов, XHTML 2.0 вводит метод для описания метаданных типа RDF в документе. Выражения RDF составляются из троек (субъект, свойство, объект). Например, может существовать тройка: "мой автомобиль", " изображен", "красным цветом".

Атрибут about действует  как rdf: about, определяя subject тройки RDF - он может быть опущен, в этом случае сам документ будет субъектом. Атрибут property - это URI, на который ссылается свойство (он может использовать сокращенное наименование, предоставляя соответствующее объявление префикса; подробности можно найти в XHTML 2.0 раздел Модуль атрибутов метаинформации (Metainformation Attributes Module), см. Ресурсы).

И, наконец, третье значение в тройке является содержимым элемента, к которому применяются  атрибуты about и property, а если эти атрибуты пусты, то значением атрибута content. Вот пример применения, которое близко к существующему использованию тэга HTML <meta> tag, определяет создателя в заголовке страницы:

<html xmlns="http://www.w3.org/2002/06/xhtml2/" xml: lang="en">

<head>

<title>Edd Dumbill's Home Page</title>

<meta property="dc: creator">Edd Dumbill</meta>

</head>

...

</html>

Теперь давайте  рассмотрим еще один пример, который  показывает, как использовать метаданные в теле реального документа:

<h property="title">Welcome to my home page</h>

Заголовок обозначается как название документа 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.

Вам не надоело  писать <pre><code>... </code></pre>? Теперь можно использовать новый элемент <blockcode>.

Для обеспечения доступности XHTML 2.0 теперь предлагает атрибут role, который можно определить в теле элемента. Например, скудные элементы навигации на странице могут иметь атрибут role="navigation", чтобы механизм речевого воспроизведения текста мог интеллектуально их обработать.

Браузеры в  настоящее время поддерживают некоторое  перемещение фокуса при помощи клавиши Tab, но это может быть произвольным. Новые атрибуты nextfocus и prevfocus позволяют  управлять порядком, в котором  фокус будет перемещаться между  элементами окна; это может быть важной функцией при создании пользовательских интерфейсов с навигацией.

Подготовка  к XHTML 2.0.

Несмотря на масштаб изменений в будущем, в XHTML 2.0 все еще можно узнать HTML. Хотя в нем есть новые элементы, многое в XHTML 2.0 работает, как раньше. Элементы <h1> - <h6> сохраняются в качестве меры обеспечения совместимости, как и элемент <img>.

Однако миссия XHTML 2.0 заключается не в сохранении строгой обратной совместимости  синтаксиса, поэтому интерпретаторы HTML в современных браузерах не смогут вполне справиться с выразительными средствами документов XHTML 2.0. Тем не менее, большинство web-браузеров сегодня хорошо справляются с произвольной интерпретацией XML-плюс-CSS, а многое из XHTML 2.0 может быть интерпретировано этим способом - даже если вы при этом не получите семантических улучшений.

Некоторые из отличий XHTML 2.0 очень существенны - переход  к XForms является одним из самых заметных, как и полный отказ от не-XML наследия HTML. Поэтому вы не можете переключить  ваши сайты на управление XHTML 2.0 прямо сейчас, но зато можете сделать приготовления на будущее:

Серьезно подумайте  об использовании CSS, постарайтесь удалить  презентационную разметку;

Подумайте о  том, как можно разместить на ваших  страницах микроформаты. Микроформаты позволят представить метаданные в HTML-коде с использованием существующих стандартов.

Если вы до сих  пор не сделали этого, научитесь  работать с XHTML 1.0. Сегодня возможно управление страницами XHTML 1.0 как обычным  кодом HTML, если они созданы в соответствии с рекомендациями по совместимости XHTML 1.0 HTML, хотя при этом могут возникнуть сложности. XHTML 2.0 так управлять нельзя.

Поэкспериментируйте с браузером, который предлагает поддержку XHTML 2.0 наряду с основными  средствами SVG, XForms, и SMIL 2.0;

Если вы создаете новые клиентские системы на базе XHTML-подобных функций, серьезно подумайте об использовании 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. Самые значительные из них, например, XMLHttpRequest, найдут свое выражение в спецификациях группы W3C Rich Client Activity. WHATWG также действует, как полезный катализатор в мире web-стандартов.

Если посмотреть еще дальше, подход 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 словарей.

Оценка XHTML.

Существует  несколько простых правил для XML документа (они будут перечислены ниже). До тех пор, пока все теги написаны согласно этим правилам, XML без разницы, что эти теги обозначают. XML обобщенный язык разметки, так что вы можете его использовать как вам угодно.

В противоположность XML, HTML гораздо более строго определенный язык разметки с ограниченным набором тегов. В любом случае, общий характер XML позволяет рассматривать HTML-документы как XML-документы с набором тегов для отображения в веб-браузерах. Однако, старые стандарты HTML не до конца совместимы с XML. Например, в HTML необязательно закрывать тег <P>, то есть тег </P> можно опускать. Веб-браузеру на это плевать, так как он запрограммирован, но XML-парсер выдаст ошибку о том, что ваш HTML-документ не является "правильно сформированным" (well-formed).

Чтобы устранить  разрыв между этими двумя языками  разметки и был разработан XHTML. По существу это обычный HTML, в который  добавили синтаксические правила XML для  создания well-formed документов. Так что  веб-страницы станут XML-совместимыми, а веб-разработчики познакомятся с синтаксисом XML.

На практике, в HTML надо добавить четыре правила, чтобы  получился XHTML:

Все теги должны быть записаны в нижнем регистре, то есть нельзя писать <BODY>, а надо писать <body>

Все теги должны быть закрыты 2a. В случае если элемент  не имеет закрывающего тега (например, <IMG> или <BR>), надо добавлять слэш в конце тега <img /> и <br />

Вложенность тегов  должна быть корректной. Например, нельзя писать <B><P>текст</B></P>, а  надо писать <p><b>текст</b></p>

Информация о работе Расширенный язык разметки документов XML