Starpība starp SGML un XML

SGML vs XML

SGML (standarta vispārinātā iezīmēšanas valoda) ir standarts papīra dokumentu kodēšanai elektroniskā formātā. Attīstoties internetam, kļuva skaidrs, ka HTML vairs nespēj nodrošināt vajadzību pēc dinamiskāka satura, jo tas ir sasniedzis savus ierobežojumus. XML (paplašināmā iezīmēšanas valoda) ir valoda, kas atvasināta no SGML un satur ierobežotāku funkciju kopu, lai kodētājus būtu vienkāršāk izmantot, jo SGML ir pārāk visaptverošs un sarežģīts paredzētajam lietojumam. Tā kā XML ir tikai SGML apakškopa, SGML parsētāji spēj nolasīt un atšifrēt derīgus XML failus. Reverss ne vienmēr ir taisnība, jo SGML failiem var būt funkcijas, kuras XML parsētājs nesaprot.
Tā kā ir apakškopa, XML nebūtu tādu funkciju, kas nepastāv SGML. Šeit ir īss noņemto vietu saraksts.
XML vairs nav atļautas šādas SGML deklarācijas:

  • DATATAG
  • OMITTAG
  • RANK
  • LINK
  • KONKURS
  • SUBDOC
  • FORMĀLI

XML vairs nav atļautas šādas SGML konstrukcijas:

  • Tukši sākuma tagi
  • Tukši gala tagi
  • Neaizvērti sākuma tagi
  • Neslēgti gala tagi

Atribūtu specifikācijas bez nosaukuma
Tieši ievadītas atribūtu vērtības atribūtu specifikācijā nav atļautas, un tās jāievada burtos
Šīs SGML entītiju deklarācijas vairs nav atļautas SGML

  • Ārējās SDATA entītijas
  • Iekšējās SDATA entītijas
  • Ārējās CDATA entītijas
  • Iekšējās CDATA entītijas
  • #DEFAULT entītijas
  • PI entītijas
  • Teksta ieraksti iekavās

Jums vairs nav atļauts norādīt entītiju atribūtus.
Izmaiņas ir veiktas arī tādā veidā, ka kodētāji ievieto komentārus savā kodā. Komentāru deklarācijā vairs nav atļauts būt vairāk par vienu komentāru. Arī tukša komentāru deklarācija nav atļauta. Parametru atdalītājā nav atļauts iekļaut komentārus. Tas ietver jebkuru marķējuma deklarāciju, protams, izņemot komentāru deklarācijas.
Kopsavilkums:
1.XML ir SGML apakškopa
2.XML ir vienkāršāks nekā SGML
3.XML dokumentiem jābūt lasāmiem ar SGML parsētājiem, savukārt daži SGML var radīt kļūdas XML analizatoros
XML ir noņemts SGML deklarāciju saraksts
5.Dažas konstrukcijas, kuras ir atļautas SGML, vairs nav atļautas XML
6.Dažas SGML entītijas vairs nav atļautas XML
7.Dažas komentēšanas prakses SGML ir aizliegtas arī XML