Aký je vzťah medzi SGML, HTML, XML a XHTML?
sobes.tech AI
Odpoveď od AI
SGML (Standard Generalized Markup Language) je meta-jazyk značkovania, štandard ISO 8879. Určuje syntax pre popisu iných značkovacích jazykov, nie sám jazyk značkovania pre dokumenty. HTML a XML sú aplikácie (definície) SGML, ale s rôznymi cieľmi a obmedzeniami.
HTML (HyperText Markup Language) je značkovací jazyk založený na SGML, určený na tvorbu webových stránok. Má pevne stanovený súbor tagov a pravidlá ich používania, flexibilnejšie pravidlá syntaxe v porovnaní s XML (napríklad, nevyžaduje povinné zatváranie všetkých tagov).
XML (eXtensible Markup Language) je iný meta-jazyk značkovania, potomok SGML, ale značne jednoduchší a prísnejší. Hlavný rozdiel od SGML je v tom, že XML sa zameriava na prenos štruktúrovaných dát, nie na prezentáciu dokumentu. Na rozdiel od HTML, XML nemá pevne stanovený súbor tagov - určuje ich používateľ. Vyžaduje prísne dodržiavanie syntaxe (vždy zatvárať tagy, správne vkladať a pod.).
XHTML (eXtensible HyperText Markup Language) je preformulovanie HTML 4 v podobe XML aplikácie. To znamená, že je to HTML, ale s prísnejšou syntaxou, podobne ako pravidlá XML. Bol to pokus spojiť výhody HTML (pre webové stránky) a XML (prísnosť, rozšíriteľnosť), ale v súčasnosti je do značnej miery vytlačený HTML5.
Takže, vzťah je nasledovný:
- SGML je rodič/základ pre HTML a XML.
- HTML a XML sú aplikácie SGML (majú syntax určenú podľa pravidiel SGML).
- XHTML je verzia HTML, prepísaná s dodržiavaním pravidiel syntaxe XML.
- HTML je určené na zobrazovanie dokumentov v prehliadači, XML - na prenos a ukladanie štruktúrovaných dát.
- XHTML sa snažil spojiť zobrazovanie (HTML) so striktnosťou (XML).
Stručne, reťazec závislosti je: SGML -> HTML, SGML -> XML. A tiež: HTML + XML syntax -> XHTML.
Príklad štruktúry:
<!-- Príklad HTML -->
<!DOCTYPE html>
<html>
<head>
<title>Nadpis</title>
</head>
<body>
<h1>Pozdrav</h1>
<p>Toto je odsek.</p>
</body>
</html>
<!-- Príklad XML -->
<kniha>
<názov>Moja kniha</názov>
<autor>Ivan Ivanov</autor>
<žáner>Fantázia</žáner>
</kniha>
<!-- Príklad XHTML -->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>Nadpis</title>
</head>
<body>
<h1>Pozdrav</h1>
<p>Toto je odsek.</p>
</body>
</html>
Všimnite si prísnosť zatvárania tagov v XML a XHTML v porovnaní s HTML.