Standard Generalized Markup Language

Standard Generalized Markup Language (výslovnost [ˈstændəd ˈd͡ʒenərəˌlaizd ˈmaːkˌap ˈlæŋgwid͡ʒ], zkráceně SGML [ˌesd͡ʒiːemˈel], česky standardní jazyk pro popis značkovacích programů) je univerzální značkovací metajazyk, který umožňuje definovat značkovací jazyky jako své vlastní podmnožiny. SGML je komplexní jazyk poskytující mnoho značkovacích syntaxí, ale jeho složitost brání většímu rozšíření.

SGML je ISO standard nazvaný ISO 8879:1986 Information processing–Text and office systems–Standard Generalized Markup Language (SGML)

Příbuzné jazyky

Jazyk XML je vytvořen jako profil (zvláštní podmnožina) SGML a stal se mnohem rozšířenější. XML je díky své jednoduchosti snadno parsovatelný a zpracovatelný. Je mnoho jemných rozdílů mezi SGML a XML. Oba jazyky například umožňují používat hexadecimální zápis znaku ve tvaru &#xnn; zatímco pouze SGML umožňuje i tvar &#Xnn;. Podobně pouze SGML umožňuje pomocí DTD vymezit elementy, které se nesmí vyskytovat pod daným elementem.

Jazyky původně založené na SGML nebo jako jeho aplikace jsou například HTML nebo DocBook.

SGML je následovník jazyka GML.

Příklady

Příklad jazyka vytvořeného v SGML:

 <DOKUMENT>
   <adresa stát="cs">
      <město>
      <ulice>Nová</ulice>
      <číslo>5</číslo>
   </adresa>
 </DOKUMENT>

Jazyk SGML nedokáže popsat překrývající se „elementy“, protože je bezkontextový. Mnohý webový prohlížeč takovéto chyby toleruje, protože se vyskytuje mnoho chybných HTML souborů.

<b> tučný text <i> text psaný kurzívou i tučně? </b> text psaný kurzívou </i>

Odkazy

Související články

Externí odkazy