Мова гіпертекстової розмітки HTML. Моделі мовних процесорів

Розіб’ємо мовні процесори на три великих групи відповідно до форми даних, які вони генерують:

ü Інтерпретатори;

ü Компілятори;

ü Процесори семантичного опису.

Інтерпретатори. Входом є програма вихідною мовою (Perl, POSIX shell, Visual Basic.NET). Результатом є рішення сформульованої задачі.

Компілятори. Входом є програма вихідною мовою (ANSI C99, C++, C#, Pascal, тощо). В результаті роботи генерується програма, яка після виконання сформує рішення сформульованої задачі.

Компілятор створює програму для апаратної та програмної платформ, які здатні виконати її та сформувати необхідну відповідь. Компілятор генерує код, який є унікальним для кожної апаратної платформи.

Процесори семантичного опису. Мовний процесор формує опис виводу. Наприклад, замість запису числа 42 процесор сформує текст

<integer><binary_value>101010<end>

Це більш загальна відповідь, бо вона включає семантичну інформацію, яка необхідна для інтерпретації відповіді у довільній системі числення та різних формах (наприклад, за допомогою римських цифр).

HTML (HyperText Markup Language) є мовою семантичного опису і вона ґрунтується на мові SGML.

Мова SGML

Мова SGML (Standard Generalized Markup Language) була зафіксована у 1978 році групою ANSI-стандартів. У 1986 році було створено стандарт ISO 8879.

Документ SGML утворюється із текста, який є неструктурованою послідовністю символів, але в текст додаються вбудовані елементи SGML.

Семантика елементів не специфікується, яле їх синтаксис є визначеним. Мова SGML має тегову структуру.

Елементи мови розташовані між початковим та завершальним тегами. Наприклад:

<zork>I am a zork</zork>

Коли кінець елемента визначається однозначно, завершальний тег можна не писати.

Особливість SGML в тому, що мова відокремлює атрибути документа від його вмісту. В HTML це пов’язано з проблемами, бо HTML-файл є одночасно описом вмісту сторінки і описом її відображення.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: