Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции ЯРД.docx
Скачиваний:
33
Добавлен:
31.03.2015
Размер:
775.49 Кб
Скачать

44

Языки разметки документов Язык разметки

Термин «разметка» происходит от традиционной практики разметки рукописей перед публикацией (то есть добавления символических команд на полях и между строк в бумажной рукописи).

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

Язык разметки- это набор специальных инструкций, называемых тегами (tags), выполняющих следующие функции:

    • задание функций обработки выделенных элементов;

    • выделение логических элементов данного документа.

Задание функций обработки выделенных элементов

В текстовых процессорах существуют встроенные команды включения/выключения шрифтов и другое, аналогичные командам управления размещением информации на экране или при печати. Такой подход называется команднойилипроцедурной разметкой.

Примеры процедурной разметки

Выделение логических элементов документа

Служит для формирования в документах какой-либо структуры и определения отношений между различными элементами этой структуры без указания способа обработки. Такая разметка называется описательной.

Изменяя набор процедур, соответствующий описательной разметке, можно изменить внешнее представление одного и того же документа.

Описательная разметка

Основным достоинством описательной разметки является ее гибкость, поскольку фрагменты текста отмечены как «чем они являются» (а не «как они должны быть отображены»).

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

Примеры языков разметки

Языки разметки используются везде, где требуется вывод форматированного текста:

  • в типографии (SGML,TeX,PostScript,PDF),

  • пользовательских интерфейсах компьютеров (MicrosoftWord,OpenOffice,troff),

  • Всемирной Сети (HTML,XHTML,XML,WML,VML,PGML,SVG,XBRL).

Теговая структура языка разметки

Развитие идей описательной разметки привело к определению разметки как формального языка.

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

Во многих современных языках для обозначения этих команд (теги языка) использовались символы < и >, внутри которых помещались названия инструкций и их параметры (HTML и XML). В SGML можно назначать другие символы для обрамления тега (например, фигурные скобки). Кроме того, существуют разные системы языков-подмножеств, которые используются, с меньшими возможностями, например на веб-форумах и досках объявлений используется язык разметки BBCode, теги которого ограничиваются символами квадратных скобок: [ ].

Теговая модель описывает документ как совокупность контейнеров, каждый из которых начинается и заканчивается тегами. В большинстве случаев теги используются парами. Пара состоит из открывающего (start tag) и закрывающего (end tag ) тегов.

Синтаксис открывающего тега: <имя_тега [атрибуты]>

Имя закрывающего тега отличается от имени открывающего лишь тем, что перед ним ставится наклонная черта: </имя_тега>

Атрибуты определяют дополнительные характеристики элемента. Атрибуты тега записываются в следующем формате: имя[="значение"]. Для некоторых атрибутов значение может не указываться. У закрывающего тега атрибутов не бывает.

<BODY BGCOLOR=white> … </BODY>

Действие любого парного тега начинается с открывающего тега и заканчивается при встрече соответствующего закрывающего тега.

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

<BODY BGCOLOR=white>

<H1> Заголовок 1 уровня</H1>

<H2> Заголовок 2 уровня</H2> </BODY>

В зависимости от используемого языка разметки дополнительно возможно применение одиночного тега и тега пустого элемента. Имя тега определяет тип элемента.

Синтаксис одиночного тега: <имя_тега [атрибуты] />

В некоторых языках разметки имена тегов заранее определены (HTML). В других не регламентируются жестко, т.е. пользователи могут вводить и использовать новые теги (XML). Например, тег «persona» можем определить тип этого XML элемента, как фамилия имя и отчество. <persona year=“1990”>Иванов Иван Иванович</persona>

В SGML элементы могут пересекаться, то есть в SGML возможна такая последовательность тегов: <a><b></a></b>

В XML элементы имеют строгую синтаксическую структуру, то есть быть строго вложенными друг в друга и всегда закрываться: <a><b></b></a>

Кроме того, в SGML, HTML они не обязаны быть закрытыми: <p>

Практически во всех языках разметки документов значение атрибута интерпретируется как текстовое. Значение атрибута принято брать в кавычки.

Примечание:

При создании документа рекомендуется использовать более жесткие требования. С целью возможности перевода на другой язык без больших затрат.

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

Т.е. документ представляет собой не что иное, как обычный АSСII-файл, с добавленными в него управляющими кодами (тегами).