Файл: Языки гипертекстовой разметки (Понятия языков разметки).pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 30.06.2023

Просмотров: 55

Скачиваний: 2

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

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

2. Конкретные реализации языков гипертекстовой разметки

2.1. Особенности языков разметки

Общая особенность всех языков разметки в том, что они перемешивают текст документа с инструкциями разметки в потоке данных или файле. Это не необходимость, возможно изолировать разметку от текста, используя указатели, метки, идентификаторы или другие методы координации. Такая «отделенная разметка» характерна для внутреннего представления программ, работающих с размеченными документами. Тем не менее, внедренная или «междустрочная» разметка более принята где бы то ни было. Вот, для примера, небольшая часть текста, размеченного при помощи HTML:

Код разметочных инструкций обведен угловыми скобками <как здесь>. Текст, находящийся между этими инструкциями, является текстом документа. Коды h1, p и em — примеры структурной разметки, они описывают позицию, назначение или значение текста, включенного в них[22].

Более точно, h1 означает «это заголовок первого уровня», p значит «это параграф», а em означает «это подчеркнутое слово или фраза». Интерпретирующая программа может применять эти правила или стили для показа различных частей текста, используя различные гарнитуры, размеры шрифта, отступы, цвет или другие стили, если это необходимо. Такой тег, как h1, может быть, например, представлен большим жирным типографским шрифтом, или в документе с моноширинным текстом может быть подчеркнутым, или может вообще не менять внешний вид[23].

Для контраста, тег i в HTML — пример визуальной разметки; обычно он используется для определения специфичных особенностей текста без объяснения причин.

TEI опубликовала всесторонние руководящие документы, указывающие кодировать текст в интересах человечества и научных обществ. Эти руководства использовались для кодирования исторических документов, специфичных работах ученых, периодике и так далее[24] [1, 2, 6].


2.2. Язык HTML

HTML расшифровывается как HyperText Markup Language и обозначает язык гипертекстовой разметки. HTML является стандартизированным языком разметки документов в Интернете. Большинство web-страниц содержат описание разметки на языке HTML или XHTML. Язык HTML интерпретируется браузерами, после чего текст, полученный в результате интерпретации форматированный, отображается на экране монитора компьютера или мобильного устройства[25].

Язык HTML является приложением стандартного обобщенного языка разметки и соответствует международному стандарту ISO 8879.

Язык XHTML является более строгим вариантом HTML, он следует всем ограничениям XML и, фактически, XHTML можно воспринимать как приложение языка XML к области разметки гипертекста[26].

Во всемирной паутине HTML-страницы, как правило, передаются браузерам от сервера по протоколам HTTP или HTTPS, в виде простого текста или с использованием шифрования[27].

Язык HTML был разработан британским ученым Тимом Бернерсом-Ли приблизительно в 1986—1991 годах в стенах Европейского центра ядерных исследований в Женеве в Швейцарии. HTML создавался как язык для обмена технической и научной документацией, пригодный для использования людьми, не являющимися специалистами в области верстки. HTML успешно справлялся с проблемой сложности SGML путем определения небольшого набора семантических и структурных элементов — дескрипторов. Дескрипторы также часто называют «тегами». С помощью HTML можно легко создать относительно простой, но красиво оформленный документ. Помимо упрощения структуры документа, в HTML внесена поддержка гипертекста. Мультимедийные возможности были добавлены позже[28].

Изначально язык HTML задумывался и создавался как средство форматирования и структурирования документов без их привязки к средствам отображения. В идеале, текст с разметкой HTML должен был без структурных и стилистических искажений воспроизводиться на оборудовании с различной технической оснащенностью, таком как цветной экран современного компьютера, монохромный экран органайзера, ограниченный по размерам экран мобильного телефона или устройства и программы голосового воспроизведения текстов. Но современное применение HTML очень далеко от его изначальной задачи. Например, тег <table> предназначен для создания в документах таблиц, но часто используется и для оформления размещения элементов на странице. С течением времени основная идея платформонезависимости языка HTML была принесена в жертву современным потребностям в мультимедийном и графическом оформлении[29].


