SGML

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
Standard Generalized Generic Markup Language
Расширение .sgml
MIME-тип application/sgml[1] и text/sgml[1]
Разработчик ISO
Тип формата Язык разметки
Расширен из Generalized Markup Language
Развит в HTML, XML
Стандарт(ы) ISO 8879:1986
Логотип Викисклада Медиафайлы на Викискладе

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

Является наследником разработанного в 1969 году в IBM языка GML (Generalized Markup Language)[2]. Изначально был разработан для создания машиночитаемых документов в правительственных и аэрокосмических проектах; широко использовался в печатной и издательской сфере, но его сложность затруднила его широкое распространение для повседневного использования. Из-за его сложности появилась альтернативная расшифровка аббревиатуры SGML — «Sounds Great, Maybe Later» (Звучит здорово, возможно, пото́м)[3]. Стандартизован ISO в 1986 году[4]. Языки HTML и XML произошли от SGML: HTML до версии 4 включительно был приложением SGML, а XML — это подмножество SGML, разработанное для упрощения процесса машинного разбора документа. Другими приложениями SGML являются DocBook (документирование) и «Z Format» (типография и документирование).

Основные части SGML-документа:

  • SGML-декларация — определяет, какие символы и ограничители могут появляться в приложении, т.е. определяет сами конструкции разметки (инструменты разметки) (это и есть лексика). Про то, как ими пользоваться (это и есть синтаксис) - следующий пункт;
  • Document Type Definition — определяет синтаксис конструкций разметки, может включать дополнительные определения, такие, как символьные ссылки-мнемоники;
  • спецификация семантики, относится к разметке — также даёт ограничения синтаксиса, которые не могут быть выражены внутри DTD;
  • содержимое SGML-документа — по крайней мере, должен быть корневой элемент.

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

Пример синтаксиса SGML:

<quote type="example"> 
   typically something like <italics>this</italics> 
</quote>

Примечания

[править | править код]
  1. 1 2 Levinson E. SGML Media Types (англ.)IETF, 1995. — 6 p. — doi:10.17487/RFC1874
  2. Под аббревиатурой GML также известен разрабатываемый консорциумом OpenGIS язык разметки геоданных на основе XML — Geography Markup Language[англ.]
  3. Дуг Тидуэлл. XSLT = XSLT / Е. Матвеев. — 2-е изд. — Санкт-Петербург - Москва: Символ-Плюс, 2010. — P. 23. — 960 p. — 1200 экз. — ISBN 978-5-93286-150-9.
  4. ISO 8879:1986 Information processing—Text and office systems—Standard Generalized Markup Language (SGML)".