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-ის შთამომავალი, მაგრამ მნიშვნელოვნად მარტივი და მკაცრი. ძირითადი განსხვავება 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-ისგან.