Що таке sgml

SGML - метамова для створення мов розмітки різних документів.

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

Розшифровується це скорочення як Standard Generalized Markup Language, що на російську мову зазвичай перекладається як "Стандартний узагальнений мову розмітки". "Стривайте, - скаже читач, - мова розмітки - це значить щось схоже на HTML або XML?". І так і ні. Справа в тому, що SGML - це метамова для створення інших мов розмітки документів, тобто, мова для написання мов розмітки документів. Що стосується його зв'язку з HTML і XML, то вона, безумовно, присутній. HTML є одним з конкретних додатків SGML для створення мови розмітки гіпертекстових документів. До речі сказати, HTML - далеко не єдине конкретне додаток SGML. Що стосується XML, то це в деякому роді спрощений варіант SGML.

Мова розмітки, який визначається за допомогою SGML (додаток SGML), складається з SGML-декларації, визначення типу документа (Document Type Definition, DTD) і семантичного опису, що доповнює визначення типу документа. В SGML-декларації вказується, які символи і роздільники можуть відображатися в даному типі документів. Термін DTD, якщо ви працювали з XML, повинен бути вам знаком. Визначення типу документа містить в собі опис синтаксису мови розмітки.

Варто відзначити, що SGML надає розробникам мов розмітки документів спеціальні засоби для мінімізації кількості символів, необхідних для синтаксису розмітки. Так, наприклад, можна відмовитися від обов'язкового використання відкриває і закриває тегів, якщо закриває не потрібен.

До речі, хоча HTML - це найвідоміше з додатків SGML, але, як я вже говорив, воно не є єдиним. На сьогоднішній день широку популярність і навіть, мабуть, певну популярність придбав мову розмітки DocBook, що розроблявся для написання технічної документації. Втім, DocBook - хороша тема для окремої розмови.

Версія для друку

Схожі статті