Текстовые документы, содержащие разметку на языке HTML, традиционно имеют расширение htm или html и обрабатываются специальными приложениями, отображающими документ в его форматированном виде. Такие приложения, называемые «интернет-обозревателями» или «браузерами», обычно предоставляют пользователю удобный интерфейс для запроса веб-страниц, их просмотра и вывода на иные внешние устройства и, при необходимости, отправки введенных пользователем данных на сервер. Наиболее популярными на сегодняшний день браузерами являются Mozilla Firefox, Google Chrome, Safari, Internet Explorer и Opera.

В настоящее время Консорциум Всемирной паутины разработал HTML версии 5. Черновой вариант спецификации языка появился в Интернете 20 ноября 2007 года[30].

Сообществом WHATWG, расшифровывающимся как Web Hypertext Application Technology Working Group, начиная с 2004 года, разрабатывается спецификация Web Applications 1.0, часто неофициально называемая «HTML 5», которая расширяет HTML, имея также совместимый с XHTML 1.0 XML-синтаксис, с целью лучшего представления семантики различных типичных страниц, например, сайтов аукционов, форумов, онлайн-магазинов, поисковых систем и прочих ресурсов, которые не очень удачно вписываются в модель XHTML 2.0[31] [3, 5, 7].

2.3. Язык HTML5

HTML5 является языком HTML 5 версии, и представляет собой язык для представления и структурирования содержимого всемирной паутины. Несмотря на то, что стандарт был завершен только в 2014 году, еще с 2013 года браузерами оперативно осуществлялась поддержка, а разработчиками — использование рабочего стандарта под названием HTML Living Standard. Целью разработки HTML5 является улучшение уровня поддержки мультимедиа-технологий с одновременным сохранением обратной совместимости, удобочитаемости кода для человека и простоты анализа для парсеров[32].

Во всемирной паутине долгое время использовались стандарты HTML 4.01, XHTML 1.0 и XHTML 1.1. Веб-страницы на практике оказывались сверстанными с использованием смеси особенностей, представленных различными спецификациями, включая спецификации программных продуктов, таких как веб-браузеры, а также сложившихся общеупотребительных приемов. HTML5 был создан как единый язык разметки, который мог бы сочетать синтаксические нормы HTML и XHTML. Он рационализирует, улучшает и расширяет разметку документов, а также добавляет единый API для сложных веб-приложений[33].


В HTML5 реализовано множество новых синтаксических особенностей. Например, элементы <canvas>, <audio> и <video >, а также возможность использования SVG и математических формул. Эти новшества разработаны для упрощения управления и создания мультимедийных и графических объектов в сети без необходимости использования сторонних API и плагинов. Другие новые элементы, такие как <article>, <section>, < nav> и <header>, разработаны для того, чтобы обогащать семантическое содержимое документа. Новые атрибуты были введены с той же целью, хотя ряд элементов и атрибутов был удален. Некоторые элементы, такие как <cite>, <menu> и <a>, были изменены, переопределены или стандартизированы. DOM и API стали основными частями спецификации HTML5. HTML5 также определяет некоторые особенности обработки ошибок верстки, поэтому синтаксические ошибки должны рассматриваться одинаково всеми совместимыми браузерами[34].

WHATWG начал работу над новым стандартом в 2004 году, когда консорциум World Wide Web Consortium, обозначающийся как W3C сосредоточился на будущих разработках XHTML 2.0, а HTML 4.01 не изменялся с 2000 года. В 2009 году W3C признал, что срок работы у рабочей группы XHTML 2.0 истек, и решил не возобновлять его. Впоследствии W3C и WHATWG совместно разрабатывали HTML5[35].

