SGML-i ja XML-i erinevus

SGML vs XML

SGML (standard Generalized Markup Language) on paberdokumentide elektroonilises vormingus kodeerimise standard. Interneti arenguga sai selgeks, et HTML ei suuda enam pakkuda dünaamilisema sisu vajadust, kuna see on jõudnud oma piirangutele. XML (Extensible Markup Language) on keel, mis on tuletatud SGML-ist ja sisaldab piiratud funktsioonide komplekti, et muuta koodrite kasutamine lihtsamaks, kuna SGML on kavandatud kasutamiseks liiga põhjalik ja keeruline. Kuna XML on lihtsalt SGML-i alamhulk, on SGML-i parserid võimelised lugema ja dekodeerima kehtivaid XML-faile. Vastupidine pole tingimata tõsi, kuna SGML-failidel võib olla funktsioone, millest XML-i parser ei saa aru.
Alamhulgana poleks XML-is ühtegi funktsiooni, mida SGML-is ei eksisteeri. Siin on lühike loend eemaldatud toodetest.
Järgmised SGML-deklaratsioonid pole enam XML-is lubatud:

  • DATATAG
  • OMITTAG
  • KOHT
  • LINK
  • CONCUR
  • SUBDOC
  • FORMAALNE

Järgmised SGML-konstruktsioonid pole enam XML-is lubatud:

  • Tühjad alustamissildid
  • Tühjad lõppsildid
  • Suletud start-sildid
  • Suletud lõppsildid

Atribuudi spetsifikatsioonid ilma nimeta
Otseselt sisestatud atribuudi väärtused atribuudi spetsifikatsioonis pole lubatud ja need tuleks sisestada tähtedes
Järgmised SGML-i olemi deklaratsioonid pole SGML-is enam lubatud

  • Välised SDATA üksused
  • Sisemised SDATA üksused
  • Välised CDATA üksused
  • Sisemised CDATA üksused
  • #DEFAULT üksused
  • PI üksused
  • Sulgudes olevad tekstikanded

Teil ei ole enam lubatud üksuste atribuute täpsustada.
Samuti on tehtud muudatusi viisil, kus kodeerijad lisavad oma koodi kommentaarid. Kommentaarideklaratsioonil ei ole enam lubatud ühe kommentaari olemasolu. Tühi kommentaarideklaratsioon on samuti keelatud. Parameetri eraldajal pole kommentaare. See hõlmab kõiki märgistusdeklaratsioone, välja arvatud muidugi kommentaarideklaratsioonid.
Kokkuvõte:
1.XML on SGML-i alamhulk
2.XML on SGML-iga võrreldes lihtsam
3.XML-dokumendid peaksid olema SGML-i parseritega loetavad, samas kui mõned SGML-id võivad XML-i parserites tekitada vigu
4. XML-ist on eemaldatud SGML-deklaratsioonide loetelu
5.Mõned SGML-is lubatud konstruktsioonid pole enam XML-is lubatud
6.Mõned SGML-i üksused pole XML-is enam lubatud
7.Mõned SGML-i kommenteerimispraktikad on samuti XML-is keelatud