Erinevus XML-i ja SGML-i vahel

XML vs SGML

XML tähistab laiendatavat märgistuskeelt. See on määratletud XML 1.0 spetsifikatsioonis, mille on välja töötanud W3C (World Wide Web Consortium). XML pakub standardset viisi, mis on ka lihtne, andmete ja teksti kodeerimiseks, nii et sisu saaks vahetada draiveri riistvara, opsüsteemide ja rakenduste vahel vähese inimese sekkumisega. SGML (standard Generalized Markup Language) on ISO (Rahvusvahelise Standardiorganisatsiooni) standard dokumendi märgistuskeele või siltide komplekti täpsustamiseks. SGML ei ole dokumendikeel, vaid dokumenditüübi määratlus (DTD).

XML

XML on märgistuskeel, mida kasutatakse andmete ja teksti edastamiseks draiveri riistvara, opsüsteemide ja rakenduste vahel vähese inimese sekkumisega. XML pakub silte, atribuute ja elementide struktuure, mida saab kasutada kontekstiteabe edastamiseks. Seda kontekstiinfot saab kasutada sisu tähenduse dekodeerimiseks. See võimaldab arendada tõhusaid otsingumootoreid ja teostada andmete kaevandamist. Lisaks sobivad traditsioonilised relatsiooniandmebaasid XML-andmetena, kuna neid saab järjestada ridadesse ja veergudesse, kuid XML pakub vähem tuge rikkaliku sisuga andmetele, nagu heli, video, keerulised dokumendid jne. XML-andmebaasid salvestavad andmeid struktureeritud, hierarhilisel kujul mis võimaldab päringuid tõhusamalt töödelda. XML-silte ei ole eelnevalt määratletud ja kasutajad saavad määratleda uued sildid ja dokumendistruktuurid. Samuti loodi XML-i abil uued Interneti-keeled, näiteks RSS, Atom, SOAP ja XHTM.

SGML

SGML põhineb ideel, et isegi kui dokumenti saab kuvada erineva esinemisvormiga, sõltuvalt kasutatavast väljundmeediumist, sisaldab see mõnda struktuurilist ja semantilist elementi, mis ei muutu vastavalt selle kuvamisviisile. SGML-põhiseid dokumente saab luua ilma dokumendi välimusega, mis võib muuta ületunnitööd, kuid dokumendi ülesehituse osas. Lisaks saab SGML-i kompilaator tõlgendada ükskõik millist dokumenti oma DTD abil, seetõttu pakuvad need dokumendid rohkem teisaldatavust. Samuti saaks SGML-il põhinevaid dokumente hõlpsasti erinevatele meediumitele kohandada (näiteks prindikandjale mõeldud dokumente saaks kuvaekraani jaoks redigeerida).

Mis vahe on XML ja SGML vahel??

Kui XML on märgistuskeel, mida kasutatakse andmete ja teksti edastamiseks draiveri riistvara, opsüsteemide ja rakenduste vahel, siis SGML on ISO standard dokumendi märgistuskeele või siltide komplekti määramiseks. XML on tegelikult märgistuskeel, mis põhineb SGML-il. Kuid XML kehtestab mõned piirangud, mis pole SGML-is. Näiteks seab XML järgmised piirangud: olemi viited tuleb sulgeda REFC eraldajaga, sisulised viited välistele andmeüksustele ei ole lubatud, märkide viited peavad olema suletud REFC eraldajaga, nimega märkide viited pole lubatud jne. mõned konstruktsioonid, näiteks sulgemata algusmärgendid, sulgemata lõpp-sildid, tühjad algus-sildid, tühjad lõpp-sildid, mis on SGML-is lubatud, kui SHORTTAG on JAH, pole XML-is lubatud. Lisaks ei ole XML-is lubatud kasutada mõnda SGML-i deklaratsiooni, näiteks DATATAG, OMITTAG, RANK, LINK (LIHTSAD, IMPLICIT ja EXPLICIT) jne..