Даже несмотря на то, что HTML5 был хорошо известен среди веб-разработчиков в течение нескольких лет, он стал основной темой средств массовой информации только в апреле 2010 года. После этого Стив Джобс, будучи главой компании Apple Inc., написал публичное письмо, заголовок которого гласил: «мысли по поводу Flash», где он заключил, что с разработкой HTML5 нет больше необходимости смотреть видеоролики или использовать другие виды приложений с помощью Adobe Flash. По этому поводу вспыхивали дебаты в кругу веб-разработчиков, причем некоторые намекали, что, хотя HTML5 и обеспечивает расширенную функциональность, разработчики должны принимать во внимание различия браузеров и необходимость поддержки различных частей стандартов, равно как и функциональные различия между HTML5 и Flash[36] [3, 5, 9, 11].

2.4. Язык XHTML

XHTML расшифровывается как extensible hypertext markup language, что значит расширяемый язык гипертекстовой разметки. XHTML является семейством языков разметки веб-страниц на основе XML, повторяющих и расширяющих возможности HTML 4. Спецификации XHTML 1.0 и XHTML 1.1 являются рекомендациями консорциума Всемирной паутины. Развитие XHTML остановлено; новые версии XHTML не выпускаются; рекомендуется использовать HTML[37].


Главное отличие XHTML от HTML заключается в обработке документа. Документы XHTML обрабатываются своим модулем аналогично документам XML. В процессе этой обработки не исправляются допущенные разработчиками ошибки.

XHTML соответствует спецификации SGML, поскольку XML является ее подмножеством. HTML обладает множеством особенностей в процессе обработки и фактически перестал относиться к семейству SGML, что и закреплено в черновике спецификации HTML 5[38].

Браузер выбирает парсер для обработки документа на основании заголовка content-type, полученного от сервера:

  • для HTML — text/html;
  • для XHTML — application/xhtml+xml;
  • для локального просмотра на клиенте выбор основывается на расширении файла;
  • в Internet Explorer вплоть до 8-й версии парсер обработки XHTML-документов отсутствует[39].

Декларация DOCTYPE может не оказывать никакого влияния на определение парсера для обработки в зависимости от используемого браузера.

Согласно синтаксису XHTML:

  • все элементы должны быть закрыты. Теги, которые не имеют закрывающего тега (например, <img> или <br>), должны иметь на конце / (например, <br />);
  • логические атрибуты записываются в развернутой форме. Например, следует писать <option selected="selected"> или <td nowrap="nowrap">;
  • имена тегов и атрибутов должны быть записаны строчными буквами (например, <img alt="" /> вместо <IMG ALT="" />);
  • XHTML гораздо строже относится к ошибкам в коде; < и & везде, даже в URL, должны замещаться &lt; и &amp; соответственно. По рекомендации W3C браузеры, встретив ошибку в XHTML, должны сообщить о ней и не обрабатывать документ. Для HTML браузеры должны были попытаться понять, что хотел сказать автор;
  • кодировкой по умолчанию является UTF-8[40].

Для XHTML-страниц рекомендуется задавать MIME-тип — application/xhtml+xml, но это не является обязательным, более того — браузер Internet Explorer 8 и младшие версии не смогут обрабатывать страницу, поэтому с XHTML 1.0 традиционно используется MIME-тип для HTML — text/html[41].

Существует три типа документов XHTML: strict, transitional и frameset. Наиболее употребительной и универсальной из версий XHTML является переходная, поскольку она позволяет использовать iframe и атрибут target у ссылок для указания, например, того, что ссылке необходимо открываться в новом окне. Фреймовая версия представляет собой расширенный вариант transitional и добавляет к нему, как следует из названия, возможность установки frameset вместо body. Определение типа документа строгой версии XHTML не содержит многих тегов и атрибутов, описанных в DTD transitional и признанных устаревшими[42] [1, 2, 4, 10].