Найти в Дзене

Что такое SGML

SGML - это стандартный обобщённый язык разметки (Standard Generalized Markup Language) - метаязык, на котором можно определять язык разметки для документов. Кратко я уже рассказывал о нём здесь. Сегодня будет тоже кратко, но чуть ближе к практической плоскости.

Этот язык является потомком языка GML, разработанного в IBM аж в 1969 году (я в этом году только родился))). В свою очередь, SGML является “прародителем” HTML, XML и XHTML.

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

Дело в том, что всякий HTML-документ должен соответствовать стандартам SGML HTML DTD - формальному определению типа документа.

DTD - это Document Type Definition - определение типа документа. Набор правил DTD определяет теги и синтаксис, используемые в HTML. Чтобы сообщить браузеру, какому DTD (то есть какому набору правил) соответствует ваш документ, можно (хотя и не обязательно) поместить особую SGML-директиву в первой строке документа. Выглядеть она может, например, так:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 //EN">

Это объявление говорит браузеру о том, что ваш документ намерен соответствовать правилам стандарта HTML версии 4.01, который определён в W3C.

Хотя “намерен” не означает, что “будет”. “Обещать - не значит жениться”. Современные браузеры довольно умные. Так что даже если ваш документ не будет соответствовать заявленному стандарту, браузер, скорее всего, сможет его более-менее правильно отобразить.

Кто-то говорит, что добавлять эту строку надо обязательно. Якобы это положительно влияет на ранжирование страницы в поисковой выдаче. Я этого утверждать не могу, потому что наверняка это знают только разработчики поисковых систем. А они молчат )))

Так что добавлять эту строчку или нет - решайте сами. С одной стороны - это делает документ более стандартным, с другой, если вы ошибётесь в этой строке, то это внесёт ещё больше путаницы.

На этом всё. Подписывайтесь на канал, чтобы ничего не пропустить.