Sobes.tech
Middle

Чӣ гуна робита байни SGML, HTML, XML ва XHTML вуҷуд дорад?

sobes.tech AI

Ҷавоб аз AI

SGML (Standard Generalized Markup Language) зеҳн-зиёдаги белгилаш тили, ISO 8879 стандарти. Бошқа белгилаш тилларини тавсифлаш учун синтаксисини белгилайди, ўзи ёки ҳужжатлар учун белгилаш тили эмас. HTML ва XML — SGMLнинг қўлланмалари (таърифлари), лекин турли мақсадлар ва чекловлар билан.

HTML (HyperText Markup Language) — SGML асосидаги белгилаш тили, веб-саҳифалар яратиш учун мўлжалланган. Унинг теглар тўплами ва улардан фойдаланиш қоидалари белгиланган, XMLга нисбатан (масалан, барча тегларни ёпиш талаб қилинмайди) синтаксис қоидалари кўпроқ элақонли.

XML (eXtensible Markup Language) — бошқа белгилаш тили, SGMLнинг фарзанди, аммо анча содда ва қатъий. Асосий фарқ — XML ҳужжатнинг тасвирланиши эмас, балки маълумотларни узатишга қаратилган. HTMLдан фарқли ўлароқ, XMLда теглар тўплами белгиланмаган — уларни фойдаланувчи белгилайди. Катъий синтаксга риоя қилиш талаб қилинади (ҳар доим тегларни ёпиш, тўғри ичига қўйиш ва ҳоказо).

XHTML (eXtensible HyperText Markup Language) — HTML 4нинг XML қўлланмаси сифатида қайта ишланган версияси. Бу HTML, аммо XML қоидаларига мос равишда синтаксиси қаттиқроқ. HTMLнинг афзалликларини (веб-саҳифалар учун) ва XMLнинг (қатъийлик, кенгайтирилганлик) бирлаштиришга уриниш бўлган, аммо ҳозирда HTML5 асосий равишда ўрнини босмоқда.

Шунинг учун, уларнинг ўзаро боғланиши:

  • SGML — HTML ва XMLнинг онаси/асоси.
  • HTML ва XML — SGMLнинг қўлланмалари (синтаксиси SGML қоидаларига мувофиқ белгиланган).
  • XHTML — HTMLнинг версияси, XML қоидаларига риоя қилиб қайта ёзилган.
  • HTML — ҳужжатларни браузерда чизиш учун, XML — маълумотларни узатиш ва сақлаш учун мўлжалланган.
  • XHTML — HTMLнинг чизиш ва XMLнинг қатъийлигини бирлаштиришга уриниши.

Қисқача, боғланиш тўзими: SGML -> HTML, SGML -> XML. Шунингдек: HTML + XML синтаксиси -> XHTML.

Мисол структура:

<!-- HTML мисоли -->
<!DOCTYPE html>
<html>
<head>
    <title>Номи</title>
</head>
<body>
    <h1>Салом</h1>
    <p>Бу параграф.</p>
</body>
</html>
<!-- XML мисоли -->
<китоб>
    <ном>Менинг китобим</ном>
    <автор>Иван Иванов</автор>
    <жанр>Фантастика</жанр>
</китоб>
<!-- 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>Номи</title>
</head>
<body>
    <h1>Салом</h1>
    <p>Бу параграф.</p>
</body>
</html>

XML ва XHTMLда тегларни қаттиқ ёпишга эътибор беринг, HTMLга нисбатан.