XML vs SGML
Az XML az EXtensible Markup Language rövidítése. Az XML 1.0 specifikáció határozza meg, amelyet a W3C (World Wide Web Consortium) fejlesztett ki. Az XML szabványos, szintén egyszerű módszert kínál az adatok és a szöveg kódolására úgy, hogy a tartalmat kicserélhesse az illesztőprogram hardverein, az operációs rendszereken és az alkalmazásokon, kevés emberi beavatkozással. Az SGML (Standard Generalized Markup Language) egy ISO (Nemzetközi Szabványügyi Szervezet) szabvány, amely megadja a dokumentum jelölőnyelvét vagy a címkekészletet. Az SGML nem dokumentumnyelv, hanem dokumentumtípus-meghatározás (DTD).
XML
Az XML egy jelölő nyelv, amelyet adatok és szövegek átvitelére használnak az illesztőprogram hardverei, az operációs rendszerek és az alkalmazások között, kevés emberi beavatkozással. Az XML olyan címkéket, attribútumokat és elemstruktúrákat biztosít, amelyek felhasználhatók kontextusinformációk megadására. Ez a kontextus információ felhasználható a tartalom jelentésének dekódolására. Ez lehetővé teszi a hatékony keresőmotorok fejlesztését és az adatok adatbányászatát. Ezenkívül a hagyományos relációs adatbázisok alkalmasak XML-adatokra, mert sorokba és oszlopokba rendezhetők, de az XML kevésbé támogatja a gazdag tartalmú adatokat, például audio, video, összetett dokumentumokat stb. Az XML adatbázisok strukturált, hierarchikus formában tárolják az adatokat amely lehetővé teszi a lekérdezések hatékonyabb feldolgozását. Az XML címkék nincsenek előre definiálva, és a felhasználók új címkéket és dokumentumstruktúrákat határozhatnak meg. Ezenkívül új internetes nyelveket, például RSS, Atom, SOAP és XHTM hoztak létre XML használatával.
SGML
Az SGML azon az elgondoláson alapszik, hogy bár egy dokumentum a használt kimeneti közegtől függően különböző megjelenéssel jeleníthető meg, tartalmaz néhány strukturális és szemantikai elemet, amelyek nem változnak a megjelenítésükhöz viszonyítva. Az SGML alapú dokumentumok úgy hozhatók létre, hogy nem foglalkoznak a dokumentum megjelenésével, amely megváltoztathatja a túlórákat, de a dokumentum felépítésével. Továbbá az SGML fordító bármilyen dokumentumot értelmezhet a DTD-jével, ezért ezek a dokumentumok nagyobb hordozhatóságot biztosítanak. Az SGML-en alapuló dokumentumokat könnyen át lehet alakítani a különböző adathordozókra (például a nyomtatási hordozónak szánt dokumentumokat újra lehetne adaptálni a kijelzőre).
Mi a különbség az XML és az SGML között?
Míg az XML egy jelölő nyelv, amelyet adatok és szövegek átvitelére használnak az illesztőprogram hardverei, az operációs rendszerek és az alkalmazások között, az SGML az ISO szabvány a dokumentum jelölő nyelvének vagy címkekészletének megadására. Az XML valójában az SGML-en alapuló jelölőnyelv. De az XML olyan korlátozásokat ír elő, amelyek nincsenek az SGML-ben. Például az XML a következő korlátozásokat írja elő: az entitás-referenciákat REFC-elválasztóval kell lezárni, a tartalomban lévő külső adat-entitásokra való hivatkozásokat nem szabad megadni, a karakter-hivatkozásokat REFC-elválasztókkal kell lezárni, a megnevezett karakter-hivatkozások nem megengedettek stb. egyes konstrukciók, mint például zárt kezdőcímkék, zárt végcímkék, üres kezdőcímkék, üres végcímkék, amelyek engedélyezettek az SGML-ben, amikor a SHORTTAG YES, nem engedélyezettek az XML-ben. Ezenkívül néhány SGML deklaráció, például DATATAG, OMITTAG, RANK,A LINK (EGYSZERŰ, IMPLICIT és EXPLICIT) stb. Nem engedélyezettek az XML-ben.